@overmap-ai/core 1.2.1-form-submission-comments.0 → 1.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (161) hide show
  1. package/dist/overmap-core.js +8423 -9050
  2. package/dist/overmap-core.umd.cjs +10 -10
  3. package/dist/sdk/base.d.ts +2 -2
  4. package/dist/sdk/performRequest.d.ts +2 -2
  5. package/dist/sdk/services/AgentService.d.ts +1 -1
  6. package/dist/sdk/services/AssetAttachmentService.d.ts +1 -1
  7. package/dist/sdk/services/AssetCommentService.d.ts +1 -1
  8. package/dist/sdk/services/AssetService.d.ts +1 -1
  9. package/dist/sdk/services/AssetTypeAttachmentService.d.ts +1 -1
  10. package/dist/sdk/services/AssetTypeFieldValuesAttachmentService.d.ts +1 -1
  11. package/dist/sdk/services/AssetTypeFieldValuesService.d.ts +1 -1
  12. package/dist/sdk/services/AssetTypeFieldsAttachmentService.d.ts +1 -1
  13. package/dist/sdk/services/AssetTypeFieldsService.d.ts +1 -1
  14. package/dist/sdk/services/AssetTypeIdentifierService.d.ts +1 -1
  15. package/dist/sdk/services/AssetTypeIdentifierValueService.d.ts +1 -1
  16. package/dist/sdk/services/AssetTypeService.d.ts +1 -1
  17. package/dist/sdk/services/AssetTypeStatusService.d.ts +1 -1
  18. package/dist/sdk/services/DocumentAttachmentService.d.ts +1 -1
  19. package/dist/sdk/services/DocumentService.d.ts +1 -1
  20. package/dist/sdk/services/EmailDomainsService.d.ts +1 -1
  21. package/dist/sdk/services/FileService.d.ts +1 -1
  22. package/dist/sdk/services/FormIdentifierService.d.ts +1 -1
  23. package/dist/sdk/services/FormIdentifierValueService.d.ts +1 -1
  24. package/dist/sdk/services/FormRevisionAttachmentService.d.ts +1 -1
  25. package/dist/sdk/services/FormRevisionService.d.ts +1 -1
  26. package/dist/sdk/services/FormService.d.ts +1 -1
  27. package/dist/sdk/services/FormSubmissionFieldValuesAttachmentService.d.ts +1 -1
  28. package/dist/sdk/services/FormSubmissionFieldValuesService.d.ts +1 -1
  29. package/dist/sdk/services/FormSubscriberService.d.ts +1 -1
  30. package/dist/sdk/services/GeoImageService.d.ts +1 -1
  31. package/dist/sdk/services/IssueAssociationService.d.ts +1 -1
  32. package/dist/sdk/services/IssueAttachmentService.d.ts +1 -1
  33. package/dist/sdk/services/IssueCommentAttachmentService.d.ts +1 -1
  34. package/dist/sdk/services/IssueCommentService.d.ts +1 -1
  35. package/dist/sdk/services/IssueService.d.ts +1 -1
  36. package/dist/sdk/services/IssueTypeAttachmentService.d.ts +1 -1
  37. package/dist/sdk/services/IssueTypeFieldValuesAttachmentService.d.ts +1 -1
  38. package/dist/sdk/services/IssueTypeFieldValuesService.d.ts +1 -1
  39. package/dist/sdk/services/IssueTypeFieldsAttachmentService.d.ts +1 -1
  40. package/dist/sdk/services/IssueTypeFieldsService.d.ts +1 -1
  41. package/dist/sdk/services/IssueTypeIdentifierService.d.ts +1 -1
  42. package/dist/sdk/services/IssueTypeIdentifierValueService.d.ts +1 -1
  43. package/dist/sdk/services/IssueTypePriorityService.d.ts +1 -1
  44. package/dist/sdk/services/IssueTypeService.d.ts +1 -1
  45. package/dist/sdk/services/IssueTypeStatusService.d.ts +1 -1
  46. package/dist/sdk/services/IssueUpdateService.d.ts +1 -3
  47. package/dist/sdk/services/JWTAuthService.d.ts +1 -1
  48. package/dist/sdk/services/OrganizationAccessService.d.ts +1 -1
  49. package/dist/sdk/services/OrganizationService.d.ts +1 -1
  50. package/dist/sdk/services/ProcdureInitiativeService.d.ts +1 -1
  51. package/dist/sdk/services/ProcedureFieldValuesAttachmentService.d.ts +1 -1
  52. package/dist/sdk/services/ProcedureFieldValuesService.d.ts +1 -1
  53. package/dist/sdk/services/ProcedureService.d.ts +1 -1
  54. package/dist/sdk/services/ProcedureStepAssigneeService.d.ts +1 -1
  55. package/dist/sdk/services/ProcedureStepCommentService.d.ts +1 -1
  56. package/dist/sdk/services/ProcedureStepDefaultAssigneeService.d.ts +1 -1
  57. package/dist/sdk/services/ProcedureStepDefaultReviewerService.d.ts +1 -1
  58. package/dist/sdk/services/ProcedureStepEventService.d.ts +1 -1
  59. package/dist/sdk/services/ProcedureStepFieldValuesAttachmentService.d.ts +1 -1
  60. package/dist/sdk/services/ProcedureStepFieldValuesReviewService.d.ts +1 -1
  61. package/dist/sdk/services/ProcedureStepFieldValuesService.d.ts +1 -1
  62. package/dist/sdk/services/ProcedureStepFieldsAttachmentService.d.ts +1 -1
  63. package/dist/sdk/services/ProcedureStepFieldsService.d.ts +1 -1
  64. package/dist/sdk/services/ProcedureStepReviewerService.d.ts +1 -1
  65. package/dist/sdk/services/ProcedureStepService.d.ts +1 -1
  66. package/dist/sdk/services/ProcedureTypeAttachmentService.d.ts +1 -1
  67. package/dist/sdk/services/ProcedureTypeFieldsAttachmentService.d.ts +1 -1
  68. package/dist/sdk/services/ProcedureTypeFieldsService.d.ts +1 -1
  69. package/dist/sdk/services/ProcedureTypeService.d.ts +1 -1
  70. package/dist/sdk/services/ProjectAccessService.d.ts +1 -1
  71. package/dist/sdk/services/ProjectAttachmentService.d.ts +1 -1
  72. package/dist/sdk/services/ProjectCommentService.d.ts +1 -1
  73. package/dist/sdk/services/ProjectFileService.d.ts +1 -1
  74. package/dist/sdk/services/ProjectService.d.ts +1 -1
  75. package/dist/sdk/services/TeamMembershipService.d.ts +1 -1
  76. package/dist/sdk/services/TeamService.d.ts +1 -1
  77. package/dist/sdk/services/UserService.d.ts +1 -1
  78. package/dist/sdk/services/index.d.ts +0 -1
  79. package/dist/sdk/typings.d.ts +1 -1
  80. package/dist/store/reducers.d.ts +0 -3
  81. package/dist/store/slices/agentsSlice.d.ts +1 -1
  82. package/dist/store/slices/assetAttachmentSlice.d.ts +1 -1
  83. package/dist/store/slices/assetCommentSlice.d.ts +1 -1
  84. package/dist/store/slices/assetSlice.d.ts +1 -2
  85. package/dist/store/slices/assetTypeAttachmentSlice.d.ts +1 -1
  86. package/dist/store/slices/assetTypeFieldValuesAttachmentSlice.d.ts +1 -2
  87. package/dist/store/slices/assetTypeFieldValuesSlice.d.ts +1 -2
  88. package/dist/store/slices/assetTypeFieldsAttachmentSlice.d.ts +1 -2
  89. package/dist/store/slices/assetTypeFieldsSlice.d.ts +1 -2
  90. package/dist/store/slices/assetTypeIdentifierSlice.d.ts +1 -1
  91. package/dist/store/slices/assetTypeIdentifierValueSlice.d.ts +1 -1
  92. package/dist/store/slices/assetTypeSlice.d.ts +1 -1
  93. package/dist/store/slices/assetTypeStatusSlice.d.ts +1 -2
  94. package/dist/store/slices/documentAttachmentSlice.d.ts +1 -1
  95. package/dist/store/slices/documentSlice.d.ts +1 -1
  96. package/dist/store/slices/emailDomainsSlice.d.ts +1 -2
  97. package/dist/store/slices/formIdentifierSlice.d.ts +1 -1
  98. package/dist/store/slices/formIdentifierValueSlice.d.ts +1 -1
  99. package/dist/store/slices/formRevisionAttachmentSlice.d.ts +1 -2
  100. package/dist/store/slices/formRevisionSlice.d.ts +1 -2
  101. package/dist/store/slices/formSlice.d.ts +1 -2
  102. package/dist/store/slices/formSubmissionFieldValuesAttachmentSlice.d.ts +1 -1
  103. package/dist/store/slices/formSubmissionFieldValuesSlice.d.ts +1 -1
  104. package/dist/store/slices/formSubmissionSlice.d.ts +1 -1
  105. package/dist/store/slices/formSubscriberSlice.d.ts +1 -1
  106. package/dist/store/slices/geoImageSlice.d.ts +1 -2
  107. package/dist/store/slices/index.d.ts +0 -1
  108. package/dist/store/slices/issueAssociationSlice.d.ts +1 -2
  109. package/dist/store/slices/issueAttachmentSlice.d.ts +1 -1
  110. package/dist/store/slices/issueCommentAttachmentSlice.d.ts +1 -1
  111. package/dist/store/slices/issueCommentSlice.d.ts +1 -1
  112. package/dist/store/slices/issueSlice.d.ts +1 -1
  113. package/dist/store/slices/issueTypeAttachmentSlice.d.ts +1 -1
  114. package/dist/store/slices/issueTypeFieldValuesAttachmentSlice.d.ts +1 -2
  115. package/dist/store/slices/issueTypeFieldValuesSlice.d.ts +1 -2
  116. package/dist/store/slices/issueTypeFieldsAttachmentSlice.d.ts +1 -2
  117. package/dist/store/slices/issueTypeFieldsSlice.d.ts +1 -2
  118. package/dist/store/slices/issueTypeIdentifierSlice.d.ts +1 -1
  119. package/dist/store/slices/issueTypeIdentifierValueSlice.d.ts +1 -1
  120. package/dist/store/slices/issueTypePrioritySlice.d.ts +1 -2
  121. package/dist/store/slices/issueTypeSlice.d.ts +1 -1
  122. package/dist/store/slices/issueTypeStatusSlice.d.ts +1 -2
  123. package/dist/store/slices/issueUpdateSlice.d.ts +1 -4
  124. package/dist/store/slices/organizationAccessSlice.d.ts +1 -1
  125. package/dist/store/slices/organizationSlice.d.ts +1 -2
  126. package/dist/store/slices/procedureFieldValuesSlice.d.ts +1 -2
  127. package/dist/store/slices/procedureInitiativeSlice.d.ts +1 -1
  128. package/dist/store/slices/procedureSlice.d.ts +1 -1
  129. package/dist/store/slices/procedureStepAssigneeSlice.d.ts +1 -2
  130. package/dist/store/slices/procedureStepCommentSlice.d.ts +1 -2
  131. package/dist/store/slices/procedureStepDefaultAssigneeSlice.d.ts +1 -2
  132. package/dist/store/slices/procedureStepDefaultReviewerSlice.d.ts +1 -2
  133. package/dist/store/slices/procedureStepEventSlice.d.ts +1 -2
  134. package/dist/store/slices/procedureStepFieldValuesAttachmentSlice.d.ts +1 -2
  135. package/dist/store/slices/procedureStepFieldValuesReviewSlice.d.ts +1 -2
  136. package/dist/store/slices/procedureStepFieldValuesSlice.d.ts +1 -2
  137. package/dist/store/slices/procedureStepFieldsAttachmentSlice.d.ts +1 -2
  138. package/dist/store/slices/procedureStepFieldsSlice.d.ts +1 -3
  139. package/dist/store/slices/procedureStepReviewerSlice.d.ts +1 -2
  140. package/dist/store/slices/procedureStepSlice.d.ts +1 -2
  141. package/dist/store/slices/procedureTypeAttachmentSlice.d.ts +1 -2
  142. package/dist/store/slices/procedureTypeFieldValuesAttachmentSlice.d.ts +1 -2
  143. package/dist/store/slices/procedureTypeFieldsAttachmentSlice.d.ts +1 -2
  144. package/dist/store/slices/procedureTypeFieldsSlice.d.ts +1 -1
  145. package/dist/store/slices/procedureTypeSlice.d.ts +1 -1
  146. package/dist/store/slices/projectAccessSlice.d.ts +1 -1
  147. package/dist/store/slices/projectAttachmentSlice.d.ts +1 -1
  148. package/dist/store/slices/projectCommentSlice.d.ts +1 -1
  149. package/dist/store/slices/projectFileSlice.d.ts +1 -2
  150. package/dist/store/slices/projectSlice.d.ts +1 -2
  151. package/dist/store/slices/teamMembershipSlice.d.ts +1 -1
  152. package/dist/store/slices/teamSlice.d.ts +1 -1
  153. package/dist/store/slices/userSlice.d.ts +1 -2
  154. package/dist/store/store.d.ts +1 -1
  155. package/dist/typings/models/assets.d.ts +1 -1
  156. package/dist/typings/models/forms.d.ts +0 -5
  157. package/dist/typings/models/issues.d.ts +1 -1
  158. package/dist/typings/models/procedures.d.ts +1 -1
  159. package/package.json +8 -11
  160. package/dist/sdk/services/FormSubmissionCommentService.d.ts +0 -28
  161. package/dist/store/slices/formSubmissionCommentSlice.d.ts +0 -23
@@ -1,14 +1,14 @@
1
- (function(i,k){typeof exports=="object"&&typeof module<"u"?k(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"],k):(i=typeof globalThis<"u"?globalThis:i||self,k(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,k,l,Ft,ht,i_,n_,Ma,a_,Ra,c_,Iw,Tw,r_,d_,u_){"use strict";var fw=Object.defineProperty;var Aw=(i,k,l)=>k in i?fw(i,k,{enumerable:!0,configurable:!0,writable:!0,value:l}):i[k]=l;var h=(i,k,l)=>Aw(i,typeof k!="symbol"?k+"":k,l);var t_;const wa=Object.freeze([]),va=Object.freeze({}),Ea=6e4,Va=["created_at","updated_at","index","revision"];var Ba=(t=>(t[t.GUEST=0]="GUEST",t[t.BASIC=2]="BASIC",t[t.ADMIN=4]="ADMIN",t))(Ba||{}),o=(t=>(t.GET="GET",t.POST="POST",t.PATCH="PATCH",t.PUT="PUT",t.DELETE="DELETE",t))(o||{}),za=(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))(za||{}),$=(t=>(t.STATUS="status",t.PRIORITY="priority",t.DESCRIPTION="description",t.TITLE="title",t.ASSIGNED_TO="assigned_to",t.DUE_DATE="due_date",t))($||{}),Da=(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))(Da||{}),ja=(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))(ja||{}),Ca=(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))(Ca||{}),qa=(t=>(t[t.APPROVED=0]="APPROVED",t[t.REJECTED=2]="REJECTED",t[t.CHANGES_REQUESTED=4]="CHANGES_REQUESTED",t))(qa||{});function F(t){return{addOne:(m,S)=>{const T=t(S.payload);T in m.instances||(m.instances[T]=S.payload)},addMany:(m,S)=>{for(const T of S.payload){const _=t(T);_ in m.instances||(m.instances[_]=T)}},updateOne:(m,S)=>{const T=t(S.payload);T in m.instances&&(m.instances[T]=S.payload)},setMany:(m,S)=>{for(const T of S.payload){const _=t(T);m.instances[_]=T}},setOne:(m,S)=>{const T=t(S.payload);m.instances[T]=S.payload},updateMany:(m,S)=>{for(const T of S.payload){const _=t(T);_ in m.instances&&(m.instances[_]=T)}},deleteOne:(m,S)=>{delete m.instances[S.payload]},deleteMany:(m,S)=>{for(const T of S.payload)delete m.instances[T]},initialize:(m,S)=>{m.instances={};const T=new Set;for(const _ of S.payload){const I=t(_);T.add(I),m.instances[I]=_}T.size!==S.payload.length&&console.warn("duplicate ids detected when initializing model instances.")}}}function l_(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 S of p.payload)m.has(S)||m.add(S);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 S of p.payload)m.has(S)&&m.delete(S);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 S of p.payload)m.has(S)?m.delete(S):m.add(S);d[t]=Array.from(m)}}}const O=l.createAction("RESET"),B=l.createAction("RESET_PROJECT_STATE"),b=l.createAction("RESET_ORGANIZATION_STATE");function o_(t,s){return i_.useMemo(t,s)}t_=Symbol.toStringTag;class ys{constructor(){h(this,t_,"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 Ss=!1;["true","1"].includes("".toLowerCase())&&(Ss=!0);function h_(t,s){if(t===s)return!0;if(typeof t!=typeof s)return!1;const e=Object.keys(t),n=Object.keys(s),a=e.length;if(a!==n.length)return!1;for(let r=0;r<a;r++){const c=e[r];if(!Object.prototype.hasOwnProperty.call(s,c)||t[c]!==s[c])return!1}return!0}function fs(t){const s={};return function(){const e=Array.prototype.slice.call(arguments);return e in s?(Ss&&console.debug(`Memoization debug: Using memorized return value for ${t.toString()}(`,e,")"),s[e]):(Ss&&console.debug(`Memoization debug: Cache miss! Memoizing ${t.toString()}(`,e,")"),s[e]=t.apply(this,e))}}function m_(t,s){if(t.length!==s.length)return!1;for(let e=0;e<t.length;e++)if(t[e]!==s[e])return!1;return!0}const f=t=>t.length===0?wa:t,As=t=>Object.keys(t).length===0?va:t,$a=fs(t=>{if(!t)return"";const s=new Date(t),e=s.getFullYear()===Is.getFullYear(),n={day:"numeric",month:"short"};return e||(n.year="numeric"),s.toLocaleDateString([],n)}),p_=new Intl.RelativeTimeFormat([],{style:"long",numeric:"auto"}),y_=1e3*86400,Is=new Date,S_=t=>new Date(t).toDateString()===Is.toDateString(),f_=fs((t,s,e)=>{const n=Math.round((new Date(t).getTime()-Is.getTime())/y_);return n<s||n>e?$a(t):p_.format(n,"days")});function A_(t){return new Uint8Array(t).reduce((e,n)=>e+n.toString(16).padStart(2,"0"),"")}function kt(t){return new Promise((s,e)=>{const n=new FileReader;n.onload=()=>{const a=n.result;if(!a){e(new Error("FileReader did not return a valid ArrayBuffer."));return}crypto.subtle.digest("SHA-1",a).then(r=>{const c=A_(r);s(c)})},n.readAsArrayBuffer(t)})}const Ua=async t=>{const s=await t.arrayBuffer();return new Blob([s],{type:t.type})},I_=(t,s)=>`${t}${s?`.${s}`:""}`;function T_(t,s){return new File([t],s,{type:t.type})}function La(t){const s=t.name;return s.includes(".")?s.split(".").pop():""}const ka=async t=>(await fetch(t)).blob(),Na=async(t,s)=>{const e=await ka(t);return new File([e],s,{type:e.type})};function Ga(t){return typeof t=="string"&&t.startsWith("blob:")}function Ha(t){return typeof t=="string"&&URL.canParse(t)&&t.startsWith("https://")&&t.includes(".cloudfront.net/")}function Wa(t){return typeof t=="string"&&URL.canParse(t)&&t.startsWith("https://")&&t.includes(".s3.amazonaws.com/")}function Ka(t){if(Ha(t)){const e=new URLSearchParams(t).get("Expires");if(!e)return null;const n=parseInt(e,10);return new Date(n*1e3)}if(Wa(t)){const s=new URLSearchParams(t),e=s.get("X-Amz-Date"),n=s.get("X-Amz-Expires");if(!e||!n)return null;const a=new Date(e.replace(/^(\d{4})(\d{2})(\d{2})T(\d{2})(\d{2})(\d{2})Z$/,"$1-$2-$3T$4:$5:$6Z")),r=parseInt(n);return new Date(a.getTime()+r*1e3)}return null}function Ya(t,s=30){const e=Ka(t);if(!e)return!1;const n=Date.now(),a=e.getTime(),r=s*1e3;return n+r>=a}function O_(t){return t.type.startsWith("image/")}const Za={};function P_(t,s,e,...n){const a=Za[t];let r=!1;a?a[s]||(a[s]=!0,r=!0):(Za[t]={[s]:!0},r=!0),r&&console[e](...n)}function P(t){return{...t,uuid:ht.v4()}}function F_(t){const s={};for(const e of t)s[e.uuid]=e;return s}function w(t){return t.map(({uuid:s})=>s)}function Ja(t,s){return t.localeCompare(s)}function mt(t,s){return Ja(t.uuid,s.uuid)}function b_(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 a=s?s.length:0;return n.length+a>e&&(n=n.slice(0,e-a)+(s||"")),n}function __(t){return t.toLowerCase().replace(" ","-")}function g_(t,s=!1){return t.normalize("NFKD").toLowerCase().replace(/[^\w\s-]/g,"").trim().replace(/[-\s]+/g,s?"_":"-")}function M_(t,s){if(t.length<=s)return t;const e=t.slice(0,s-1);return e.slice(0,e.lastIndexOf(" "))+"…"}const R_=/^.+@.+\..+$/,Xa=(t,s)=>t.type!==s.type?t.type-s.type:t.order-s.order,Qa=(t,s)=>t.type!==s.type?t.type-s.type:t.order-s.order,xa=(t,s)=>t.type!==s.type?t.type-s.type:t.order-s.order,ec=t=>n_(t,{id:s=>s.uuid,parentId:s=>s.parent_document,includeEmptyChildrenArray:!0,valueKey:!1}),w_=t=>{const{roots:s}=ec(t);return s.map(e=>new Ma.Tree(e))},tc=(t,s)=>{const{nodes:e}=ec(s),n=e.get(t);if(!n)throw new Error(`Node with uuid ${t} does not exist in document tree.`);return new Ma.Tree(n)},pt=(t,s)=>t.submitted_at===s.submitted_at?0:t.submitted_at<s.submitted_at?-1:1;class v_{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(a=>a[s]===e)),this}exclude(s,e){return this.operations.push(n=>n.filter(a=>a[s]!==e)),this}orderBy(s){return this.operations.push(e=>e.toSorted((n,a)=>n[s]<=a[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(a=>a[s]===e))}count(){return l.createSelector([this.getData],s=>this.performOperations(s).length)}first(){return l.createSelector([this.getData],s=>this.performOperations(s)[0])}last(){return l.createSelector([this.getData],s=>{const e=this.performOperations(s);return e[e.length-1]})}exists(){return l.createSelector([this.getData],s=>this.performOperations(s).length>0)}toSelector(){return l.createSelector([this.getData],s=>f(this.performOperations(s)))}}const y=t=>(...s)=>e=>t(e,...s),K=F(t=>t.uuid),sc={instances:{}},Ts=l.createSlice({name:"agents",initialState:sc,extraReducers:t=>t.addMatcher(l.isAnyOf(O,B,b),s=>Object.assign(s,sc)),reducers:{initializeConversations:K.initialize,addConversation:K.addOne,addConversations:K.addMany,setConversation:K.setOne,setConversations:K.setMany,updateConversation:K.updateOne,updateConversations:K.updateMany,deleteConversation:K.deleteOne,deleteConversations:K.deleteMany}}),{initializeConversations:ic,addConversation:nc,addConversations:E_,setConversation:ac,setConversations:V_,updateConversation:cc,updateConversations:B_,deleteConversation:z_,deleteConversations:D_}=Ts.actions,Os=t=>t.agentsReducer.instances,j_=l.createSelector([Os],t=>Object.values(t)),C_=y(l.createSelector([Os,(t,s)=>s],(t,s)=>t[s])),rc=Ts.reducer,Y=F(t=>t.uuid),dc={instances:{}},Ps=l.createSlice({name:"assetAttachments",initialState:dc,extraReducers:t=>t.addMatcher(l.isAnyOf(O,B,b),s=>Object.assign(s,dc)),reducers:{initializeAssetAttachments:Y.initialize,addAssetAttachment:Y.addOne,addAssetAttachments:Y.addMany,setAssetAttachment:Y.setOne,setAssetAttachments:Y.setMany,updateAssetAttachment:Y.updateOne,updateAssetAttachments:Y.updateMany,deleteAssetAttachment:Y.deleteOne,deleteAssetAttachments:Y.deleteMany}}),{initializeAssetAttachments:uc,addAssetAttachment:lc,addAssetAttachments:Fs,setAssetAttachment:oc,setAssetAttachments:hc,updateAssetAttachment:mc,updateAssetAttachments:pc,deleteAssetAttachment:yc,deleteAssetAttachments:bs}=Ps.actions,Sc=t=>t.assetAttachmentReducer.instances,_s=l.createSelector([Sc],t=>Object.values(t)),fc=t=>s=>s.assetAttachmentReducer.instances[t],Ac=y(l.createSelector([_s,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),Ic=y(l.createSelector([_s,(t,s)=>s],(t,s)=>f(t.filter(({asset:e})=>s===e)))),Tc=Ps.reducer,Z=F(t=>t.uuid),Oc={instances:{}},gs=l.createSlice({name:"assetComments",initialState:Oc,extraReducers:t=>t.addMatcher(l.isAnyOf(O,B,b),s=>Object.assign(s,Oc)),reducers:{initializeAssetComments:Z.initialize,addAssetComment:Z.addOne,addAssetComments:Z.addMany,setAssetComment:Z.setOne,setAssetComments:Z.setMany,updateAssetComment:Z.updateOne,updateAssetComments:Z.updateMany,deleteAssetComment:Z.deleteOne,deleteAssetComments:Z.deleteMany}}),{initializeAssetComments:Pc,addAssetComment:Fc,addAssetComments:Nt,setAssetComment:bc,setAssetComments:_c,updateAssetComment:gc,updateAssetComments:Mc,deleteAssetComment:Rc,deleteAssetComments:Gt}=gs.actions,wc=t=>t.assetCommentReducer.instances,Ht=l.createSelector([wc],t=>f(Object.values(t).toSorted(pt))),vc=t=>s=>s.assetCommentReducer.instances[t],Ec=y(l.createSelector([Ht,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),Vc=y(l.createSelector([Ht,(t,s)=>s],(t,s)=>f(t.filter(e=>e.asset===s)))),Bc=y(l.createSelector([Ht,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(n=>e.has(n.asset)))})),zc=gs.reducer,J=F(t=>t.uuid),Dc={instances:{}},Ms=l.createSlice({name:"assets",initialState:Dc,extraReducers:t=>t.addMatcher(l.isAnyOf(O,B,b),s=>Object.assign(s,Dc)),reducers:{initializeAssets:J.initialize,addAsset:J.addOne,addAssets:J.addMany,setAsset:J.setOne,setAssets:J.setMany,updateAsset:J.updateOne,updateAssets:J.updateMany,deleteAsset:J.deleteOne,deleteAssets:J.deleteMany}}),{initializeAssets:jc,addAsset:Cc,addAssets:Rs,updateAsset:qc,updateAssets:$c,deleteAsset:Uc,deleteAssets:ws,setAsset:Lc,setAssets:kc}=Ms.actions,Nc=t=>t.assetReducer.instances,Wt=l.createSelector([Nc],t=>f(Object.values(t))),q_=y(l.createSelector([Wt,(t,s)=>s],(t,s)=>f(t.filter(({project:e})=>e===s)))),Gc=y(l.createSelector([Wt,(t,s)=>s],(t,s)=>f(t.filter(e=>e.asset_type===s)))),Hc=t=>s=>s.assetReducer.instances[t],Wc=y(l.createSelector([Wt,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),Kc=Ms.reducer,X=F(t=>t.uuid),Yc={instances:{}},vs=l.createSlice({name:"assetTypeAttachments",initialState:Yc,extraReducers:t=>t.addMatcher(l.isAnyOf(O,b),s=>Object.assign(s,Yc)),reducers:{initializeAssetTypeAttachments:X.initialize,addAssetTypeAttachment:X.addOne,addAssetTypeAttachments:X.addMany,setAssetTypeAttachment:X.setOne,setAssetTypeAttachments:X.setMany,updateAssetTypeAttachment:X.updateOne,updateAssetTypeAttachments:X.updateMany,deleteAssetTypeAttachment:X.deleteOne,deleteAssetTypeAttachments:X.deleteMany}}),{initializeAssetTypeAttachments:Zc,addAssetTypeAttachment:Jc,addAssetTypeAttachments:Es,setAssetTypeAttachment:Xc,setAssetTypeAttachments:Qc,updateAssetTypeAttachment:xc,updateAssetTypeAttachments:er,deleteAssetTypeAttachment:tr,deleteAssetTypeAttachments:Vs}=vs.actions,sr=t=>t.assetTypeAttachmentReducer.instances,Bs=l.createSelector([sr],t=>Object.values(t)),ir=t=>s=>s.assetTypeAttachmentReducer.instances[t],nr=y(l.createSelector([Bs,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),ar=y(l.createSelector([Bs,(t,s)=>s],(t,s)=>f(t.filter(({asset_type:e})=>s===e)))),cr=vs.reducer,Q=F(t=>t.uuid),rr={instances:{}},zs=l.createSlice({name:"assetTypeFieldsAttachments",initialState:rr,extraReducers:t=>t.addMatcher(l.isAnyOf(O,b),s=>Object.assign(s,rr)),reducers:{initializeAssetTypeFieldsAttachments:Q.initialize,addAssetTypeFieldsAttachment:Q.addOne,addAssetTypeFieldsAttachments:Q.addMany,setAssetTypeFieldsAttachment:Q.setOne,setAssetTypeFieldsAttachments:Q.setMany,updateAssetTypeFieldsAttachment:Q.updateOne,updateAssetTypeFieldsAttachments:Q.updateMany,deleteAssetTypeFieldsAttachment:Q.deleteOne,deleteAssetTypeFieldsAttachments:Q.deleteMany}}),{initializeAssetTypeFieldsAttachments:dr,addAssetTypeFieldsAttachment:ur,addAssetTypeFieldsAttachments:lr,setAssetTypeFieldsAttachment:or,setAssetTypeFieldsAttachments:hr,updateAssetTypeFieldsAttachment:mr,updateAssetTypeFieldsAttachments:pr,deleteAssetTypeFieldsAttachment:yr,deleteAssetTypeFieldsAttachments:Sr}=zs.actions,fr=t=>t.assetTypeFieldsAttachmentReducer.instances,Ds=l.createSelector([fr],t=>Object.values(t)),$_=y(l.createSelector([Ds,(t,s)=>s],(t,s)=>f(t.filter(e=>e.fields_revision===s)))),Ar=t=>s=>s.assetTypeFieldsAttachmentReducer.instances[t],Ir=y(l.createSelector([Ds,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),Tr=zs.reducer,x=F(t=>t.uuid),Or={instances:{}},js=l.createSlice({name:"assetTypeFields",initialState:Or,extraReducers:t=>t.addMatcher(l.isAnyOf(O,b),s=>Object.assign(s,Or)),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:Pr,addAssetTypeFields:Fr,addAssetTypeFieldsMany:br,setAssetTypeFields:_r,setAssetTypeFieldsMany:gr,updateAssetTypeFields:Mr,updateAssetTypeFieldsMany:Rr,deleteAssetTypeFields:wr,deleteAssetTypeFieldsMany:vr}=js.actions,Er=t=>t.assetTypeFieldsReducer.instances,Bt=l.createSelector([Er],t=>Object.values(t)),U_=y(l.createSelector([Bt,(t,s)=>s],(t,s)=>f(t.filter(e=>e.asset_type===s)))),L_=y(l.createSelector([Bt,(t,s)=>s],(t,s)=>t.filter(e=>e.asset_type===s).toSorted(pt).pop())),Vr=t=>s=>s.assetTypeFieldsReducer.instances[t],Br=y(l.createSelector([Bt,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),zr=js.reducer,ee=F(t=>t.uuid),Dr={instances:{}},Cs=l.createSlice({name:"assetTypeFieldValuesAttachments",initialState:Dr,extraReducers:t=>t.addMatcher(l.isAnyOf(O,B,b),s=>Object.assign(s,Dr)),reducers:{initializeAssetTypeFieldValuesAttachments:ee.initialize,addAssetTypeFieldValuesAttachment:ee.addOne,addAssetTypeFieldValuesAttachments:ee.addMany,setAssetTypeFieldValuesAttachment:ee.setOne,setAssetTypeFieldValuesAttachments:ee.setMany,updateAssetTypeFieldValuesAttachment:ee.updateOne,updateAssetTypeFieldValuesAttachments:ee.updateMany,deleteAssetTypeFieldValuesAttachment:ee.deleteOne,deleteAssetTypeFieldValuesAttachments:ee.deleteMany}}),{initializeAssetTypeFieldValuesAttachments:jr,addAssetTypeFieldValuesAttachment:Cr,addAssetTypeFieldValuesAttachments:qs,setAssetTypeFieldValuesAttachment:qr,setAssetTypeFieldValuesAttachments:$r,updateAssetTypeFieldValuesAttachment:Ur,updateAssetTypeFieldValuesAttachments:Lr,deleteAssetTypeFieldValuesAttachment:kr,deleteAssetTypeFieldValuesAttachments:$s}=Cs.actions,Nr=t=>t.assetTypeFieldValuesAttachmentReducer.instances,Us=l.createSelector([Nr],t=>Object.values(t)),Gr=t=>s=>s.assetTypeFieldValuesAttachmentReducer.instances[t],Hr=y(l.createSelector([Us,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),Wr=y(l.createSelector([Us,(t,s)=>s],(t,s)=>f(t.filter(e=>e.field_values===s)))),Kr=Cs.reducer,te=F(t=>t.uuid),Yr={instances:{}},Ls=l.createSlice({name:"assetTypeFieldValues",initialState:Yr,extraReducers:t=>t.addMatcher(l.isAnyOf(O,B,b),s=>Object.assign(s,Yr)),reducers:{initializeAssetTypeFieldValues:te.initialize,addAssetTypeFieldValues:te.addOne,addAssetTypeFieldValuesMany:te.addMany,setAssetTypeFieldValues:te.setOne,setAssetTypeFieldValuesMany:te.setMany,updateAssetTypeFieldValues:te.updateOne,updateAssetTypeFieldValuesMany:te.updateMany,deleteAssetTypeFieldValues:te.deleteOne,deleteAssetTypeFieldValuesMany:te.deleteMany}}),{initializeAssetTypeFieldValues:Zr,addAssetTypeFieldValues:Jr,addAssetTypeFieldValuesMany:Xr,setAssetTypeFieldValues:Qr,setAssetTypeFieldValuesMany:xr,updateAssetTypeFieldValues:ed,updateAssetTypeFieldValuesMany:td,deleteAssetTypeFieldValues:sd,deleteAssetTypeFieldValuesMany:id}=Ls.actions,nd=t=>t.assetTypeFieldValuesReducer.instances,Kt=l.createSelector([nd],t=>Object.values(t)),k_=y(l.createSelector([Kt,(t,s)=>s],(t,s)=>f(t.filter(e=>e.asset===s)))),N_=y(l.createSelector([Bt,Kt,(t,s)=>s],(t,s,e)=>{const n=new Set(t.filter(a=>a.asset_type===e).map(a=>a.uuid));return f(s.filter(a=>n.has(a.fields_revision)))})),ad=t=>s=>s.assetTypeFieldValuesReducer.instances[t],cd=y(l.createSelector([Kt,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),rd=Ls.reducer,se=F(t=>t.uuid),dd={instances:{}},ks=l.createSlice({name:"assetTypeIdentifiers",initialState:dd,extraReducers:t=>t.addMatcher(l.isAnyOf(O,b),s=>Object.assign(s,dd)),reducers:{initializeAssetTypeIdentifiers:se.initialize,addAssetTypeIdentifier:se.addOne,addAssetTypeIdentifiers:se.addMany,setAssetTypeIdentifier:se.setOne,setAssetTypeIdentifiers:se.setMany,updateAssetTypeIdentifier:se.updateOne,updateAssetTypeIdentifiers:se.updateMany,deleteAssetTypeIdentifier:se.deleteOne,deleteAssetTypeIdentifiers:se.deleteMany}}),{initializeAssetTypeIdentifiers:ud,addAssetTypeIdentifier:ld,addAssetTypeIdentifiers:od,setAssetTypeIdentifier:hd,setAssetTypeIdentifiers:md,updateAssetTypeIdentifier:pd,updateAssetTypeIdentifiers:yd,deleteAssetTypeIdentifier:Sd,deleteAssetTypeIdentifiers:fd}=ks.actions,Ad=t=>t.assetTypeIdentifierReducer.instances,Ns=l.createSelector([Ad],t=>Object.values(t)),Id=t=>s=>s.assetTypeIdentifierReducer.instances[t],Td=y(l.createSelector([Ns,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),G_=y(l.createSelector([Ns,(t,s)=>s],(t,s)=>f(t.filter(e=>e.asset_type===s)))),Od=ks.reducer,ie=F(t=>t.uuid),Pd={instances:{}},Gs=l.createSlice({name:"assetTypeIdentifierValues",initialState:Pd,extraReducers:t=>t.addMatcher(l.isAnyOf(O,B,b),s=>Object.assign(s,Pd)),reducers:{initializeAssetTypeIdentifierValues:ie.initialize,addAssetTypeIdentifierValue:ie.addOne,addAssetTypeIdentifierValues:ie.addMany,setAssetTypeIdentifierValue:ie.setOne,setAssetTypeIdentifierValues:ie.setMany,updateAssetTypeIdentifierValue:ie.updateOne,updateAssetTypeIdentifierValues:ie.updateMany,deleteAssetTypeIdentifierValue:ie.deleteOne,deleteAssetTypeIdentifierValues:ie.deleteMany}}),{initializeAssetTypeIdentifierValues:Fd,addAssetTypeIdentifierValue:bd,addAssetTypeIdentifierValues:_d,setAssetTypeIdentifierValue:gd,setAssetTypeIdentifierValues:Md,updateAssetTypeIdentifierValue:Rd,updateAssetTypeIdentifierValues:wd,deleteAssetTypeIdentifierValue:vd,deleteAssetTypeIdentifierValues:Ed}=Gs.actions,Vd=t=>t.assetTypeIdentifierValueReducer.instances,Yt=l.createSelector([Vd],t=>Object.values(t)),Bd=t=>s=>s.assetTypeIdentifierValueReducer.instances[t],zd=y(l.createSelector([Yt,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),H_=y(l.createSelector([Yt,(t,s)=>s],(t,s)=>f(t.filter(e=>e.asset===s)))),W_=y(l.createSelector([Yt,(t,s)=>s],(t,s)=>f(t.filter(e=>e.asset_type_identifier===s)))),Dd=Gs.reducer,ne=F(t=>t.uuid),jd={instances:{}},Hs=l.createSlice({name:"assetTypes",initialState:jd,extraReducers:t=>t.addMatcher(l.isAnyOf(O,b),s=>Object.assign(s,jd)),reducers:{initializeAssetTypes:ne.initialize,setAssetType:ne.setOne,setAssetTypes:ne.setMany,addAssetType:ne.addOne,addAssetTypes:ne.addMany,updateAssetType:ne.updateOne,updateAssetTypes:ne.updateMany,deleteAssetType:ne.deleteOne,deleteAssetTypes:ne.deleteMany}}),{initializeAssetTypes:Cd,setAssetType:qd,setAssetTypes:$d,addAssetType:Ud,addAssetTypes:Ld,updateAssetType:kd,updateAssetTypes:Nd,deleteAssetType:Gd,deleteAssetTypes:Hd}=Hs.actions,Wd=t=>t.assetTypeReducer.instances,Ws=l.createSelector([Wd],t=>Object.values(t)),Kd=t=>s=>s.assetTypeReducer.instances[t],Yd=y(l.createSelector([Ws,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),K_=y(l.createSelector([Ws,(t,s)=>s],(t,s)=>f(t.filter(e=>e.organization===s)))),Zd=Hs.reducer,ae=F(t=>t.uuid),Jd={instances:{}},Ks=l.createSlice({name:"assetTypeStatuses",initialState:Jd,extraReducers:t=>t.addMatcher(l.isAnyOf(O,b),s=>Object.assign(s,Jd)),reducers:{initializeAssetTypeStatuses:ae.initialize,addAssetTypeStatus:ae.addOne,addAssetTypeStatuses:ae.addMany,setAssetTypeStatus:ae.setOne,setAssetTypeStatuses:ae.setMany,updateAssetTypeStatus:ae.updateOne,updateAssetTypeStatuses:ae.updateMany,deleteAssetTypeStatus:ae.deleteOne,deleteAssetTypeStatuses:ae.deleteMany}}),{initializeAssetTypeStatuses:Xd,addAssetTypeStatus:Qd,addAssetTypeStatuses:xd,setAssetTypeStatus:eu,setAssetTypeStatuses:tu,updateAssetTypeStatus:su,updateAssetTypeStatuses:iu,deleteAssetTypeStatus:nu,deleteAssetTypeStatuses:au}=Ks.actions,cu=t=>t.assetTypeStatusReducer.instances,Ys=l.createSelector([cu],t=>f(Object.values(t).toSorted(Xa))),ru=t=>s=>s.assetTypeStatusReducer.instances[t],du=y(l.createSelector([Ys,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),Y_=y(l.createSelector([Ys,(t,s)=>s],(t,s)=>f(t.filter(e=>e.asset_type===s)))),uu=Ks.reducer,lu={accessToken:"",refreshToken:"",isLoggedIn:!1},Zt=l.createSlice({name:"auth",initialState:lu,extraReducers:t=>t.addCase(O,s=>Object.assign(s,lu)),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||Zt.caseReducers.clearTokens(t),t.isLoggedIn=s.payload}}}),{setTokens:Z_,clearTokens:J_,setLoggedIn:ou}=Zt.actions,X_=t=>t.authReducer.accessToken,Q_=t=>t.authReducer.isLoggedIn,hu=Zt.reducer,ce=F(t=>t.uuid),mu={instances:{}},Zs=l.createSlice({name:"documentAttachments",initialState:mu,extraReducers:t=>t.addCase(O,s=>Object.assign(s,mu)),reducers:{initializeDocumentAttachments:ce.initialize,addDocumentAttachment:ce.addOne,addDocumentAttachments:ce.addMany,setDocumentAttachment:ce.setOne,setDocumentAttachments:ce.setMany,updateDocumentAttachment:ce.updateOne,updateDocumentAttachments:ce.updateMany,deleteDocumentAttachment:ce.deleteOne,deleteDocumentAttachments:ce.deleteMany}}),{initializeDocumentAttachments:pu,addDocumentAttachment:yu,addDocumentAttachments:Su,setDocumentAttachment:fu,setDocumentAttachments:Au,updateDocumentAttachment:Iu,updateDocumentAttachments:Tu,deleteDocumentAttachment:Ou,deleteDocumentAttachments:Pu}=Zs.actions,Fu=t=>t.documentAttachmentReducer.instances,Js=l.createSelector([Fu],t=>Object.values(t)),bu=t=>s=>s.documentAttachmentReducer.instances[t],_u=y(l.createSelector([Js,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),x_=y(l.createSelector([Js,(t,s)=>s],(t,s)=>f(t.filter(({document:e})=>s===e)))),gu=Zs.reducer,re=F(({uuid:t})=>t),Mu={instances:{}},Xs=l.createSlice({name:"documents",initialState:Mu,extraReducers:t=>t.addMatcher(l.isAnyOf(O,b),s=>{Object.assign(s,Mu)}),reducers:{initializeDocuments:re.initialize,addDocument:re.addOne,addDocuments:re.addMany,setDocument:re.setOne,setDocuments:re.setMany,updateDocument:re.updateOne,updateDocuments:re.updateMany,deleteDocument:re.deleteOne,deleteDocuments:re.deleteMany}}),{initializeDocuments:Ru,addDocument:wu,addDocuments:vu,setDocument:Eu,setDocuments:Vu,updateDocument:Bu,updateDocuments:zu,deleteDocument:Du,deleteDocuments:ju}=Xs.actions,Cu=Xs.reducer,Qs=t=>t.documentsReducer.instances,Jt=l.createSelector([Qs],t=>Object.values(t)),qu=t=>s=>s.documentsReducer.instances[t],$u=y(l.createSelector([Jt,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),eg=y(l.createSelector([Jt,(t,s)=>s],(t,s)=>t.filter(e=>e.project===s))),tg=y(l.createSelector([Jt,(t,s)=>s],(t,s)=>t.filter(e=>e.organization===s))),Uu=y(l.createSelector([Qs,(t,s)=>s],(t,s)=>{if(!t[s])return f([]);const a=tc(s,Object.values(t)).all().map(({model:r})=>r);return f(a)})),de=F(t=>t.uuid),Lu={instances:{}},xs=l.createSlice({name:"emailDomains",initialState:Lu,extraReducers:t=>t.addMatcher(l.isAnyOf(O,b),s=>Object.assign(s,Lu)),reducers:{initializeEmailDomains:de.initialize,addEmailDomain:de.addOne,addEmailDomains:de.addMany,setEmailDomain:de.setOne,setEmailDomains:de.setMany,updateEmailDomain:de.updateOne,updateEmailDomains:de.updateMany,deleteEmailDomain:de.deleteOne,deleteEmailDomains:de.deleteMany}}),{initializeEmailDomains:ku,addEmailDomain:Nu,addEmailDomains:Gu,setEmailDomain:Hu,setEmailDomains:Wu,updateEmailDomain:Ku,updateEmailDomains:Yu,deleteEmailDomain:Zu,deleteEmailDomains:Ju}=xs.actions,Xu=t=>t.emailDomainsReducer.instances,ei=l.createSelector([Xu],t=>Object.values(t)),Qu=t=>s=>s.emailDomainsReducer.instances[t],xu=y(l.createSelector([ei,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),sg=y(l.createSelector([ei,(t,s)=>s],(t,s)=>f(t.filter(e=>e.organization===s)))),el=xs.reducer,ue=F(t=>t.uuid),tl={instances:{}},ti=l.createSlice({name:"formIdentifiers",initialState:tl,extraReducers:t=>t.addMatcher(l.isAnyOf(O,b),s=>Object.assign(s,tl)),reducers:{initializeFormIdentifiers:ue.initialize,addFormIdentifier:ue.addOne,addFormIdentifiers:ue.addMany,setFormIdentifier:ue.setOne,setFormIdentifiers:ue.setMany,updateFormIdentifier:ue.updateOne,updateFormIdentifiers:ue.updateMany,deleteFormIdentifier:ue.deleteOne,deleteFormIdentifiers:ue.deleteMany}}),{initializeFormIdentifiers:sl,addFormIdentifier:il,addFormIdentifiers:nl,setFormIdentifier:al,setFormIdentifiers:cl,updateFormIdentifier:rl,updateFormIdentifiers:dl,deleteFormIdentifier:ul,deleteFormIdentifiers:ll}=ti.actions,ol=t=>t.formIdentifierReducer.instances,si=l.createSelector([ol],t=>Object.values(t)),hl=t=>s=>s.formIdentifierReducer.instances[t],ml=y(l.createSelector([si,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),ig=y(l.createSelector([si,(t,s)=>s],(t,s)=>f(t.filter(e=>e.form===s)))),pl=ti.reducer,le=F(t=>t.uuid),yl={instances:{}},ii=l.createSlice({name:"formIdentifierValues",initialState:yl,extraReducers:t=>t.addMatcher(l.isAnyOf(O,b),s=>Object.assign(s,yl)),reducers:{initializeFormIdentifierValues:le.initialize,addFormIdentifierValue:le.addOne,addFormIdentifierValues:le.addMany,setFormIdentifierValue:le.setOne,setFormIdentifierValues:le.setMany,updateFormIdentifierValue:le.updateOne,updateFormIdentifierValues:le.updateMany,deleteFormIdentifierValue:le.deleteOne,deleteFormIdentifierValues:le.deleteMany}}),{initializeFormIdentifierValues:Sl,addFormIdentifierValue:fl,addFormIdentifierValues:Al,setFormIdentifierValue:Il,setFormIdentifierValues:Tl,updateFormIdentifierValue:Ol,updateFormIdentifierValues:Pl,deleteFormIdentifierValue:Fl,deleteFormIdentifierValues:bl}=ii.actions,_l=t=>t.formIdentifierValueReducer.instances,Xt=l.createSelector([_l],t=>Object.values(t)),gl=t=>s=>s.formIdentifierValueReducer.instances[t],Ml=y(l.createSelector([Xt,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),ng=y(l.createSelector([Xt,(t,s)=>s],(t,s)=>f(t.filter(e=>e.form_submission===s)))),ag=y(l.createSelector([Xt,(t,s)=>s],(t,s)=>f(t.filter(e=>e.form_identifier===s)))),Rl=ii.reducer,oe=F(t=>t.uuid),wl={instances:{}},ni=l.createSlice({name:"formRevisionAttachments",initialState:wl,extraReducers:t=>t.addMatcher(l.isAnyOf(O,b),s=>Object.assign(s,wl)),reducers:{initializeFormRevisionAttachments:oe.initialize,addFormRevisionAttachment:oe.addOne,addFormRevisionAttachments:oe.addMany,setFormRevisionAttachment:oe.setOne,setFormRevisionAttachments:oe.setMany,updateFormRevisionAttachment:oe.updateOne,updateFormRevisionAttachments:oe.updateMany,deleteFormRevisionAttachment:oe.deleteOne,deleteFormRevisionAttachments:oe.deleteMany}}),{initializeFormRevisionAttachments:vl,addFormRevisionAttachment:El,addFormRevisionAttachments:Vl,setFormRevisionAttachment:Bl,setFormRevisionAttachments:zl,updateFormRevisionAttachment:Dl,updateFormRevisionAttachments:jl,deleteFormRevisionAttachment:Cl,deleteFormRevisionAttachments:ql}=ni.actions,Qt=t=>t.formRevisionAttachmentReducer.instances,$l=l.createSelector([Qt],t=>Object.values(t)),Ul=y(l.createSelector([Qt,(t,s)=>s],(t,s)=>t[s])),Ll=y(l.createSelector([$l,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),cg=y(l.createSelector([Qt,(t,s)=>s],(t,s)=>f(Object.values(t).filter(e=>e.form_revision===s)))),kl=ni.reducer,he=F(t=>t.uuid),Nl={instances:{}},ai=l.createSlice({name:"formRevisions",initialState:Nl,extraReducers:t=>t.addMatcher(l.isAnyOf(O,b),s=>Object.assign(s,Nl)),reducers:{initializeFormRevisions:he.initialize,addFormRevision:he.addOne,addFormRevisions:he.addMany,setFormRevision:he.setOne,setFormRevisions:he.setMany,updateFormRevision:he.updateOne,updateFormRevisions:he.updateMany,deleteFormRevision:he.deleteOne,deleteFormRevisions:he.deleteMany}}),{initializeFormRevisions:Gl,addFormRevision:Hl,addFormRevisions:ci,setFormRevision:Wl,setFormRevisions:Kl,updateFormRevision:Yl,updateFormRevisions:Zl,deleteFormRevision:Jl,deleteFormRevisions:ri}=ai.actions,Xl=t=>t.formRevisionReducer.instances,xt=l.createSelector([Xl],t=>Object.values(t)),Ql=t=>s=>s.formRevisionReducer.instances[t],xl=y(l.createSelector([xt,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),rg=y(l.createSelector([xt,(t,s)=>s],(t,s)=>t.filter(e=>e.form===s).toSorted(pt).pop())),eo=y(l.createSelector([xt,(t,s)=>s],(t,s)=>f(t.filter(e=>e.form===s)))),to=ai.reducer,me=F(t=>t.uuid),so={instances:{}},di=l.createSlice({name:"formSubscribers",initialState:so,extraReducers:t=>t.addMatcher(l.isAnyOf(O,b),s=>Object.assign(s,so)),reducers:{initializeFormSubscribers:me.initialize,addFormSubscriber:me.addOne,addFormSubscribers:me.addMany,setFormSubscriber:me.setOne,setFormSubscribers:me.setMany,updateFormSubscriber:me.updateOne,updateFormSubscribers:me.updateMany,deleteFormSubscriber:me.deleteOne,deleteFormSubscribers:me.deleteMany}}),{initializeFormSubscribers:io,addFormSubscriber:no,addFormSubscribers:ui,setFormSubscriber:ao,setFormSubscribers:co,updateFormSubscriber:ro,updateFormSubscribers:uo,deleteFormSubscriber:lo,deleteFormSubscribers:li}=di.actions,oo=t=>t.formSubscriberReducer.instances,es=l.createSelector([oo],t=>Object.values(t)),ho=t=>s=>s.formSubscriberReducer.instances[t],mo=y(l.createSelector([es,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),po=y(l.createSelector([es,(t,s)=>s],(t,s)=>f(t.filter(e=>e.form===s)))),dg=y(l.createSelector([es,(t,s)=>s],(t,s)=>f(t.filter(e=>e.user===s)))),yo=di.reducer,pe=F(t=>t.uuid),So={instances:{}},oi=l.createSlice({name:"forms",initialState:So,extraReducers:t=>t.addMatcher(l.isAnyOf(O,b),s=>Object.assign(s,So)),reducers:{initializeForms:pe.initialize,addForm:pe.addOne,addForms:pe.addMany,setForm:pe.setOne,setForms:pe.setMany,updateForm:pe.updateOne,updateForms:pe.updateMany,deleteForm:pe.deleteOne,deleteForms:pe.deleteMany}}),{initializeForms:fo,addForm:Ao,addForms:Io,setForm:To,setForms:Oo,updateForm:Po,updateForms:Fo,deleteForm:bo,deleteForms:_o}=oi.actions,go=oi.reducer,Mo=t=>t.formReducer.instances,hi=l.createSelector([Mo],t=>Object.values(t)),Ro=t=>s=>s.formReducer.instances[t],wo=y(l.createSelector([hi,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),ug=y(l.createSelector([hi,(t,s)=>s],(t,s)=>f(t.filter(e=>e.organization===s)))),ye=F(({uuid:t})=>t),vo={instances:{}},mi=l.createSlice({name:"formSubmissionFieldValuesAttachments",initialState:vo,extraReducers:t=>t.addMatcher(l.isAnyOf(O,b),s=>Object.assign(s,vo)),reducers:{initializeFormSubmissionFieldValuesAttachments:ye.initialize,addFormSubmissionFieldValuesAttachment:ye.addOne,addFormSubmissionFieldValuesAttachments:ye.addMany,setFormSubmissionFieldValuesAttachment:ye.setOne,setFormSubmissionFieldValuesAttachments:ye.setMany,updateFormSubmissionFieldValuesAttachment:ye.updateOne,updateFormSubmissionFieldValuesAttachments:ye.updateMany,deleteFormSubmissionFieldValuesAttachment:ye.deleteOne,deleteFormSubmissionFieldValuesAttachments:ye.deleteMany}}),{initializeFormSubmissionFieldValuesAttachments:Eo,addFormSubmissionFieldValuesAttachment:Vo,addFormSubmissionFieldValuesAttachments:pi,setFormSubmissionFieldValuesAttachment:Bo,setFormSubmissionFieldValuesAttachments:zo,updateFormSubmissionFieldValuesAttachment:Do,updateFormSubmissionFieldValuesAttachments:jo,deleteFormSubmissionFieldValuesAttachment:Co,deleteFormSubmissionFieldValuesAttachments:yi}=mi.actions,Si=t=>t.formSubmissionFieldValuesAttachmentReducer.instances,fi=l.createSelector([Si],t=>Object.values(t)),qo=y(l.createSelector([Si,(t,s)=>s],(t,s)=>t[s])),Ai=y(l.createSelector([fi,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(n=>e.has(n.uuid)))})),$o=y(l.createSelector([fi,(t,s)=>s],(t,s)=>f(t.filter(e=>e.field_values===s)))),Uo=mi.reducer,Se=F(({uuid:t})=>t),Lo={instances:{}},Ii=l.createSlice({name:"formSubmissionFieldValues",initialState:Lo,extraReducers:t=>t.addMatcher(l.isAnyOf(O,b),s=>Object.assign(s,Lo)),reducers:{initializeFormSubmissionFieldValues:Se.initialize,addFormSubmissionFieldValues:Se.addOne,addFormSubmissionFieldValuesMany:Se.addMany,setFormSubmissionFieldValues:Se.setOne,setFormSubmissionFieldValuesMany:Se.setMany,updateFormSubmissionFieldValues:Se.updateOne,updateFormSubmissionFieldValuesMany:Se.updateMany,deleteFormSubmissionFieldValues:Se.deleteOne,deleteFormSubmissionFieldValuesMany:Se.deleteMany}}),{initializeFormSubmissionFieldValues:ko,addFormSubmissionFieldValues:No,addFormSubmissionFieldValuesMany:Ti,setFormSubmissionFieldValues:Go,setFormSubmissionFieldValuesMany:Ho,updateFormSubmissionFieldValues:Wo,updateFormSubmissionFieldValuesMany:Ko,deleteFormSubmissionFieldValues:Yo,deleteFormSubmissionFieldValuesMany:Oi}=Ii.actions,Zo=t=>t.formSubmissionFieldValuesReducer.instances,Pi=l.createSelector([Zo],t=>Object.values(t)),Jo=t=>s=>s.formSubmissionFieldValuesReducer.instances[t],Xo=y(l.createSelector([Pi,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),Qo=y(l.createSelector([Pi,(t,s)=>s],(t,s)=>f(t.filter(e=>e.form_submission===s)))),xo=Ii.reducer,fe=F(t=>t.uuid),eh={instances:{}},Fi=l.createSlice({name:"formSubmissionComments",initialState:eh,extraReducers:t=>t.addMatcher(l.isAnyOf(O,b),s=>Object.assign(s,eh)),reducers:{initializeFormSubmissionComments:fe.initialize,addFormSubmissionComment:fe.addOne,addFormSubmissionComments:fe.addMany,setFormSubmissionComment:fe.setOne,setFormSubmissionComments:fe.setMany,updateFormSubmissionComment:fe.updateOne,updateFormSubmissionComments:fe.updateMany,deleteFormSubmissionComment:fe.deleteOne,deleteFormSubmissionComments:fe.deleteMany}}),{initializeFormSubmissionComments:th,addFormSubmissionComment:sh,addFormSubmissionComments:bi,setFormSubmissionComment:ih,setFormSubmissionComments:nh,updateFormSubmissionComment:ah,updateFormSubmissionComments:ch,deleteFormSubmissionComment:rh,deleteFormSubmissionComments:_i}=Fi.actions,dh=t=>t.formSubmissionCommentReducer.instances,ts=l.createSelector([dh],t=>f(Object.values(t).toSorted(pt))),uh=t=>s=>s.formSubmissionCommentReducer.instances[t],lh=y(l.createSelector([ts,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),oh=y(l.createSelector([ts,(t,s)=>s],(t,s)=>f(t.filter(e=>e.form_submission===s)))),lg=y(l.createSelector([ts,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(n=>e.has(n.form_submission)))})),hh=Fi.reducer,Ae=F(t=>t.uuid),mh={instances:{}},gi=l.createSlice({name:"formSubmissions",initialState:mh,extraReducers:t=>t.addMatcher(l.isAnyOf(O,b),s=>Object.assign(s,mh)),reducers:{initializeFormSubmissions:Ae.initialize,setFormSubmission:Ae.setOne,setFormSubmissions:Ae.setMany,addFormSubmission:Ae.addOne,addFormSubmissions:Ae.addMany,updateFormSubmission:Ae.updateOne,updateFormSubmissions:Ae.updateMany,deleteFormSubmission:Ae.deleteOne,deleteFormSubmissions:Ae.deleteMany}}),{initializeFormSubmissions:ph,setFormSubmission:yh,setFormSubmissions:Sh,addFormSubmission:fh,addFormSubmissions:yt,updateFormSubmission:Ah,updateFormSubmissions:Ih,deleteFormSubmission:Th,deleteFormSubmissions:St}=gi.actions,Oh=t=>t.formSubmissionReducer.instances,G=l.createSelector([Oh],t=>Object.values(t)),Ph=t=>s=>s.formSubmissionReducer.instances[t],Fh=y(l.createSelector([G,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),bh=y(l.createSelector([G,(t,s)=>s],(t,s)=>f(t.filter(e=>e.form===s)))),og=y(l.createSelector([G,(t,s)=>s],(t,s)=>f(t.filter(({organization:e})=>e===s)))),hg=y(l.createSelector([G,(t,s)=>s],(t,s)=>f(t.filter(({project:e})=>e===s)))),mg=y(l.createSelector([G,(t,s)=>s,(t,s,e)=>e],(t,s,e)=>f(t.filter(({project:n,form:a})=>n===s&&a===e)))),pg=y(l.createSelector([G,(t,s)=>s,(t,s,e)=>e],(t,s,e)=>f(t.filter(({organization:n,form:a})=>n===s&&a===e)))),_h=y(l.createSelector([G,(t,s)=>s],(t,s)=>f(t.filter(({issue:e})=>e===s)))),gh=y(l.createSelector([G,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({issue:n})=>n&&e.has(n)))})),Mh=y(l.createSelector([G,(t,s)=>s],(t,s)=>f(t.filter(({asset:e})=>e===s)))),Rh=y(l.createSelector([G,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({asset:n})=>n&&e.has(n)))})),wh=gi.reducer,Ie=F(t=>t.uuid),vh={instances:{}},Mi=l.createSlice({name:"geoImages",initialState:vh,extraReducers:t=>t.addMatcher(l.isAnyOf(O,B,b),s=>Object.assign(s,vh)),reducers:{initializeGeoImages:Ie.initialize,setGeoImage:Ie.setOne,setGeoImages:Ie.setMany,addGeoImage:Ie.addOne,addGeoImages:Ie.addMany,updateGeoImage:Ie.updateOne,updateGeoImages:Ie.updateMany,deleteGeoImage:Ie.deleteOne,deleteGeoImages:Ie.deleteMany}}),{initializeGeoImages:Eh,setGeoImage:Vh,setGeoImages:Bh,addGeoImage:zh,addGeoImages:Dh,updateGeoImage:jh,updateGeoImages:Ch,deleteGeoImage:qh,deleteGeoImages:$h}=Mi.actions,Uh=t=>t.geoImageReducer.instances,Ri=l.createSelector([Uh],t=>Object.values(t)),Lh=t=>s=>s.geoImageReducer.instances[t],kh=y(l.createSelector([Ri,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),yg=y(l.createSelector([Ri,(t,s)=>s],(t,s)=>f(t.filter(e=>e.project===s)))),Nh=Mi.reducer,Te=F(t=>t.uuid),Gh={instances:{}},wi=l.createSlice({name:"issueAssociations",initialState:Gh,extraReducers:t=>t.addMatcher(l.isAnyOf(O,B,b),s=>Object.assign(s,Gh)),reducers:{initializeIssueAssociations:Te.initialize,addIssueAssociation:Te.addOne,addIssueAssociations:Te.addMany,setIssueAssociation:Te.setOne,setIssueAssociations:Te.setMany,updateIssueAssociation:Te.updateOne,updateIssueAssociations:Te.updateMany,deleteIssueAssociation:Te.deleteOne,deleteIssueAssociations:Te.deleteMany}}),{initializeIssueAssociations:Hh,setIssueAssociations:Wh,setIssueAssociation:Kh,updateIssueAssociation:Yh,updateIssueAssociations:Zh,addIssueAssociation:Jh,addIssueAssociations:bt,deleteIssueAssociation:Xh,deleteIssueAssociations:_t}=wi.actions,Qh=t=>t.issueAssociationReducer.instances,gt=l.createSelector([Qh],t=>Object.values(t)),xh=t=>s=>s.issueAssociationReducer.instances[t],em=y(l.createSelector([gt,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),tm=y(l.createSelector([gt,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({issue:n})=>e.has(n)))})),sm=y(l.createSelector([gt,(t,s)=>s],(t,s)=>f(t.filter(({issue:e})=>e===s)))),im=y(l.createSelector([gt,(t,s)=>s],(t,s)=>f(t.filter(({asset:e})=>e===s)))),nm=y(l.createSelector([gt,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({asset:n})=>e.has(n)))})),am=wi.reducer,Oe=F(t=>t.uuid),cm={instances:{}},vi=l.createSlice({name:"issueAttachments",initialState:cm,extraReducers:t=>t.addMatcher(l.isAnyOf(O,B,b),s=>Object.assign(s,cm)),reducers:{initializeIssueAttachments:Oe.initialize,addIssueAttachment:Oe.addOne,addIssueAttachments:Oe.addMany,setIssueAttachment:Oe.setOne,setIssueAttachments:Oe.setMany,updateIssueAttachment:Oe.updateOne,updateIssueAttachments:Oe.updateMany,deleteIssueAttachment:Oe.deleteOne,deleteIssueAttachments:Oe.deleteMany}}),{initializeIssueAttachments:rm,addIssueAttachment:dm,addIssueAttachments:Ei,setIssueAttachment:um,setIssueAttachments:lm,updateIssueAttachment:om,updateIssueAttachments:hm,deleteIssueAttachment:mm,deleteIssueAttachments:Vi}=vi.actions,pm=t=>t.issueAttachmentReducer.instances,Bi=l.createSelector([pm],t=>Object.values(t)),ym=y(l.createSelector([Bi,(t,s)=>s],(t,s)=>f(t.filter(({issue:e})=>s===e)))),Sm=t=>s=>s.issueAttachmentReducer.instances[t],fm=y(l.createSelector([Bi,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),Am=vi.reducer,Pe=F(t=>t.uuid),Im={instances:{}},zi=l.createSlice({name:"issueCommentAttachments",initialState:Im,extraReducers:t=>t.addMatcher(l.isAnyOf(O,B,b),s=>Object.assign(s,Im)),reducers:{initializeIssueCommentAttachments:Pe.initialize,addIssueCommentAttachment:Pe.addOne,addIssueCommentAttachments:Pe.addMany,setIssueCommentAttachment:Pe.setOne,setIssueCommentAttachments:Pe.setMany,updateIssueCommentAttachment:Pe.updateOne,updateIssueCommentAttachments:Pe.updateMany,deleteIssueCommentAttachment:Pe.deleteOne,deleteIssueCommentAttachments:Pe.deleteMany}}),{initializeIssueCommentAttachments:Tm,addIssueCommentAttachment:Om,addIssueCommentAttachments:Pm,setIssueCommentAttachment:Fm,setIssueCommentAttachments:bm,updateIssueCommentAttachment:_m,updateIssueCommentAttachments:gm,deleteIssueCommentAttachment:Mm,deleteIssueCommentAttachments:Rm}=zi.actions,wm=t=>t.issueCommentAttachmentReducer.instances,Di=l.createSelector([wm],t=>Object.values(t)),vm=t=>s=>s.issueCommentAttachmentReducer.instances[t],Em=y(l.createSelector([Di,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),Sg=y(l.createSelector([Di,(t,s)=>s],(t,s)=>f(t.filter(({issue_comment:e})=>s===e)))),Vm=zi.reducer,Fe=F(t=>t.uuid),Bm={instances:{}},ji=l.createSlice({name:"issueComments",initialState:Bm,extraReducers:t=>t.addMatcher(l.isAnyOf(O,B,b),s=>Object.assign(s,Bm)),reducers:{initializeIssueComments:Fe.initialize,addIssueComment:Fe.addOne,addIssueComments:Fe.addMany,setIssueComment:Fe.setOne,setIssueComments:Fe.setMany,updateIssueComment:Fe.updateOne,updateIssueComments:Fe.updateMany,deleteIssueComment:Fe.deleteOne,deleteIssueComments:Fe.deleteMany}}),{initializeIssueComments:zm,addIssueComment:Dm,addIssueComments:jm,setIssueComment:Cm,setIssueComments:qm,updateIssueComment:$m,updateIssueComments:Um,deleteIssueComment:Lm,deleteIssueComments:km}=ji.actions,Ci=t=>t.issueCommentReducer.instances,Nm=t=>s=>s.issueCommentReducer.instances[t],Gm=y(l.createSelector([Ci,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(Object.values(t).filter(({uuid:n})=>e.has(n)))})),fg=y(l.createSelector([Ci,(t,s)=>s],(t,s)=>f(Object.values(t).filter(e=>e.issue===s)))),Hm=ji.reducer,be=F(t=>t.uuid),Wm={instances:{}},qi=l.createSlice({name:"issues",initialState:Wm,extraReducers:t=>t.addMatcher(l.isAnyOf(O,B,b),s=>Object.assign(s,Wm)),reducers:{initializeIssues:be.initialize,addIssue:be.addOne,addIssues:be.addMany,setIssue:be.setOne,setIssues:be.setMany,updateIssue:be.updateOne,updateIssues:be.updateMany,deleteIssue:be.deleteOne,deleteIssues:be.deleteMany}}),{initializeIssues:Km,addIssue:Ym,addIssues:$i,setIssue:Zm,setIssues:Jm,updateIssue:Xm,updateIssues:Qm,deleteIssue:xm,deleteIssues:Ui}=qi.actions,ep=t=>t.issueReducer.instances,ss=l.createSelector([ep],t=>Object.values(t)),tp=t=>s=>s.issueReducer.instances[t],sp=y(l.createSelector([ss,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),Ag=y(l.createSelector([ss,(t,s)=>s],(t,s)=>t.filter(e=>e.project===s))),ip=y(l.createSelector([ss,(t,s)=>s],(t,s)=>t.filter(e=>e.issue_type===s))),np=qi.reducer,_e=F(t=>t.uuid),ap={instances:{}},Li=l.createSlice({name:"issueTypeAttachments",initialState:ap,extraReducers:t=>t.addMatcher(l.isAnyOf(O,b),s=>Object.assign(s,ap)),reducers:{initializeIssueTypeAttachments:_e.initialize,addIssueTypeAttachment:_e.addOne,addIssueTypeAttachments:_e.addMany,setIssueTypeAttachment:_e.setOne,setIssueTypeAttachments:_e.setMany,updateIssueTypeAttachment:_e.updateOne,updateIssueTypeAttachments:_e.updateMany,deleteIssueTypeAttachment:_e.deleteOne,deleteIssueTypeAttachments:_e.deleteMany}}),{initializeIssueTypeAttachments:cp,addIssueTypeAttachment:rp,addIssueTypeAttachments:dp,setIssueTypeAttachment:up,setIssueTypeAttachments:lp,updateIssueTypeAttachment:op,updateIssueTypeAttachments:hp,deleteIssueTypeAttachment:mp,deleteIssueTypeAttachments:pp}=Li.actions,yp=t=>t.issueTypeAttachmentReducer.instances,ki=l.createSelector([yp],t=>Object.values(t)),Sp=t=>s=>s.issueTypeAttachmentReducer.instances[t],fp=y(l.createSelector([ki,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),Ig=y(l.createSelector([ki,(t,s)=>s],(t,s)=>f(t.filter(({issue_type:e})=>s===e)))),Ap=Li.reducer,ge=F(t=>t.uuid),Ip={instances:{}},Ni=l.createSlice({name:"issueTypeFieldsAttachments",initialState:Ip,extraReducers:t=>t.addMatcher(l.isAnyOf(O,b),s=>Object.assign(s,Ip)),reducers:{initializeIssueTypeFieldsAttachments:ge.initialize,addIssueTypeFieldsAttachment:ge.addOne,addIssueTypeFieldsAttachments:ge.addMany,setIssueTypeFieldsAttachment:ge.setOne,setIssueTypeFieldsAttachments:ge.setMany,updateIssueTypeFieldsAttachment:ge.updateOne,updateIssueTypeFieldsAttachments:ge.updateMany,deleteIssueTypeFieldsAttachment:ge.deleteOne,deleteIssueTypeFieldsAttachments:ge.deleteMany}}),{initializeIssueTypeFieldsAttachments:Tp,addIssueTypeFieldsAttachment:Op,addIssueTypeFieldsAttachments:Pp,setIssueTypeFieldsAttachment:Fp,setIssueTypeFieldsAttachments:bp,updateIssueTypeFieldsAttachment:_p,updateIssueTypeFieldsAttachments:gp,deleteIssueTypeFieldsAttachment:Mp,deleteIssueTypeFieldsAttachments:Rp}=Ni.actions,wp=t=>t.issueTypeFieldsAttachmentReducer.instances,Gi=l.createSelector([wp],t=>Object.values(t)),Tg=y(l.createSelector([Gi,(t,s)=>s],(t,s)=>f(t.filter(e=>e.fields_revision===s)))),vp=t=>s=>s.issueTypeFieldsAttachmentReducer.instances[t],Ep=y(l.createSelector([Gi,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),Vp=Ni.reducer,Me=F(t=>t.uuid),Bp={instances:{}},Hi=l.createSlice({name:"issueTypeFieldValues",initialState:Bp,extraReducers:t=>t.addMatcher(l.isAnyOf(O,B,b),s=>Object.assign(s,Bp)),reducers:{initializeIssueTypeFieldValues:Me.initialize,addIssueTypeFieldValues:Me.addOne,addIssueTypeFieldValuesMany:Me.addMany,setIssueTypeFieldValues:Me.setOne,setIssueTypeFieldValuesMany:Me.setMany,updateIssueTypeFieldValues:Me.updateOne,updateIssueTypeFieldValuesMany:Me.updateMany,deleteIssueTypeFieldValues:Me.deleteOne,deleteIssueTypeFieldValuesMany:Me.deleteMany}}),{initializeIssueTypeFieldValues:zp,addIssueTypeFieldValues:Dp,addIssueTypeFieldValuesMany:jp,setIssueTypeFieldValues:Cp,setIssueTypeFieldValuesMany:qp,updateIssueTypeFieldValues:$p,updateIssueTypeFieldValuesMany:Up,deleteIssueTypeFieldValues:Lp,deleteIssueTypeFieldValuesMany:kp}=Hi.actions,Np=t=>t.issueTypeFieldValuesReducer.instances,is=l.createSelector([Np],t=>Object.values(t)),Og=y(l.createSelector([is,(t,s)=>s],(t,s)=>f(t.filter(e=>e.issue===s)))),Gp=t=>s=>s.issueTypeFieldValuesReducer.instances[t],Hp=y(l.createSelector([is,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),Wp=Hi.reducer,Re=F(t=>t.uuid),Kp={instances:{}},Wi=l.createSlice({name:"issueTypeFields",initialState:Kp,extraReducers:t=>t.addMatcher(l.isAnyOf(O,b),s=>Object.assign(s,Kp)),reducers:{initializeIssueTypeFields:Re.initialize,addIssueTypeFields:Re.addOne,addIssueTypeFieldsMany:Re.addMany,setIssueTypeFields:Re.setOne,setIssueTypeFieldsMany:Re.setMany,updateIssueTypeFields:Re.updateOne,updateIssueTypeFieldsMany:Re.updateMany,deleteIssueTypeFields:Re.deleteOne,deleteIssueTypeFieldsMany:Re.deleteMany}}),{initializeIssueTypeFields:Yp,addIssueTypeFields:Zp,addIssueTypeFieldsMany:Jp,setIssueTypeFields:Xp,setIssueTypeFieldsMany:Qp,updateIssueTypeFields:xp,updateIssueTypeFieldsMany:ey,deleteIssueTypeFields:ty,deleteIssueTypeFieldsMany:sy}=Wi.actions,iy=t=>t.issueTypeFieldsReducer.instances,zt=l.createSelector([iy],t=>Object.values(t)),Pg=y(l.createSelector([zt,(t,s)=>s],(t,s)=>f(t.filter(e=>e.issue_type===s)))),Fg=y(l.createSelector([zt,(t,s)=>s],(t,s)=>t.filter(e=>e.issue_type===s).sort((e,n)=>e.submitted_at>n.submitted_at?-1:1)[0])),bg=y(l.createSelector([zt,is,(t,s)=>s],(t,s,e)=>{const n=new Set(t.filter(a=>a.issue_type===e).map(a=>a.uuid));return f(s.filter(a=>n.has(a.fields_revision)))})),ny=t=>s=>s.issueTypeFieldsReducer.instances[t],ay=y(l.createSelector([zt,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),cy=Wi.reducer,we=F(t=>t.uuid),ry={instances:{}},Ki=l.createSlice({name:"issueTypeFieldValuesAttachments",initialState:ry,extraReducers:t=>t.addMatcher(l.isAnyOf(O,B,b),s=>Object.assign(s,ry)),reducers:{initializeIssueTypeFieldValuesAttachments:we.initialize,addIssueTypeFieldValuesAttachment:we.addOne,addIssueTypeFieldValuesAttachments:we.addMany,setIssueTypeFieldValuesAttachment:we.setOne,setIssueTypeFieldValuesAttachments:we.setMany,updateIssueTypeFieldValuesAttachment:we.updateOne,updateIssueTypeFieldValuesAttachments:we.updateMany,deleteIssueTypeFieldValuesAttachment:we.deleteOne,deleteIssueTypeFieldValuesAttachments:we.deleteMany}}),{initializeIssueTypeFieldValuesAttachments:dy,addIssueTypeFieldValuesAttachment:uy,addIssueTypeFieldValuesAttachments:Yi,setIssueTypeFieldValuesAttachment:ly,setIssueTypeFieldValuesAttachments:oy,updateIssueTypeFieldValuesAttachment:hy,updateIssueTypeFieldValuesAttachments:my,deleteIssueTypeFieldValuesAttachment:py,deleteIssueTypeFieldValuesAttachments:Zi}=Ki.actions,yy=t=>t.issueTypeFieldValuesAttachmentReducer.instances,Ji=l.createSelector([yy],t=>Object.values(t)),Sy=t=>s=>s.issueTypeFieldValuesAttachmentReducer.instances[t],fy=y(l.createSelector([Ji,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),Ay=y(l.createSelector([Ji,(t,s)=>s],(t,s)=>f(t.filter(e=>e.field_values===s)))),Iy=Ki.reducer,ve=F(t=>t.uuid),Ty={instances:{}},Xi=l.createSlice({name:"issueTypeIdentifiers",initialState:Ty,extraReducers:t=>t.addMatcher(l.isAnyOf(O,b),s=>Object.assign(s,Ty)),reducers:{initializeIssueTypeIdentifiers:ve.initialize,addIssueTypeIdentifier:ve.addOne,addIssueTypeIdentifiers:ve.addMany,setIssueTypeIdentifier:ve.setOne,setIssueTypeIdentifiers:ve.setMany,updateIssueTypeIdentifier:ve.updateOne,updateIssueTypeIdentifiers:ve.updateMany,deleteIssueTypeIdentifier:ve.deleteOne,deleteIssueTypeIdentifiers:ve.deleteMany}}),{initializeIssueTypeIdentifiers:Oy,addIssueTypeIdentifier:Py,addIssueTypeIdentifiers:Fy,setIssueTypeIdentifier:by,setIssueTypeIdentifiers:_y,updateIssueTypeIdentifier:gy,updateIssueTypeIdentifiers:My,deleteIssueTypeIdentifier:Ry,deleteIssueTypeIdentifiers:wy}=Xi.actions,vy=t=>t.issueTypeIdentifierReducer.instances,Qi=l.createSelector([vy],t=>Object.values(t)),Ey=t=>s=>s.issueTypeIdentifierReducer.instances[t],Vy=y(l.createSelector([Qi,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),_g=y(l.createSelector([Qi,(t,s)=>s],(t,s)=>f(t.filter(e=>e.issue_type===s)))),By=Xi.reducer,Ee=F(t=>t.uuid),zy={instances:{}},xi=l.createSlice({name:"issueTypeIdentifierValues",initialState:zy,extraReducers:t=>t.addMatcher(l.isAnyOf(O,B,b),s=>Object.assign(s,zy)),reducers:{initializeIssueTypeIdentifierValues:Ee.initialize,addIssueTypeIdentifierValue:Ee.addOne,addIssueTypeIdentifierValues:Ee.addMany,setIssueTypeIdentifierValue:Ee.setOne,setIssueTypeIdentifierValues:Ee.setMany,updateIssueTypeIdentifierValue:Ee.updateOne,updateIssueTypeIdentifierValues:Ee.updateMany,deleteIssueTypeIdentifierValue:Ee.deleteOne,deleteIssueTypeIdentifierValues:Ee.deleteMany}}),{initializeIssueTypeIdentifierValues:Dy,addIssueTypeIdentifierValue:jy,addIssueTypeIdentifierValues:Cy,setIssueTypeIdentifierValue:qy,setIssueTypeIdentifierValues:$y,updateIssueTypeIdentifierValue:Uy,updateIssueTypeIdentifierValues:Ly,deleteIssueTypeIdentifierValue:ky,deleteIssueTypeIdentifierValues:Ny}=xi.actions,Gy=t=>t.issueTypeIdentifierValueReducer.instances,ns=l.createSelector([Gy],t=>Object.values(t)),Hy=t=>s=>s.issueTypeIdentifierValueReducer.instances[t],Wy=y(l.createSelector([ns,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),gg=y(l.createSelector([ns,(t,s)=>s],(t,s)=>f(t.filter(e=>e.issue===s)))),Mg=y(l.createSelector([ns,(t,s)=>s],(t,s)=>f(t.filter(e=>e.issue_type_identifier===s)))),Ky=xi.reducer,Ve=F(t=>t.uuid),Yy={instances:{}},en=l.createSlice({name:"issueTypePriorities",initialState:Yy,extraReducers:t=>t.addMatcher(l.isAnyOf(O,b),s=>Object.assign(s,Yy)),reducers:{initializeIssueTypePriorities:Ve.initialize,addIssueTypePriority:Ve.addOne,addIssueTypePriorities:Ve.addMany,setIssueTypePriority:Ve.setOne,setIssueTypePriorities:Ve.setMany,updateIssueTypePriority:Ve.updateOne,updateIssueTypePriorities:Ve.updateMany,deleteIssueTypePriority:Ve.deleteOne,deleteIssueTypePriorities:Ve.deleteMany}}),{initializeIssueTypePriorities:Zy,addIssueTypePriority:Jy,addIssueTypePriorities:Xy,setIssueTypePriority:Qy,setIssueTypePriorities:xy,updateIssueTypePriority:eS,updateIssueTypePriorities:tS,deleteIssueTypePriority:sS,deleteIssueTypePriorities:iS}=en.actions,nS=t=>t.issueTypePriorityReducer.instances,tn=l.createSelector([nS],t=>f(Object.values(t).toSorted(xa))),sn=t=>s=>s.issueTypePriorityReducer.instances[t],aS=y(l.createSelector([tn,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),Rg=y(l.createSelector([tn,(t,s)=>s],(t,s)=>f(t.filter(e=>e.issue_type===s)))),cS=en.reducer,Be=F(t=>t.uuid),rS={instances:{}},nn=l.createSlice({name:"issueTypes",initialState:rS,extraReducers:t=>t.addMatcher(l.isAnyOf(O,b),s=>Object.assign(s,rS)),reducers:{initializeIssueTypes:Be.initialize,addIssueType:Be.addOne,addIssueTypes:Be.addMany,setIssueType:Be.setOne,setIssueTypes:Be.setMany,updateIssueType:Be.updateOne,updateIssueTypes:Be.updateMany,deleteIssueType:Be.deleteOne,deleteIssueTypes:Be.deleteMany}}),{initializeIssueTypes:dS,addIssueType:uS,addIssueTypes:lS,setIssueType:oS,setIssueTypes:hS,updateIssueType:mS,updateIssueTypes:pS,deleteIssueType:yS,deleteIssueTypes:SS}=nn.actions,fS=t=>t.issueTypeReducer.instances,an=l.createSelector(fS,t=>Object.values(t)),AS=t=>s=>s.issueTypeReducer.instances[t],IS=y(l.createSelector([an,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),wg=y(l.createSelector([an,(t,s)=>s],(t,s)=>f(t.filter(e=>e.organization===s)))),TS=nn.reducer,ze=F(t=>t.uuid),OS={instances:{}},cn=l.createSlice({name:"issueTypeStatuses",initialState:OS,extraReducers:t=>t.addMatcher(l.isAnyOf(O,b),s=>Object.assign(s,OS)),reducers:{initializeIssueTypeStatuses:ze.initialize,addIssueTypeStatus:ze.addOne,addIssueTypeStatuses:ze.addMany,setIssueTypeStatus:ze.setOne,setIssueTypeStatuses:ze.setMany,updateIssueTypeStatus:ze.updateOne,updateIssueTypeStatuses:ze.updateMany,deleteIssueTypeStatus:ze.deleteOne,deleteIssueTypeStatuses:ze.deleteMany}}),{initializeIssueTypeStatuses:PS,addIssueTypeStatus:FS,addIssueTypeStatuses:bS,setIssueTypeStatus:_S,setIssueTypeStatuses:gS,updateIssueTypeStatus:MS,updateIssueTypeStatuses:RS,deleteIssueTypeStatus:wS,deleteIssueTypeStatuses:vS}=cn.actions,ES=t=>t.issueTypeStatusReducer.instances,rn=l.createSelector([ES],t=>f(Object.values(t).toSorted(Qa))),dn=t=>s=>s.issueTypeStatusReducer.instances[t],VS=y(l.createSelector([rn,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),vg=y(l.createSelector([rn,(t,s)=>s],(t,s)=>f(t.filter(e=>e.issue_type===s)))),BS=cn.reducer,De=F(t=>t.uuid),zS={instances:{}},un=l.createSlice({name:"issueUpdates",initialState:zS,extraReducers:t=>t.addMatcher(l.isAnyOf(O,B,b),s=>Object.assign(s,zS)),reducers:{initializeIssueUpdates:De.initialize,addIssueUpdate:De.addOne,addIssueUpdates:De.addMany,setIssueUpdate:De.setOne,setIssueUpdates:De.setMany,updateIssueUpdate:De.updateOne,updateIssueUpdates:De.updateMany,deleteIssueUpdate:De.deleteOne,deleteIssueUpdates:De.deleteMany}}),{initializeIssueUpdates:DS,addIssueUpdate:ln,addIssueUpdates:on,setIssueUpdate:jS,setIssueUpdates:CS,updateIssueUpdate:qS,updateIssueUpdates:$S,deleteIssueUpdate:hn,deleteIssueUpdates:mn}=un.actions,pn=t=>t.issueUpdateReducer.instances,yn=l.createSelector([pn],t=>Object.values(t)),US=y(l.createSelector([pn,(t,s)=>s],(t,s)=>t[s])),LS=y(l.createSelector([yn,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),kS=y(l.createSelector([yn,(t,s)=>s],(t,s)=>f(t.filter(e=>e.issue===s)))),NS=un.reducer,je=F(t=>t.id),GS={instances:{},currentUser:null},Sn=l.createSlice({name:"users",initialState:GS,extraReducers:t=>t.addCase(O,s=>Object.assign(s,GS)).addCase(b,s=>Object.assign(s,{...s,instances:[]})),reducers:{initializeUsers:je.initialize,setUsers:je.setMany,setUser:je.setOne,addUsers:je.addMany,addUser:je.addOne,updateUsers:je.updateMany,updateUser:je.updateOne,deleteUser:je.deleteOne,deleteUsers:je.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:HS,setUsers:WS,setUser:KS,addUsers:YS,addUser:fn,updateUsers:ZS,updateUser:JS,deleteUser:An,deleteUsers:XS,setCurrentUser:Eg,setCurrentUserProfile:Vg}=Sn.actions,QS=Sn.reducer,xS=t=>t.userReducer.currentUser,In=t=>t.userReducer.instances,as=l.createSelector([In],t=>Object.values(t)),cs=t=>s=>s.userReducer.instances[t],ef=y(l.createSelector([as,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({id:n})=>e.has(n)))})),Ce=F(t=>t.uuid),tf={instances:{}},Tn=l.createSlice({name:"organizationAccess",initialState:tf,extraReducers:t=>t.addMatcher(l.isAnyOf(O,b),s=>Object.assign(s,tf)),reducers:{initializeOrganizationAccesses:Ce.initialize,addOrganizationAccess:Ce.addOne,addOrganizationAccesses:Ce.addMany,setOrganizationAccess:Ce.setOne,setOrganizationAccesses:Ce.setMany,updateOrganizationAccess:Ce.updateOne,updateOrganizationAccesses:Ce.updateMany,deleteOrganizationAccess:Ce.deleteOne,deleteOrganizationAccesses:Ce.deleteMany}}),{initializeOrganizationAccesses:sf,addOrganizationAccess:nf,addOrganizationAccesses:af,setOrganizationAccess:cf,setOrganizationAccesses:rf,updateOrganizationAccess:df,updateOrganizationAccesses:uf,deleteOrganizationAccess:lf,deleteOrganizationAccesses:of}=Tn.actions,hf=Tn.reducer,rs=t=>t.organizationAccessReducer.instances,mf=t=>s=>s.organizationAccessReducer.instances[t],pf=y(l.createSelector([rs,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(Object.values(t).filter(({uuid:n})=>e.has(n)))})),Bg=l.createSelector([xS,rs],(t,s)=>Object.values(s).find(n=>n.user===(t==null?void 0:t.id))??null),yf=l.createSelector([rs],t=>{const s={};for(const e of Object.values(t))s[e.user]=e;return As(s)}),zg=y(l.createSelector([In,yf,(t,s)=>s],(t,s,e)=>f(Object.values(t).filter(n=>{const a=s[n.id];return!!a&&a.organization===e})))),qe=F(t=>t.uuid),Sf={instances:{}},On=l.createSlice({name:"organizations",initialState:Sf,extraReducers:t=>t.addMatcher(l.isAnyOf(O),s=>Object.assign(s,Sf)),reducers:{initializeOrganizations:qe.initialize,setOrganizations:qe.setMany,setOrganization:qe.setOne,addOrganizations:qe.addMany,addOrganization:qe.addOne,updateOrganizations:qe.updateMany,updateOrganization:qe.updateOne,deleteOrganization:qe.deleteOne,deleteOrganizations:qe.deleteMany}}),{initializeOrganizations:ff,setOrganizations:Af,setOrganization:If,addOrganizations:Tf,addOrganization:Of,updateOrganizations:Pf,updateOrganization:Ff,deleteOrganization:bf,deleteOrganizations:_f}=On.actions,gf=t=>t.organizationReducer.instances,Mf=l.createSelector([gf],t=>Object.values(t)),Rf=t=>s=>s.organizationReducer.instances[t],wf=y(l.createSelector([Mf,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),vf=On.reducer,Ef=(t,s,e)=>{const n=t.uuid?t:{...t,uuid:ht.v4()};return{payload:n,type:"",meta:{offline:{effect:{timestamp:new Date().toISOString(),request:n,BASE_URL:s,serviceName:e}}}}},Vf={deletedRequests:[],latestRetryTime:0},Pn=l.createSlice({name:"outbox",initialState:Vf,extraReducers:t=>t.addCase(O,s=>Object.assign(s,Vf)),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 Ef(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}}}),Dg=t=>t.outboxReducer.deletedRequests,jg=t=>t.outboxReducer.latestRetryTime,{enqueueRequest:Bf,markForDeletion:Cg,markAsDeleted:zf,_setLatestRetryTime:Df}=Pn.actions,jf=Pn.reducer,$e=F(t=>t.uuid),Cf={instances:{}},Fn=l.createSlice({name:"projectAccess",initialState:Cf,extraReducers:t=>t.addMatcher(l.isAnyOf(O,b),s=>Object.assign(s,Cf)),reducers:{initializeProjectAccesses:$e.initialize,addProjectAccess:$e.addOne,addProjectAccesses:$e.addMany,setProjectAccess:$e.setOne,setProjectAccesses:$e.setMany,updateProjectAccess:$e.updateOne,updateProjectAccesses:$e.updateMany,deleteProjectAccess:$e.deleteOne,deleteProjectAccesses:$e.deleteMany}}),{initializeProjectAccesses:qf,addProjectAccess:$f,addProjectAccesses:Uf,setProjectAccess:Lf,setProjectAccesses:kf,updateProjectAccess:Nf,updateProjectAccesses:Gf,deleteProjectAccess:Hf,deleteProjectAccesses:Wf}=Fn.actions,Kf=Fn.reducer,bn=t=>t.projectAccessReducer.instances,Dt=l.createSelector(bn,t=>Object.values(t)),Yf=t=>s=>s.projectAccessReducer.instances[t],Zf=y(l.createSelector([Dt,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),qg=y(l.createSelector([bn,(t,s)=>s],(t,s)=>f(Object.values(t).filter(e=>e.project===s)))),$g=y(l.createSelector([Dt,(t,s)=>s],(t,s)=>{const e={};for(const n of t.filter(a=>a.project===s))e[n.user]=n;return e})),Ug=y(l.createSelector([as,Dt,(t,s)=>s],(t,s,e)=>{const n=new Set(s.filter(a=>a.project===e).map(a=>a.user));return f(t.filter(a=>n.has(a.id)))})),Ue=F(t=>t.uuid),Jf={instances:{}},_n=l.createSlice({name:"projectAttachments",initialState:Jf,extraReducers:t=>t.addMatcher(l.isAnyOf(O,b),s=>Object.assign(s,Jf)),reducers:{initializeProjectAttachments:Ue.initialize,addProjectAttachment:Ue.addOne,addProjectAttachments:Ue.addMany,setProjectAttachment:Ue.setOne,setProjectAttachments:Ue.setMany,updateProjectAttachment:Ue.updateOne,updateProjectAttachments:Ue.updateMany,deleteProjectAttachment:Ue.deleteOne,deleteProjectAttachments:Ue.deleteMany}}),{initializeProjectAttachments:Xf,addProjectAttachment:Qf,addProjectAttachments:xf,setProjectAttachment:eA,setProjectAttachments:tA,updateProjectAttachment:sA,updateProjectAttachments:iA,deleteProjectAttachment:nA,deleteProjectAttachments:aA}=_n.actions,cA=t=>t.projectAttachmentReducer.instances,gn=l.createSelector([cA],t=>Object.values(t)),rA=t=>s=>s.projectAttachmentReducer.instances[t],dA=y(l.createSelector([gn,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),Lg=y(l.createSelector([gn,(t,s)=>s],(t,s)=>f(t.filter(({project:e})=>s===e)))),uA=_n.reducer,Le=F(t=>t.uuid),lA={instances:{}},Mn=l.createSlice({name:"projectComments",initialState:lA,extraReducers:t=>t.addMatcher(l.isAnyOf(O,B,b),s=>Object.assign(s,lA)),reducers:{initializeProjectComments:Le.initialize,addProjectComment:Le.addOne,addProjectComments:Le.addMany,setProjectComment:Le.setOne,setProjectComments:Le.setMany,updateProjectComment:Le.updateOne,updateProjectComments:Le.updateMany,deleteProjectComment:Le.deleteOne,deleteProjectComments:Le.deleteMany}}),{initializeProjectComments:oA,addProjectComment:hA,addProjectComments:mA,setProjectComment:pA,setProjectComments:yA,updateProjectComment:SA,updateProjectComments:fA,deleteProjectComment:AA,deleteProjectComments:IA}=Mn.actions,TA=t=>t.projectCommentReducer.instances,ds=l.createSelector([TA],t=>f(Object.values(t).toSorted(pt))),OA=t=>s=>s.projectCommentReducer.instances[t],PA=y(l.createSelector([ds,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),kg=y(l.createSelector([ds,(t,s)=>s],(t,s)=>f(t.filter(e=>e.project===s)))),Ng=y(l.createSelector([ds,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(n=>e.has(n.project)))})),FA=Mn.reducer,ke=F(t=>t.uuid),bA={instances:{}},Rn=l.createSlice({name:"projectFiles",initialState:bA,extraReducers:t=>t.addMatcher(l.isAnyOf(O,B,b),s=>Object.assign(s,bA)),reducers:{initializeProjectFiles:ke.initialize,setProjectFile:ke.setOne,setProjectFiles:ke.setMany,addProjectFile:ke.addOne,addProjectFiles:ke.addMany,updateProjectFile:ke.updateOne,updateProjectFiles:ke.updateMany,deleteProjectFile:ke.deleteOne,deleteProjectFiles:ke.deleteMany}}),{initializeProjectFiles:_A,setProjectFile:gA,setProjectFiles:MA,addProjectFile:RA,addProjectFiles:wA,updateProjectFile:vA,updateProjectFiles:EA,deleteProjectFile:VA,deleteProjectFiles:BA}=Rn.actions,zA=t=>t.projectFileReducer.instances,DA=l.createSelector([zA],t=>f(Object.values(t).toSorted((s,e)=>s.z_index-e.z_index))),jA=t=>s=>s.projectFileReducer.instances[t],CA=y(l.createSelector([DA,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),qA=Rn.reducer,Ne=F(t=>t.uuid),$A={instances:{}},wn=l.createSlice({name:"projects",initialState:$A,extraReducers:t=>t.addMatcher(l.isAnyOf(O,b),s=>Object.assign(s,$A)),reducers:{initializeProjects:Ne.initialize,setProjects:Ne.setMany,setProject:Ne.setOne,addProjects:Ne.addMany,addProject:Ne.addOne,updateProjects:Ne.updateMany,updateProject:Ne.updateOne,deleteProject:Ne.deleteOne,deleteProjects:Ne.deleteMany}}),{initializeProjects:UA,setProjects:LA,setProject:kA,addProjects:NA,addProject:GA,updateProjects:HA,updateProject:WA,deleteProject:KA,deleteProjects:YA}=wn.actions,ZA=wn.reducer,JA=t=>t.projectReducer.instances,us=l.createSelector([JA],t=>Object.values(t)),XA=t=>s=>s.projectReducer.instances[t],QA=y(l.createSelector([us,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),Gg=y(l.createSelector([us,Dt,(t,s)=>s],(t,s,e)=>{const n=new Set(s.filter(a=>a.user===e).map(a=>a.project));return f(t.filter(a=>n.has(a.uuid)))})),Hg=y(l.createSelector([us,(t,s)=>s],(t,s)=>f(t.filter(e=>e.organization===s)))),Ge=F(({uuid:t})=>t),xA={instances:{}},vn=l.createSlice({name:"procedureInitiatives",initialState:xA,extraReducers:t=>t.addMatcher(l.isAnyOf(O,B,b),s=>Object.assign(s,xA)),reducers:{initializeProcedureInitiatives:Ge.initialize,addProcedureInitiative:Ge.addOne,addProcedureInitiatives:Ge.addMany,setProcedureInitiative:Ge.setOne,setProcedureInitiatives:Ge.setMany,updateProcedureInitiative:Ge.updateOne,updateProcedureInitiatives:Ge.updateMany,deleteProcedureInitiative:Ge.deleteOne,deleteProcedureInitiatives:Ge.deleteMany}}),{initializeProcedureInitiatives:eI,addProcedureInitiative:tI,addProcedureInitiatives:sI,setProcedureInitiative:iI,setProcedureInitiatives:nI,updateProcedureInitiative:aI,updateProcedureInitiatives:cI,deleteProcedureInitiative:rI,deleteProcedureInitiatives:dI}=vn.actions,uI=vn.reducer,lI=t=>t.procedureInitiativeReducer.instances,ls=l.createSelector([lI],t=>Object.values(t)),oI=t=>s=>s.procedureInitiativeReducer.instances[t],hI=y(l.createSelector([ls,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),Wg=y(l.createSelector([ls,(t,s)=>s],(t,s)=>f(t.filter(e=>e.project===s)))),Kg=y(l.createSelector([ls,(t,s)=>s],(t,s)=>f(t.filter(e=>e.procedure_type===s)))),He=F(({uuid:t})=>t),mI={instances:{}},En=l.createSlice({name:"procedures",initialState:mI,extraReducers:t=>t.addMatcher(l.isAnyOf(O,B,b),s=>Object.assign(s,mI)),reducers:{initializeProcedures:He.initialize,addProcedure:He.addOne,addProcedures:He.addMany,setProcedure:He.setOne,setProcedures:He.setMany,updateProcedure:He.updateOne,updateProcedures:He.updateMany,deleteProcedure:He.deleteOne,deleteProcedures:He.deleteMany}}),{initializeProcedures:pI,addProcedure:yI,addProcedures:Mt,setProcedure:SI,setProcedures:fI,updateProcedure:AI,updateProcedures:II,deleteProcedure:TI,deleteProcedures:Rt}=En.actions,OI=En.reducer,PI=t=>t.procedureReducer.instances,ft=l.createSelector([PI],t=>Object.values(t)),FI=t=>s=>s.procedureReducer.instances[t],bI=y(l.createSelector([ft,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),Yg=y(l.createSelector([ft,(t,s)=>s],(t,s)=>f(t.filter(e=>e.project===s)))),_I=y(l.createSelector([ft,(t,s)=>s],(t,s)=>f(t.filter(e=>e.procedure_type===s)))),gI=y(l.createSelector([ft,(t,s)=>s],(t,s)=>f(t.filter(e=>e.asset===s)))),MI=y(l.createSelector([ft,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({asset:n})=>e.has(n)))})),RI=y(l.createSelector([ft,(t,s)=>s],(t,s)=>f(t.filter(e=>e.procedure_initiative===s)))),We=F(t=>t.uuid),wI={instances:{}},Vn=l.createSlice({name:"procedureStepAssignees",initialState:wI,extraReducers:t=>t.addMatcher(l.isAnyOf(O,B,b),s=>Object.assign(s,wI)),reducers:{initializeProcedureStepAssignees:We.initialize,addProcedureStepAssignee:We.addOne,addProcedureStepAssignees:We.addMany,setProcedureStepAssignee:We.setOne,setProcedureStepAssignees:We.setMany,updateProcedureStepAssignee:We.updateOne,updateProcedureStepAssignees:We.updateMany,deleteProcedureStepAssignee:We.deleteOne,deleteProcedureStepAssignees:We.deleteMany}}),{initializeProcedureStepAssignees:vI,addProcedureStepAssignee:EI,addProcedureStepAssignees:VI,setProcedureStepAssignee:BI,setProcedureStepAssignees:zI,updateProcedureStepAssignee:DI,updateProcedureStepAssignees:jI,deleteProcedureStepAssignee:CI,deleteProcedureStepAssignees:qI}=Vn.actions,$I=t=>t.procedureStepAssigneeReducer.instances,jt=l.createSelector([$I],t=>Object.values(t)),UI=t=>s=>s.procedureStepAssigneeReducer.instances[t],LI=y(l.createSelector([jt,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),Zg=y(l.createSelector([jt,(t,s)=>s],(t,s)=>f(t.filter(e=>e.procedure===s)))),Jg=y(l.createSelector([jt,(t,s)=>s],(t,s)=>f(t.filter(e=>e.procedure_step===s)))),Xg=y(l.createSelector([jt,(t,s)=>s,(t,s,e)=>e],(t,s,e)=>f(t.filter(({procedure:n,procedure_step:a})=>n===s&&a===e)))),kI=Vn.reducer,Ke=F(t=>t.uuid),NI={instances:{}},Bn=l.createSlice({name:"procedureStepComments",initialState:NI,extraReducers:t=>t.addMatcher(l.isAnyOf(O,B,b),s=>Object.assign(s,NI)),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:GI,addProcedureStepComment:HI,addProcedureStepComments:WI,setProcedureStepComment:KI,setProcedureStepComments:YI,updateProcedureStepComment:ZI,updateProcedureStepComments:JI,deleteProcedureStepComment:XI,deleteProcedureStepComments:QI}=Bn.actions,xI=t=>t.procedureStepCommentReducer.instances,Ct=l.createSelector([xI],t=>Object.values(t)),eT=t=>s=>s.procedureStepCommentReducer.instances[t],tT=y(l.createSelector([Ct,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),Qg=y(l.createSelector([Ct,(t,s)=>s],(t,s)=>f(t.filter(e=>e.procedure===s)))),xg=y(l.createSelector([Ct,(t,s)=>s],(t,s)=>f(t.filter(e=>e.procedure_step===s)))),eM=y(l.createSelector([Ct,(t,s)=>s,(t,s,e)=>e],(t,s,e)=>f(t.filter(({procedure:n,procedure_step:a})=>n===s&&a===e)))),sT=Bn.reducer,Ye=F(t=>t.uuid),iT={instances:{}},zn=l.createSlice({name:"procedureStepDefaultAssignees",initialState:iT,extraReducers:t=>t.addMatcher(l.isAnyOf(O,b),s=>Object.assign(s,iT)),reducers:{initializeProcedureStepDefaultAssignees:Ye.initialize,addProcedureStepDefaultAssignee:Ye.addOne,addProcedureStepDefaultAssignees:Ye.addMany,setProcedureStepDefaultAssignee:Ye.setOne,setProcedureStepDefaultAssignees:Ye.setMany,updateProcedureStepDefaultAssignee:Ye.updateOne,updateProcedureStepDefaultAssignees:Ye.updateMany,deleteProcedureStepDefaultAssignee:Ye.deleteOne,deleteProcedureStepDefaultAssignees:Ye.deleteMany}}),{initializeProcedureStepDefaultAssignees:nT,addProcedureStepDefaultAssignee:aT,addProcedureStepDefaultAssignees:cT,setProcedureStepDefaultAssignee:rT,setProcedureStepDefaultAssignees:dT,updateProcedureStepDefaultAssignee:uT,updateProcedureStepDefaultAssignees:lT,deleteProcedureStepDefaultAssignee:oT,deleteProcedureStepDefaultAssignees:hT}=zn.actions,mT=t=>t.procedureStepDefaultAssigneeReducer.instances,Dn=l.createSelector([mT],t=>Object.values(t)),pT=t=>s=>s.procedureStepDefaultAssigneeReducer.instances[t],yT=y(l.createSelector([Dn,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),tM=y(l.createSelector([Dn,(t,s)=>s],(t,s)=>f(t.filter(e=>e.procedure_step===s)))),ST=zn.reducer,Ze=F(t=>t.uuid),fT={instances:{}},jn=l.createSlice({name:"procedureStepDefaultReviewers",initialState:fT,extraReducers:t=>t.addMatcher(l.isAnyOf(O,b),s=>Object.assign(s,fT)),reducers:{initializeProcedureStepDefaultReviewers:Ze.initialize,addProcedureStepDefaultReviewer:Ze.addOne,addProcedureStepDefaultReviewers:Ze.addMany,setProcedureStepDefaultReviewer:Ze.setOne,setProcedureStepDefaultReviewers:Ze.setMany,updateProcedureStepDefaultReviewer:Ze.updateOne,updateProcedureStepDefaultReviewers:Ze.updateMany,deleteProcedureStepDefaultReviewer:Ze.deleteOne,deleteProcedureStepDefaultReviewers:Ze.deleteMany}}),{initializeProcedureStepDefaultReviewers:AT,addProcedureStepDefaultReviewer:IT,addProcedureStepDefaultReviewers:TT,setProcedureStepDefaultReviewer:OT,setProcedureStepDefaultReviewers:PT,updateProcedureStepDefaultReviewer:FT,updateProcedureStepDefaultReviewers:bT,deleteProcedureStepDefaultReviewer:_T,deleteProcedureStepDefaultReviewers:gT}=jn.actions,MT=t=>t.procedureStepDefaultReviewerReducer.instances,Cn=l.createSelector([MT],t=>Object.values(t)),RT=t=>s=>s.procedureStepDefaultReviewerReducer.instances[t],wT=y(l.createSelector([Cn,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),sM=y(l.createSelector([Cn,(t,s)=>s],(t,s)=>f(t.filter(e=>e.procedure_step===s)))),vT=jn.reducer,Je=F(t=>t.uuid),ET={instances:{}},qn=l.createSlice({name:"procedureStepEvents",initialState:ET,extraReducers:t=>t.addMatcher(l.isAnyOf(O,B,b),s=>Object.assign(s,ET)),reducers:{initializeProcedureStepEvents:Je.initialize,addProcedureStepEvent:Je.addOne,addProcedureStepEvents:Je.addMany,setProcedureStepEvent:Je.setOne,setProcedureStepEvents:Je.setMany,updateProcedureStepEvent:Je.updateOne,updateProcedureStepEvents:Je.updateMany,deleteProcedureStepEvent:Je.deleteOne,deleteProcedureStepEvents:Je.deleteMany}}),{initializeProcedureStepEvents:VT,addProcedureStepEvent:BT,addProcedureStepEvents:zT,setProcedureStepEvent:DT,setProcedureStepEvents:jT,updateProcedureStepEvent:CT,updateProcedureStepEvents:qT,deleteProcedureStepEvent:$T,deleteProcedureStepEvents:UT}=qn.actions,LT=t=>t.procedureStepEventReducer.instances,qt=l.createSelector([LT],t=>Object.values(t)),kT=t=>s=>s.procedureStepEventReducer.instances[t],NT=y(l.createSelector([qt,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),iM=y(l.createSelector([qt,(t,s)=>s],(t,s)=>f(t.filter(e=>e.procedure===s)))),nM=y(l.createSelector([qt,(t,s)=>s],(t,s)=>f(t.filter(e=>e.procedure_step===s)))),aM=y(l.createSelector([qt,(t,s)=>s,(t,s,e)=>e],(t,s,e)=>f(t.filter(({procedure:n,procedure_step:a})=>n===s&&a===e)))),GT=qn.reducer,Xe=F(t=>t.uuid),HT={instances:{}},$n=l.createSlice({name:"procedureStepFieldsAttachments",initialState:HT,extraReducers:t=>t.addMatcher(l.isAnyOf(O,b),s=>Object.assign(s,HT)),reducers:{initializeProcedureStepFieldsAttachments:Xe.initialize,addProcedureStepFieldsAttachment:Xe.addOne,addProcedureStepFieldsAttachments:Xe.addMany,setProcedureStepFieldsAttachment:Xe.setOne,setProcedureStepFieldsAttachments:Xe.setMany,updateProcedureStepFieldsAttachment:Xe.updateOne,updateProcedureStepFieldsAttachments:Xe.updateMany,deleteProcedureStepFieldsAttachment:Xe.deleteOne,deleteProcedureStepFieldsAttachments:Xe.deleteMany}}),{initializeProcedureStepFieldsAttachments:WT,addProcedureStepFieldsAttachment:KT,addProcedureStepFieldsAttachments:Un,setProcedureStepFieldsAttachment:YT,setProcedureStepFieldsAttachments:ZT,updateProcedureStepFieldsAttachment:JT,updateProcedureStepFieldsAttachments:XT,deleteProcedureStepFieldsAttachment:QT,deleteProcedureStepFieldsAttachments:Ln}=$n.actions,xT=t=>t.procedureStepFieldsAttachmentReducer.instances,kn=l.createSelector([xT],t=>Object.values(t)),eO=y(l.createSelector([kn,(t,s)=>s],(t,s)=>f(t.filter(e=>e.fields_revision===s)))),tO=t=>s=>s.procedureStepFieldsAttachmentReducer.instances[t],sO=y(l.createSelector([kn,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),iO=$n.reducer,Qe=F(t=>t.uuid),nO={instances:{}},Nn=l.createSlice({name:"procedureStepFields",initialState:nO,extraReducers:t=>t.addMatcher(l.isAnyOf(O,b),s=>Object.assign(s,nO)),reducers:{initializeProcedureStepFields:Qe.initialize,addProcedureStepFields:Qe.addOne,addProcedureStepFieldsMany:Qe.addMany,setProcedureStepFields:Qe.setOne,setProcedureStepFieldsMany:Qe.setMany,updateProcedureStepFields:Qe.updateOne,updateProcedureStepFieldsMany:Qe.updateMany,deleteProcedureStepFields:Qe.deleteOne,deleteProcedureStepFieldsMany:Qe.deleteMany}}),{initializeProcedureStepFields:aO,addProcedureStepFields:cO,addProcedureStepFieldsMany:rO,setProcedureStepFields:dO,setProcedureStepFieldsMany:uO,updateProcedureStepFields:lO,updateProcedureStepFieldsMany:oO,deleteProcedureStepFields:hO,deleteProcedureStepFieldsMany:mO}=Nn.actions,Gn=t=>t.procedureStepFieldsReducer.instances,os=l.createSelector([Gn],t=>Object.values(t)),cM=y(l.createSelector([os,(t,s)=>s],(t,s)=>f(t.filter(e=>e.procedure_step===s)))),rM=y(l.createSelector([os,(t,s)=>s],(t,s)=>t.filter(e=>e.procedure_step===s).toSorted(pt).pop())),dM=l.createSelector([Gn],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}),pO=t=>s=>s.procedureStepFieldsReducer.instances[t],yO=y(l.createSelector([os,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),SO=Nn.reducer,xe=F(t=>t.uuid),fO={instances:{}},Hn=l.createSlice({name:"procedureStepFieldValuesAttachments",initialState:fO,extraReducers:t=>t.addMatcher(l.isAnyOf(O,B,b),s=>Object.assign(s,fO)),reducers:{initializeProcedureStepFieldValuesAttachments:xe.initialize,addProcedureStepFieldValuesAttachment:xe.addOne,addProcedureStepFieldValuesAttachments:xe.addMany,setProcedureStepFieldValuesAttachment:xe.setOne,setProcedureStepFieldValuesAttachments:xe.setMany,updateProcedureStepFieldValuesAttachment:xe.updateOne,updateProcedureStepFieldValuesAttachments:xe.updateMany,deleteProcedureStepFieldValuesAttachment:xe.deleteOne,deleteProcedureStepFieldValuesAttachments:xe.deleteMany}}),{initializeProcedureStepFieldValuesAttachments:AO,addProcedureStepFieldValuesAttachment:IO,addProcedureStepFieldValuesAttachments:Wn,setProcedureStepFieldValuesAttachment:TO,setProcedureStepFieldValuesAttachments:OO,updateProcedureStepFieldValuesAttachment:PO,updateProcedureStepFieldValuesAttachments:FO,deleteProcedureStepFieldValuesAttachment:bO,deleteProcedureStepFieldValuesAttachments:Kn}=Hn.actions,_O=t=>t.procedureStepFieldValuesAttachmentReducer.instances,Yn=l.createSelector([_O],t=>Object.values(t)),gO=t=>s=>s.procedureStepFieldValuesAttachmentReducer.instances[t],MO=y(l.createSelector([Yn,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),RO=y(l.createSelector([Yn,(t,s)=>s],(t,s)=>f(t.filter(e=>e.field_values===s)))),wO=Hn.reducer,et=F(t=>t.uuid),vO={instances:{}},Zn=l.createSlice({name:"procedureStepFieldValues",initialState:vO,extraReducers:t=>t.addMatcher(l.isAnyOf(O,B,b),s=>Object.assign(s,vO)),reducers:{initializeProcedureStepFieldValues:et.initialize,addProcedureStepFieldValues:et.addOne,addProcedureStepFieldValuesMany:et.addMany,setProcedureStepFieldValues:et.setOne,setProcedureStepFieldValuesMany:et.setMany,updateProcedureStepFieldValues:et.updateOne,updateProcedureStepFieldValuesMany:et.updateMany,deleteProcedureStepFieldValues:et.deleteOne,deleteProcedureStepFieldValuesMany:et.deleteMany}}),{initializeProcedureStepFieldValues:EO,addProcedureStepFieldValues:VO,addProcedureStepFieldValuesMany:BO,setProcedureStepFieldValues:zO,setProcedureStepFieldValuesMany:DO,updateProcedureStepFieldValues:jO,updateProcedureStepFieldValuesMany:CO,deleteProcedureStepFieldValues:qO,deleteProcedureStepFieldValuesMany:$O}=Zn.actions,UO=Zn.reducer,LO=t=>t.procedureStepFieldValuesReducer.instances,At=l.createSelector([LO],t=>Object.values(t)),uM=y(l.createSelector([At,(t,s)=>s],(t,s)=>f(t.filter(e=>e.procedure===s)))),lM=y(l.createSelector([At,(t,s)=>s],(t,s)=>f(t.filter(e=>e.procedure_step===s)))),kO=t=>s=>s.procedureStepFieldValuesReducer.instances[t],NO=y(l.createSelector([At,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),oM=y(l.createSelector([At,(t,s)=>s,(t,s,e)=>e],(t,s,e)=>f(t.filter(({procedure:n,procedure_step:a})=>n===s&&a===e)))),tt=F(t=>t.uuid),GO={instances:{}},Jn=l.createSlice({name:"procedureStepFieldValuesReviews",initialState:GO,extraReducers:t=>t.addMatcher(l.isAnyOf(O,B,b),s=>Object.assign(s,GO)),reducers:{initializeProcedureStepFieldValuesReviews:tt.initialize,addProcedureStepFieldValuesReview:tt.addOne,addProcedureStepFieldValuesReviews:tt.addMany,setProcedureStepFieldValuesReview:tt.setOne,setProcedureStepFieldValuesReviews:tt.setMany,updateProcedureStepFieldValuesReview:tt.updateOne,updateProcedureStepFieldValuesReviews:tt.updateMany,deleteProcedureStepFieldValuesReview:tt.deleteOne,deleteProcedureStepFieldValuesReviews:tt.deleteMany}}),{initializeProcedureStepFieldValuesReviews:HO,addProcedureStepFieldValuesReview:WO,addProcedureStepFieldValuesReviews:Xn,setProcedureStepFieldValuesReview:KO,setProcedureStepFieldValuesReviews:YO,updateProcedureStepFieldValuesReview:ZO,updateProcedureStepFieldValuesReviews:JO,deleteProcedureStepFieldValuesReview:XO,deleteProcedureStepFieldValuesReviews:Qn}=Jn.actions,QO=t=>t.procedureStepFieldValuesReviewReducer.instances,It=l.createSelector([QO],t=>Object.values(t)),xO=t=>s=>s.procedureStepFieldValuesReviewReducer.instances[t],eP=y(l.createSelector([It,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),tP=y(l.createSelector([It,(t,s)=>s],(t,s)=>f(t.filter(e=>e.field_values===s)))),hM=y(l.createSelector([It,(t,s)=>s],(t,s)=>{let e;for(const n of t){const{field_values:a}=n;a===s&&(!e||e.submitted_at<=n.submitted_at)&&(e=n)}return e})),mM=y(l.createSelector([At,It,(t,s)=>s],(t,s,e)=>{const n=new Set(w(t.filter(({procedure:a})=>e===a)));return f(s.filter(({field_values:a})=>n.has(a)))})),pM=y(l.createSelector([At,It,(t,s)=>s,(t,s,e)=>e],(t,s,e,n)=>{const a=new Set(w(t.filter(({procedure_step:r,procedure:c})=>e===c&&r===n)));return f(s.filter(({field_values:r})=>a.has(r)))})),yM=l.createSelector([It],t=>{const s={};for(const e of t){const{field_values:n}=e,a=s[n];(!a||a.submitted_at<=e.submitted_at)&&(s[n]=e)}return s}),sP=Jn.reducer,st=F(t=>t.uuid),iP={instances:{}},xn=l.createSlice({name:"procedureStepReviewers",initialState:iP,extraReducers:t=>t.addMatcher(l.isAnyOf(O,B,b),s=>Object.assign(s,iP)),reducers:{initializeProcedureStepReviewers:st.initialize,addProcedureStepReviewer:st.addOne,addProcedureStepReviewers:st.addMany,setProcedureStepReviewer:st.setOne,setProcedureStepReviewers:st.setMany,updateProcedureStepReviewer:st.updateOne,updateProcedureStepReviewers:st.updateMany,deleteProcedureStepReviewer:st.deleteOne,deleteProcedureStepReviewers:st.deleteMany}}),{initializeProcedureStepReviewers:nP,addProcedureStepReviewer:aP,addProcedureStepReviewers:cP,setProcedureStepReviewer:rP,setProcedureStepReviewers:dP,updateProcedureStepReviewer:uP,updateProcedureStepReviewers:lP,deleteProcedureStepReviewer:oP,deleteProcedureStepReviewers:hP}=xn.actions,mP=t=>t.procedureStepReviewerReducer.instances,$t=l.createSelector([mP],t=>Object.values(t)),pP=t=>s=>s.procedureStepReviewerReducer.instances[t],yP=y(l.createSelector([$t,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),SM=y(l.createSelector([$t,(t,s)=>s],(t,s)=>f(t.filter(e=>e.procedure===s)))),fM=y(l.createSelector([$t,(t,s)=>s],(t,s)=>f(t.filter(e=>e.procedure_step===s)))),AM=y(l.createSelector([$t,(t,s)=>s,(t,s,e)=>e],(t,s,e)=>f(t.filter(({procedure:n,procedure_step:a})=>n===s&&a===e)))),SP=xn.reducer,it=F(t=>t.uuid),fP={instances:{}},ea=l.createSlice({name:"procedureSteps",initialState:fP,extraReducers:t=>t.addMatcher(l.isAnyOf(O,b),s=>Object.assign(s,fP)),reducers:{initializeProcedureSteps:it.initialize,setProcedureStep:it.setOne,setProcedureSteps:it.setMany,addProcedureStep:it.addOne,addProcedureSteps:it.addMany,updateProcedureStep:it.updateOne,updateProcedureSteps:it.updateMany,deleteProcedureStep:it.deleteOne,deleteProcedureSteps:it.deleteMany}}),{initializeProcedureSteps:AP,setProcedureStep:IP,setProcedureSteps:TP,addProcedureStep:OP,addProcedureSteps:PP,updateProcedureStep:FP,updateProcedureSteps:bP,deleteProcedureStep:_P,deleteProcedureSteps:gP}=ea.actions,MP=ea.reducer,ta=t=>t.procedureStepReducer.instances,RP=t=>s=>s.procedureStepReducer.instances[t],sa=l.createSelector([ta],t=>Object.values(t).toSorted((s,e)=>s.order-e.order)),IM=y(l.createSelector([ta,(t,s)=>s],(t,s)=>{const e={};for(const[n,a]of Object.entries(t))a.procedure_type===s&&(e[n]=a);return As(e)})),TM=y(l.createSelector([sa,(t,s)=>s],(t,s)=>f(t.filter(e=>e.procedure_type===s)))),wP=y(l.createSelector([sa,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),nt=F(({uuid:t})=>t),vP={instances:{}},ia=l.createSlice({name:"procedureTypeAttachments",initialState:vP,extraReducers:t=>t.addMatcher(l.isAnyOf(O,b),s=>Object.assign(s,vP)),reducers:{initializeProcedureTypeAttachments:nt.initialize,addProcedureTypeAttachment:nt.addOne,addProcedureTypeAttachments:nt.addMany,setProcedureTypeAttachment:nt.setOne,setProcedureTypeAttachments:nt.setMany,updateProcedureTypeAttachment:nt.updateOne,updateProcedureTypeAttachments:nt.updateMany,deleteProcedureTypeAttachment:nt.deleteOne,deleteProcedureTypeAttachments:nt.deleteMany}}),{initializeProcedureTypeAttachments:EP,addProcedureTypeAttachment:VP,addProcedureTypeAttachments:BP,setProcedureTypeAttachment:zP,setProcedureTypeAttachments:DP,updateProcedureTypeAttachment:jP,updateProcedureTypeAttachments:CP,deleteProcedureTypeAttachment:qP,deleteProcedureTypeAttachments:$P}=ia.actions,UP=ia.reducer,LP=t=>t.procedureTypeAttachmentReducer.instances,na=l.createSelector([LP],t=>Object.values(t)),kP=t=>s=>s.procedureTypeAttachmentReducer.instances[t],NP=y(l.createSelector([na,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),OM=y(l.createSelector([na,(t,s)=>s],(t,s)=>f(t.filter(({procedure_type:e})=>s===e)))),at=F(({uuid:t})=>t),GP={instances:{}},aa=l.createSlice({name:"procedureTypeFieldsAttachments",initialState:GP,extraReducers:t=>t.addMatcher(l.isAnyOf(O,b),s=>Object.assign(s,GP)),reducers:{initializeProcedureTypeFieldsAttachments:at.initialize,addProcedureTypeFieldsAttachment:at.addOne,addProcedureTypeFieldsAttachments:at.addMany,setProcedureTypeFieldsAttachment:at.setOne,setProcedureTypeFieldsAttachments:at.setMany,updateProcedureTypeFieldsAttachment:at.updateOne,updateProcedureTypeFieldsAttachments:at.updateMany,deleteProcedureTypeFieldsAttachment:at.deleteOne,deleteProcedureTypeFieldsAttachments:at.deleteMany}}),{initializeProcedureTypeFieldsAttachments:HP,addProcedureTypeFieldsAttachment:WP,addProcedureTypeFieldsAttachments:KP,setProcedureTypeFieldsAttachment:YP,setProcedureTypeFieldsAttachments:ZP,updateProcedureTypeFieldsAttachment:JP,updateProcedureTypeFieldsAttachments:XP,deleteProcedureTypeFieldsAttachment:QP,deleteProcedureTypeFieldsAttachments:xP}=aa.actions,eF=aa.reducer,tF=t=>t.procedureTypeFieldsAttachmentReducer.instances,ca=l.createSelector([tF],t=>Object.values(t)),PM=y(l.createSelector([ca,(t,s)=>s],(t,s)=>f(t.filter(e=>e.fields_revision===s)))),sF=t=>s=>s.procedureTypeFieldsAttachmentReducer.instances[t],iF=y(l.createSelector([ca,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),ct=F(({uuid:t})=>t),nF={instances:{}},ra=l.createSlice({name:"procedureTypeFields",initialState:nF,extraReducers:t=>t.addMatcher(l.isAnyOf(O,b),s=>Object.assign(s,nF)),reducers:{initializeProcedureTypeFields:ct.initialize,addProcedureTypeFields:ct.addOne,addProcedureTypeFieldsMany:ct.addMany,setProcedureTypeFields:ct.setOne,setProcedureTypeFieldsMany:ct.setMany,updateProcedureTypeFields:ct.updateOne,updateProcedureTypeFieldsMany:ct.updateMany,deleteProcedureTypeFields:ct.deleteOne,deleteProcedureTypeFieldsMany:ct.deleteMany}}),{initializeProcedureTypeFields:aF,addProcedureTypeFields:cF,addProcedureTypeFieldsMany:rF,setProcedureTypeFields:dF,setProcedureTypeFieldsMany:uF,updateProcedureTypeFields:lF,updateProcedureTypeFieldsMany:oF,deleteProcedureTypeFields:hF,deleteProcedureTypeFieldsMany:mF}=ra.actions,pF=ra.reducer,yF=t=>t.procedureTypeFieldsReducer.instances,hs=l.createSelector([yF],t=>Object.values(t)),FM=y(l.createSelector([hs,(t,s)=>s],(t,s)=>f(t.filter(e=>e.procedure_type===s)))),bM=y(l.createSelector([hs,(t,s)=>s],(t,s)=>t.filter(e=>e.procedure_type===s).sort((e,n)=>e.submitted_at>n.submitted_at?-1:1)[0])),SF=t=>s=>s.procedureTypeFieldsReducer.instances[t],fF=y(l.createSelector([hs,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),rt=F(({uuid:t})=>t),AF={instances:{}},da=l.createSlice({name:"procedureFieldValuesAttachments",initialState:AF,extraReducers:t=>t.addMatcher(l.isAnyOf(O,B,b),s=>Object.assign(s,AF)),reducers:{initializeProcedureFieldValuesAttachments:rt.initialize,addProcedureFieldValuesAttachment:rt.addOne,addProcedureFieldValuesAttachments:rt.addMany,setProcedureFieldValuesAttachment:rt.setOne,setProcedureFieldValuesAttachments:rt.setMany,updateProcedureFieldValuesAttachment:rt.updateOne,updateProcedureFieldValuesAttachments:rt.updateMany,deleteProcedureFieldValuesAttachment:rt.deleteOne,deleteProcedureFieldValuesAttachments:rt.deleteMany}}),{initializeProcedureFieldValuesAttachments:IF,addProcedureFieldValuesAttachment:TF,addProcedureFieldValuesAttachments:ua,setProcedureFieldValuesAttachment:OF,setProcedureFieldValuesAttachments:PF,updateProcedureFieldValuesAttachment:FF,updateProcedureFieldValuesAttachments:bF,deleteProcedureFieldValuesAttachment:_F,deleteProcedureFieldValuesAttachments:la}=da.actions,gF=da.reducer,MF=t=>t.procedureFieldValuesAttachmentReducer.instances,oa=l.createSelector([MF],t=>Object.values(t)),RF=t=>s=>s.procedureFieldValuesAttachmentReducer.instances[t],wF=y(l.createSelector([oa,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),vF=y(l.createSelector([oa,(t,s)=>s],(t,s)=>f(t.filter(e=>e.field_values===s)))),dt=F(({uuid:t})=>t),EF={instances:{}},ha=l.createSlice({name:"procedureFieldValues",initialState:EF,extraReducers:t=>t.addMatcher(l.isAnyOf(O,B,b),s=>Object.assign(s,EF)),reducers:{initializeProcedureFieldValues:dt.initialize,addProcedureFieldValues:dt.addOne,addProcedureFieldValuesMany:dt.addMany,setProcedureFieldValues:dt.setOne,setProcedureFieldValuesMany:dt.setMany,updateProcedureFieldValues:dt.updateOne,updateProcedureFieldValuesMany:dt.updateMany,deleteProcedureFieldValues:dt.deleteOne,deleteProcedureFieldValuesMany:dt.deleteMany}}),{initializeProcedureFieldValues:VF,addProcedureFieldValues:BF,addProcedureFieldValuesMany:zF,setProcedureFieldValues:DF,setProcedureFieldValuesMany:jF,updateProcedureFieldValues:CF,updateProcedureFieldValuesMany:qF,deleteProcedureFieldValues:$F,deleteProcedureFieldValuesMany:UF}=ha.actions,LF=ha.reducer,kF=t=>t.procedureFieldValuesReducer.instances,ma=l.createSelector([kF],t=>Object.values(t)),_M=y(l.createSelector([ma,(t,s)=>s],(t,s)=>f(t.filter(e=>e.procedure===s)))),NF=t=>s=>s.procedureFieldValuesReducer.instances[t],GF=y(l.createSelector([ma,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),ut=F(t=>t.uuid),HF={instances:{}},pa=l.createSlice({name:"procedureTypes",initialState:HF,extraReducers:t=>t.addMatcher(l.isAnyOf(O,b),s=>Object.assign(s,HF)),reducers:{initializeProcedureTypes:ut.initialize,addProcedureType:ut.addOne,addProcedureTypes:ut.addMany,setProcedureType:ut.setOne,setProcedureTypes:ut.setMany,updateProcedureType:ut.updateOne,updateProcedureTypes:ut.updateMany,deleteProcedureType:ut.deleteOne,deleteProcedureTypes:ut.deleteMany}}),{initializeProcedureTypes:WF,addProcedureType:KF,addProcedureTypes:YF,setProcedureType:ZF,setProcedureTypes:JF,updateProcedureType:XF,updateProcedureTypes:QF,deleteProcedureType:xF,deleteProcedureTypes:eb}=pa.actions,tb=pa.reducer,sb=t=>t.procedureTypeReducer.instances,ya=l.createSelector([sb],t=>Object.values(t)),ib=t=>s=>s.procedureTypeReducer.instances[t],nb=y(l.createSelector([ya,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),gM=y(l.createSelector([ya,(t,s)=>s],(t,s)=>f(t.filter(e=>e.organization===s)))),MM={isRehydrated:!1},Sa=l.createSlice({name:"rehydrated",initialState:MM,reducers:{setRehydrated:(t,s)=>{t.isRehydrated=s.payload}}}),{setRehydrated:RM}=Sa.actions,wM=t=>t.rehydratedReducer.isRehydrated,ab=Sa.reducer,lt=F(t=>t.uuid),cb={instances:{}},fa=l.createSlice({name:"teamMemberships",initialState:cb,extraReducers:t=>t.addMatcher(l.isAnyOf(O,b),s=>Object.assign(s,cb)),reducers:{initializeTeamMemberships:lt.initialize,addTeamMembership:lt.addOne,addTeamMemberships:lt.addMany,setTeamMembership:lt.setOne,setTeamMemberships:lt.setMany,updateTeamMembership:lt.updateOne,updateTeamMemberships:lt.updateMany,deleteTeamMembership:lt.deleteOne,deleteTeamMemberships:lt.deleteMany}}),{initializeTeamMemberships:rb,addTeamMembership:db,addTeamMemberships:ub,setTeamMembership:lb,setTeamMemberships:ob,updateTeamMembership:hb,updateTeamMemberships:mb,deleteTeamMembership:pb,deleteTeamMemberships:yb}=fa.actions,Sb=fa.reducer,fb=t=>t.teamMembershipReducer.instances,ms=l.createSelector([fb],t=>Object.values(t)),Ab=t=>s=>s.teamMembershipReducer.instances[t],Ib=y(l.createSelector([ms,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),vM=y(l.createSelector([ms,(t,s)=>s],(t,s)=>{const e={};for(const n of t.filter(a=>a.team===s))e[n.user]=n;return e})),EM=y(l.createSelector([as,ms,(t,s)=>s],(t,s,e)=>{const n=new Set(s.filter(a=>a.team===e).map(a=>a.user));return f(t.filter(a=>n.has(a.id)))})),ot=F(t=>t.uuid),Tb={instances:{}},Aa=l.createSlice({name:"teams",initialState:Tb,extraReducers:t=>t.addMatcher(l.isAnyOf(O,b),s=>Object.assign(s,Tb)),reducers:{initializeTeams:ot.initialize,addTeam:ot.addOne,addTeams:ot.addMany,setTeam:ot.setOne,setTeams:ot.setMany,updateTeam:ot.updateOne,updateTeams:ot.updateMany,deleteTeam:ot.deleteOne,deleteTeams:ot.deleteMany}}),{initializeTeams:Ob,addTeam:Pb,addTeams:Fb,setTeam:bb,setTeams:_b,updateTeam:gb,updateTeams:Mb,deleteTeam:Rb,deleteTeams:wb}=Aa.actions,vb=t=>t.teamReducer.instances,Ia=l.createSelector([vb],t=>Object.values(t)),Eb=t=>s=>s.teamReducer.instances[t],Vb=y(l.createSelector([Ia,(t,s)=>s],(t,s)=>{const e=new Set(s);return f(t.filter(({uuid:n})=>e.has(n)))})),VM=y(l.createSelector([Ia,(t,s)=>s],(t,s)=>f(t.filter(e=>e.organization===s)))),Bb=Aa.reducer,Ta={outboxReducer:jf,authReducer:hu},BM=l.combineReducers(Ta),zb={...Ta,assetReducer:Kc,assetAttachmentReducer:Tc,assetCommentReducer:zc,assetTypeReducer:Zd,assetTypeAttachmentReducer:cr,issueReducer:np,issueAttachmentReducer:Am,issueTypeReducer:TS,issueTypeAttachmentReducer:Ap,organizationReducer:vf,projectReducer:ZA,projectAttachmentReducer:uA,projectCommentReducer:FA,projectAccessReducer:Kf,organizationAccessReducer:hf,projectFileReducer:qA,procedureTypeReducer:tb,procedureInitiativeReducer:uI,procedureReducer:OI,procedureTypeFieldsReducer:pF,procedureFieldValuesReducer:LF,procedureTypeAttachmentReducer:UP,procedureTypeFieldsAttachmentReducer:eF,procedureFieldValuesAttachmentReducer:gF,procedureStepFieldsAttachmentReducer:iO,procedureStepFieldsReducer:SO,procedureStepFieldValuesAttachmentReducer:wO,procedureStepFieldValuesReducer:UO,procedureStepFieldValuesReviewReducer:sP,procedureStepAssigneeReducer:kI,procedureStepCommentReducer:sT,procedureStepDefaultAssigneeReducer:ST,procedureStepDefaultReviewerReducer:vT,procedureStepEventReducer:GT,procedureStepReviewerReducer:SP,procedureStepReducer:MP,rehydratedReducer:ab,formReducer:go,formRevisionReducer:to,formRevisionAttachmentReducer:kl,formSubscriberReducer:yo,formSubmissionFieldValuesAttachmentReducer:Uo,formSubmissionFieldValuesReducer:xo,formSubmissionCommentReducer:hh,formSubmissionReducer:wh,formIdentifierReducer:pl,formIdentifierValueReducer:Rl,userReducer:QS,emailDomainsReducer:el,documentsReducer:Cu,documentAttachmentReducer:gu,teamReducer:Bb,agentsReducer:rc,issueCommentReducer:Hm,issueCommentAttachmentReducer:Vm,issueUpdateReducer:NS,geoImageReducer:Nh,issueAssociationReducer:am,issueTypeFieldsReducer:cy,issueTypeFieldValuesReducer:Wp,issueTypeFieldsAttachmentReducer:Vp,issueTypeFieldValuesAttachmentReducer:Iy,issueTypeIdentifierReducer:By,issueTypeIdentifierValueReducer:Ky,issueTypePriorityReducer:cS,issueTypeStatusReducer:BS,assetTypeFieldsReducer:zr,assetTypeFieldValuesReducer:rd,assetTypeFieldsAttachmentReducer:Tr,assetTypeFieldValuesAttachmentReducer:Kr,assetTypeIdentifierReducer:Od,assetTypeIdentifierValueReducer:Dd,assetTypeStatusReducer:uu,teamMembershipReducer:Sb},zM=l.combineReducers(zb),Db=1e4,Oa=[400,409,403,404,405,500],H=1e4,jb={};class Cb{constructor(s){h(this,"client");h(this,"pageSize",Db);jb[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 DM=t=>{if(t)throw t;const s=Et();s?s.dispatch({type:"rehydrated/setRehydrated",payload:!0}):console.error("Client store not set")},qb=(t,s,e)=>{const n=Pt();return n?(n.addRequest(s),n.getQueue()):(console.warn("Outbox coordinator not set; cannot enqueue request yet."),[])},$b=(t,s,e)=>{const n=Pt();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 jM(t,s){if(!s.payload)throw new Error("Received empty payload");return xb(s)}const CM={...Ra,effect:jM,discard:Lb,returnPromises:!0,persistCallback:DM,retry:UM,persistOptions:{storage:c_},queue:{...Ra.queue,enqueue:qb,dequeue:$b,peek:(...t)=>$M(...t)}},qM=a_.offline(CM);async function Ub(t,s,e){if(s.store.getState().outboxReducer.deletedRequests.includes(t.payload.uuid))throw new Error("Request was marked for deletion");const a=jb[t.meta.offline.effect.serviceName];if(!a)throw new Error(`Service ${t.meta.offline.effect.serviceName} not found`);return ba(t.meta.offline.effect.BASE_URL,t.meta.offline.effect.request,s,a,e)}function Lb(t,s,e=0){var p;if(console.debug("Considering discarding request due to error:",t,`(${typeof t})`,`
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=Et(),r=n.getState().outboxReducer.deletedRequests,c=s.payload.uuid;function u(){n.dispatch(zf(c));const m=Pt();if(!m)throw new Error("Outbox coordinator not set");m.remove(s.payload.uuid);const S=s.meta.offline.rollback;throw S&&(console.warn("Rolling back request due to SDK error:",s),n.dispatch(S)),t}if(t instanceof U&&t.options.discard&&(console.debug("Discarding request due to explicit discard:",s.payload.url),u()),r.includes(c)&&(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),t.options.discard!==!1&&m!==void 0&&Oa.includes(m)){console.warn("Discarding request due to error:",t,`
4
- Action:`,s);const S=Pt();if(!S)throw new Error("Outbox coordinator not set");S.remove(s.payload.uuid),t.options.discard=!0,u()}}console.debug("Registering a retry for request:",s.payload.uuid);const d=Pt();if(!d)throw new Error("Outbox coordinator not set");return d.registerRetry(s.payload.uuid),!1}function $M(t,s,e){var n;return(n=Pt())==null?void 0:n.peek()}function UM(t,s){return Et().dispatch(Df(new Date().getTime())),Ea}const wt="An unknown error occurred",LM=500,kb=["non_field_errors","detail"];function kM(t,s){let e;if(t!=null&&t.body)if(typeof t.body=="object"){const n=t.body;if(typeof n.error=="string")e=n.error;else if(typeof n.message=="string")e=n.message;else try{e=Object.entries(n).map(([a,r])=>typeof r=="string"?kb.includes(a)?r:`${a}: ${r}`:Array.isArray(r)?kb.includes(a)?r.join(`
5
- `):r.map(c=>`${a}: ${c}`).join(`
6
- `):`${a}: ${JSON.stringify(r)}`).join(`
7
- `)}catch(a){console.error("Failed to extract error message from response body",a)}}else typeof t.body=="string"&&(e=t.body);else t!=null&&t.text?e=t.text:s instanceof Error&&(e=s.message);return!e||e.length>LM?wt:e}class U extends Error{constructor(e){super(wt);h(this,"status");h(this,"response");h(this,"message");h(this,"options");const{response:n,innerError:a}=e;this.message=e.message??kM(n,a)??wt,this.status=(n==null?void 0:n.status)??0,this.response=n,this.options=e}}function Nb(t){function s(e){return typeof e=="object"&&e!==null&&["ok","redirect","clientError","serverError","error"].every(a=>a in e)}if(s(t))return t;if(typeof t=="object"&&t!==null){const e=t;if(s(e.response))return e.response;if(e.response&&s(e.response.response))return e.response.response}}class Gb extends Cb{constructor(s){super(s)}applyAuth(s){const e=this.getAuthHeader();return e?s.set("Authorization",e):s}isAuthFailure(s){return s.status===401}}class Tt extends Cb{constructor(e,n){super(e);h(this,"auth");this.auth=n}}class NM extends Tt{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(nc(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(a=>{this.dispatch(cc(a))})}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(ac(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(ic(n)),n}}function W(t,s){const e=[];let n=0;const a=t.length;for(;n<a;)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 R(t){const s={...t};for(const e of[...Va,"created_by"])e in s&&delete s[e];return s}class v extends Tt{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{async getPresignedUrl(s,e){const{selectById:n}=this.selectors,a=this.select(n(s));if(!a)throw new Error(`Could not find ${this.name}: ${s} in store.`);if(a.object_url)return a.object_url;const r=await this.client.files.getPresignedUrlFromCache(a.file_sha1);if(r)return r;const c=await this.performRequest({url:`${this.url}/${s}/presigned-url/`,method:o.GET},e);return await this.client.files.cachePresignedUrl(a.file_sha1,c),c}async add(s){const{addOne:e,updateOne:n,deleteOne:a}=this.actions;let r,c=null,u=null;if("file"in s){const{file:_,...I}=s;c=await this.client.files.getFilePayload(_),u=URL.createObjectURL(_),r={...I,file_sha1:c.sha1,file_type:c.file_type,file_name:_.name,file_extension:c.extension,object_url:u}}else r=s;const d=this.buildModel(r),p=this.buildPayload(d);this.dispatch(e(d));const m=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:{...p,...c?{file:c}:{}},blockers:this.getBlockers(d),blocks:this.getBlocks(d)});m.then(({instance:_})=>{this.dispatch(n(_))}).catch(()=>{this.dispatch(a(this.getId(d)))}).finally(()=>{u&&URL.revokeObjectURL(u)});const S=m.then(({instance:_})=>_),T=m.then(async({instance:_,presigned_url:I})=>{try{return I&&await this.client.files.processPresignedUrl(_.file_sha1,I),_.file_sha1}catch(M){throw console.error("Upload to s3 using presigned url failed.",M),M}});return[d,S,T]}async bulkAdd(s,e){const{addMany:n,updateMany:a,deleteMany:r}=this.actions,c=new Date().toISOString(),u=[],d=new Set,p=W(s,Math.min(e??s.length,H)),m=[];for(const I of p){const M=[],g={},E=[],V=[];for(const z of I){let C;if("file"in z){const{file:Lt,...Sw}=z,Vt=await this.client.files.getFilePayload(Lt);Vt.sha1 in g||(g[Vt.sha1]=Vt);const s_=URL.createObjectURL(Lt);d.add(s_),C={...Sw,file_sha1:Vt.sha1,file_type:Vt.file_type,file_name:Lt.name,file_extension:Vt.extension,object_url:s_}}else C=z;const N=this.buildModel(C);u.push(N);const ps=this.buildBulkPayload(N);M.push(ps);const q=this.getBlockers(N);E.push(...q);const L=this.getBlocks(N);V.push(...L)}const D={payloads:M,submittedAt:c,files:Object.values(g),blockers:E,blocks:V};m.push(D)}this.dispatch(n(u));const S=m.map(I=>{const{submittedAt:M,files:g,payloads:E,blocks:V,blockers:D}=I;return this.enqueueRequest({description:A(o.POST,this.name,!0),method:o.POST,url:`${this.url}/bulk/`,payload:{submitted_at:M,files:g,payloads:E},blockers:D,blocks:V})});Promise.all(S).then(I=>{const M=I.flatMap(g=>g.instances);this.dispatch(a(M))}).catch(I=>{throw this.dispatch(r(u.map(M=>this.getId(M)))),console.error(I),I}).finally(()=>{for(const I of d)URL.revokeObjectURL(I)});const T=Promise.all(S).then(I=>I.flatMap(({instances:M})=>M)),_=Promise.all(S).then(async I=>{const M=[];for(const{presigned_urls:g}of I){const E=this.client.files.processPresignedUrls(g);for(const[V,D]of Object.entries(E))try{await D,M.push(V)}catch(z){throw console.error("Upload to s3 using presigned url failed.",z),z}}return M});return[u,T,_]}async delete(s){const{addOne:e,deleteOne:n}=this.actions,{selectById:a}=this.selectors,r=this.select(a(s));if(!r)throw new Error(`Attempting to delete ${this.name} with pk ${s} that does not exist in the store`);this.dispatch(n(this.getId(r)));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${s}/`,blockers:[s],blocks:[]})}catch(c){throw this.dispatch(e(r)),c}}}class GM extends j{constructor(){super(...arguments);h(this,"name","Asset attachment");h(this,"url","/asset-attachments");h(this,"actions",{addOne:lc,addMany:Fs,setOne:oc,setMany:hc,updateOne:mc,updateMany:pc,deleteOne:yc,deleteMany:bs,initialize:uc});h(this,"selectors",{selectById:fc,selectByIds:Ac})}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 c;return((c=r.userReducer.currentUser)==null?void 0:c.id)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){return{uuid:e.uuid,submitted_at:e.submitted_at,file_name:e.file_name,file_sha1:e.file_sha1,file_extension:e.file_extension,asset:e.asset}}buildBulkPayload(e){return{uuid:e.uuid,file_name:e.file_name,file_sha1:e.file_sha1,file_extension:e.file_extension,asset:e.asset}}async refreshStore(e,n){const{initialize:a}=this.actions,c=(await this.listPaginated({queryParams:{asset__project:e}},n)).flat();return this.dispatch(a(c)),c}}class HM extends v{constructor(){super(...arguments);h(this,"name","Asset Comment");h(this,"url","/asset-comments");h(this,"actions",{addOne:Fc,addMany:Nt,setOne:bc,setMany:_c,updateOne:gc,updateMany:Mc,deleteOne:Rc,deleteMany:Gt,initialize:Pc});h(this,"selectors",{selectById:vc,selectByIds:Ec})}add(e){const{addOne:n,updateOne:a,deleteOne:r}=this.actions,c=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(c));const u=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:R(c),blockers:[c.asset],blocks:[c.uuid]});return u.then(d=>{this.dispatch(a(d))}).catch(()=>{this.dispatch(r(c.uuid))}),[c,u]}update(e){const{updateOne:n}=this.actions,{selectById:a}=this.selectors,r=this.select(a(e.uuid));if(!r)throw new Error(`Asset comment with uuid ${e.uuid} not found in store`);const c={...r,...e};this.dispatch(n(c));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))}),[c,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:r}=this.selectors,c=this.select(r(e));if(!c)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(a(c)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,c=(await this.listPaginated({queryParams:{asset__project:e}},n)).flat();return this.dispatch(a(c)),c}}class WM extends v{constructor(){super(...arguments);h(this,"url","/assets");h(this,"name","Asset");h(this,"actions",{addOne:Cc,addMany:Rs,setOne:Lc,setMany:kc,updateOne:qc,updateMany:$c,deleteOne:Uc,deleteMany:ws,initialize:jc});h(this,"selectors",{selectById:Hc,selectByIds:Wc})}add(e){const{addOne:n,updateOne:a,deleteOne:r}=this.actions,c=this.select(m=>{var S;return((S=m.userReducer.currentUser)==null?void 0:S.id)??null}),u=new Date().toISOString(),d=P({...e,created_by:c,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:R(d),blockers:[d.asset_type],blocks:[d.uuid]});return p.then(m=>{this.dispatch(a(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}update(e){const{updateOne:n}=this.actions,{selectById:a}=this.selectors,r=this.select(a(e.uuid));if(!r)throw new Error(`No asset with uuid ${e.uuid} found in the store`);const c={...r,...e};this.dispatch(n(c));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))}),[c,u]}async delete(e){const{addOne:n,deleteOne:a}=this.actions,{selectById:r}=this.selectors,c=this.select(r(e));if(!c)throw new Error(`No asset with uuid ${e} found in the store`);const u=this.select(Ic(e)),d=this.select(Vc(e)),p=this.select(im(e)),m=this.select(gI(e)),S=this.select(Mh(e));this.dispatch(a(e)),this.dispatch(bs(w(u))),this.dispatch(Gt(w(d))),this.dispatch(_t(w(p))),this.dispatch(Rt(w(m))),this.dispatch(St(w(S)));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(T){throw this.dispatch(n(c)),this.dispatch(Fs(u)),this.dispatch(Nt(d)),this.dispatch(bt(p)),this.dispatch(Mt(m)),this.dispatch(yt(S)),T}}bulkAdd(e,n){const{addMany:a}=this.actions,r=new Date().toISOString(),c=W(e,Math.min(n??e.length,H)).map(p=>{const m=p.map(S=>P(S));return{batchId:ht.v4(),payload:{submitted_at:r,assets:m}}}),u=[];let d=null;for(const p of c){const{batchId:m,payload:S}=p,T=S.assets.map(({uuid:E})=>E),_=S.assets.map(({asset_type:E})=>E),I=S.assets.map(({project:E})=>E),M=S.assets.map(({status:E})=>E),g=this.enqueueRequest({description:A(o.POST,this.name,!0),method:o.POST,url:`${this.url}/bulk/`,payload:S,blockers:(d?[d]:[]).concat(_).concat(I).concat(M),blocks:[m].concat(T)});d=p.batchId,u.push(g)}return Promise.all(u).then(p=>{const m=p.flat();this.dispatch(a(m))}),u}bulkUpdate(e,n){const{updateMany:a}=this.actions,{selectByIds:r}=this.selectors,c=w(e);if(new Set(c).size!==e.length)throw new Error("payloads contains duplicate uuids.");const u=this.select(r(c));if(c.length!=u.length)throw new Error(`Attempting to bulk update ${c.length-u.length} assets that dont exist in the store`);const d=u.toSorted(mt),p=e.toSorted(mt),m=[];for(let I=0;I<c.length;I++)m.push({...d[I],...p[I]});this.dispatch(a(m));const S=W(e,Math.min(n??e.length,H)),T=[];let _=null;for(const I of S){const M=ht.v4(),g=w(I),E=I.map(({status:D})=>D).filter(Boolean),V=this.enqueueRequest({description:A(o.PATCH,this.name,!0),method:o.PATCH,url:`${this.url}/bulk/`,payload:{payloads:I},blockers:(_?[_]:[]).concat(g).concat(E),blocks:[M].concat(g)});T.push(V),_=M}return Promise.all(T).then(I=>{this.dispatch(a(I.flat()))}).catch(()=>{this.dispatch(a(u))}),[m,T]}async bulkDelete(e){const{addMany:n,deleteMany:a}=this.actions,{selectByIds:r}=this.selectors,c=this.select(r(e)),u=this.select(Bc(e)),d=this.select(nm(e)),p=this.select(MI(e)),m=this.select(Rh(e));this.dispatch(a(e)),this.dispatch(Gt(w(u))),this.dispatch(_t(w(d))),this.dispatch(Rt(w(p))),this.dispatch(St(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(S){throw this.dispatch(n(c)),this.dispatch(Nt(u)),this.dispatch(bt(d)),this.dispatch(Mt(p)),this.dispatch(yt(m)),S}}async refreshStore(e,n){const{initialize:a}=this.actions,c=(await this.listPaginated({queryParams:{project:e}},n)).flat();return this.dispatch(a(c)),c}}class KM extends j{constructor(){super(...arguments);h(this,"name","Asset Type Attachment");h(this,"url","/asset-type-attachments");h(this,"actions",{addOne:Jc,addMany:Es,setOne:Xc,setMany:Qc,updateOne:xc,updateMany:er,deleteOne:tr,deleteMany:Vs,initialize:Zc});h(this,"selectors",{selectById:ir,selectByIds:nr})}getId(e){return e.uuid}getBlockers(e){return[e.asset_type]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var c;return((c=r.userReducer.currentUser)==null?void 0:c.id)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){return{uuid:e.uuid,submitted_at:e.submitted_at,file_name:e.file_name,file_sha1:e.file_sha1,file_extension:e.file_extension,asset_type:e.asset_type}}buildBulkPayload(e){return{uuid:e.uuid,file_name:e.file_name,file_sha1:e.file_sha1,file_extension:e.file_extension,asset_type:e.asset_type}}async refreshStore(e,n){const{initialize:a}=this.actions,r=await this.list({queryParams:{asset_type__organization:e}},n);return this.dispatch(a(r)),r}}class YM extends j{constructor(){super(...arguments);h(this,"name","Asset Type Fields Attachment");h(this,"url","/asset-type-fields-attachments");h(this,"actions",{addOne:ur,addMany:lr,setOne:or,setMany:hr,updateOne:mr,updateMany:pr,deleteOne:yr,deleteMany:Sr,initialize:dr});h(this,"selectors",{selectById:Ar,selectByIds:Ir})}getId(e){return e.uuid}getBlockers(e){return[e.fields_revision]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var c;return((c=r.userReducer.currentUser)==null?void 0:c.id)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){const{uuid:n,field_identifier:a,fields_revision:r,file_sha1:c,file_name:u,file_extension:d}=e;return{uuid:n,submitted_at:e.submitted_at,field_identifier:a,fields_revision:r,file_sha1:c,file_name:u,file_extension:d}}buildBulkPayload(e){const{uuid:n,field_identifier:a,fields_revision:r,file_sha1:c,file_name:u,file_extension:d}=e;return{uuid:n,field_identifier:a,fields_revision:r,file_sha1:c,file_name:u,file_extension:d}}async refreshStore(e,n){const{initialize:a}=this.actions,r=await this.list({queryParams:{fields_revision__asset_type__organization:e}},n);return this.dispatch(a(r)),r}}class ZM extends v{constructor(){super(...arguments);h(this,"name","Asset Type Fields");h(this,"url","/asset-type-fields");h(this,"actions",{addOne:Fr,addMany:br,setOne:_r,setMany:gr,updateOne:Mr,updateMany:Rr,deleteOne:wr,deleteMany:vr,initialize:Pr});h(this,"selectors",{selectById:Vr,selectByIds:Br})}add(e){const{addOne:n,updateOne:a,deleteOne:r}=this.actions,c=this.select(m=>{var S;return((S=m.userReducer.currentUser)==null?void 0:S.id)??null}),u=new Date().toISOString(),d=P({...e,created_by:c,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:R(d),blockers:[d.asset_type],blocks:[d.uuid]});return p.then(m=>{this.dispatch(a(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}async refreshStore(e,n){const{initialize:a}=this.actions,r=await this.list({queryParams:{asset_type__organization:e}},n);return this.dispatch(a(r)),r}}class JM 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:Cr,addMany:qs,setOne:qr,setMany:$r,updateOne:Ur,updateMany:Lr,deleteOne:kr,deleteMany:$s,initialize:jr});h(this,"selectors",{selectById:Gr,selectByIds:Hr})}getId(e){return e.uuid}getBlockers(e){return[e.field_values]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var c;return((c=r.userReducer.currentUser)==null?void 0:c.id)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){const{uuid:n,field_identifier:a,field_values:r,file_sha1:c,file_name:u,file_extension:d}=e;return{uuid:n,submitted_at:e.submitted_at,field_identifier:a,field_values:r,file_sha1:c,file_name:u,file_extension:d}}buildBulkPayload(e){const{uuid:n,field_identifier:a,field_values:r,file_sha1:c,file_name:u,file_extension:d}=e;return{uuid:n,field_identifier:a,field_values:r,file_sha1:c,file_name:u,file_extension:d}}async bulkDelete(e){const{deleteMany:n,addMany:a}=this.actions,{selectByIds:r}=this.selectors,c=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(a(c)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,c=(await this.listPaginated({queryParams:{field_values__asset__project:e,latest:!0}},n)).flat();return this.dispatch(a(c)),c}}class XM extends v{constructor(){super(...arguments);h(this,"name","Asset Type Field Values");h(this,"url","/asset-type-field-values");h(this,"actions",{addOne:Jr,addMany:Xr,setOne:Qr,setMany:xr,updateOne:ed,updateMany:td,deleteOne:sd,deleteMany:id,initialize:Zr});h(this,"selectors",{selectById:ad,selectByIds:cd})}add(e){const{addOne:n,updateOne:a,deleteOne:r}=this.actions,c=this.select(m=>{var S;return((S=m.userReducer.currentUser)==null?void 0:S.id)??null}),u=new Date().toISOString(),d=P({...e,created_by:c,submitted_at:u}),p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:R(d),blockers:[e.asset,e.fields_revision],blocks:[d.uuid]});return this.dispatch(n(d)),p.then(m=>{this.dispatch(a(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}bulkAdd(e,n){const{payloads:a,values:r}=e,{addMany:c,updateMany:u,deleteMany:d}=this.actions,p=new Date().toISOString(),m=[],S=W(a,Math.min(n??a.length,H)),T=[];for(const I of S){const M=[];for(const g of I){const E=P({...g,values:g.values,created_by:this.select(V=>{var D;return((D=V.userReducer.currentUser)==null?void 0:D.id)??null}),submitted_at:p});m.push(E),M.push({uuid:E.uuid,asset:g.asset,fields_revision:g.fields_revision,published_at:g.published_at,values:E.values})}T.push({submitted_at:p,values:r,field_values:M})}this.dispatch(c(m));const _=[];for(const I of T){const{field_values:M}=I,g=M.map(({asset:z})=>z),E=M.map(({fields_revision:z})=>z),V=M.map(({uuid:z})=>z),D=this.enqueueRequest({description:A(o.POST,this.name,!0),method:o.POST,url:`${this.url}/bulk/`,payload:I,blockers:g.concat(E),blocks:V});_.push(D)}return Promise.all(_).then(I=>{this.dispatch(u(I.flat()))}).catch(()=>{this.dispatch(d(w(m)))}),[m,_]}update(e){const{updateOne:n}=this.actions,{selectById:a}=this.selectors,r=this.select(a(e.uuid));if(!r)throw new Error(`Expected AssetTypeFieldValues with uuid ${e.uuid} to exist`);const c={...r,...e};this.dispatch(n(c));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[c.uuid,c.fields_revision,c.asset],blocks:[c.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[c,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:r}=this.selectors,c=this.select(r(e));if(!c)throw new Error(`Expected submission with uuid ${e} to exist`);const u=this.select(Wr(e));this.dispatch(n(e)),this.dispatch($s(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(a(c)),this.dispatch(qs(u)),d}}async refreshStore(e,n){const{initialize:a}=this.actions,c=(await this.listPaginated({queryParams:{asset__project:e,latest:!0}},n)).flat();return this.dispatch(a(c)),c}}class QM extends v{constructor(){super(...arguments);h(this,"name","Asset Type Identifier");h(this,"url","/asset-type-identifiers");h(this,"actions",{addOne:ld,addMany:od,setOne:hd,setMany:md,updateOne:pd,updateMany:yd,deleteOne:Sd,deleteMany:fd,initialize:ud});h(this,"selectors",{selectById:Id,selectByIds:Td})}add(e){const{addOne:n,updateOne:a,deleteOne:r}=this.actions,c=this.select(m=>{var S;return((S=m.userReducer.currentUser)==null?void 0:S.id)??null}),u=new Date().toISOString(),d=P({...e,created_by:c,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:R(d),blockers:[d.asset_type],blocks:[d.uuid]});return p.then(m=>{this.dispatch(a(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}update(e){const{updateOne:n}=this.actions,{selectById:a}=this.selectors,r=this.select(a(e.uuid));if(!r)throw new Error(`Expected asset type identifier with uuid ${e.uuid} to exist`);const c={...r,...e};this.dispatch(n(c));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))}),[c,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:r}=this.selectors,c=this.select(r(e));if(!c)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(a(c)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,r=await this.list({queryParams:{asset_type__organization:e}},n);return this.dispatch(a(r)),r}}class xM extends v{constructor(){super(...arguments);h(this,"name","Asset Type Identifier Value");h(this,"url","/asset-type-identifier-values");h(this,"actions",{addOne:bd,addMany:_d,setOne:gd,setMany:Md,updateOne:Rd,updateMany:wd,deleteOne:vd,deleteMany:Ed,initialize:Fd});h(this,"selectors",{selectById:Bd,selectByIds:zd})}add(e){const{addOne:n,updateOne:a,deleteOne:r}=this.actions,c=this.select(m=>{var S;return((S=m.userReducer.currentUser)==null?void 0:S.id)??null}),u=new Date().toISOString(),d=P({...e,created_by:c,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:R(d),blockers:[e.asset,e.asset_type_identifier],blocks:[d.uuid]});return p.then(m=>{this.dispatch(a(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}bulkAdd(e,n){const{addMany:a,updateMany:r,deleteMany:c}=this.actions,u=new Date().toISOString(),d=this.select(I=>{var M;return((M=I.userReducer.currentUser)==null?void 0:M.id)??null}),p=W(e,Math.min(n??e.length,H)),m=[],S=[];for(const I of p){const M=[],g=[],E=[];for(const D of I){const z=P({...D,submitted_at:u,created_by:d});S.push(z);const C={uuid:z.uuid,asset:z.asset,asset_type_identifier:z.asset_type_identifier,value:z.value};M.push(C),g.push(z.asset),g.push(z.asset_type_identifier),E.push(z.uuid)}const V={payloads:M,submitted_at:u,blockers:g,blocks:E};m.push(V)}this.dispatch(a(S));const T=m.map(I=>{const{payloads:M,submitted_at:g,blockers:E,blocks:V}=I;return this.enqueueRequest({description:A(o.POST,this.name,!0),method:o.POST,url:`${this.url}/bulk/`,payload:{submitted_at:g,payloads:M},blockers:E,blocks:V})});Promise.all(T).then(I=>{this.dispatch(r(I.flat()))}).catch(I=>{throw this.dispatch(c(w(S))),I});const _=Promise.all(T).then(I=>I.flat());return[S,_]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:r}=this.selectors,c=this.select(r(e));if(!c)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(a(c)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,c=(await this.listPaginated({queryParams:{asset__project:e,latest:!0}},n)).flat();return this.dispatch(a(c)),c}}class eR extends v{constructor(){super(...arguments);h(this,"name","Asset Type");h(this,"url","/asset-types");h(this,"actions",{addOne:Ud,addMany:Ld,setOne:qd,setMany:$d,updateOne:kd,updateMany:Nd,deleteOne:Gd,deleteMany:Hd,initialize:Cd});h(this,"selectors",{selectById:Kd,selectByIds:Yd})}add(e){const{addOne:n,updateOne:a,deleteOne:r}=this.actions,c=this.select(m=>{var S;return((S=m.userReducer.currentUser)==null?void 0:S.id)??null}),u=new Date().toISOString(),d=P({...e,created_by:c,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:R(d),blockers:[],blocks:[d.uuid]});return p.then(m=>{this.dispatch(a(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}update(e){const{updateOne:n}=this.actions,{selectById:a}=this.selectors,r=this.select(a(e.uuid));if(!r)throw new Error(`Expected asset type with uuid ${e.uuid} to exist`);const c={...r,...e};this.dispatch(n(c));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))}),[c,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:r}=this.selectors,c=this.select(r(e));if(!c)throw new Error(`Expected asset type with uuid ${e} to exist`);const u=this.select(Gc(e)),d=this.select(ar(e));this.dispatch(n(e)),this.dispatch(ws(w(u))),this.dispatch(Vs(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(a(c)),this.dispatch(Rs(u)),this.dispatch(Es(d)),p}}async refreshStore(e,n){const{initialize:a}=this.actions,r=await this.list({queryParams:{organization:e}},n);return this.dispatch(a(r)),r}}class tR extends v{constructor(){super(...arguments);h(this,"name","Asset Type Status");h(this,"url","/asset-type-statuses");h(this,"actions",{addOne:Qd,addMany:xd,setOne:eu,setMany:tu,updateOne:su,updateMany:iu,deleteOne:nu,deleteMany:au,initialize:Xd});h(this,"selectors",{selectById:ru,selectByIds:du})}add(e){const{addOne:n,updateOne:a,deleteOne:r}=this.actions,c=this.select(m=>{var S;return((S=m.userReducer.currentUser)==null?void 0:S.id)??null}),u=new Date().toISOString(),d=P({...e,created_by:c,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:R(d),blockers:[e.asset_type],blocks:[d.uuid]});return p.then(m=>{this.dispatch(a(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}update(e){const{updateOne:n}=this.actions,{selectById:a}=this.selectors,r=this.select(a(e.uuid));if(!r)throw new Error(`Expected an existing asset type status with uuid ${e.uuid}`);const c={...r,...e};this.dispatch(n(c));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))}),[c,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:r}=this.selectors,c=this.select(r(e));if(!c)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(a(c)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,r=await this.list({queryParams:{asset_type__organization:e}},n);return this.dispatch(a(r)),r}}class sR extends j{constructor(){super(...arguments);h(this,"name","Document Attachment");h(this,"url","/document-attachments");h(this,"actions",{addOne:yu,addMany:Su,setOne:fu,setMany:Au,updateOne:Iu,updateMany:Tu,deleteOne:Ou,deleteMany:Pu,initialize:pu});h(this,"selectors",{selectById:bu,selectByIds:_u})}getId(e){return e.uuid}getBlockers(e){return[e.document]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var c;return((c=r.userReducer.currentUser)==null?void 0:c.id)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){return{uuid:e.uuid,submitted_at:e.submitted_at,file_name:e.file_name,file_sha1:e.file_sha1,file_extension:e.file_extension,document:e.document}}buildBulkPayload(e){return{uuid:e.uuid,file_name:e.file_name,file_sha1:e.file_sha1,file_extension:e.file_extension,document:e.document}}async bulkAdd(e,n){const[a,r,c]=await super.bulkAdd(e,n),u={};for(const{file_sha1:d,uuid:p}of a)d in u||(u[d]=[]),u[d].push(p);return c.then(d=>{const p=d.flatMap(m=>u[m]??[]);for(const m of p)this.makeReadable(m)}),[a,r,c]}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:a}=this.actions,r=this.list({queryParams:{document__project__organization:e}},n),c=this.list({queryParams:{document__organization:e}},n),d=(await Promise.all([r,c])).flat();return this.dispatch(a(d)),d}}class iR extends v{constructor(){super(...arguments);h(this,"name","Document");h(this,"url","/documents");h(this,"actions",{addOne:wu,addMany:vu,setOne:Eu,setMany:Vu,updateOne:Bu,updateMany:zu,deleteOne:Du,deleteMany:ju,initialize:Ru});h(this,"selectors",{selectById:qu,selectByIds:$u})}add(e){const{addOne:n,deleteOne:a,updateOne:r}=this.actions,c=this.select(m=>{var S;return((S=m.userReducer.currentUser)==null?void 0:S.id)??null}),u=new Date().toISOString(),d=P({...e,created_by:c,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:R(d),blockers:d.parent_document?[d.parent_document]:[],blocks:[d.uuid]});return p.then(m=>{this.dispatch(r(m))}).catch(()=>{this.dispatch(a(d.uuid))}),[d,p]}update(e){const{updateOne:n}=this.actions,{selectById:a}=this.selectors,r=this.select(a(e.uuid));if(!r)throw new Error(`attempting to update a document with uuid ${e.uuid} that does not exist in store.documents`);const c={...r,...e};this.dispatch(n(c));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))}),[c,u]}async delete(e){const{deleteOne:n,addOne:a,addMany:r,deleteMany:c}=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(Uu(e));this.dispatch(n(e)),this.dispatch(c(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(a(d)),this.dispatch(r(p)),m}}async refreshStore(e,n){const{initialize:a}=this.actions,r=this.list({queryParams:{project__organization:e}},n),c=this.list({queryParams:{organization:e}},n),d=(await Promise.all([r,c])).flat();return this.dispatch(a(d)),d}}class Ot extends Tt{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 nR extends Ot{constructor(){super(...arguments);h(this,"name","Email Domains");h(this,"url","/organization-email-domains");h(this,"actions",{addOne:Nu,addMany:Gu,setOne:Hu,setMany:Wu,updateOne:Ku,updateMany:Yu,deleteOne:Zu,deleteMany:Ju,initialize:ku});h(this,"selectors",{selectById:Qu,selectByIds:xu})}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:a}=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(a(e)),r}}async refreshStore(e,n){const{initialize:a}=this.actions,r=await this.list({queryParams:{organization:e}},n);return this.dispatch(a(r)),r}}class aR extends Tt{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 Ut={},Pa=new Set,Fa=new Set;class cR extends Tt{constructor(){super(...arguments);h(this,"host");h(this,"dbPromise",r_.openDB("fileCache",2,{upgrade(e,n){n<1&&e.createObjectStore("files"),n<2&&e.createObjectStore("presignedUrls")}}))}async getDB(){return await this.dbPromise}async cacheFile(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 kt(e);if(Pa.has(n))return;const a=await this.getDB();!!await a.get("files",n)?console.warn(`Attempting to add a file already cached, ${e.name}`):await a.put("files",e,n),Pa.add(n)}async uncacheFile(e){await(await this.getDB()).delete("files",e),Pa.delete(e)}async getFileFromCache(e){return(await this.getDB()).get("files",e)}async fetchFileFromUrl(e,n,a=n,r){const c=e.split("?")[0]??e,u=await this.getFileFromCache(n);if(u)return u;let d;c in Ut?d=Ut[c]:Ga(e)?(d=Na(e,a),Ut[c]=d):(d=this.performRequest({method:o.GET,url:e,isExternalUrl:!0,isResponseBlob:!0,isAuthNeeded:!1},r).then(S=>new File([S],a,{type:S.type})),Ut[c]=d);let p;try{p=await d}catch(S){throw S instanceof U&&delete Ut[c],S}const m=await kt(p);if(m!==n){const S=`The hash of the file returned from the server (${m}) does not match the
8
- expected hash (${n}). This can happen if you're using a local development server and the
1
+ (function(s,$t){typeof exports=="object"&&typeof module<"u"?$t(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("@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","@overmap-ai/forms","idb","jwt-decode","dependency-graph","@tiptap/core"],$t):(s=typeof globalThis<"u"?globalThis:s||self,$t(s["overmap-core"]={},null,s.toolkit,s.request,s.uuid,s.react,s.buildTree,s.tsTreeLib,s.reduxOffline,s.offlineConfig,s.localforage,null,s.idb,s.jwtDecode,s.dependencyGraph))})(this,(function(s,$t,u,At,dt,qb,Cb,Oa,$b,Pa,Ub,ZR,Lb,kb,Nb){"use strict";const Fa=Object.freeze([]),ba=Object.freeze({}),_a=6e4,ga=["created_at","updated_at","index","revision"];var Ma=(t=>(t[t.GUEST=0]="GUEST",t[t.BASIC=2]="BASIC",t[t.ADMIN=4]="ADMIN",t))(Ma||{}),l=(t=>(t.GET="GET",t.POST="POST",t.PATCH="PATCH",t.PUT="PUT",t.DELETE="DELETE",t))(l||{}),Ra=(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))(Ra||{}),j=(t=>(t.STATUS="status",t.PRIORITY="priority",t.DESCRIPTION="description",t.TITLE="title",t.ASSIGNED_TO="assigned_to",t.DUE_DATE="due_date",t))(j||{}),wa=(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))(wa||{}),va=(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))(va||{}),Ea=(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))(Ea||{}),Va=(t=>(t[t.APPROVED=0]="APPROVED",t[t.REJECTED=2]="REJECTED",t[t.CHANGES_REQUESTED=4]="CHANGES_REQUESTED",t))(Va||{});function P(t){return{addOne:(f,A)=>{const I=t(A.payload);I in f.instances||(f.instances[I]=A.payload)},addMany:(f,A)=>{for(const I of A.payload){const S=t(I);S in f.instances||(f.instances[S]=I)}},updateOne:(f,A)=>{const I=t(A.payload);I in f.instances&&(f.instances[I]=A.payload)},setMany:(f,A)=>{for(const I of A.payload){const S=t(I);f.instances[S]=I}},setOne:(f,A)=>{const I=t(A.payload);f.instances[I]=A.payload},updateMany:(f,A)=>{for(const I of A.payload){const S=t(I);S in f.instances&&(f.instances[S]=I)}},deleteOne:(f,A)=>{delete f.instances[A.payload]},deleteMany:(f,A)=>{for(const I of A.payload)delete f.instances[I]},initialize:(f,A)=>{f.instances={};const I=new Set;for(const S of A.payload){const b=t(S);I.add(b),f.instances[b]=S}I.size!==A.payload.length&&console.warn("duplicate ids detected when initializing model instances.")}}}function Gb(t){return{initializeSelection:(h,o)=>{h[t]=Array.from(new Set(o.payload))},selectOne:(h,o)=>{console.debug(h,h[t]),!new Set(h[t]).has(o.payload)&&h[t].push(o.payload)},selectMany:(h,o)=>{const f=new Set(h[t]);for(const A of o.payload)f.has(A)||f.add(A);h[t]=Array.from(f)},unselectOne:(h,o)=>{const f=new Set(h[t]);f.has(o.payload)&&(f.delete(o.payload),h[t]=Array.from(f))},unselectMany:(h,o)=>{const f=new Set(h[t]);for(const A of o.payload)f.has(A)&&f.delete(A);h[t]=Array.from(f)},toggleOne:(h,o)=>{const f=new Set(h[t]);f.has(o.payload)?f.delete(o.payload):f.add(o.payload),h[t]=Array.from(f)},toggleMany:(h,o)=>{const f=new Set(h[t]);for(const A of o.payload)f.has(A)?f.delete(A):f.add(A);h[t]=Array.from(f)}}}const T=u.createAction("RESET"),V=u.createAction("RESET_PROJECT_STATE"),F=u.createAction("RESET_ORGANIZATION_STATE");function Hb(t,e){return qb.useMemo(t,e)}class hs{[Symbol.toStringTag]="Promise";_promise;_resolve;_reject;_state="pending";get state(){return this._state}constructor(){this._resolve=null,this._reject=null,this._promise=new Promise((e,i)=>{this._resolve=e,this._reject=i})}then(e,i){return this._promise.then(e,i)}catch(e){return this._promise.catch(e)}resolve(e){if(!this._resolve)throw new Error("No resolve callback");this._resolve(e),this._state="fulfilled"}reject(e){if(!this._reject)throw e;this._reject(e),this._state="rejected"}finally(e){throw new Error("`finally` not implemented")}}let ms=!1;["true","1"].includes("".toLowerCase())&&(ms=!0);function Wb(t,e){if(t===e)return!0;if(typeof t!=typeof e)return!1;const i=Object.keys(t),n=Object.keys(e),a=i.length;if(a!==n.length)return!1;for(let c=0;c<a;c++){const d=i[c];if(!Object.prototype.hasOwnProperty.call(e,d)||t[d]!==e[d])return!1}return!0}function ps(t){const e={};return function(){const i=Array.prototype.slice.call(arguments);return i in e?(ms&&console.debug(`Memoization debug: Using memorized return value for ${t.toString()}(`,i,")"),e[i]):(ms&&console.debug(`Memoization debug: Cache miss! Memoizing ${t.toString()}(`,i,")"),e[i]=t.apply(this,i))}}function Kb(t,e){if(t.length!==e.length)return!1;for(let i=0;i<t.length;i++)if(t[i]!==e[i])return!1;return!0}const p=t=>t.length===0?Fa:t,ys=t=>Object.keys(t).length===0?ba:t,Ba=ps(t=>{if(!t)return"";const e=new Date(t),i=e.getFullYear()===fs.getFullYear(),n={day:"numeric",month:"short"};return i||(n.year="numeric"),e.toLocaleDateString([],n)}),Yb=new Intl.RelativeTimeFormat([],{style:"long",numeric:"auto"}),Zb=1e3*86400,fs=new Date,Jb=t=>new Date(t).toDateString()===fs.toDateString(),Xb=ps((t,e,i)=>{const n=Math.round((new Date(t).getTime()-fs.getTime())/Zb);return n<e||n>i?Ba(t):Yb.format(n,"days")});function Qb(t){return new Uint8Array(t).reduce((i,n)=>i+n.toString(16).padStart(2,"0"),"")}function Ut(t){return new Promise((e,i)=>{const n=new FileReader;n.onload=()=>{const a=n.result;if(!a){i(new Error("FileReader did not return a valid ArrayBuffer."));return}crypto.subtle.digest("SHA-1",a).then(c=>{const d=Qb(c);e(d)})},n.readAsArrayBuffer(t)})}const za=async t=>{const e=await t.arrayBuffer();return new Blob([e],{type:t.type})},xb=(t,e)=>`${t}${e?`.${e}`:""}`;function e_(t,e){return new File([t],e,{type:t.type})}function Da(t){const e=t.name;return e.includes(".")?e.split(".").pop():""}const ja=async t=>(await fetch(t)).blob(),qa=async(t,e)=>{const i=await ja(t);return new File([i],e,{type:i.type})};function Ca(t){return typeof t=="string"&&t.startsWith("blob:")}function $a(t){return typeof t=="string"&&URL.canParse(t)&&t.startsWith("https://")&&t.includes(".cloudfront.net/")}function Ua(t){return typeof t=="string"&&URL.canParse(t)&&t.startsWith("https://")&&t.includes(".s3.amazonaws.com/")}function La(t){if($a(t)){const i=new URLSearchParams(t).get("Expires");if(!i)return null;const n=parseInt(i,10);return new Date(n*1e3)}if(Ua(t)){const e=new URLSearchParams(t),i=e.get("X-Amz-Date"),n=e.get("X-Amz-Expires");if(!i||!n)return null;const a=new Date(i.replace(/^(\d{4})(\d{2})(\d{2})T(\d{2})(\d{2})(\d{2})Z$/,"$1-$2-$3T$4:$5:$6Z")),c=parseInt(n);return new Date(a.getTime()+c*1e3)}return null}function ka(t,e=30){const i=La(t);if(!i)return!1;const n=Date.now(),a=i.getTime(),c=e*1e3;return n+c>=a}function t_(t){return t.type.startsWith("image/")}const Na={};function s_(t,e,i,...n){const a=Na[t];let c=!1;a?a[e]||(a[e]=!0,c=!0):(Na[t]={[e]:!0},c=!0),c&&console[i](...n)}function O(t){return{...t,uuid:dt.v4()}}function i_(t){const e={};for(const i of t)e[i.uuid]=i;return e}function R(t){return t.map(({uuid:e})=>e)}function Ga(t,e){return t.localeCompare(e)}function ut(t,e){return Ga(t.uuid,e.uuid)}function n_(t,e=void 0,i=255){let n=t.replace(/[^a-z0-9_\-.]/gi,"_").replace(/_{2,}/g,"_");if(!e){const c=t.split(".");c.length>1&&(e=c[c.length-1])}e&&!e.startsWith(".")&&(e="."+e);const a=e?e.length:0;return n.length+a>i&&(n=n.slice(0,i-a)+(e||"")),n}function a_(t){return t.toLowerCase().replace(" ","-")}function c_(t,e=!1){return t.normalize("NFKD").toLowerCase().replace(/[^\w\s-]/g,"").trim().replace(/[-\s]+/g,e?"_":"-")}function r_(t,e){if(t.length<=e)return t;const i=t.slice(0,e-1);return i.slice(0,i.lastIndexOf(" "))+"…"}const d_=/^.+@.+\..+$/,Ha=(t,e)=>t.type!==e.type?t.type-e.type:t.order-e.order,Wa=(t,e)=>t.type!==e.type?t.type-e.type:t.order-e.order,Ka=(t,e)=>t.type!==e.type?t.type-e.type:t.order-e.order,Ya=t=>Cb(t,{id:e=>e.uuid,parentId:e=>e.parent_document,includeEmptyChildrenArray:!0,valueKey:!1}),u_=t=>{const{roots:e}=Ya(t);return e.map(i=>new Oa.Tree(i))},Za=(t,e)=>{const{nodes:i}=Ya(e),n=i.get(t);if(!n)throw new Error(`Node with uuid ${t} does not exist in document tree.`);return new Oa.Tree(n)},It=(t,e)=>t.submitted_at===e.submitted_at?0:t.submitted_at<e.submitted_at?-1:1;class l_{constructor(e){this.getData=e}operations=[];getData;performOperations(e){let i=e;for(const n of this.operations)i=n(i);return i}filter(e,i){return this.operations.push(n=>n.filter(a=>a[e]===i)),this}exclude(e,i){return this.operations.push(n=>n.filter(a=>a[e]!==i)),this}orderBy(e){return this.operations.push(i=>i.toSorted((n,a)=>n[e]<=a[e]?1:-1)),this}reverse(){return this.operations.push(e=>e.toReversed()),this}all(){return this.operations.push(e=>e),this}get(e,i){return u.createSelector([this.getData],n=>this.performOperations(n).find(a=>a[e]===i))}count(){return u.createSelector([this.getData],e=>this.performOperations(e).length)}first(){return u.createSelector([this.getData],e=>this.performOperations(e)[0])}last(){return u.createSelector([this.getData],e=>{const i=this.performOperations(e);return i[i.length-1]})}exists(){return u.createSelector([this.getData],e=>this.performOperations(e).length>0)}toSelector(){return u.createSelector([this.getData],e=>p(this.performOperations(e)))}}const m=(t=>(...e)=>i=>t(i,...e)),N=P(t=>t.uuid),Ja={instances:{}},Ss=u.createSlice({name:"agents",initialState:Ja,extraReducers:t=>t.addMatcher(u.isAnyOf(T,V,F),e=>Object.assign(e,Ja)),reducers:{initializeConversations:N.initialize,addConversation:N.addOne,addConversations:N.addMany,setConversation:N.setOne,setConversations:N.setMany,updateConversation:N.updateOne,updateConversations:N.updateMany,deleteConversation:N.deleteOne,deleteConversations:N.deleteMany}}),{initializeConversations:Xa,addConversation:Qa,addConversations:o_,setConversation:xa,setConversations:h_,updateConversation:ec,updateConversations:m_,deleteConversation:p_,deleteConversations:y_}=Ss.actions,As=t=>t.agentsReducer.instances,f_=u.createSelector([As],t=>Object.values(t)),S_=m(u.createSelector([As,(t,e)=>e],(t,e)=>t[e])),tc=Ss.reducer,G=P(t=>t.uuid),sc={instances:{}},Is=u.createSlice({name:"assetAttachments",initialState:sc,extraReducers:t=>t.addMatcher(u.isAnyOf(T,V,F),e=>Object.assign(e,sc)),reducers:{initializeAssetAttachments:G.initialize,addAssetAttachment:G.addOne,addAssetAttachments:G.addMany,setAssetAttachment:G.setOne,setAssetAttachments:G.setMany,updateAssetAttachment:G.updateOne,updateAssetAttachments:G.updateMany,deleteAssetAttachment:G.deleteOne,deleteAssetAttachments:G.deleteMany}}),{initializeAssetAttachments:ic,addAssetAttachment:nc,addAssetAttachments:Ts,setAssetAttachment:ac,setAssetAttachments:cc,updateAssetAttachment:rc,updateAssetAttachments:dc,deleteAssetAttachment:uc,deleteAssetAttachments:Os}=Is.actions,lc=t=>t.assetAttachmentReducer.instances,Ps=u.createSelector([lc],t=>Object.values(t)),oc=t=>e=>e.assetAttachmentReducer.instances[t],hc=m(u.createSelector([Ps,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),mc=m(u.createSelector([Ps,(t,e)=>e],(t,e)=>p(t.filter(({asset:i})=>e===i)))),pc=Is.reducer,H=P(t=>t.uuid),yc={instances:{}},Fs=u.createSlice({name:"assetComments",initialState:yc,extraReducers:t=>t.addMatcher(u.isAnyOf(T,V,F),e=>Object.assign(e,yc)),reducers:{initializeAssetComments:H.initialize,addAssetComment:H.addOne,addAssetComments:H.addMany,setAssetComment:H.setOne,setAssetComments:H.setMany,updateAssetComment:H.updateOne,updateAssetComments:H.updateMany,deleteAssetComment:H.deleteOne,deleteAssetComments:H.deleteMany}}),{initializeAssetComments:fc,addAssetComment:Sc,addAssetComments:Lt,setAssetComment:Ac,setAssetComments:Ic,updateAssetComment:Tc,updateAssetComments:Oc,deleteAssetComment:Pc,deleteAssetComments:kt}=Fs.actions,Fc=t=>t.assetCommentReducer.instances,Nt=u.createSelector([Fc],t=>p(Object.values(t).toSorted(It))),bc=t=>e=>e.assetCommentReducer.instances[t],_c=m(u.createSelector([Nt,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),gc=m(u.createSelector([Nt,(t,e)=>e],(t,e)=>p(t.filter(i=>i.asset===e)))),Mc=m(u.createSelector([Nt,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(n=>i.has(n.asset)))})),Rc=Fs.reducer,W=P(t=>t.uuid),wc={instances:{}},bs=u.createSlice({name:"assets",initialState:wc,extraReducers:t=>t.addMatcher(u.isAnyOf(T,V,F),e=>Object.assign(e,wc)),reducers:{initializeAssets:W.initialize,addAsset:W.addOne,addAssets:W.addMany,setAsset:W.setOne,setAssets:W.setMany,updateAsset:W.updateOne,updateAssets:W.updateMany,deleteAsset:W.deleteOne,deleteAssets:W.deleteMany}}),{initializeAssets:vc,addAsset:Ec,addAssets:_s,updateAsset:Vc,updateAssets:Bc,deleteAsset:zc,deleteAssets:gs,setAsset:Dc,setAssets:jc}=bs.actions,qc=t=>t.assetReducer.instances,Gt=u.createSelector([qc],t=>p(Object.values(t))),A_=m(u.createSelector([Gt,(t,e)=>e],(t,e)=>p(t.filter(({project:i})=>i===e)))),Cc=m(u.createSelector([Gt,(t,e)=>e],(t,e)=>p(t.filter(i=>i.asset_type===e)))),$c=t=>e=>e.assetReducer.instances[t],Uc=m(u.createSelector([Gt,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),Lc=bs.reducer,K=P(t=>t.uuid),kc={instances:{}},Ms=u.createSlice({name:"assetTypeAttachments",initialState:kc,extraReducers:t=>t.addMatcher(u.isAnyOf(T,F),e=>Object.assign(e,kc)),reducers:{initializeAssetTypeAttachments:K.initialize,addAssetTypeAttachment:K.addOne,addAssetTypeAttachments:K.addMany,setAssetTypeAttachment:K.setOne,setAssetTypeAttachments:K.setMany,updateAssetTypeAttachment:K.updateOne,updateAssetTypeAttachments:K.updateMany,deleteAssetTypeAttachment:K.deleteOne,deleteAssetTypeAttachments:K.deleteMany}}),{initializeAssetTypeAttachments:Nc,addAssetTypeAttachment:Gc,addAssetTypeAttachments:Rs,setAssetTypeAttachment:Hc,setAssetTypeAttachments:Wc,updateAssetTypeAttachment:Kc,updateAssetTypeAttachments:Yc,deleteAssetTypeAttachment:Zc,deleteAssetTypeAttachments:ws}=Ms.actions,Jc=t=>t.assetTypeAttachmentReducer.instances,vs=u.createSelector([Jc],t=>Object.values(t)),Xc=t=>e=>e.assetTypeAttachmentReducer.instances[t],Qc=m(u.createSelector([vs,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),xc=m(u.createSelector([vs,(t,e)=>e],(t,e)=>p(t.filter(({asset_type:i})=>e===i)))),er=Ms.reducer,Y=P(t=>t.uuid),tr={instances:{}},Es=u.createSlice({name:"assetTypeFieldsAttachments",initialState:tr,extraReducers:t=>t.addMatcher(u.isAnyOf(T,F),e=>Object.assign(e,tr)),reducers:{initializeAssetTypeFieldsAttachments:Y.initialize,addAssetTypeFieldsAttachment:Y.addOne,addAssetTypeFieldsAttachments:Y.addMany,setAssetTypeFieldsAttachment:Y.setOne,setAssetTypeFieldsAttachments:Y.setMany,updateAssetTypeFieldsAttachment:Y.updateOne,updateAssetTypeFieldsAttachments:Y.updateMany,deleteAssetTypeFieldsAttachment:Y.deleteOne,deleteAssetTypeFieldsAttachments:Y.deleteMany}}),{initializeAssetTypeFieldsAttachments:sr,addAssetTypeFieldsAttachment:ir,addAssetTypeFieldsAttachments:nr,setAssetTypeFieldsAttachment:ar,setAssetTypeFieldsAttachments:cr,updateAssetTypeFieldsAttachment:rr,updateAssetTypeFieldsAttachments:dr,deleteAssetTypeFieldsAttachment:ur,deleteAssetTypeFieldsAttachments:lr}=Es.actions,or=t=>t.assetTypeFieldsAttachmentReducer.instances,Vs=u.createSelector([or],t=>Object.values(t)),I_=m(u.createSelector([Vs,(t,e)=>e],(t,e)=>p(t.filter(i=>i.fields_revision===e)))),hr=t=>e=>e.assetTypeFieldsAttachmentReducer.instances[t],mr=m(u.createSelector([Vs,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),pr=Es.reducer,Z=P(t=>t.uuid),yr={instances:{}},Bs=u.createSlice({name:"assetTypeFields",initialState:yr,extraReducers:t=>t.addMatcher(u.isAnyOf(T,F),e=>Object.assign(e,yr)),reducers:{initializeAssetTypeFields:Z.initialize,addAssetTypeFields:Z.addOne,addAssetTypeFieldsMany:Z.addMany,setAssetTypeFields:Z.setOne,setAssetTypeFieldsMany:Z.setMany,updateAssetTypeFields:Z.updateOne,updateAssetTypeFieldsMany:Z.updateMany,deleteAssetTypeFields:Z.deleteOne,deleteAssetTypeFieldsMany:Z.deleteMany}}),{initializeAssetTypeFields:fr,addAssetTypeFields:Sr,addAssetTypeFieldsMany:Ar,setAssetTypeFields:Ir,setAssetTypeFieldsMany:Tr,updateAssetTypeFields:Or,updateAssetTypeFieldsMany:Pr,deleteAssetTypeFields:Fr,deleteAssetTypeFieldsMany:br}=Bs.actions,_r=t=>t.assetTypeFieldsReducer.instances,wt=u.createSelector([_r],t=>Object.values(t)),T_=m(u.createSelector([wt,(t,e)=>e],(t,e)=>p(t.filter(i=>i.asset_type===e)))),O_=m(u.createSelector([wt,(t,e)=>e],(t,e)=>t.filter(i=>i.asset_type===e).toSorted(It).pop())),gr=t=>e=>e.assetTypeFieldsReducer.instances[t],Mr=m(u.createSelector([wt,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),Rr=Bs.reducer,J=P(t=>t.uuid),wr={instances:{}},zs=u.createSlice({name:"assetTypeFieldValuesAttachments",initialState:wr,extraReducers:t=>t.addMatcher(u.isAnyOf(T,V,F),e=>Object.assign(e,wr)),reducers:{initializeAssetTypeFieldValuesAttachments:J.initialize,addAssetTypeFieldValuesAttachment:J.addOne,addAssetTypeFieldValuesAttachments:J.addMany,setAssetTypeFieldValuesAttachment:J.setOne,setAssetTypeFieldValuesAttachments:J.setMany,updateAssetTypeFieldValuesAttachment:J.updateOne,updateAssetTypeFieldValuesAttachments:J.updateMany,deleteAssetTypeFieldValuesAttachment:J.deleteOne,deleteAssetTypeFieldValuesAttachments:J.deleteMany}}),{initializeAssetTypeFieldValuesAttachments:vr,addAssetTypeFieldValuesAttachment:Er,addAssetTypeFieldValuesAttachments:Ds,setAssetTypeFieldValuesAttachment:Vr,setAssetTypeFieldValuesAttachments:Br,updateAssetTypeFieldValuesAttachment:zr,updateAssetTypeFieldValuesAttachments:Dr,deleteAssetTypeFieldValuesAttachment:jr,deleteAssetTypeFieldValuesAttachments:js}=zs.actions,qr=t=>t.assetTypeFieldValuesAttachmentReducer.instances,qs=u.createSelector([qr],t=>Object.values(t)),Cr=t=>e=>e.assetTypeFieldValuesAttachmentReducer.instances[t],$r=m(u.createSelector([qs,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),Ur=m(u.createSelector([qs,(t,e)=>e],(t,e)=>p(t.filter(i=>i.field_values===e)))),Lr=zs.reducer,X=P(t=>t.uuid),kr={instances:{}},Cs=u.createSlice({name:"assetTypeFieldValues",initialState:kr,extraReducers:t=>t.addMatcher(u.isAnyOf(T,V,F),e=>Object.assign(e,kr)),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:Nr,addAssetTypeFieldValues:Gr,addAssetTypeFieldValuesMany:Hr,setAssetTypeFieldValues:Wr,setAssetTypeFieldValuesMany:Kr,updateAssetTypeFieldValues:Yr,updateAssetTypeFieldValuesMany:Zr,deleteAssetTypeFieldValues:Jr,deleteAssetTypeFieldValuesMany:Xr}=Cs.actions,Qr=t=>t.assetTypeFieldValuesReducer.instances,Ht=u.createSelector([Qr],t=>Object.values(t)),P_=m(u.createSelector([Ht,(t,e)=>e],(t,e)=>p(t.filter(i=>i.asset===e)))),F_=m(u.createSelector([wt,Ht,(t,e)=>e],(t,e,i)=>{const n=new Set(t.filter(a=>a.asset_type===i).map(a=>a.uuid));return p(e.filter(a=>n.has(a.fields_revision)))})),xr=t=>e=>e.assetTypeFieldValuesReducer.instances[t],ed=m(u.createSelector([Ht,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),td=Cs.reducer,Q=P(t=>t.uuid),sd={instances:{}},$s=u.createSlice({name:"assetTypeIdentifiers",initialState:sd,extraReducers:t=>t.addMatcher(u.isAnyOf(T,F),e=>Object.assign(e,sd)),reducers:{initializeAssetTypeIdentifiers:Q.initialize,addAssetTypeIdentifier:Q.addOne,addAssetTypeIdentifiers:Q.addMany,setAssetTypeIdentifier:Q.setOne,setAssetTypeIdentifiers:Q.setMany,updateAssetTypeIdentifier:Q.updateOne,updateAssetTypeIdentifiers:Q.updateMany,deleteAssetTypeIdentifier:Q.deleteOne,deleteAssetTypeIdentifiers:Q.deleteMany}}),{initializeAssetTypeIdentifiers:id,addAssetTypeIdentifier:nd,addAssetTypeIdentifiers:ad,setAssetTypeIdentifier:cd,setAssetTypeIdentifiers:rd,updateAssetTypeIdentifier:dd,updateAssetTypeIdentifiers:ud,deleteAssetTypeIdentifier:ld,deleteAssetTypeIdentifiers:od}=$s.actions,hd=t=>t.assetTypeIdentifierReducer.instances,Us=u.createSelector([hd],t=>Object.values(t)),md=t=>e=>e.assetTypeIdentifierReducer.instances[t],pd=m(u.createSelector([Us,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),b_=m(u.createSelector([Us,(t,e)=>e],(t,e)=>p(t.filter(i=>i.asset_type===e)))),yd=$s.reducer,x=P(t=>t.uuid),fd={instances:{}},Ls=u.createSlice({name:"assetTypeIdentifierValues",initialState:fd,extraReducers:t=>t.addMatcher(u.isAnyOf(T,V,F),e=>Object.assign(e,fd)),reducers:{initializeAssetTypeIdentifierValues:x.initialize,addAssetTypeIdentifierValue:x.addOne,addAssetTypeIdentifierValues:x.addMany,setAssetTypeIdentifierValue:x.setOne,setAssetTypeIdentifierValues:x.setMany,updateAssetTypeIdentifierValue:x.updateOne,updateAssetTypeIdentifierValues:x.updateMany,deleteAssetTypeIdentifierValue:x.deleteOne,deleteAssetTypeIdentifierValues:x.deleteMany}}),{initializeAssetTypeIdentifierValues:Sd,addAssetTypeIdentifierValue:Ad,addAssetTypeIdentifierValues:Id,setAssetTypeIdentifierValue:Td,setAssetTypeIdentifierValues:Od,updateAssetTypeIdentifierValue:Pd,updateAssetTypeIdentifierValues:Fd,deleteAssetTypeIdentifierValue:bd,deleteAssetTypeIdentifierValues:_d}=Ls.actions,gd=t=>t.assetTypeIdentifierValueReducer.instances,Wt=u.createSelector([gd],t=>Object.values(t)),Md=t=>e=>e.assetTypeIdentifierValueReducer.instances[t],Rd=m(u.createSelector([Wt,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),__=m(u.createSelector([Wt,(t,e)=>e],(t,e)=>p(t.filter(i=>i.asset===e)))),g_=m(u.createSelector([Wt,(t,e)=>e],(t,e)=>p(t.filter(i=>i.asset_type_identifier===e)))),wd=Ls.reducer,ee=P(t=>t.uuid),vd={instances:{}},ks=u.createSlice({name:"assetTypes",initialState:vd,extraReducers:t=>t.addMatcher(u.isAnyOf(T,F),e=>Object.assign(e,vd)),reducers:{initializeAssetTypes:ee.initialize,setAssetType:ee.setOne,setAssetTypes:ee.setMany,addAssetType:ee.addOne,addAssetTypes:ee.addMany,updateAssetType:ee.updateOne,updateAssetTypes:ee.updateMany,deleteAssetType:ee.deleteOne,deleteAssetTypes:ee.deleteMany}}),{initializeAssetTypes:Ed,setAssetType:Vd,setAssetTypes:Bd,addAssetType:zd,addAssetTypes:Dd,updateAssetType:jd,updateAssetTypes:qd,deleteAssetType:Cd,deleteAssetTypes:$d}=ks.actions,Ud=t=>t.assetTypeReducer.instances,Ns=u.createSelector([Ud],t=>Object.values(t)),Ld=t=>e=>e.assetTypeReducer.instances[t],kd=m(u.createSelector([Ns,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),M_=m(u.createSelector([Ns,(t,e)=>e],(t,e)=>p(t.filter(i=>i.organization===e)))),Nd=ks.reducer,te=P(t=>t.uuid),Gd={instances:{}},Gs=u.createSlice({name:"assetTypeStatuses",initialState:Gd,extraReducers:t=>t.addMatcher(u.isAnyOf(T,F),e=>Object.assign(e,Gd)),reducers:{initializeAssetTypeStatuses:te.initialize,addAssetTypeStatus:te.addOne,addAssetTypeStatuses:te.addMany,setAssetTypeStatus:te.setOne,setAssetTypeStatuses:te.setMany,updateAssetTypeStatus:te.updateOne,updateAssetTypeStatuses:te.updateMany,deleteAssetTypeStatus:te.deleteOne,deleteAssetTypeStatuses:te.deleteMany}}),{initializeAssetTypeStatuses:Hd,addAssetTypeStatus:Wd,addAssetTypeStatuses:Kd,setAssetTypeStatus:Yd,setAssetTypeStatuses:Zd,updateAssetTypeStatus:Jd,updateAssetTypeStatuses:Xd,deleteAssetTypeStatus:Qd,deleteAssetTypeStatuses:xd}=Gs.actions,eu=t=>t.assetTypeStatusReducer.instances,Hs=u.createSelector([eu],t=>p(Object.values(t).toSorted(Ha))),tu=t=>e=>e.assetTypeStatusReducer.instances[t],su=m(u.createSelector([Hs,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),R_=m(u.createSelector([Hs,(t,e)=>e],(t,e)=>p(t.filter(i=>i.asset_type===e)))),iu=Gs.reducer,nu={accessToken:"",refreshToken:"",isLoggedIn:!1},Kt=u.createSlice({name:"auth",initialState:nu,extraReducers:t=>t.addCase(T,e=>Object.assign(e,nu)),reducers:{setTokens:(t,e)=>{t.accessToken=e.payload.accessToken,t.refreshToken=e.payload.refreshToken},clearTokens:t=>{t.accessToken="",t.refreshToken=""},setLoggedIn:(t,e)=>{e.payload||Kt.caseReducers.clearTokens(t),t.isLoggedIn=e.payload}}}),{setTokens:w_,clearTokens:v_,setLoggedIn:au}=Kt.actions,E_=t=>t.authReducer.accessToken,V_=t=>t.authReducer.isLoggedIn,cu=Kt.reducer,se=P(t=>t.uuid),ru={instances:{}},Ws=u.createSlice({name:"documentAttachments",initialState:ru,extraReducers:t=>t.addCase(T,e=>Object.assign(e,ru)),reducers:{initializeDocumentAttachments:se.initialize,addDocumentAttachment:se.addOne,addDocumentAttachments:se.addMany,setDocumentAttachment:se.setOne,setDocumentAttachments:se.setMany,updateDocumentAttachment:se.updateOne,updateDocumentAttachments:se.updateMany,deleteDocumentAttachment:se.deleteOne,deleteDocumentAttachments:se.deleteMany}}),{initializeDocumentAttachments:du,addDocumentAttachment:uu,addDocumentAttachments:lu,setDocumentAttachment:ou,setDocumentAttachments:hu,updateDocumentAttachment:mu,updateDocumentAttachments:pu,deleteDocumentAttachment:yu,deleteDocumentAttachments:fu}=Ws.actions,Su=t=>t.documentAttachmentReducer.instances,Ks=u.createSelector([Su],t=>Object.values(t)),Au=t=>e=>e.documentAttachmentReducer.instances[t],Iu=m(u.createSelector([Ks,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),B_=m(u.createSelector([Ks,(t,e)=>e],(t,e)=>p(t.filter(({document:i})=>e===i)))),Tu=Ws.reducer,ie=P(({uuid:t})=>t),Ou={instances:{}},Ys=u.createSlice({name:"documents",initialState:Ou,extraReducers:t=>t.addMatcher(u.isAnyOf(T,F),e=>{Object.assign(e,Ou)}),reducers:{initializeDocuments:ie.initialize,addDocument:ie.addOne,addDocuments:ie.addMany,setDocument:ie.setOne,setDocuments:ie.setMany,updateDocument:ie.updateOne,updateDocuments:ie.updateMany,deleteDocument:ie.deleteOne,deleteDocuments:ie.deleteMany}}),{initializeDocuments:Pu,addDocument:Fu,addDocuments:bu,setDocument:_u,setDocuments:gu,updateDocument:Mu,updateDocuments:Ru,deleteDocument:wu,deleteDocuments:vu}=Ys.actions,Eu=Ys.reducer,Zs=t=>t.documentsReducer.instances,Yt=u.createSelector([Zs],t=>Object.values(t)),Vu=t=>e=>e.documentsReducer.instances[t],Bu=m(u.createSelector([Yt,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),z_=m(u.createSelector([Yt,(t,e)=>e],(t,e)=>t.filter(i=>i.project===e))),D_=m(u.createSelector([Yt,(t,e)=>e],(t,e)=>t.filter(i=>i.organization===e))),zu=m(u.createSelector([Zs,(t,e)=>e],(t,e)=>{if(!t[e])return p([]);const a=Za(e,Object.values(t)).all().map(({model:c})=>c);return p(a)})),ne=P(t=>t.uuid),Du={instances:{}},Js=u.createSlice({name:"emailDomains",initialState:Du,extraReducers:t=>t.addMatcher(u.isAnyOf(T,F),e=>Object.assign(e,Du)),reducers:{initializeEmailDomains:ne.initialize,addEmailDomain:ne.addOne,addEmailDomains:ne.addMany,setEmailDomain:ne.setOne,setEmailDomains:ne.setMany,updateEmailDomain:ne.updateOne,updateEmailDomains:ne.updateMany,deleteEmailDomain:ne.deleteOne,deleteEmailDomains:ne.deleteMany}}),{initializeEmailDomains:ju,addEmailDomain:qu,addEmailDomains:Cu,setEmailDomain:$u,setEmailDomains:Uu,updateEmailDomain:Lu,updateEmailDomains:ku,deleteEmailDomain:Nu,deleteEmailDomains:Gu}=Js.actions,Hu=t=>t.emailDomainsReducer.instances,Xs=u.createSelector([Hu],t=>Object.values(t)),Wu=t=>e=>e.emailDomainsReducer.instances[t],Ku=m(u.createSelector([Xs,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),j_=m(u.createSelector([Xs,(t,e)=>e],(t,e)=>p(t.filter(i=>i.organization===e)))),Yu=Js.reducer,ae=P(t=>t.uuid),Zu={instances:{}},Qs=u.createSlice({name:"formIdentifiers",initialState:Zu,extraReducers:t=>t.addMatcher(u.isAnyOf(T,F),e=>Object.assign(e,Zu)),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:Ju,addFormIdentifier:Xu,addFormIdentifiers:Qu,setFormIdentifier:xu,setFormIdentifiers:el,updateFormIdentifier:tl,updateFormIdentifiers:sl,deleteFormIdentifier:il,deleteFormIdentifiers:nl}=Qs.actions,al=t=>t.formIdentifierReducer.instances,xs=u.createSelector([al],t=>Object.values(t)),cl=t=>e=>e.formIdentifierReducer.instances[t],rl=m(u.createSelector([xs,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),q_=m(u.createSelector([xs,(t,e)=>e],(t,e)=>p(t.filter(i=>i.form===e)))),dl=Qs.reducer,ce=P(t=>t.uuid),ul={instances:{}},ei=u.createSlice({name:"formIdentifierValues",initialState:ul,extraReducers:t=>t.addMatcher(u.isAnyOf(T,F),e=>Object.assign(e,ul)),reducers:{initializeFormIdentifierValues:ce.initialize,addFormIdentifierValue:ce.addOne,addFormIdentifierValues:ce.addMany,setFormIdentifierValue:ce.setOne,setFormIdentifierValues:ce.setMany,updateFormIdentifierValue:ce.updateOne,updateFormIdentifierValues:ce.updateMany,deleteFormIdentifierValue:ce.deleteOne,deleteFormIdentifierValues:ce.deleteMany}}),{initializeFormIdentifierValues:ll,addFormIdentifierValue:ol,addFormIdentifierValues:hl,setFormIdentifierValue:ml,setFormIdentifierValues:pl,updateFormIdentifierValue:yl,updateFormIdentifierValues:fl,deleteFormIdentifierValue:Sl,deleteFormIdentifierValues:Al}=ei.actions,Il=t=>t.formIdentifierValueReducer.instances,Zt=u.createSelector([Il],t=>Object.values(t)),Tl=t=>e=>e.formIdentifierValueReducer.instances[t],Ol=m(u.createSelector([Zt,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),C_=m(u.createSelector([Zt,(t,e)=>e],(t,e)=>p(t.filter(i=>i.form_submission===e)))),$_=m(u.createSelector([Zt,(t,e)=>e],(t,e)=>p(t.filter(i=>i.form_identifier===e)))),Pl=ei.reducer,re=P(t=>t.uuid),Fl={instances:{}},ti=u.createSlice({name:"formRevisionAttachments",initialState:Fl,extraReducers:t=>t.addMatcher(u.isAnyOf(T,F),e=>Object.assign(e,Fl)),reducers:{initializeFormRevisionAttachments:re.initialize,addFormRevisionAttachment:re.addOne,addFormRevisionAttachments:re.addMany,setFormRevisionAttachment:re.setOne,setFormRevisionAttachments:re.setMany,updateFormRevisionAttachment:re.updateOne,updateFormRevisionAttachments:re.updateMany,deleteFormRevisionAttachment:re.deleteOne,deleteFormRevisionAttachments:re.deleteMany}}),{initializeFormRevisionAttachments:bl,addFormRevisionAttachment:_l,addFormRevisionAttachments:gl,setFormRevisionAttachment:Ml,setFormRevisionAttachments:Rl,updateFormRevisionAttachment:wl,updateFormRevisionAttachments:vl,deleteFormRevisionAttachment:El,deleteFormRevisionAttachments:Vl}=ti.actions,Jt=t=>t.formRevisionAttachmentReducer.instances,Bl=u.createSelector([Jt],t=>Object.values(t)),zl=m(u.createSelector([Jt,(t,e)=>e],(t,e)=>t[e])),Dl=m(u.createSelector([Bl,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),U_=m(u.createSelector([Jt,(t,e)=>e],(t,e)=>p(Object.values(t).filter(i=>i.form_revision===e)))),jl=ti.reducer,de=P(t=>t.uuid),ql={instances:{}},si=u.createSlice({name:"formRevisions",initialState:ql,extraReducers:t=>t.addMatcher(u.isAnyOf(T,F),e=>Object.assign(e,ql)),reducers:{initializeFormRevisions:de.initialize,addFormRevision:de.addOne,addFormRevisions:de.addMany,setFormRevision:de.setOne,setFormRevisions:de.setMany,updateFormRevision:de.updateOne,updateFormRevisions:de.updateMany,deleteFormRevision:de.deleteOne,deleteFormRevisions:de.deleteMany}}),{initializeFormRevisions:Cl,addFormRevision:$l,addFormRevisions:ii,setFormRevision:Ul,setFormRevisions:Ll,updateFormRevision:kl,updateFormRevisions:Nl,deleteFormRevision:Gl,deleteFormRevisions:ni}=si.actions,Hl=t=>t.formRevisionReducer.instances,Xt=u.createSelector([Hl],t=>Object.values(t)),Wl=t=>e=>e.formRevisionReducer.instances[t],Kl=m(u.createSelector([Xt,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),L_=m(u.createSelector([Xt,(t,e)=>e],(t,e)=>t.filter(i=>i.form===e).toSorted(It).pop())),Yl=m(u.createSelector([Xt,(t,e)=>e],(t,e)=>p(t.filter(i=>i.form===e)))),Zl=si.reducer,ue=P(t=>t.uuid),Jl={instances:{}},ai=u.createSlice({name:"formSubscribers",initialState:Jl,extraReducers:t=>t.addMatcher(u.isAnyOf(T,F),e=>Object.assign(e,Jl)),reducers:{initializeFormSubscribers:ue.initialize,addFormSubscriber:ue.addOne,addFormSubscribers:ue.addMany,setFormSubscriber:ue.setOne,setFormSubscribers:ue.setMany,updateFormSubscriber:ue.updateOne,updateFormSubscribers:ue.updateMany,deleteFormSubscriber:ue.deleteOne,deleteFormSubscribers:ue.deleteMany}}),{initializeFormSubscribers:Xl,addFormSubscriber:Ql,addFormSubscribers:ci,setFormSubscriber:xl,setFormSubscribers:eo,updateFormSubscriber:to,updateFormSubscribers:so,deleteFormSubscriber:io,deleteFormSubscribers:ri}=ai.actions,no=t=>t.formSubscriberReducer.instances,Qt=u.createSelector([no],t=>Object.values(t)),ao=t=>e=>e.formSubscriberReducer.instances[t],co=m(u.createSelector([Qt,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),ro=m(u.createSelector([Qt,(t,e)=>e],(t,e)=>p(t.filter(i=>i.form===e)))),k_=m(u.createSelector([Qt,(t,e)=>e],(t,e)=>p(t.filter(i=>i.user===e)))),uo=ai.reducer,le=P(t=>t.uuid),lo={instances:{}},di=u.createSlice({name:"forms",initialState:lo,extraReducers:t=>t.addMatcher(u.isAnyOf(T,F),e=>Object.assign(e,lo)),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:oo,addForm:ho,addForms:mo,setForm:po,setForms:yo,updateForm:fo,updateForms:So,deleteForm:Ao,deleteForms:Io}=di.actions,To=di.reducer,Oo=t=>t.formReducer.instances,ui=u.createSelector([Oo],t=>Object.values(t)),Po=t=>e=>e.formReducer.instances[t],Fo=m(u.createSelector([ui,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),N_=m(u.createSelector([ui,(t,e)=>e],(t,e)=>p(t.filter(i=>i.organization===e)))),oe=P(({uuid:t})=>t),bo={instances:{}},li=u.createSlice({name:"formSubmissionFieldValuesAttachments",initialState:bo,extraReducers:t=>t.addMatcher(u.isAnyOf(T,F),e=>Object.assign(e,bo)),reducers:{initializeFormSubmissionFieldValuesAttachments:oe.initialize,addFormSubmissionFieldValuesAttachment:oe.addOne,addFormSubmissionFieldValuesAttachments:oe.addMany,setFormSubmissionFieldValuesAttachment:oe.setOne,setFormSubmissionFieldValuesAttachments:oe.setMany,updateFormSubmissionFieldValuesAttachment:oe.updateOne,updateFormSubmissionFieldValuesAttachments:oe.updateMany,deleteFormSubmissionFieldValuesAttachment:oe.deleteOne,deleteFormSubmissionFieldValuesAttachments:oe.deleteMany}}),{initializeFormSubmissionFieldValuesAttachments:_o,addFormSubmissionFieldValuesAttachment:go,addFormSubmissionFieldValuesAttachments:oi,setFormSubmissionFieldValuesAttachment:Mo,setFormSubmissionFieldValuesAttachments:Ro,updateFormSubmissionFieldValuesAttachment:wo,updateFormSubmissionFieldValuesAttachments:vo,deleteFormSubmissionFieldValuesAttachment:Eo,deleteFormSubmissionFieldValuesAttachments:hi}=li.actions,mi=t=>t.formSubmissionFieldValuesAttachmentReducer.instances,pi=u.createSelector([mi],t=>Object.values(t)),Vo=m(u.createSelector([mi,(t,e)=>e],(t,e)=>t[e])),yi=m(u.createSelector([pi,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(n=>i.has(n.uuid)))})),Bo=m(u.createSelector([pi,(t,e)=>e],(t,e)=>p(t.filter(i=>i.field_values===e)))),zo=li.reducer,he=P(({uuid:t})=>t),Do={instances:{}},fi=u.createSlice({name:"formSubmissionFieldValues",initialState:Do,extraReducers:t=>t.addMatcher(u.isAnyOf(T,F),e=>Object.assign(e,Do)),reducers:{initializeFormSubmissionFieldValues:he.initialize,addFormSubmissionFieldValues:he.addOne,addFormSubmissionFieldValuesMany:he.addMany,setFormSubmissionFieldValues:he.setOne,setFormSubmissionFieldValuesMany:he.setMany,updateFormSubmissionFieldValues:he.updateOne,updateFormSubmissionFieldValuesMany:he.updateMany,deleteFormSubmissionFieldValues:he.deleteOne,deleteFormSubmissionFieldValuesMany:he.deleteMany}}),{initializeFormSubmissionFieldValues:jo,addFormSubmissionFieldValues:qo,addFormSubmissionFieldValuesMany:Si,setFormSubmissionFieldValues:Co,setFormSubmissionFieldValuesMany:$o,updateFormSubmissionFieldValues:Uo,updateFormSubmissionFieldValuesMany:Lo,deleteFormSubmissionFieldValues:ko,deleteFormSubmissionFieldValuesMany:Ai}=fi.actions,No=t=>t.formSubmissionFieldValuesReducer.instances,Ii=u.createSelector([No],t=>Object.values(t)),Go=t=>e=>e.formSubmissionFieldValuesReducer.instances[t],Ho=m(u.createSelector([Ii,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),Wo=m(u.createSelector([Ii,(t,e)=>e],(t,e)=>p(t.filter(i=>i.form_submission===e)))),Ko=fi.reducer,me=P(t=>t.uuid),Yo={instances:{}},Ti=u.createSlice({name:"formSubmissions",initialState:Yo,extraReducers:t=>t.addMatcher(u.isAnyOf(T,F),e=>Object.assign(e,Yo)),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:Zo,setFormSubmission:Jo,setFormSubmissions:Xo,addFormSubmission:Qo,addFormSubmissions:lt,updateFormSubmission:xo,updateFormSubmissions:eh,deleteFormSubmission:th,deleteFormSubmissions:ot}=Ti.actions,sh=t=>t.formSubmissionReducer.instances,$=u.createSelector([sh],t=>Object.values(t)),ih=t=>e=>e.formSubmissionReducer.instances[t],nh=m(u.createSelector([$,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),ah=m(u.createSelector([$,(t,e)=>e],(t,e)=>p(t.filter(i=>i.form===e)))),G_=m(u.createSelector([$,(t,e)=>e],(t,e)=>p(t.filter(({organization:i})=>i===e)))),H_=m(u.createSelector([$,(t,e)=>e],(t,e)=>p(t.filter(({project:i})=>i===e)))),W_=m(u.createSelector([$,(t,e)=>e,(t,e,i)=>i],(t,e,i)=>p(t.filter(({project:n,form:a})=>n===e&&a===i)))),K_=m(u.createSelector([$,(t,e)=>e,(t,e,i)=>i],(t,e,i)=>p(t.filter(({organization:n,form:a})=>n===e&&a===i)))),ch=m(u.createSelector([$,(t,e)=>e],(t,e)=>p(t.filter(({issue:i})=>i===e)))),rh=m(u.createSelector([$,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({issue:n})=>n&&i.has(n)))})),dh=m(u.createSelector([$,(t,e)=>e],(t,e)=>p(t.filter(({asset:i})=>i===e)))),uh=m(u.createSelector([$,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({asset:n})=>n&&i.has(n)))})),lh=Ti.reducer,pe=P(t=>t.uuid),oh={instances:{}},Oi=u.createSlice({name:"geoImages",initialState:oh,extraReducers:t=>t.addMatcher(u.isAnyOf(T,V,F),e=>Object.assign(e,oh)),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:hh,setGeoImage:mh,setGeoImages:ph,addGeoImage:yh,addGeoImages:fh,updateGeoImage:Sh,updateGeoImages:Ah,deleteGeoImage:Ih,deleteGeoImages:Th}=Oi.actions,Oh=t=>t.geoImageReducer.instances,Pi=u.createSelector([Oh],t=>Object.values(t)),Ph=t=>e=>e.geoImageReducer.instances[t],Fh=m(u.createSelector([Pi,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),Y_=m(u.createSelector([Pi,(t,e)=>e],(t,e)=>p(t.filter(i=>i.project===e)))),bh=Oi.reducer,ye=P(t=>t.uuid),_h={instances:{}},Fi=u.createSlice({name:"issueAssociations",initialState:_h,extraReducers:t=>t.addMatcher(u.isAnyOf(T,V,F),e=>Object.assign(e,_h)),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:gh,setIssueAssociations:Mh,setIssueAssociation:Rh,updateIssueAssociation:wh,updateIssueAssociations:vh,addIssueAssociation:Eh,addIssueAssociations:Tt,deleteIssueAssociation:Vh,deleteIssueAssociations:Ot}=Fi.actions,Bh=t=>t.issueAssociationReducer.instances,Pt=u.createSelector([Bh],t=>Object.values(t)),zh=t=>e=>e.issueAssociationReducer.instances[t],Dh=m(u.createSelector([Pt,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),jh=m(u.createSelector([Pt,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({issue:n})=>i.has(n)))})),qh=m(u.createSelector([Pt,(t,e)=>e],(t,e)=>p(t.filter(({issue:i})=>i===e)))),Ch=m(u.createSelector([Pt,(t,e)=>e],(t,e)=>p(t.filter(({asset:i})=>i===e)))),$h=m(u.createSelector([Pt,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({asset:n})=>i.has(n)))})),Uh=Fi.reducer,fe=P(t=>t.uuid),Lh={instances:{}},bi=u.createSlice({name:"issueAttachments",initialState:Lh,extraReducers:t=>t.addMatcher(u.isAnyOf(T,V,F),e=>Object.assign(e,Lh)),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:kh,addIssueAttachment:Nh,addIssueAttachments:_i,setIssueAttachment:Gh,setIssueAttachments:Hh,updateIssueAttachment:Wh,updateIssueAttachments:Kh,deleteIssueAttachment:Yh,deleteIssueAttachments:gi}=bi.actions,Zh=t=>t.issueAttachmentReducer.instances,Mi=u.createSelector([Zh],t=>Object.values(t)),Jh=m(u.createSelector([Mi,(t,e)=>e],(t,e)=>p(t.filter(({issue:i})=>e===i)))),Xh=t=>e=>e.issueAttachmentReducer.instances[t],Qh=m(u.createSelector([Mi,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),xh=bi.reducer,Se=P(t=>t.uuid),em={instances:{}},Ri=u.createSlice({name:"issueCommentAttachments",initialState:em,extraReducers:t=>t.addMatcher(u.isAnyOf(T,V,F),e=>Object.assign(e,em)),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:tm,addIssueCommentAttachment:sm,addIssueCommentAttachments:im,setIssueCommentAttachment:nm,setIssueCommentAttachments:am,updateIssueCommentAttachment:cm,updateIssueCommentAttachments:rm,deleteIssueCommentAttachment:dm,deleteIssueCommentAttachments:um}=Ri.actions,lm=t=>t.issueCommentAttachmentReducer.instances,wi=u.createSelector([lm],t=>Object.values(t)),om=t=>e=>e.issueCommentAttachmentReducer.instances[t],hm=m(u.createSelector([wi,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),Z_=m(u.createSelector([wi,(t,e)=>e],(t,e)=>p(t.filter(({issue_comment:i})=>e===i)))),mm=Ri.reducer,Ae=P(t=>t.uuid),pm={instances:{}},vi=u.createSlice({name:"issueComments",initialState:pm,extraReducers:t=>t.addMatcher(u.isAnyOf(T,V,F),e=>Object.assign(e,pm)),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:ym,addIssueComment:fm,addIssueComments:Sm,setIssueComment:Am,setIssueComments:Im,updateIssueComment:Tm,updateIssueComments:Om,deleteIssueComment:Pm,deleteIssueComments:Fm}=vi.actions,Ei=t=>t.issueCommentReducer.instances,bm=t=>e=>e.issueCommentReducer.instances[t],_m=m(u.createSelector([Ei,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(Object.values(t).filter(({uuid:n})=>i.has(n)))})),J_=m(u.createSelector([Ei,(t,e)=>e],(t,e)=>p(Object.values(t).filter(i=>i.issue===e)))),gm=vi.reducer,Ie=P(t=>t.uuid),Mm={instances:{}},Vi=u.createSlice({name:"issues",initialState:Mm,extraReducers:t=>t.addMatcher(u.isAnyOf(T,V,F),e=>Object.assign(e,Mm)),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:Rm,addIssue:wm,addIssues:Bi,setIssue:vm,setIssues:Em,updateIssue:Vm,updateIssues:Bm,deleteIssue:zm,deleteIssues:zi}=Vi.actions,Dm=t=>t.issueReducer.instances,xt=u.createSelector([Dm],t=>Object.values(t)),jm=t=>e=>e.issueReducer.instances[t],qm=m(u.createSelector([xt,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),X_=m(u.createSelector([xt,(t,e)=>e],(t,e)=>t.filter(i=>i.project===e))),Cm=m(u.createSelector([xt,(t,e)=>e],(t,e)=>t.filter(i=>i.issue_type===e))),$m=Vi.reducer,Te=P(t=>t.uuid),Um={instances:{}},Di=u.createSlice({name:"issueTypeAttachments",initialState:Um,extraReducers:t=>t.addMatcher(u.isAnyOf(T,F),e=>Object.assign(e,Um)),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:Lm,addIssueTypeAttachment:km,addIssueTypeAttachments:Nm,setIssueTypeAttachment:Gm,setIssueTypeAttachments:Hm,updateIssueTypeAttachment:Wm,updateIssueTypeAttachments:Km,deleteIssueTypeAttachment:Ym,deleteIssueTypeAttachments:Zm}=Di.actions,Jm=t=>t.issueTypeAttachmentReducer.instances,ji=u.createSelector([Jm],t=>Object.values(t)),Xm=t=>e=>e.issueTypeAttachmentReducer.instances[t],Qm=m(u.createSelector([ji,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),Q_=m(u.createSelector([ji,(t,e)=>e],(t,e)=>p(t.filter(({issue_type:i})=>e===i)))),xm=Di.reducer,Oe=P(t=>t.uuid),ep={instances:{}},qi=u.createSlice({name:"issueTypeFieldsAttachments",initialState:ep,extraReducers:t=>t.addMatcher(u.isAnyOf(T,F),e=>Object.assign(e,ep)),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:tp,addIssueTypeFieldsAttachment:sp,addIssueTypeFieldsAttachments:ip,setIssueTypeFieldsAttachment:np,setIssueTypeFieldsAttachments:ap,updateIssueTypeFieldsAttachment:cp,updateIssueTypeFieldsAttachments:rp,deleteIssueTypeFieldsAttachment:dp,deleteIssueTypeFieldsAttachments:up}=qi.actions,lp=t=>t.issueTypeFieldsAttachmentReducer.instances,Ci=u.createSelector([lp],t=>Object.values(t)),x_=m(u.createSelector([Ci,(t,e)=>e],(t,e)=>p(t.filter(i=>i.fields_revision===e)))),op=t=>e=>e.issueTypeFieldsAttachmentReducer.instances[t],hp=m(u.createSelector([Ci,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),mp=qi.reducer,Pe=P(t=>t.uuid),pp={instances:{}},$i=u.createSlice({name:"issueTypeFieldValues",initialState:pp,extraReducers:t=>t.addMatcher(u.isAnyOf(T,V,F),e=>Object.assign(e,pp)),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:yp,addIssueTypeFieldValues:fp,addIssueTypeFieldValuesMany:Sp,setIssueTypeFieldValues:Ap,setIssueTypeFieldValuesMany:Ip,updateIssueTypeFieldValues:Tp,updateIssueTypeFieldValuesMany:Op,deleteIssueTypeFieldValues:Pp,deleteIssueTypeFieldValuesMany:Fp}=$i.actions,bp=t=>t.issueTypeFieldValuesReducer.instances,es=u.createSelector([bp],t=>Object.values(t)),eg=m(u.createSelector([es,(t,e)=>e],(t,e)=>p(t.filter(i=>i.issue===e)))),_p=t=>e=>e.issueTypeFieldValuesReducer.instances[t],gp=m(u.createSelector([es,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),Mp=$i.reducer,Fe=P(t=>t.uuid),Rp={instances:{}},Ui=u.createSlice({name:"issueTypeFields",initialState:Rp,extraReducers:t=>t.addMatcher(u.isAnyOf(T,F),e=>Object.assign(e,Rp)),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:wp,addIssueTypeFields:vp,addIssueTypeFieldsMany:Ep,setIssueTypeFields:Vp,setIssueTypeFieldsMany:Bp,updateIssueTypeFields:zp,updateIssueTypeFieldsMany:Dp,deleteIssueTypeFields:jp,deleteIssueTypeFieldsMany:qp}=Ui.actions,Cp=t=>t.issueTypeFieldsReducer.instances,vt=u.createSelector([Cp],t=>Object.values(t)),tg=m(u.createSelector([vt,(t,e)=>e],(t,e)=>p(t.filter(i=>i.issue_type===e)))),sg=m(u.createSelector([vt,(t,e)=>e],(t,e)=>t.filter(i=>i.issue_type===e).sort((i,n)=>i.submitted_at>n.submitted_at?-1:1)[0])),ig=m(u.createSelector([vt,es,(t,e)=>e],(t,e,i)=>{const n=new Set(t.filter(a=>a.issue_type===i).map(a=>a.uuid));return p(e.filter(a=>n.has(a.fields_revision)))})),$p=t=>e=>e.issueTypeFieldsReducer.instances[t],Up=m(u.createSelector([vt,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),Lp=Ui.reducer,be=P(t=>t.uuid),kp={instances:{}},Li=u.createSlice({name:"issueTypeFieldValuesAttachments",initialState:kp,extraReducers:t=>t.addMatcher(u.isAnyOf(T,V,F),e=>Object.assign(e,kp)),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:Np,addIssueTypeFieldValuesAttachment:Gp,addIssueTypeFieldValuesAttachments:ki,setIssueTypeFieldValuesAttachment:Hp,setIssueTypeFieldValuesAttachments:Wp,updateIssueTypeFieldValuesAttachment:Kp,updateIssueTypeFieldValuesAttachments:Yp,deleteIssueTypeFieldValuesAttachment:Zp,deleteIssueTypeFieldValuesAttachments:Ni}=Li.actions,Jp=t=>t.issueTypeFieldValuesAttachmentReducer.instances,Gi=u.createSelector([Jp],t=>Object.values(t)),Xp=t=>e=>e.issueTypeFieldValuesAttachmentReducer.instances[t],Qp=m(u.createSelector([Gi,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),xp=m(u.createSelector([Gi,(t,e)=>e],(t,e)=>p(t.filter(i=>i.field_values===e)))),ey=Li.reducer,_e=P(t=>t.uuid),ty={instances:{}},Hi=u.createSlice({name:"issueTypeIdentifiers",initialState:ty,extraReducers:t=>t.addMatcher(u.isAnyOf(T,F),e=>Object.assign(e,ty)),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:sy,addIssueTypeIdentifier:iy,addIssueTypeIdentifiers:ny,setIssueTypeIdentifier:ay,setIssueTypeIdentifiers:cy,updateIssueTypeIdentifier:ry,updateIssueTypeIdentifiers:dy,deleteIssueTypeIdentifier:uy,deleteIssueTypeIdentifiers:ly}=Hi.actions,oy=t=>t.issueTypeIdentifierReducer.instances,Wi=u.createSelector([oy],t=>Object.values(t)),hy=t=>e=>e.issueTypeIdentifierReducer.instances[t],my=m(u.createSelector([Wi,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),ng=m(u.createSelector([Wi,(t,e)=>e],(t,e)=>p(t.filter(i=>i.issue_type===e)))),py=Hi.reducer,ge=P(t=>t.uuid),yy={instances:{}},Ki=u.createSlice({name:"issueTypeIdentifierValues",initialState:yy,extraReducers:t=>t.addMatcher(u.isAnyOf(T,V,F),e=>Object.assign(e,yy)),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:fy,addIssueTypeIdentifierValue:Sy,addIssueTypeIdentifierValues:Ay,setIssueTypeIdentifierValue:Iy,setIssueTypeIdentifierValues:Ty,updateIssueTypeIdentifierValue:Oy,updateIssueTypeIdentifierValues:Py,deleteIssueTypeIdentifierValue:Fy,deleteIssueTypeIdentifierValues:by}=Ki.actions,_y=t=>t.issueTypeIdentifierValueReducer.instances,ts=u.createSelector([_y],t=>Object.values(t)),gy=t=>e=>e.issueTypeIdentifierValueReducer.instances[t],My=m(u.createSelector([ts,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),ag=m(u.createSelector([ts,(t,e)=>e],(t,e)=>p(t.filter(i=>i.issue===e)))),cg=m(u.createSelector([ts,(t,e)=>e],(t,e)=>p(t.filter(i=>i.issue_type_identifier===e)))),Ry=Ki.reducer,Me=P(t=>t.uuid),wy={instances:{}},Yi=u.createSlice({name:"issueTypePriorities",initialState:wy,extraReducers:t=>t.addMatcher(u.isAnyOf(T,F),e=>Object.assign(e,wy)),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:vy,addIssueTypePriority:Ey,addIssueTypePriorities:Vy,setIssueTypePriority:By,setIssueTypePriorities:zy,updateIssueTypePriority:Dy,updateIssueTypePriorities:jy,deleteIssueTypePriority:qy,deleteIssueTypePriorities:Cy}=Yi.actions,$y=t=>t.issueTypePriorityReducer.instances,Zi=u.createSelector([$y],t=>p(Object.values(t).toSorted(Ka))),Ji=t=>e=>e.issueTypePriorityReducer.instances[t],Uy=m(u.createSelector([Zi,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),rg=m(u.createSelector([Zi,(t,e)=>e],(t,e)=>p(t.filter(i=>i.issue_type===e)))),Ly=Yi.reducer,Re=P(t=>t.uuid),ky={instances:{}},Xi=u.createSlice({name:"issueTypes",initialState:ky,extraReducers:t=>t.addMatcher(u.isAnyOf(T,F),e=>Object.assign(e,ky)),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:Ny,addIssueType:Gy,addIssueTypes:Hy,setIssueType:Wy,setIssueTypes:Ky,updateIssueType:Yy,updateIssueTypes:Zy,deleteIssueType:Jy,deleteIssueTypes:Xy}=Xi.actions,Qy=t=>t.issueTypeReducer.instances,Qi=u.createSelector(Qy,t=>Object.values(t)),xy=t=>e=>e.issueTypeReducer.instances[t],ef=m(u.createSelector([Qi,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),dg=m(u.createSelector([Qi,(t,e)=>e],(t,e)=>p(t.filter(i=>i.organization===e)))),tf=Xi.reducer,we=P(t=>t.uuid),sf={instances:{}},xi=u.createSlice({name:"issueTypeStatuses",initialState:sf,extraReducers:t=>t.addMatcher(u.isAnyOf(T,F),e=>Object.assign(e,sf)),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:nf,addIssueTypeStatus:af,addIssueTypeStatuses:cf,setIssueTypeStatus:rf,setIssueTypeStatuses:df,updateIssueTypeStatus:uf,updateIssueTypeStatuses:lf,deleteIssueTypeStatus:of,deleteIssueTypeStatuses:hf}=xi.actions,mf=t=>t.issueTypeStatusReducer.instances,en=u.createSelector([mf],t=>p(Object.values(t).toSorted(Wa))),tn=t=>e=>e.issueTypeStatusReducer.instances[t],pf=m(u.createSelector([en,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),ug=m(u.createSelector([en,(t,e)=>e],(t,e)=>p(t.filter(i=>i.issue_type===e)))),yf=xi.reducer,ve=P(t=>t.uuid),ff={instances:{}},sn=u.createSlice({name:"issueUpdates",initialState:ff,extraReducers:t=>t.addMatcher(u.isAnyOf(T,V,F),e=>Object.assign(e,ff)),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:Sf,addIssueUpdate:nn,addIssueUpdates:an,setIssueUpdate:Af,setIssueUpdates:If,updateIssueUpdate:Tf,updateIssueUpdates:Of,deleteIssueUpdate:cn,deleteIssueUpdates:rn}=sn.actions,dn=t=>t.issueUpdateReducer.instances,un=u.createSelector([dn],t=>Object.values(t)),Pf=m(u.createSelector([dn,(t,e)=>e],(t,e)=>t[e])),Ff=m(u.createSelector([un,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),bf=m(u.createSelector([un,(t,e)=>e],(t,e)=>p(t.filter(i=>i.issue===e)))),_f=sn.reducer,Ee=P(t=>t.id),gf={instances:{},currentUser:null},ln=u.createSlice({name:"users",initialState:gf,extraReducers:t=>t.addCase(T,e=>Object.assign(e,gf)).addCase(F,e=>Object.assign(e,{...e,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,e)=>{t.currentUser=e.payload},setCurrentUserProfile:(t,e)=>{if(!t.currentUser)return;t.currentUser.profile=e.payload;const i=t.instances[t.currentUser.id];if(!i)throw new Error("Unable to find current user in users slice");i.profile=e.payload}}}),{initializeUsers:Mf,setUsers:Rf,setUser:wf,addUsers:vf,addUser:on,updateUsers:Ef,updateUser:Vf,deleteUser:hn,deleteUsers:Bf,setCurrentUser:lg,setCurrentUserProfile:og}=ln.actions,zf=ln.reducer,Df=t=>t.userReducer.currentUser,mn=t=>t.userReducer.instances,ss=u.createSelector([mn],t=>Object.values(t)),is=t=>e=>e.userReducer.instances[t],jf=m(u.createSelector([ss,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({id:n})=>i.has(n)))})),Ve=P(t=>t.uuid),qf={instances:{}},pn=u.createSlice({name:"organizationAccess",initialState:qf,extraReducers:t=>t.addMatcher(u.isAnyOf(T,F),e=>Object.assign(e,qf)),reducers:{initializeOrganizationAccesses:Ve.initialize,addOrganizationAccess:Ve.addOne,addOrganizationAccesses:Ve.addMany,setOrganizationAccess:Ve.setOne,setOrganizationAccesses:Ve.setMany,updateOrganizationAccess:Ve.updateOne,updateOrganizationAccesses:Ve.updateMany,deleteOrganizationAccess:Ve.deleteOne,deleteOrganizationAccesses:Ve.deleteMany}}),{initializeOrganizationAccesses:Cf,addOrganizationAccess:$f,addOrganizationAccesses:Uf,setOrganizationAccess:Lf,setOrganizationAccesses:kf,updateOrganizationAccess:Nf,updateOrganizationAccesses:Gf,deleteOrganizationAccess:Hf,deleteOrganizationAccesses:Wf}=pn.actions,Kf=pn.reducer,ns=t=>t.organizationAccessReducer.instances,Yf=t=>e=>e.organizationAccessReducer.instances[t],Zf=m(u.createSelector([ns,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(Object.values(t).filter(({uuid:n})=>i.has(n)))})),hg=u.createSelector([Df,ns],(t,e)=>Object.values(e).find(n=>n.user===t?.id)??null),Jf=u.createSelector([ns],t=>{const e={};for(const i of Object.values(t))e[i.user]=i;return ys(e)}),mg=m(u.createSelector([mn,Jf,(t,e)=>e],(t,e,i)=>p(Object.values(t).filter(n=>{const a=e[n.id];return!!a&&a.organization===i})))),Be=P(t=>t.uuid),Xf={instances:{}},yn=u.createSlice({name:"organizations",initialState:Xf,extraReducers:t=>t.addMatcher(u.isAnyOf(T),e=>Object.assign(e,Xf)),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:Qf,setOrganizations:xf,setOrganization:eS,addOrganizations:tS,addOrganization:sS,updateOrganizations:iS,updateOrganization:nS,deleteOrganization:aS,deleteOrganizations:cS}=yn.actions,rS=t=>t.organizationReducer.instances,dS=u.createSelector([rS],t=>Object.values(t)),uS=t=>e=>e.organizationReducer.instances[t],lS=m(u.createSelector([dS,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),oS=yn.reducer,hS=(t,e,i)=>{const n=t.uuid?t:{...t,uuid:dt.v4()};return{payload:n,type:"",meta:{offline:{effect:{timestamp:new Date().toISOString(),request:n,BASE_URL:e,serviceName:i}}}}},mS={deletedRequests:[],latestRetryTime:0},fn=u.createSlice({name:"outbox",initialState:mS,extraReducers:t=>t.addCase(T,e=>Object.assign(e,mS)),reducers:{enqueueRequest:{reducer:(t,e)=>t,prepare:t=>{console.debug("Preparing to enqueue request",t.url);const{BASE_URL:e,serviceName:i,...n}=t;return hS(n,e,i)}},markForDeletion(t,e){t.deletedRequests.push(e.payload)},markAsDeleted(t,e){const i=t.deletedRequests.indexOf(e.payload);i!==-1&&t.deletedRequests.splice(i,1)},_setLatestRetryTime:(t,e)=>{t.latestRetryTime=e.payload}}}),pg=t=>t.outboxReducer.deletedRequests,yg=t=>t.outboxReducer.latestRetryTime,{enqueueRequest:pS,markForDeletion:fg,markAsDeleted:yS,_setLatestRetryTime:fS}=fn.actions,SS=fn.reducer,ze=P(t=>t.uuid),AS={instances:{}},Sn=u.createSlice({name:"projectAccess",initialState:AS,extraReducers:t=>t.addMatcher(u.isAnyOf(T,F),e=>Object.assign(e,AS)),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:IS,addProjectAccess:TS,addProjectAccesses:OS,setProjectAccess:PS,setProjectAccesses:FS,updateProjectAccess:bS,updateProjectAccesses:_S,deleteProjectAccess:gS,deleteProjectAccesses:MS}=Sn.actions,RS=Sn.reducer,An=t=>t.projectAccessReducer.instances,Et=u.createSelector(An,t=>Object.values(t)),wS=t=>e=>e.projectAccessReducer.instances[t],vS=m(u.createSelector([Et,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),Sg=m(u.createSelector([An,(t,e)=>e],(t,e)=>p(Object.values(t).filter(i=>i.project===e)))),Ag=m(u.createSelector([Et,(t,e)=>e],(t,e)=>{const i={};for(const n of t.filter(a=>a.project===e))i[n.user]=n;return i})),Ig=m(u.createSelector([ss,Et,(t,e)=>e],(t,e,i)=>{const n=new Set(e.filter(a=>a.project===i).map(a=>a.user));return p(t.filter(a=>n.has(a.id)))})),De=P(t=>t.uuid),ES={instances:{}},In=u.createSlice({name:"projectAttachments",initialState:ES,extraReducers:t=>t.addMatcher(u.isAnyOf(T,F),e=>Object.assign(e,ES)),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:VS,addProjectAttachment:BS,addProjectAttachments:zS,setProjectAttachment:DS,setProjectAttachments:jS,updateProjectAttachment:qS,updateProjectAttachments:CS,deleteProjectAttachment:$S,deleteProjectAttachments:US}=In.actions,LS=t=>t.projectAttachmentReducer.instances,Tn=u.createSelector([LS],t=>Object.values(t)),kS=t=>e=>e.projectAttachmentReducer.instances[t],NS=m(u.createSelector([Tn,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),Tg=m(u.createSelector([Tn,(t,e)=>e],(t,e)=>p(t.filter(({project:i})=>e===i)))),GS=In.reducer,je=P(t=>t.uuid),HS={instances:{}},On=u.createSlice({name:"projectComments",initialState:HS,extraReducers:t=>t.addMatcher(u.isAnyOf(T,V,F),e=>Object.assign(e,HS)),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:WS,addProjectComment:KS,addProjectComments:YS,setProjectComment:ZS,setProjectComments:JS,updateProjectComment:XS,updateProjectComments:QS,deleteProjectComment:xS,deleteProjectComments:eA}=On.actions,tA=t=>t.projectCommentReducer.instances,as=u.createSelector([tA],t=>p(Object.values(t).toSorted(It))),sA=t=>e=>e.projectCommentReducer.instances[t],iA=m(u.createSelector([as,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),Og=m(u.createSelector([as,(t,e)=>e],(t,e)=>p(t.filter(i=>i.project===e)))),Pg=m(u.createSelector([as,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(n=>i.has(n.project)))})),nA=On.reducer,qe=P(t=>t.uuid),aA={instances:{}},Pn=u.createSlice({name:"projectFiles",initialState:aA,extraReducers:t=>t.addMatcher(u.isAnyOf(T,V,F),e=>Object.assign(e,aA)),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:cA,setProjectFile:rA,setProjectFiles:dA,addProjectFile:uA,addProjectFiles:lA,updateProjectFile:oA,updateProjectFiles:hA,deleteProjectFile:mA,deleteProjectFiles:pA}=Pn.actions,yA=t=>t.projectFileReducer.instances,fA=u.createSelector([yA],t=>p(Object.values(t).toSorted((e,i)=>e.z_index-i.z_index))),SA=t=>e=>e.projectFileReducer.instances[t],AA=m(u.createSelector([fA,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),IA=Pn.reducer,Ce=P(t=>t.uuid),TA={instances:{}},Fn=u.createSlice({name:"projects",initialState:TA,extraReducers:t=>t.addMatcher(u.isAnyOf(T,F),e=>Object.assign(e,TA)),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:OA,setProjects:PA,setProject:FA,addProjects:bA,addProject:_A,updateProjects:gA,updateProject:MA,deleteProject:RA,deleteProjects:wA}=Fn.actions,vA=Fn.reducer,EA=t=>t.projectReducer.instances,cs=u.createSelector([EA],t=>Object.values(t)),VA=t=>e=>e.projectReducer.instances[t],BA=m(u.createSelector([cs,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),Fg=m(u.createSelector([cs,Et,(t,e)=>e],(t,e,i)=>{const n=new Set(e.filter(a=>a.user===i).map(a=>a.project));return p(t.filter(a=>n.has(a.uuid)))})),bg=m(u.createSelector([cs,(t,e)=>e],(t,e)=>p(t.filter(i=>i.organization===e)))),$e=P(({uuid:t})=>t),zA={instances:{}},bn=u.createSlice({name:"procedureInitiatives",initialState:zA,extraReducers:t=>t.addMatcher(u.isAnyOf(T,V,F),e=>Object.assign(e,zA)),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:DA,addProcedureInitiative:jA,addProcedureInitiatives:qA,setProcedureInitiative:CA,setProcedureInitiatives:$A,updateProcedureInitiative:UA,updateProcedureInitiatives:LA,deleteProcedureInitiative:kA,deleteProcedureInitiatives:NA}=bn.actions,GA=bn.reducer,HA=t=>t.procedureInitiativeReducer.instances,rs=u.createSelector([HA],t=>Object.values(t)),WA=t=>e=>e.procedureInitiativeReducer.instances[t],KA=m(u.createSelector([rs,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),_g=m(u.createSelector([rs,(t,e)=>e],(t,e)=>p(t.filter(i=>i.project===e)))),gg=m(u.createSelector([rs,(t,e)=>e],(t,e)=>p(t.filter(i=>i.procedure_type===e)))),Ue=P(({uuid:t})=>t),YA={instances:{}},_n=u.createSlice({name:"procedures",initialState:YA,extraReducers:t=>t.addMatcher(u.isAnyOf(T,V,F),e=>Object.assign(e,YA)),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:ZA,addProcedure:JA,addProcedures:Ft,setProcedure:XA,setProcedures:QA,updateProcedure:xA,updateProcedures:eI,deleteProcedure:tI,deleteProcedures:bt}=_n.actions,sI=_n.reducer,iI=t=>t.procedureReducer.instances,ht=u.createSelector([iI],t=>Object.values(t)),nI=t=>e=>e.procedureReducer.instances[t],aI=m(u.createSelector([ht,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),Mg=m(u.createSelector([ht,(t,e)=>e],(t,e)=>p(t.filter(i=>i.project===e)))),cI=m(u.createSelector([ht,(t,e)=>e],(t,e)=>p(t.filter(i=>i.procedure_type===e)))),rI=m(u.createSelector([ht,(t,e)=>e],(t,e)=>p(t.filter(i=>i.asset===e)))),dI=m(u.createSelector([ht,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({asset:n})=>i.has(n)))})),uI=m(u.createSelector([ht,(t,e)=>e],(t,e)=>p(t.filter(i=>i.procedure_initiative===e)))),Le=P(t=>t.uuid),lI={instances:{}},gn=u.createSlice({name:"procedureStepAssignees",initialState:lI,extraReducers:t=>t.addMatcher(u.isAnyOf(T,V,F),e=>Object.assign(e,lI)),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:oI,addProcedureStepAssignee:hI,addProcedureStepAssignees:mI,setProcedureStepAssignee:pI,setProcedureStepAssignees:yI,updateProcedureStepAssignee:fI,updateProcedureStepAssignees:SI,deleteProcedureStepAssignee:AI,deleteProcedureStepAssignees:II}=gn.actions,TI=t=>t.procedureStepAssigneeReducer.instances,Vt=u.createSelector([TI],t=>Object.values(t)),OI=t=>e=>e.procedureStepAssigneeReducer.instances[t],PI=m(u.createSelector([Vt,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),Rg=m(u.createSelector([Vt,(t,e)=>e],(t,e)=>p(t.filter(i=>i.procedure===e)))),wg=m(u.createSelector([Vt,(t,e)=>e],(t,e)=>p(t.filter(i=>i.procedure_step===e)))),vg=m(u.createSelector([Vt,(t,e)=>e,(t,e,i)=>i],(t,e,i)=>p(t.filter(({procedure:n,procedure_step:a})=>n===e&&a===i)))),FI=gn.reducer,ke=P(t=>t.uuid),bI={instances:{}},Mn=u.createSlice({name:"procedureStepComments",initialState:bI,extraReducers:t=>t.addMatcher(u.isAnyOf(T,V,F),e=>Object.assign(e,bI)),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:_I,addProcedureStepComment:gI,addProcedureStepComments:MI,setProcedureStepComment:RI,setProcedureStepComments:wI,updateProcedureStepComment:vI,updateProcedureStepComments:EI,deleteProcedureStepComment:VI,deleteProcedureStepComments:BI}=Mn.actions,zI=t=>t.procedureStepCommentReducer.instances,Bt=u.createSelector([zI],t=>Object.values(t)),DI=t=>e=>e.procedureStepCommentReducer.instances[t],jI=m(u.createSelector([Bt,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),Eg=m(u.createSelector([Bt,(t,e)=>e],(t,e)=>p(t.filter(i=>i.procedure===e)))),Vg=m(u.createSelector([Bt,(t,e)=>e],(t,e)=>p(t.filter(i=>i.procedure_step===e)))),Bg=m(u.createSelector([Bt,(t,e)=>e,(t,e,i)=>i],(t,e,i)=>p(t.filter(({procedure:n,procedure_step:a})=>n===e&&a===i)))),qI=Mn.reducer,Ne=P(t=>t.uuid),CI={instances:{}},Rn=u.createSlice({name:"procedureStepDefaultAssignees",initialState:CI,extraReducers:t=>t.addMatcher(u.isAnyOf(T,F),e=>Object.assign(e,CI)),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:$I,addProcedureStepDefaultAssignee:UI,addProcedureStepDefaultAssignees:LI,setProcedureStepDefaultAssignee:kI,setProcedureStepDefaultAssignees:NI,updateProcedureStepDefaultAssignee:GI,updateProcedureStepDefaultAssignees:HI,deleteProcedureStepDefaultAssignee:WI,deleteProcedureStepDefaultAssignees:KI}=Rn.actions,YI=t=>t.procedureStepDefaultAssigneeReducer.instances,wn=u.createSelector([YI],t=>Object.values(t)),ZI=t=>e=>e.procedureStepDefaultAssigneeReducer.instances[t],JI=m(u.createSelector([wn,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),zg=m(u.createSelector([wn,(t,e)=>e],(t,e)=>p(t.filter(i=>i.procedure_step===e)))),XI=Rn.reducer,Ge=P(t=>t.uuid),QI={instances:{}},vn=u.createSlice({name:"procedureStepDefaultReviewers",initialState:QI,extraReducers:t=>t.addMatcher(u.isAnyOf(T,F),e=>Object.assign(e,QI)),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:xI,addProcedureStepDefaultReviewer:eT,addProcedureStepDefaultReviewers:tT,setProcedureStepDefaultReviewer:sT,setProcedureStepDefaultReviewers:iT,updateProcedureStepDefaultReviewer:nT,updateProcedureStepDefaultReviewers:aT,deleteProcedureStepDefaultReviewer:cT,deleteProcedureStepDefaultReviewers:rT}=vn.actions,dT=t=>t.procedureStepDefaultReviewerReducer.instances,En=u.createSelector([dT],t=>Object.values(t)),uT=t=>e=>e.procedureStepDefaultReviewerReducer.instances[t],lT=m(u.createSelector([En,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),Dg=m(u.createSelector([En,(t,e)=>e],(t,e)=>p(t.filter(i=>i.procedure_step===e)))),oT=vn.reducer,He=P(t=>t.uuid),hT={instances:{}},Vn=u.createSlice({name:"procedureStepEvents",initialState:hT,extraReducers:t=>t.addMatcher(u.isAnyOf(T,V,F),e=>Object.assign(e,hT)),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:mT,addProcedureStepEvent:pT,addProcedureStepEvents:yT,setProcedureStepEvent:fT,setProcedureStepEvents:ST,updateProcedureStepEvent:AT,updateProcedureStepEvents:IT,deleteProcedureStepEvent:TT,deleteProcedureStepEvents:OT}=Vn.actions,PT=t=>t.procedureStepEventReducer.instances,zt=u.createSelector([PT],t=>Object.values(t)),FT=t=>e=>e.procedureStepEventReducer.instances[t],bT=m(u.createSelector([zt,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),jg=m(u.createSelector([zt,(t,e)=>e],(t,e)=>p(t.filter(i=>i.procedure===e)))),qg=m(u.createSelector([zt,(t,e)=>e],(t,e)=>p(t.filter(i=>i.procedure_step===e)))),Cg=m(u.createSelector([zt,(t,e)=>e,(t,e,i)=>i],(t,e,i)=>p(t.filter(({procedure:n,procedure_step:a})=>n===e&&a===i)))),_T=Vn.reducer,We=P(t=>t.uuid),gT={instances:{}},Bn=u.createSlice({name:"procedureStepFieldsAttachments",initialState:gT,extraReducers:t=>t.addMatcher(u.isAnyOf(T,F),e=>Object.assign(e,gT)),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:MT,addProcedureStepFieldsAttachment:RT,addProcedureStepFieldsAttachments:zn,setProcedureStepFieldsAttachment:wT,setProcedureStepFieldsAttachments:vT,updateProcedureStepFieldsAttachment:ET,updateProcedureStepFieldsAttachments:VT,deleteProcedureStepFieldsAttachment:BT,deleteProcedureStepFieldsAttachments:Dn}=Bn.actions,zT=t=>t.procedureStepFieldsAttachmentReducer.instances,jn=u.createSelector([zT],t=>Object.values(t)),DT=m(u.createSelector([jn,(t,e)=>e],(t,e)=>p(t.filter(i=>i.fields_revision===e)))),jT=t=>e=>e.procedureStepFieldsAttachmentReducer.instances[t],qT=m(u.createSelector([jn,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),CT=Bn.reducer,Ke=P(t=>t.uuid),$T={instances:{}},qn=u.createSlice({name:"procedureStepFields",initialState:$T,extraReducers:t=>t.addMatcher(u.isAnyOf(T,F),e=>Object.assign(e,$T)),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:UT,addProcedureStepFields:LT,addProcedureStepFieldsMany:kT,setProcedureStepFields:NT,setProcedureStepFieldsMany:GT,updateProcedureStepFields:HT,updateProcedureStepFieldsMany:WT,deleteProcedureStepFields:KT,deleteProcedureStepFieldsMany:YT}=qn.actions,Cn=t=>t.procedureStepFieldsReducer.instances,ds=u.createSelector([Cn],t=>Object.values(t)),$g=m(u.createSelector([ds,(t,e)=>e],(t,e)=>p(t.filter(i=>i.procedure_step===e)))),Ug=m(u.createSelector([ds,(t,e)=>e],(t,e)=>t.filter(i=>i.procedure_step===e).toSorted(It).pop())),Lg=u.createSelector([Cn],t=>{const e={};for(const i of Object.values(t)){const n=e[i.procedure_step];(!n||n.submitted_at<i.submitted_at)&&(e[i.procedure_step]=i)}return e}),ZT=t=>e=>e.procedureStepFieldsReducer.instances[t],JT=m(u.createSelector([ds,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),XT=qn.reducer,Ye=P(t=>t.uuid),QT={instances:{}},$n=u.createSlice({name:"procedureStepFieldValuesAttachments",initialState:QT,extraReducers:t=>t.addMatcher(u.isAnyOf(T,V,F),e=>Object.assign(e,QT)),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:xT,addProcedureStepFieldValuesAttachment:eO,addProcedureStepFieldValuesAttachments:Un,setProcedureStepFieldValuesAttachment:tO,setProcedureStepFieldValuesAttachments:sO,updateProcedureStepFieldValuesAttachment:iO,updateProcedureStepFieldValuesAttachments:nO,deleteProcedureStepFieldValuesAttachment:aO,deleteProcedureStepFieldValuesAttachments:Ln}=$n.actions,cO=t=>t.procedureStepFieldValuesAttachmentReducer.instances,kn=u.createSelector([cO],t=>Object.values(t)),rO=t=>e=>e.procedureStepFieldValuesAttachmentReducer.instances[t],dO=m(u.createSelector([kn,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),uO=m(u.createSelector([kn,(t,e)=>e],(t,e)=>p(t.filter(i=>i.field_values===e)))),lO=$n.reducer,Ze=P(t=>t.uuid),oO={instances:{}},Nn=u.createSlice({name:"procedureStepFieldValues",initialState:oO,extraReducers:t=>t.addMatcher(u.isAnyOf(T,V,F),e=>Object.assign(e,oO)),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:hO,addProcedureStepFieldValues:mO,addProcedureStepFieldValuesMany:pO,setProcedureStepFieldValues:yO,setProcedureStepFieldValuesMany:fO,updateProcedureStepFieldValues:SO,updateProcedureStepFieldValuesMany:AO,deleteProcedureStepFieldValues:IO,deleteProcedureStepFieldValuesMany:TO}=Nn.actions,OO=Nn.reducer,PO=t=>t.procedureStepFieldValuesReducer.instances,mt=u.createSelector([PO],t=>Object.values(t)),kg=m(u.createSelector([mt,(t,e)=>e],(t,e)=>p(t.filter(i=>i.procedure===e)))),Ng=m(u.createSelector([mt,(t,e)=>e],(t,e)=>p(t.filter(i=>i.procedure_step===e)))),FO=t=>e=>e.procedureStepFieldValuesReducer.instances[t],bO=m(u.createSelector([mt,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),Gg=m(u.createSelector([mt,(t,e)=>e,(t,e,i)=>i],(t,e,i)=>p(t.filter(({procedure:n,procedure_step:a})=>n===e&&a===i)))),Je=P(t=>t.uuid),_O={instances:{}},Gn=u.createSlice({name:"procedureStepFieldValuesReviews",initialState:_O,extraReducers:t=>t.addMatcher(u.isAnyOf(T,V,F),e=>Object.assign(e,_O)),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:gO,addProcedureStepFieldValuesReview:MO,addProcedureStepFieldValuesReviews:Hn,setProcedureStepFieldValuesReview:RO,setProcedureStepFieldValuesReviews:wO,updateProcedureStepFieldValuesReview:vO,updateProcedureStepFieldValuesReviews:EO,deleteProcedureStepFieldValuesReview:VO,deleteProcedureStepFieldValuesReviews:Wn}=Gn.actions,BO=t=>t.procedureStepFieldValuesReviewReducer.instances,pt=u.createSelector([BO],t=>Object.values(t)),zO=t=>e=>e.procedureStepFieldValuesReviewReducer.instances[t],DO=m(u.createSelector([pt,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),jO=m(u.createSelector([pt,(t,e)=>e],(t,e)=>p(t.filter(i=>i.field_values===e)))),Hg=m(u.createSelector([pt,(t,e)=>e],(t,e)=>{let i;for(const n of t){const{field_values:a}=n;a===e&&(!i||i.submitted_at<=n.submitted_at)&&(i=n)}return i})),Wg=m(u.createSelector([mt,pt,(t,e)=>e],(t,e,i)=>{const n=new Set(R(t.filter(({procedure:a})=>i===a)));return p(e.filter(({field_values:a})=>n.has(a)))})),Kg=m(u.createSelector([mt,pt,(t,e)=>e,(t,e,i)=>i],(t,e,i,n)=>{const a=new Set(R(t.filter(({procedure_step:c,procedure:d})=>i===d&&c===n)));return p(e.filter(({field_values:c})=>a.has(c)))})),Yg=u.createSelector([pt],t=>{const e={};for(const i of t){const{field_values:n}=i,a=e[n];(!a||a.submitted_at<=i.submitted_at)&&(e[n]=i)}return e}),qO=Gn.reducer,Xe=P(t=>t.uuid),CO={instances:{}},Kn=u.createSlice({name:"procedureStepReviewers",initialState:CO,extraReducers:t=>t.addMatcher(u.isAnyOf(T,V,F),e=>Object.assign(e,CO)),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:$O,addProcedureStepReviewer:UO,addProcedureStepReviewers:LO,setProcedureStepReviewer:kO,setProcedureStepReviewers:NO,updateProcedureStepReviewer:GO,updateProcedureStepReviewers:HO,deleteProcedureStepReviewer:WO,deleteProcedureStepReviewers:KO}=Kn.actions,YO=t=>t.procedureStepReviewerReducer.instances,Dt=u.createSelector([YO],t=>Object.values(t)),ZO=t=>e=>e.procedureStepReviewerReducer.instances[t],JO=m(u.createSelector([Dt,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),Zg=m(u.createSelector([Dt,(t,e)=>e],(t,e)=>p(t.filter(i=>i.procedure===e)))),Jg=m(u.createSelector([Dt,(t,e)=>e],(t,e)=>p(t.filter(i=>i.procedure_step===e)))),Xg=m(u.createSelector([Dt,(t,e)=>e,(t,e,i)=>i],(t,e,i)=>p(t.filter(({procedure:n,procedure_step:a})=>n===e&&a===i)))),XO=Kn.reducer,Qe=P(t=>t.uuid),QO={instances:{}},Yn=u.createSlice({name:"procedureSteps",initialState:QO,extraReducers:t=>t.addMatcher(u.isAnyOf(T,F),e=>Object.assign(e,QO)),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:xO,setProcedureStep:eP,setProcedureSteps:tP,addProcedureStep:sP,addProcedureSteps:iP,updateProcedureStep:nP,updateProcedureSteps:aP,deleteProcedureStep:cP,deleteProcedureSteps:rP}=Yn.actions,dP=Yn.reducer,Zn=t=>t.procedureStepReducer.instances,uP=t=>e=>e.procedureStepReducer.instances[t],Jn=u.createSelector([Zn],t=>Object.values(t).toSorted((e,i)=>e.order-i.order)),Qg=m(u.createSelector([Zn,(t,e)=>e],(t,e)=>{const i={};for(const[n,a]of Object.entries(t))a.procedure_type===e&&(i[n]=a);return ys(i)})),xg=m(u.createSelector([Jn,(t,e)=>e],(t,e)=>p(t.filter(i=>i.procedure_type===e)))),lP=m(u.createSelector([Jn,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),xe=P(({uuid:t})=>t),oP={instances:{}},Xn=u.createSlice({name:"procedureTypeAttachments",initialState:oP,extraReducers:t=>t.addMatcher(u.isAnyOf(T,F),e=>Object.assign(e,oP)),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:hP,addProcedureTypeAttachment:mP,addProcedureTypeAttachments:pP,setProcedureTypeAttachment:yP,setProcedureTypeAttachments:fP,updateProcedureTypeAttachment:SP,updateProcedureTypeAttachments:AP,deleteProcedureTypeAttachment:IP,deleteProcedureTypeAttachments:TP}=Xn.actions,OP=Xn.reducer,PP=t=>t.procedureTypeAttachmentReducer.instances,Qn=u.createSelector([PP],t=>Object.values(t)),FP=t=>e=>e.procedureTypeAttachmentReducer.instances[t],bP=m(u.createSelector([Qn,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),eM=m(u.createSelector([Qn,(t,e)=>e],(t,e)=>p(t.filter(({procedure_type:i})=>e===i)))),et=P(({uuid:t})=>t),_P={instances:{}},xn=u.createSlice({name:"procedureTypeFieldsAttachments",initialState:_P,extraReducers:t=>t.addMatcher(u.isAnyOf(T,F),e=>Object.assign(e,_P)),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:gP,addProcedureTypeFieldsAttachment:MP,addProcedureTypeFieldsAttachments:RP,setProcedureTypeFieldsAttachment:wP,setProcedureTypeFieldsAttachments:vP,updateProcedureTypeFieldsAttachment:EP,updateProcedureTypeFieldsAttachments:VP,deleteProcedureTypeFieldsAttachment:BP,deleteProcedureTypeFieldsAttachments:zP}=xn.actions,DP=xn.reducer,jP=t=>t.procedureTypeFieldsAttachmentReducer.instances,ea=u.createSelector([jP],t=>Object.values(t)),tM=m(u.createSelector([ea,(t,e)=>e],(t,e)=>p(t.filter(i=>i.fields_revision===e)))),qP=t=>e=>e.procedureTypeFieldsAttachmentReducer.instances[t],CP=m(u.createSelector([ea,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),tt=P(({uuid:t})=>t),$P={instances:{}},ta=u.createSlice({name:"procedureTypeFields",initialState:$P,extraReducers:t=>t.addMatcher(u.isAnyOf(T,F),e=>Object.assign(e,$P)),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:UP,addProcedureTypeFields:LP,addProcedureTypeFieldsMany:kP,setProcedureTypeFields:NP,setProcedureTypeFieldsMany:GP,updateProcedureTypeFields:HP,updateProcedureTypeFieldsMany:WP,deleteProcedureTypeFields:KP,deleteProcedureTypeFieldsMany:YP}=ta.actions,ZP=ta.reducer,JP=t=>t.procedureTypeFieldsReducer.instances,us=u.createSelector([JP],t=>Object.values(t)),sM=m(u.createSelector([us,(t,e)=>e],(t,e)=>p(t.filter(i=>i.procedure_type===e)))),iM=m(u.createSelector([us,(t,e)=>e],(t,e)=>t.filter(i=>i.procedure_type===e).sort((i,n)=>i.submitted_at>n.submitted_at?-1:1)[0])),XP=t=>e=>e.procedureTypeFieldsReducer.instances[t],QP=m(u.createSelector([us,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),st=P(({uuid:t})=>t),xP={instances:{}},sa=u.createSlice({name:"procedureFieldValuesAttachments",initialState:xP,extraReducers:t=>t.addMatcher(u.isAnyOf(T,V,F),e=>Object.assign(e,xP)),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:eF,addProcedureFieldValuesAttachment:tF,addProcedureFieldValuesAttachments:ia,setProcedureFieldValuesAttachment:sF,setProcedureFieldValuesAttachments:iF,updateProcedureFieldValuesAttachment:nF,updateProcedureFieldValuesAttachments:aF,deleteProcedureFieldValuesAttachment:cF,deleteProcedureFieldValuesAttachments:na}=sa.actions,rF=sa.reducer,dF=t=>t.procedureFieldValuesAttachmentReducer.instances,aa=u.createSelector([dF],t=>Object.values(t)),uF=t=>e=>e.procedureFieldValuesAttachmentReducer.instances[t],lF=m(u.createSelector([aa,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),oF=m(u.createSelector([aa,(t,e)=>e],(t,e)=>p(t.filter(i=>i.field_values===e)))),it=P(({uuid:t})=>t),hF={instances:{}},ca=u.createSlice({name:"procedureFieldValues",initialState:hF,extraReducers:t=>t.addMatcher(u.isAnyOf(T,V,F),e=>Object.assign(e,hF)),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:mF,addProcedureFieldValues:pF,addProcedureFieldValuesMany:yF,setProcedureFieldValues:fF,setProcedureFieldValuesMany:SF,updateProcedureFieldValues:AF,updateProcedureFieldValuesMany:IF,deleteProcedureFieldValues:TF,deleteProcedureFieldValuesMany:OF}=ca.actions,PF=ca.reducer,FF=t=>t.procedureFieldValuesReducer.instances,ra=u.createSelector([FF],t=>Object.values(t)),nM=m(u.createSelector([ra,(t,e)=>e],(t,e)=>p(t.filter(i=>i.procedure===e)))),bF=t=>e=>e.procedureFieldValuesReducer.instances[t],_F=m(u.createSelector([ra,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),nt=P(t=>t.uuid),gF={instances:{}},da=u.createSlice({name:"procedureTypes",initialState:gF,extraReducers:t=>t.addMatcher(u.isAnyOf(T,F),e=>Object.assign(e,gF)),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:MF,addProcedureType:RF,addProcedureTypes:wF,setProcedureType:vF,setProcedureTypes:EF,updateProcedureType:VF,updateProcedureTypes:BF,deleteProcedureType:zF,deleteProcedureTypes:DF}=da.actions,jF=da.reducer,qF=t=>t.procedureTypeReducer.instances,ua=u.createSelector([qF],t=>Object.values(t)),CF=t=>e=>e.procedureTypeReducer.instances[t],$F=m(u.createSelector([ua,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),aM=m(u.createSelector([ua,(t,e)=>e],(t,e)=>p(t.filter(i=>i.organization===e)))),cM={isRehydrated:!1},la=u.createSlice({name:"rehydrated",initialState:cM,reducers:{setRehydrated:(t,e)=>{t.isRehydrated=e.payload}}}),{setRehydrated:rM}=la.actions,dM=t=>t.rehydratedReducer.isRehydrated,UF=la.reducer,at=P(t=>t.uuid),LF={instances:{}},oa=u.createSlice({name:"teamMemberships",initialState:LF,extraReducers:t=>t.addMatcher(u.isAnyOf(T,F),e=>Object.assign(e,LF)),reducers:{initializeTeamMemberships:at.initialize,addTeamMembership:at.addOne,addTeamMemberships:at.addMany,setTeamMembership:at.setOne,setTeamMemberships:at.setMany,updateTeamMembership:at.updateOne,updateTeamMemberships:at.updateMany,deleteTeamMembership:at.deleteOne,deleteTeamMemberships:at.deleteMany}}),{initializeTeamMemberships:kF,addTeamMembership:NF,addTeamMemberships:GF,setTeamMembership:HF,setTeamMemberships:WF,updateTeamMembership:KF,updateTeamMemberships:YF,deleteTeamMembership:ZF,deleteTeamMemberships:JF}=oa.actions,XF=oa.reducer,QF=t=>t.teamMembershipReducer.instances,ls=u.createSelector([QF],t=>Object.values(t)),xF=t=>e=>e.teamMembershipReducer.instances[t],eb=m(u.createSelector([ls,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),uM=m(u.createSelector([ls,(t,e)=>e],(t,e)=>{const i={};for(const n of t.filter(a=>a.team===e))i[n.user]=n;return i})),lM=m(u.createSelector([ss,ls,(t,e)=>e],(t,e,i)=>{const n=new Set(e.filter(a=>a.team===i).map(a=>a.user));return p(t.filter(a=>n.has(a.id)))})),ct=P(t=>t.uuid),tb={instances:{}},ha=u.createSlice({name:"teams",initialState:tb,extraReducers:t=>t.addMatcher(u.isAnyOf(T,F),e=>Object.assign(e,tb)),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:sb,addTeam:ib,addTeams:nb,setTeam:ab,setTeams:cb,updateTeam:rb,updateTeams:db,deleteTeam:ub,deleteTeams:lb}=ha.actions,ob=t=>t.teamReducer.instances,ma=u.createSelector([ob],t=>Object.values(t)),hb=t=>e=>e.teamReducer.instances[t],mb=m(u.createSelector([ma,(t,e)=>e],(t,e)=>{const i=new Set(e);return p(t.filter(({uuid:n})=>i.has(n)))})),oM=m(u.createSelector([ma,(t,e)=>e],(t,e)=>p(t.filter(i=>i.organization===e)))),pb=ha.reducer,pa={outboxReducer:SS,authReducer:cu},hM=u.combineReducers(pa),yb={...pa,assetReducer:Lc,assetAttachmentReducer:pc,assetCommentReducer:Rc,assetTypeReducer:Nd,assetTypeAttachmentReducer:er,issueReducer:$m,issueAttachmentReducer:xh,issueTypeReducer:tf,issueTypeAttachmentReducer:xm,organizationReducer:oS,projectReducer:vA,projectAttachmentReducer:GS,projectCommentReducer:nA,projectAccessReducer:RS,organizationAccessReducer:Kf,projectFileReducer:IA,procedureTypeReducer:jF,procedureInitiativeReducer:GA,procedureReducer:sI,procedureTypeFieldsReducer:ZP,procedureFieldValuesReducer:PF,procedureTypeAttachmentReducer:OP,procedureTypeFieldsAttachmentReducer:DP,procedureFieldValuesAttachmentReducer:rF,procedureStepFieldsAttachmentReducer:CT,procedureStepFieldsReducer:XT,procedureStepFieldValuesAttachmentReducer:lO,procedureStepFieldValuesReducer:OO,procedureStepFieldValuesReviewReducer:qO,procedureStepAssigneeReducer:FI,procedureStepCommentReducer:qI,procedureStepDefaultAssigneeReducer:XI,procedureStepDefaultReviewerReducer:oT,procedureStepEventReducer:_T,procedureStepReviewerReducer:XO,procedureStepReducer:dP,rehydratedReducer:UF,formReducer:To,formRevisionReducer:Zl,formRevisionAttachmentReducer:jl,formSubscriberReducer:uo,formSubmissionFieldValuesAttachmentReducer:zo,formSubmissionFieldValuesReducer:Ko,formSubmissionReducer:lh,formIdentifierReducer:dl,formIdentifierValueReducer:Pl,userReducer:zf,emailDomainsReducer:Yu,documentsReducer:Eu,documentAttachmentReducer:Tu,teamReducer:pb,agentsReducer:tc,issueCommentReducer:gm,issueCommentAttachmentReducer:mm,issueUpdateReducer:_f,geoImageReducer:bh,issueAssociationReducer:Uh,issueTypeFieldsReducer:Lp,issueTypeFieldValuesReducer:Mp,issueTypeFieldsAttachmentReducer:mp,issueTypeFieldValuesAttachmentReducer:ey,issueTypeIdentifierReducer:py,issueTypeIdentifierValueReducer:Ry,issueTypePriorityReducer:Ly,issueTypeStatusReducer:yf,assetTypeFieldsReducer:Rr,assetTypeFieldValuesReducer:td,assetTypeFieldsAttachmentReducer:pr,assetTypeFieldValuesAttachmentReducer:Lr,assetTypeIdentifierReducer:yd,assetTypeIdentifierValueReducer:wd,assetTypeStatusReducer:iu,teamMembershipReducer:XF},mM=u.combineReducers(yb),fb=1e4,ya=[400,409,403,404,405,500],U=1e4,Sb={};class Ab{client;pageSize=fb;constructor(e){Sb[this.constructor.name]=this,this.client=e}async performRequest(e,i){return this.client.performRequest(this.host,e,this,i)}async enqueueRequest(e){return this.client.enqueueRequest(e,this.host,this.constructor.name)}async performPagination(e,i){return this.client.performPagination(this.host,e,this.pageSize,this,i)}dispatch(e){this.client.store.dispatch(e)}select(e){return e(this.client.store.getState())}}const pM=t=>{if(t)throw t;const e=Mt();e?e.dispatch({type:"rehydrated/setRehydrated",payload:!0}):console.error("Client store not set")},Ib=(t,e,i)=>{const n=St();return n?(n.addRequest(e),n.getQueue()):(console.warn("Outbox coordinator not set; cannot enqueue request yet."),[])},Tb=(t,e,i)=>{const n=St();if(!n)return console.warn("Outbox coordinator not set; cannot dequeue request yet."),[];const c=e.meta.offlineAction.payload.uuid;return n.remove(c),n.getQueue()};async function yM(t,e){if(!e.payload)throw new Error("Received empty payload");return zb(e)}const fM={...Pa,effect:yM,discard:Pb,returnPromises:!0,persistCallback:pM,retry:IM,persistOptions:{storage:Ub},queue:{...Pa.queue,enqueue:Ib,dequeue:Tb,peek:(...t)=>AM(...t)}},SM=$b.offline(fM);async function Ob(t,e,i){if(e.store.getState().outboxReducer.deletedRequests.includes(t.payload.uuid))throw new Error("Request was marked for deletion");const a=Sb[t.meta.offline.effect.serviceName];if(!a)throw new Error(`Service ${t.meta.offline.effect.serviceName} not found`);return Aa(t.meta.offline.effect.BASE_URL,t.meta.offline.effect.request,e,a,i)}function Pb(t,e,i=0){if(console.debug("Considering discarding request due to error:",t,`(${typeof t})`,`
2
+ Url:`,e.payload.url,`
3
+ Retries:`,i),!(t instanceof Error))throw console.error("ENCOUNTERED NON-ERROR ERROR:",t,"(throwing immediately, which may lead to unexpected behavior)"),t;const n=Mt(),c=n.getState().outboxReducer.deletedRequests,d=e.payload.uuid;function r(){n.dispatch(yS(d));const o=St();if(!o)throw new Error("Outbox coordinator not set");o.remove(e.payload.uuid);const f=e.meta.offline.rollback;throw f&&(console.warn("Rolling back request due to SDK error:",e),n.dispatch(f)),t}if(t instanceof q&&t.options.discard&&(console.debug("Discarding request due to explicit discard:",e.payload.url),r()),c.includes(d)&&(console.debug("Discarding request due to deletion:",e.payload.url),r()),t instanceof q){const o=t.status||t.response?.status;if(o||console.warn("Error has no status code:",t),t.options.discard!==!1&&o!==void 0&&ya.includes(o)){console.warn("Discarding request due to error:",t,`
4
+ Action:`,e);const f=St();if(!f)throw new Error("Outbox coordinator not set");f.remove(e.payload.uuid),t.options.discard=!0,r()}}console.debug("Registering a retry for request:",e.payload.uuid);const h=St();if(!h)throw new Error("Outbox coordinator not set");return h.registerRetry(e.payload.uuid),!1}function AM(t,e,i){return St()?.peek()}function IM(t,e){return Mt().dispatch(fS(new Date().getTime())),_a}const _t="An unknown error occurred",TM=500,Fb=["non_field_errors","detail"];function OM(t,e){let i;if(t?.body)if(typeof t.body=="object"){const n=t.body;if(typeof n.error=="string")i=n.error;else if(typeof n.message=="string")i=n.message;else try{i=Object.entries(n).map(([a,c])=>typeof c=="string"?Fb.includes(a)?c:`${a}: ${c}`:Array.isArray(c)?Fb.includes(a)?c.join(`
5
+ `):c.map(d=>`${a}: ${d}`).join(`
6
+ `):`${a}: ${JSON.stringify(c)}`).join(`
7
+ `)}catch(a){console.error("Failed to extract error message from response body",a)}}else typeof t.body=="string"&&(i=t.body);else t?.text?i=t.text:e instanceof Error&&(i=e.message);return!i||i.length>TM?_t:i}class q extends Error{status;response;message;options;constructor(e){super(_t);const{response:i,innerError:n}=e;this.message=e.message??OM(i,n)??_t,this.status=i?.status??0,this.response=i,this.options=e}}function bb(t){function e(i){return typeof i=="object"&&i!==null&&["ok","redirect","clientError","serverError","error"].every(a=>a in i)}if(e(t))return t;if(typeof t=="object"&&t!==null){const i=t;if(e(i.response))return i.response;if(i.response&&e(i.response.response))return i.response.response}}class _b extends Ab{constructor(e){super(e)}applyAuth(e){const i=this.getAuthHeader();return i?e.set("Authorization",i):e}isAuthFailure(e){return e.status===401}}class yt extends Ab{auth;constructor(e,i){super(e),this.auth=i}}class PM extends yt{async startConversation(e,i){return this.enqueueRequest({description:"Start agent conversation",method:l.POST,url:"/agents/prompt/",payload:{prompt:e,active_project:i},blockers:["prompt"],blocks:["prompt"]}).then(n=>(this.dispatch(Qa(n)),n))}async continueConversation(e,i,n){return this.enqueueRequest({description:"Prompt agent",method:l.POST,url:"/agents/prompt/",payload:{prompt:e,active_project:n},blockers:["prompt"],blocks:["prompt"],queryParams:{conversation_id:i}}).then(a=>{this.dispatch(ec(a))})}async fetchDetails(e){return this.enqueueRequest({description:"Get agent conversation",method:l.GET,url:`/agents/conversations/${e}/`,blockers:["conversation"],blocks:["conversation"]}).then(i=>{this.dispatch(xa(i))})}async rate(e,i){return this.enqueueRequest({description:"Rate agent response",method:l.PUT,url:`/agents/responses/${e}/rate/`,payload:{rating:i},blockers:["rate"],blocks:["rate"]})}async list(e,i){return this.performRequest({method:l.GET,url:"/agents/conversations/",...e},i)}async refreshStore(e,i){const n=await this.list({queryParams:{project:e}},i);return this.dispatch(Xa(n)),n}}function k(t,e){const i=[];let n=0;const a=t.length;for(;n<a;)i.push(t.slice(n,n+=e));return i}function y(t,e,i){const n=`${e}${i?"s":""}`;switch(t){case l.GET:return`Get ${n}`;case l.POST:return`Create ${n}`;case l.PATCH:return`Update ${n}`;case l.PUT:return`Update ${n}`;case l.DELETE:return`Delete ${n}`}}function M(t){const e={...t};for(const i of[...ga,"created_by"])i in e&&delete e[i];return e}class w extends yt{async get(e,i){return this.performRequest({url:`${this.url}/${e}/`,method:l.GET},i)}async list(e,i){return this.performRequest({url:`${this.url}/`,method:l.GET,...e},i)}async listPaginated(e,i){return this.performPagination({url:`${this.url}/`,method:l.GET,...e},i)}}class B extends w{async getPresignedUrl(e,i){const{selectById:n}=this.selectors,a=this.select(n(e));if(!a)throw new Error(`Could not find ${this.name}: ${e} in store.`);if(a.object_url)return a.object_url;const c=await this.client.files.getPresignedUrlFromCache(a.file_sha1);if(c)return c;const d=await this.performRequest({url:`${this.url}/${e}/presigned-url/`,method:l.GET},i);return await this.client.files.cachePresignedUrl(a.file_sha1,d),d}async add(e){const{addOne:i,updateOne:n,deleteOne:a}=this.actions;let c,d=null,r=null;if("file"in e){const{file:S,...b}=e;d=await this.client.files.getFilePayload(S),r=URL.createObjectURL(S),c={...b,file_sha1:d.sha1,file_type:d.file_type,file_name:S.name,file_extension:d.extension,object_url:r}}else c=e;const h=this.buildModel(c),o=this.buildPayload(h);this.dispatch(i(h));const f=this.enqueueRequest({description:y(l.POST,this.name,!1),method:l.POST,url:`${this.url}/`,payload:{...o,...d?{file:d}:{}},blockers:this.getBlockers(h),blocks:this.getBlocks(h)});f.then(({instance:S})=>{this.dispatch(n(S))}).catch(()=>{this.dispatch(a(this.getId(h)))}).finally(()=>{r&&URL.revokeObjectURL(r)});const A=f.then(({instance:S})=>S),I=f.then(async({instance:S,presigned_url:b})=>{try{return b&&await this.client.files.processPresignedUrl(S.file_sha1,b),S.file_sha1}catch(g){throw console.error("Upload to s3 using presigned url failed.",g),g}});return[h,A,I]}async bulkAdd(e,i){const{addMany:n,updateMany:a,deleteMany:c}=this.actions,d=new Date().toISOString(),r=[],h=new Set,o=k(e,Math.min(i??e.length,U)),f=[];for(const b of o){const g=[],_={},E=[],z=[];for(const rt of b){let qt;if("file"in rt){const{file:Ct,...YR}=rt,Rt=await this.client.files.getFilePayload(Ct);Rt.sha1 in _||(_[Rt.sha1]=Rt);const jb=URL.createObjectURL(Ct);h.add(jb),qt={...YR,file_sha1:Rt.sha1,file_type:Rt.file_type,file_name:Ct.name,file_extension:Rt.extension,object_url:jb}}else qt=rt;const C=this.buildModel(qt);r.push(C);const os=this.buildBulkPayload(C);g.push(os);const D=this.getBlockers(C);E.push(...D);const L=this.getBlocks(C);z.push(...L)}const v={payloads:g,submittedAt:d,files:Object.values(_),blockers:E,blocks:z};f.push(v)}this.dispatch(n(r));const A=f.map(b=>{const{submittedAt:g,files:_,payloads:E,blocks:z,blockers:v}=b;return this.enqueueRequest({description:y(l.POST,this.name,!0),method:l.POST,url:`${this.url}/bulk/`,payload:{submitted_at:g,files:_,payloads:E},blockers:v,blocks:z})});Promise.all(A).then(b=>{const g=b.flatMap(_=>_.instances);this.dispatch(a(g))}).catch(b=>{throw this.dispatch(c(r.map(g=>this.getId(g)))),console.error(b),b}).finally(()=>{for(const b of h)URL.revokeObjectURL(b)});const I=Promise.all(A).then(b=>b.flatMap(({instances:g})=>g)),S=Promise.all(A).then(async b=>{const g=[];for(const{presigned_urls:_}of b){const E=this.client.files.processPresignedUrls(_);for(const[z,v]of Object.entries(E))try{await v,g.push(z)}catch(rt){throw console.error("Upload to s3 using presigned url failed.",rt),rt}}return g});return[r,I,S]}async delete(e){const{addOne:i,deleteOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e));if(!c)throw new Error(`Attempting to delete ${this.name} with pk ${e} that does not exist in the store`);this.dispatch(n(this.getId(c)));try{return await this.enqueueRequest({description:y(l.DELETE,this.name,!1),method:l.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(d){throw this.dispatch(i(c)),d}}}class FM extends B{name="Asset attachment";url="/asset-attachments";actions={addOne:nc,addMany:Ts,setOne:ac,setMany:cc,updateOne:rc,updateMany:dc,deleteOne:uc,deleteMany:Os,initialize:ic};selectors={selectById:oc,selectByIds:hc};getId(e){return e.uuid}getBlockers(e){const{asset:i}=e;return[i]}getBlocks(e){return[e.uuid]}buildModel(e){const i=this.select(a=>a.userReducer.currentUser?.id??null),n=new Date().toISOString();return O({...e,created_by:i,submitted_at:n})}buildPayload(e){return{uuid:e.uuid,submitted_at:e.submitted_at,file_name:e.file_name,file_sha1:e.file_sha1,file_extension:e.file_extension,asset: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,i){const{initialize:n}=this.actions,c=(await this.listPaginated({queryParams:{asset__project:e}},i)).flat();return this.dispatch(n(c)),c}}class bM extends w{name="Asset Comment";url="/asset-comments";actions={addOne:Sc,addMany:Lt,setOne:Ac,setMany:Ic,updateOne:Tc,updateMany:Oc,deleteOne:Pc,deleteMany:kt,initialize:fc};selectors={selectById:bc,selectByIds:_c};add(e){const{addOne:i,updateOne:n,deleteOne:a}=this.actions,c=O({...e,created_by:this.select(r=>r.userReducer.currentUser?.id??null),submitted_at:new Date().toISOString()});this.dispatch(i(c));const d=this.enqueueRequest({description:y(l.POST,this.name,!1),method:l.POST,url:`${this.url}/`,payload:M(c),blockers:[c.asset],blocks:[c.uuid]});return d.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(a(c.uuid))}),[c,d]}update(e){const{updateOne:i}=this.actions,{selectById:n}=this.selectors,a=this.select(n(e.uuid));if(!a)throw new Error(`Asset comment with uuid ${e.uuid} not found in store`);const c={...a,...e};this.dispatch(i(c));const d=this.enqueueRequest({description:y(l.PATCH,this.name,!1),method:l.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return d.then(r=>{this.dispatch(i(r))}).catch(()=>{this.dispatch(i(a))}),[c,d]}async delete(e){const{deleteOne:i,addOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e));if(!c)throw new Error(`Asset comment with uuid ${e} not found in store`);this.dispatch(i(e));try{return await this.enqueueRequest({description:y(l.DELETE,this.name,!1),method:l.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(d){throw this.dispatch(n(c)),d}}async refreshStore(e,i){const{initialize:n}=this.actions,c=(await this.listPaginated({queryParams:{asset__project:e}},i)).flat();return this.dispatch(n(c)),c}}class _M extends w{url="/assets";name="Asset";actions={addOne:Ec,addMany:_s,setOne:Dc,setMany:jc,updateOne:Vc,updateMany:Bc,deleteOne:zc,deleteMany:gs,initialize:vc};selectors={selectById:$c,selectByIds:Uc};add(e){const{addOne:i,updateOne:n,deleteOne:a}=this.actions,c=this.select(o=>o.userReducer.currentUser?.id??null),d=new Date().toISOString(),r=O({...e,created_by:c,submitted_at:d});this.dispatch(i(r));const h=this.enqueueRequest({description:y(l.POST,this.name,!1),method:l.POST,url:`${this.url}/`,payload:M(r),blockers:[r.asset_type],blocks:[r.uuid]});return h.then(o=>{this.dispatch(n(o))}).catch(()=>{this.dispatch(a(r.uuid))}),[r,h]}update(e){const{updateOne:i}=this.actions,{selectById:n}=this.selectors,a=this.select(n(e.uuid));if(!a)throw new Error(`No asset with uuid ${e.uuid} found in the store`);const c={...a,...e};this.dispatch(i(c));const d=this.enqueueRequest({description:y(l.PATCH,this.name,!1),method:l.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return d.then(r=>{this.dispatch(i(r))}).catch(()=>{this.dispatch(i(a))}),[c,d]}async delete(e){const{addOne:i,deleteOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e));if(!c)throw new Error(`No asset with uuid ${e} found in the store`);const d=this.select(mc(e)),r=this.select(gc(e)),h=this.select(Ch(e)),o=this.select(rI(e)),f=this.select(dh(e));this.dispatch(n(e)),this.dispatch(Os(R(d))),this.dispatch(kt(R(r))),this.dispatch(Ot(R(h))),this.dispatch(bt(R(o))),this.dispatch(ot(R(f)));try{return await this.enqueueRequest({description:y(l.DELETE,this.name,!1),method:l.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(A){throw this.dispatch(i(c)),this.dispatch(Ts(d)),this.dispatch(Lt(r)),this.dispatch(Tt(h)),this.dispatch(Ft(o)),this.dispatch(lt(f)),A}}bulkAdd(e,i){const{addMany:n}=this.actions,a=new Date().toISOString(),c=k(e,Math.min(i??e.length,U)).map(h=>{const o=h.map(f=>O(f));return{batchId:dt.v4(),payload:{submitted_at:a,assets:o}}}),d=[];let r=null;for(const h of c){const{batchId:o,payload:f}=h,A=f.assets.map(({uuid:_})=>_),I=f.assets.map(({asset_type:_})=>_),S=f.assets.map(({project:_})=>_),b=f.assets.map(({status:_})=>_),g=this.enqueueRequest({description:y(l.POST,this.name,!0),method:l.POST,url:`${this.url}/bulk/`,payload:f,blockers:(r?[r]:[]).concat(I).concat(S).concat(b),blocks:[o].concat(A)});r=h.batchId,d.push(g)}return Promise.all(d).then(h=>{const o=h.flat();this.dispatch(n(o))}),d}bulkUpdate(e,i){const{updateMany:n}=this.actions,{selectByIds:a}=this.selectors,c=R(e);if(new Set(c).size!==e.length)throw new Error("payloads contains duplicate uuids.");const d=this.select(a(c));if(c.length!=d.length)throw new Error(`Attempting to bulk update ${c.length-d.length} assets that dont exist in the store`);const r=d.toSorted(ut),h=e.toSorted(ut),o=[];for(let S=0;S<c.length;S++)o.push({...r[S],...h[S]});this.dispatch(n(o));const f=k(e,Math.min(i??e.length,U)),A=[];let I=null;for(const S of f){const b=dt.v4(),g=R(S),_=S.map(({status:z})=>z).filter(Boolean),E=this.enqueueRequest({description:y(l.PATCH,this.name,!0),method:l.PATCH,url:`${this.url}/bulk/`,payload:{payloads:S},blockers:(I?[I]:[]).concat(g).concat(_),blocks:[b].concat(g)});A.push(E),I=b}return Promise.all(A).then(S=>{this.dispatch(n(S.flat()))}).catch(()=>{this.dispatch(n(d))}),[o,A]}async bulkDelete(e){const{addMany:i,deleteMany:n}=this.actions,{selectByIds:a}=this.selectors,c=this.select(a(e)),d=this.select(Mc(e)),r=this.select($h(e)),h=this.select(dI(e)),o=this.select(uh(e));this.dispatch(n(e)),this.dispatch(kt(R(d))),this.dispatch(Ot(R(r))),this.dispatch(bt(R(h))),this.dispatch(ot(R(o)));try{return await this.enqueueRequest({description:y(l.DELETE,this.name,!0),method:l.DELETE,url:`${this.url}/bulk/`,payload:{uuids:e},blockers:e,blocks:[]})}catch(f){throw this.dispatch(i(c)),this.dispatch(Lt(d)),this.dispatch(Tt(r)),this.dispatch(Ft(h)),this.dispatch(lt(o)),f}}async refreshStore(e,i){const{initialize:n}=this.actions,c=(await this.listPaginated({queryParams:{project:e}},i)).flat();return this.dispatch(n(c)),c}}class gM extends B{name="Asset Type Attachment";url="/asset-type-attachments";actions={addOne:Gc,addMany:Rs,setOne:Hc,setMany:Wc,updateOne:Kc,updateMany:Yc,deleteOne:Zc,deleteMany:ws,initialize:Nc};selectors={selectById:Xc,selectByIds:Qc};getId(e){return e.uuid}getBlockers(e){return[e.asset_type]}getBlocks(e){return[e.uuid]}buildModel(e){const i=this.select(a=>a.userReducer.currentUser?.id??null),n=new Date().toISOString();return O({...e,created_by:i,submitted_at:n})}buildPayload(e){return{uuid:e.uuid,submitted_at:e.submitted_at,file_name:e.file_name,file_sha1:e.file_sha1,file_extension:e.file_extension,asset_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,i){const{initialize:n}=this.actions,a=await this.list({queryParams:{asset_type__organization:e}},i);return this.dispatch(n(a)),a}}class MM extends B{name="Asset Type Fields Attachment";url="/asset-type-fields-attachments";actions={addOne:ir,addMany:nr,setOne:ar,setMany:cr,updateOne:rr,updateMany:dr,deleteOne:ur,deleteMany:lr,initialize:sr};selectors={selectById:hr,selectByIds:mr};getId(e){return e.uuid}getBlockers(e){return[e.fields_revision]}getBlocks(e){return[e.uuid]}buildModel(e){const i=this.select(a=>a.userReducer.currentUser?.id??null),n=new Date().toISOString();return O({...e,created_by:i,submitted_at:n})}buildPayload(e){const{uuid:i,field_identifier:n,fields_revision:a,file_sha1:c,file_name:d,file_extension:r}=e;return{uuid:i,submitted_at:e.submitted_at,field_identifier:n,fields_revision:a,file_sha1:c,file_name:d,file_extension:r}}buildBulkPayload(e){const{uuid:i,field_identifier:n,fields_revision:a,file_sha1:c,file_name:d,file_extension:r}=e;return{uuid:i,field_identifier:n,fields_revision:a,file_sha1:c,file_name:d,file_extension:r}}async refreshStore(e,i){const{initialize:n}=this.actions,a=await this.list({queryParams:{fields_revision__asset_type__organization:e}},i);return this.dispatch(n(a)),a}}class RM extends w{name="Asset Type Fields";url="/asset-type-fields";actions={addOne:Sr,addMany:Ar,setOne:Ir,setMany:Tr,updateOne:Or,updateMany:Pr,deleteOne:Fr,deleteMany:br,initialize:fr};selectors={selectById:gr,selectByIds:Mr};add(e){const{addOne:i,updateOne:n,deleteOne:a}=this.actions,c=this.select(o=>o.userReducer.currentUser?.id??null),d=new Date().toISOString(),r=O({...e,created_by:c,submitted_at:d});this.dispatch(i(r));const h=this.enqueueRequest({description:y(l.POST,this.name,!1),method:l.POST,url:`${this.url}/`,payload:M(r),blockers:[r.asset_type],blocks:[r.uuid]});return h.then(o=>{this.dispatch(n(o))}).catch(()=>{this.dispatch(a(r.uuid))}),[r,h]}async refreshStore(e,i){const{initialize:n}=this.actions,a=await this.list({queryParams:{asset_type__organization:e}},i);return this.dispatch(n(a)),a}}class wM extends B{name="Asset Type Field Values Attachment";url="/asset-type-field-values-attachments";actions={addOne:Er,addMany:Ds,setOne:Vr,setMany:Br,updateOne:zr,updateMany:Dr,deleteOne:jr,deleteMany:js,initialize:vr};selectors={selectById:Cr,selectByIds:$r};getId(e){return e.uuid}getBlockers(e){return[e.field_values]}getBlocks(e){return[e.uuid]}buildModel(e){const i=this.select(a=>a.userReducer.currentUser?.id??null),n=new Date().toISOString();return O({...e,created_by:i,submitted_at:n})}buildPayload(e){const{uuid:i,field_identifier:n,field_values:a,file_sha1:c,file_name:d,file_extension:r}=e;return{uuid:i,submitted_at:e.submitted_at,field_identifier:n,field_values:a,file_sha1:c,file_name:d,file_extension:r}}buildBulkPayload(e){const{uuid:i,field_identifier:n,field_values:a,file_sha1:c,file_name:d,file_extension:r}=e;return{uuid:i,field_identifier:n,field_values:a,file_sha1:c,file_name:d,file_extension:r}}async bulkDelete(e){const{deleteMany:i,addMany:n}=this.actions,{selectByIds:a}=this.selectors,c=this.select(a(e));this.dispatch(i(e));try{return await this.enqueueRequest({description:y(l.DELETE,this.name,!0),method:l.DELETE,url:`${this.url}/bulk/`,payload:{uuids:e},blockers:e,blocks:[]})}catch(d){throw this.dispatch(n(c)),d}}async refreshStore(e,i){const{initialize:n}=this.actions,c=(await this.listPaginated({queryParams:{field_values__asset__project:e,latest:!0}},i)).flat();return this.dispatch(n(c)),c}}class vM extends w{name="Asset Type Field Values";url="/asset-type-field-values";actions={addOne:Gr,addMany:Hr,setOne:Wr,setMany:Kr,updateOne:Yr,updateMany:Zr,deleteOne:Jr,deleteMany:Xr,initialize:Nr};selectors={selectById:xr,selectByIds:ed};add(e){const{addOne:i,updateOne:n,deleteOne:a}=this.actions,c=this.select(o=>o.userReducer.currentUser?.id??null),d=new Date().toISOString(),r=O({...e,created_by:c,submitted_at:d}),h=this.enqueueRequest({description:y(l.POST,this.name,!1),method:l.POST,url:`${this.url}/`,payload:M(r),blockers:[e.asset,e.fields_revision],blocks:[r.uuid]});return this.dispatch(i(r)),h.then(o=>{this.dispatch(n(o))}).catch(()=>{this.dispatch(a(r.uuid))}),[r,h]}bulkAdd(e,i){const{payloads:n,values:a}=e,{addMany:c,updateMany:d,deleteMany:r}=this.actions,h=new Date().toISOString(),o=[],f=k(n,Math.min(i??n.length,U)),A=[];for(const S of f){const b=[];for(const g of S){const _=O({...g,values:g.values,created_by:this.select(E=>E.userReducer.currentUser?.id??null),submitted_at:h});o.push(_),b.push({uuid:_.uuid,asset:g.asset,fields_revision:g.fields_revision,published_at:g.published_at,values:_.values})}A.push({submitted_at:h,values:a,field_values:b})}this.dispatch(c(o));const I=[];for(const S of A){const{field_values:b}=S,g=b.map(({asset:v})=>v),_=b.map(({fields_revision:v})=>v),E=b.map(({uuid:v})=>v),z=this.enqueueRequest({description:y(l.POST,this.name,!0),method:l.POST,url:`${this.url}/bulk/`,payload:S,blockers:g.concat(_),blocks:E});I.push(z)}return Promise.all(I).then(S=>{this.dispatch(d(S.flat()))}).catch(()=>{this.dispatch(r(R(o)))}),[o,I]}update(e){const{updateOne:i}=this.actions,{selectById:n}=this.selectors,a=this.select(n(e.uuid));if(!a)throw new Error(`Expected AssetTypeFieldValues with uuid ${e.uuid} to exist`);const c={...a,...e};this.dispatch(i(c));const d=this.enqueueRequest({description:y(l.PATCH,this.name,!1),method:l.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[c.uuid,c.fields_revision,c.asset],blocks:[c.uuid]});return d.then(r=>{this.dispatch(i(r))}).catch(()=>{this.dispatch(i(a))}),[c,d]}async delete(e){const{deleteOne:i,addOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e));if(!c)throw new Error(`Expected submission with uuid ${e} to exist`);const d=this.select(Ur(e));this.dispatch(i(e)),this.dispatch(js(R(d)));try{return await this.enqueueRequest({description:y(l.DELETE,this.name,!1),method:l.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(r){throw this.dispatch(n(c)),this.dispatch(Ds(d)),r}}async refreshStore(e,i){const{initialize:n}=this.actions,c=(await this.listPaginated({queryParams:{asset__project:e,latest:!0}},i)).flat();return this.dispatch(n(c)),c}}class EM extends w{name="Asset Type Identifier";url="/asset-type-identifiers";actions={addOne:nd,addMany:ad,setOne:cd,setMany:rd,updateOne:dd,updateMany:ud,deleteOne:ld,deleteMany:od,initialize:id};selectors={selectById:md,selectByIds:pd};add(e){const{addOne:i,updateOne:n,deleteOne:a}=this.actions,c=this.select(o=>o.userReducer.currentUser?.id??null),d=new Date().toISOString(),r=O({...e,created_by:c,submitted_at:d});this.dispatch(i(r));const h=this.enqueueRequest({description:y(l.POST,this.name,!1),method:l.POST,url:`${this.url}/`,payload:M(r),blockers:[r.asset_type],blocks:[r.uuid]});return h.then(o=>{this.dispatch(n(o))}).catch(()=>{this.dispatch(a(r.uuid))}),[r,h]}update(e){const{updateOne:i}=this.actions,{selectById:n}=this.selectors,a=this.select(n(e.uuid));if(!a)throw new Error(`Expected asset type identifier with uuid ${e.uuid} to exist`);const c={...a,...e};this.dispatch(i(c));const d=this.enqueueRequest({description:y(l.PATCH,this.name,!1),method:l.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return d.then(r=>{this.dispatch(i(r))}).catch(()=>{this.dispatch(i(a))}),[c,d]}async delete(e){const{deleteOne:i,addOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e));if(!c)throw new Error(`Expected asset type identifier with uuid ${e} to exist`);this.dispatch(i(e));try{return await this.enqueueRequest({description:y(l.DELETE,this.name,!1),method:l.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(d){throw this.dispatch(n(c)),d}}async refreshStore(e,i){const{initialize:n}=this.actions,a=await this.list({queryParams:{asset_type__organization:e}},i);return this.dispatch(n(a)),a}}class VM extends w{name="Asset Type Identifier Value";url="/asset-type-identifier-values";actions={addOne:Ad,addMany:Id,setOne:Td,setMany:Od,updateOne:Pd,updateMany:Fd,deleteOne:bd,deleteMany:_d,initialize:Sd};selectors={selectById:Md,selectByIds:Rd};add(e){const{addOne:i,updateOne:n,deleteOne:a}=this.actions,c=this.select(o=>o.userReducer.currentUser?.id??null),d=new Date().toISOString(),r=O({...e,created_by:c,submitted_at:d});this.dispatch(i(r));const h=this.enqueueRequest({description:y(l.POST,this.name,!1),method:l.POST,url:`${this.url}/`,payload:M(r),blockers:[e.asset,e.asset_type_identifier],blocks:[r.uuid]});return h.then(o=>{this.dispatch(n(o))}).catch(()=>{this.dispatch(a(r.uuid))}),[r,h]}bulkAdd(e,i){const{addMany:n,updateMany:a,deleteMany:c}=this.actions,d=new Date().toISOString(),r=this.select(S=>S.userReducer.currentUser?.id??null),h=k(e,Math.min(i??e.length,U)),o=[],f=[];for(const S of h){const b=[],g=[],_=[];for(const z of S){const v=O({...z,submitted_at:d,created_by:r});f.push(v);const rt={uuid:v.uuid,asset:v.asset,asset_type_identifier:v.asset_type_identifier,value:v.value};b.push(rt),g.push(v.asset),g.push(v.asset_type_identifier),_.push(v.uuid)}const E={payloads:b,submitted_at:d,blockers:g,blocks:_};o.push(E)}this.dispatch(n(f));const A=o.map(S=>{const{payloads:b,submitted_at:g,blockers:_,blocks:E}=S;return this.enqueueRequest({description:y(l.POST,this.name,!0),method:l.POST,url:`${this.url}/bulk/`,payload:{submitted_at:g,payloads:b},blockers:_,blocks:E})});Promise.all(A).then(S=>{this.dispatch(a(S.flat()))}).catch(S=>{throw this.dispatch(c(R(f))),S});const I=Promise.all(A).then(S=>S.flat());return[f,I]}async delete(e){const{deleteOne:i,addOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e));if(!c)throw new Error(`Expected asset type identifier value with uuid ${e} to exist`);this.dispatch(i(e));try{return await this.enqueueRequest({description:y(l.DELETE,this.name,!1),method:l.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(d){throw this.dispatch(n(c)),d}}async refreshStore(e,i){const{initialize:n}=this.actions,c=(await this.listPaginated({queryParams:{asset__project:e,latest:!0}},i)).flat();return this.dispatch(n(c)),c}}class BM extends w{name="Asset Type";url="/asset-types";actions={addOne:zd,addMany:Dd,setOne:Vd,setMany:Bd,updateOne:jd,updateMany:qd,deleteOne:Cd,deleteMany:$d,initialize:Ed};selectors={selectById:Ld,selectByIds:kd};add(e){const{addOne:i,updateOne:n,deleteOne:a}=this.actions,c=this.select(o=>o.userReducer.currentUser?.id??null),d=new Date().toISOString(),r=O({...e,created_by:c,submitted_at:d});this.dispatch(i(r));const h=this.enqueueRequest({description:y(l.POST,this.name,!1),method:l.POST,url:`${this.url}/`,payload:M(r),blockers:[],blocks:[r.uuid]});return h.then(o=>{this.dispatch(n(o))}).catch(()=>{this.dispatch(a(r.uuid))}),[r,h]}update(e){const{updateOne:i}=this.actions,{selectById:n}=this.selectors,a=this.select(n(e.uuid));if(!a)throw new Error(`Expected asset type with uuid ${e.uuid} to exist`);const c={...a,...e};this.dispatch(i(c));const d=this.enqueueRequest({description:y(l.PATCH,this.name,!1),method:l.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[a.uuid],blocks:[a.uuid]});return d.then(r=>{this.dispatch(i(r))}).catch(()=>{this.dispatch(i(a))}),[c,d]}async delete(e){const{deleteOne:i,addOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e));if(!c)throw new Error(`Expected asset type with uuid ${e} to exist`);const d=this.select(Cc(e)),r=this.select(xc(e));this.dispatch(i(e)),this.dispatch(gs(R(d))),this.dispatch(ws(R(r)));try{return await this.enqueueRequest({description:y(l.DELETE,this.name,!1),method:l.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(h){throw this.dispatch(n(c)),this.dispatch(_s(d)),this.dispatch(Rs(r)),h}}async refreshStore(e,i){const{initialize:n}=this.actions,a=await this.list({queryParams:{organization:e}},i);return this.dispatch(n(a)),a}}class zM extends w{name="Asset Type Status";url="/asset-type-statuses";actions={addOne:Wd,addMany:Kd,setOne:Yd,setMany:Zd,updateOne:Jd,updateMany:Xd,deleteOne:Qd,deleteMany:xd,initialize:Hd};selectors={selectById:tu,selectByIds:su};add(e){const{addOne:i,updateOne:n,deleteOne:a}=this.actions,c=this.select(o=>o.userReducer.currentUser?.id??null),d=new Date().toISOString(),r=O({...e,created_by:c,submitted_at:d});this.dispatch(i(r));const h=this.enqueueRequest({description:y(l.POST,this.name,!1),method:l.POST,url:`${this.url}/`,payload:M(r),blockers:[e.asset_type],blocks:[r.uuid]});return h.then(o=>{this.dispatch(n(o))}).catch(()=>{this.dispatch(a(r.uuid))}),[r,h]}update(e){const{updateOne:i}=this.actions,{selectById:n}=this.selectors,a=this.select(n(e.uuid));if(!a)throw new Error(`Expected an existing asset type status with uuid ${e.uuid}`);const c={...a,...e};this.dispatch(i(c));const d=this.enqueueRequest({description:y(l.PATCH,this.name,!1),method:l.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return d.then(r=>{this.dispatch(i(r))}).catch(()=>{this.dispatch(i(a))}),[c,d]}async delete(e){const{deleteOne:i,addOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e));if(!c)throw new Error(`No asset type status with uuid ${e} found in the store`);this.dispatch(i(e));try{return await this.enqueueRequest({description:y(l.DELETE,this.name,!1),method:l.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(d){throw this.dispatch(n(c)),d}}async refreshStore(e,i){const{initialize:n}=this.actions,a=await this.list({queryParams:{asset_type__organization:e}},i);return this.dispatch(n(a)),a}}class DM extends B{name="Document Attachment";url="/document-attachments";actions={addOne:uu,addMany:lu,setOne:ou,setMany:hu,updateOne:mu,updateMany:pu,deleteOne:yu,deleteMany:fu,initialize:du};selectors={selectById:Au,selectByIds:Iu};getId(e){return e.uuid}getBlockers(e){return[e.document]}getBlocks(e){return[e.uuid]}buildModel(e){const i=this.select(a=>a.userReducer.currentUser?.id??null),n=new Date().toISOString();return O({...e,created_by:i,submitted_at: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,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,i){const[n,a,c]=await super.bulkAdd(e,i),d={};for(const{file_sha1:r,uuid:h}of n)r in d||(d[r]=[]),d[r].push(h);return c.then(r=>{const h=r.flatMap(o=>d[o]??[]);for(const o of h)this.makeReadable(o)}),[n,a,c]}makeReadable(e){this.enqueueRequest({description:"Add attachment to AI assistant",method:l.PATCH,url:`${this.url}/${e}/`,payload:{readable_to_assistant:!0},blockers:["index-document-attachment",e],blocks:["index-document-attachment"]})}async refreshStore(e,i){const{initialize:n}=this.actions,a=this.list({queryParams:{document__project__organization:e}},i),c=this.list({queryParams:{document__organization:e}},i),r=(await Promise.all([a,c])).flat();return this.dispatch(n(r)),r}}class jM extends w{name="Document";url="/documents";actions={addOne:Fu,addMany:bu,setOne:_u,setMany:gu,updateOne:Mu,updateMany:Ru,deleteOne:wu,deleteMany:vu,initialize:Pu};selectors={selectById:Vu,selectByIds:Bu};add(e){const{addOne:i,deleteOne:n,updateOne:a}=this.actions,c=this.select(o=>o.userReducer.currentUser?.id??null),d=new Date().toISOString(),r=O({...e,created_by:c,submitted_at:d});this.dispatch(i(r));const h=this.enqueueRequest({description:y(l.POST,this.name,!1),method:l.POST,url:`${this.url}/`,payload:M(r),blockers:r.parent_document?[r.parent_document]:[],blocks:[r.uuid]});return h.then(o=>{this.dispatch(a(o))}).catch(()=>{this.dispatch(n(r.uuid))}),[r,h]}update(e){const{updateOne:i}=this.actions,{selectById:n}=this.selectors,a=this.select(n(e.uuid));if(!a)throw new Error(`attempting to update a document with uuid ${e.uuid} that does not exist in store.documents`);const c={...a,...e};this.dispatch(i(c));const d=this.enqueueRequest({description:y(l.PATCH,this.name,!1),method:l.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return d.then(r=>{this.dispatch(i(r))}).catch(()=>{this.dispatch(i(a))}),[c,d]}async delete(e){const{deleteOne:i,addOne:n,addMany:a,deleteMany:c}=this.actions,{selectById:d}=this.selectors,r=this.select(d(e));if(!r)throw new Error(`attempting to delete a document with uuid ${e} that does not exist in store.documents`);const h=this.select(zu(e));this.dispatch(i(e)),this.dispatch(c(R(h)));try{return await this.enqueueRequest({description:y(l.DELETE,this.name,!1),method:l.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(o){throw this.dispatch(n(r)),this.dispatch(a(h)),o}}async refreshStore(e,i){const{initialize:n}=this.actions,a=this.list({queryParams:{project__organization:e}},i),c=this.list({queryParams:{organization:e}},i),r=(await Promise.all([a,c])).flat();return this.dispatch(n(r)),r}}class ft extends yt{async get(e,i){return this.performRequest({url:`${this.url}/${e}/`,method:l.GET},i)}async list(e,i){return this.performRequest({url:`${this.url}/`,method:l.GET,...e},i)}async listPaginated(e,i){return this.performPagination({url:`${this.url}/`,method:l.GET,...e},i)}}class qM extends ft{name="Email Domains";url="/organization-email-domains";actions={addOne:qu,addMany:Cu,setOne:$u,setMany:Uu,updateOne:Lu,updateMany:ku,deleteOne:Nu,deleteMany:Gu,initialize:ju};selectors={selectById:Wu,selectByIds:Ku};async add(e,i){return this.enqueueRequest({description:y(l.POST,this.name,!1),method:l.POST,url:`${this.url}/`,payload:{email:i,organization:e},blockers:[e,"create-org"],blocks:[]})}async delete(e){const{deleteOne:i,addOne:n}=this.actions;this.dispatch(i(e.uuid));try{return await this.enqueueRequest({description:y(l.DELETE,this.name,!1),method:l.DELETE,url:`${this.url}/${e.uuid}/`,blockers:[e.domain],blocks:[]})}catch(a){throw this.dispatch(n(e)),a}}async refreshStore(e,i){const{initialize:n}=this.actions,a=await this.list({queryParams:{organization:e}},i);return this.dispatch(n(a)),a}}class CM extends yt{async getVerificationCode(e){return this.enqueueRequest({description:"Get verification code",method:l.GET,url:`/verification/email-verification/${e}/`,isAuthNeeded:!1,blockers:[],blocks:[]})}validateVerificationCode(e,i=void 0){return this.enqueueRequest({description:"Validate verification code",method:l.POST,url:`/verification/email-verification/${e}/`,isAuthNeeded:!1,payload:i,blockers:[],blocks:[]})}}const jt={},fa=new Set,Sa=new Set;class $M extends yt{host=void 0;dbPromise=Lb.openDB("fileCache",2,{upgrade(e,i){i<1&&e.createObjectStore("files"),i<2&&e.createObjectStore("presignedUrls")}});async getDB(){return await this.dbPromise}async cacheFile(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 i=await Ut(e);if(fa.has(i))return;const n=await this.getDB();!!await n.get("files",i)?console.warn(`Attempting to add a file already cached, ${e.name}`):await n.put("files",e,i),fa.add(i)}async uncacheFile(e){await(await this.getDB()).delete("files",e),fa.delete(e)}async getFileFromCache(e){return(await this.getDB()).get("files",e)}async fetchFileFromUrl(e,i,n=i,a){const c=e.split("?")[0]??e,d=await this.getFileFromCache(i);if(d)return d;let r;c in jt?r=jt[c]:Ca(e)?(r=qa(e,n),jt[c]=r):(r=this.performRequest({method:l.GET,url:e,isExternalUrl:!0,isResponseBlob:!0,isAuthNeeded:!1},a).then(f=>new File([f],n,{type:f.type})),jt[c]=r);let h;try{h=await r}catch(f){throw f instanceof q&&delete jt[c],f}const o=await Ut(h);if(o!==i){const f=`The hash of the file returned from the server (${o}) does not match the
8
+ expected hash (${i}). 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(S)}return await this.cacheFile(p),p}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}`,"s3-presigned-upload"],blocks:[e,"s3-presigned-upload"],s3url:n})}processPresignedUrls(e){const n={};for(const[a,r]of Object.entries(e))n[a]=this.processPresignedUrl(a,r);return n}async getFilePayload(e){const a={sha1:await kt(e),file_type:e.type,extension:La(e),size:e.size};return await this.client.files.cacheFile(e),a}async cachePresignedUrl(e,n){if(Fa.has(e))return;const a=await this.getDB();!!await a.get("presignedUrls",e)?console.warn(`Attempting to add a presigned url already cached, ${n}`):await a.put("presignedUrls",n,e),Fa.add(e)}async uncachePresignedUrl(e){await(await this.getDB()).delete("presignedUrls",e),Fa.delete(e)}async getPresignedUrlFromCache(e){const n=await(await this.getDB()).get("presignedUrls",e);if(!n)return;if(Ya(n)){await this.uncachePresignedUrl(e);return}return n}}class rR extends v{constructor(){super(...arguments);h(this,"name","Form Identifier");h(this,"url","/form-identifiers");h(this,"actions",{addOne:il,addMany:nl,setOne:al,setMany:cl,updateOne:rl,updateMany:dl,deleteOne:ul,deleteMany:ll,initialize:sl});h(this,"selectors",{selectById:hl,selectByIds:ml})}add(e){const{addOne:n,updateOne:a,deleteOne:r}=this.actions,c=this.select(m=>{var S;return((S=m.userReducer.currentUser)==null?void 0:S.id)??null}),u=new Date().toISOString(),d=P({...e,created_by:c,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:R(d),blockers:[d.form],blocks:[d.uuid]});return p.then(m=>{this.dispatch(a(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}update(e){const{updateOne:n}=this.actions,{selectById:a}=this.selectors,r=this.select(a(e.uuid));if(!r)throw new Error(`Expected form identifier with uuid ${e.uuid} to exist`);const c={...r,...e};this.dispatch(n(c));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))}),[c,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:r}=this.selectors,c=this.select(r(e));if(!c)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(a(c)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,r=await this.list({queryParams:{form__organization:e}},n);return this.dispatch(a(r)),r}}class dR extends v{constructor(){super(...arguments);h(this,"name","Form Identifier Value");h(this,"url","/form-identifier-values");h(this,"actions",{addOne:fl,addMany:Al,setOne:Il,setMany:Tl,updateOne:Ol,updateMany:Pl,deleteOne:Fl,deleteMany:bl,initialize:Sl});h(this,"selectors",{selectById:gl,selectByIds:Ml})}add(e){const{addOne:n,updateOne:a,deleteOne:r}=this.actions,c=this.select(m=>{var S;return((S=m.userReducer.currentUser)==null?void 0:S.id)??null}),u=new Date().toISOString(),d=P({...e,created_by:c,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:R(d),blockers:[e.form_submission,e.form_identifier],blocks:[d.uuid]});return p.then(m=>{this.dispatch(a(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:r}=this.selectors,c=this.select(r(e));if(!c)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(a(c)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,c=(await Promise.all([this.listPaginated({queryParams:{latest:!0,form_submission__organization:e}},n),this.listPaginated({queryParams:{latest:!0,form_submission__project__organization:e}},n)])).flatMap(u=>u.flat());return this.dispatch(a(c)),c}}class uR extends j{constructor(){super(...arguments);h(this,"name","Form Revision Attachment");h(this,"url","/form-revision-attachments");h(this,"actions",{addOne:El,addMany:Vl,setOne:Bl,setMany:zl,updateOne:Dl,updateMany:jl,deleteOne:Cl,deleteMany:ql,initialize:vl});h(this,"selectors",{selectById:Ul,selectByIds:Ll})}getId(e){return e.uuid}getBlockers(e){return[e.form_revision]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var c;return((c=r.userReducer.currentUser)==null?void 0:c.id)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){const{uuid:n,field_identifier:a,form_revision:r,file_sha1:c,file_name:u,file_extension:d}=e;return{uuid:n,submitted_at:e.submitted_at,field_identifier:a,form_revision:r,file_sha1:c,file_name:u,file_extension:d}}buildBulkPayload(e){const{uuid:n,field_identifier:a,form_revision:r,file_sha1:c,file_name:u,file_extension:d}=e;return{uuid:n,field_identifier:a,form_revision:r,file_sha1:c,file_name:u,file_extension:d}}async refreshStore(e,n){const{initialize:a}=this.actions,r=await this.list({queryParams:{form_revision__form__organization:e}},n);return this.dispatch(a(r)),r}}class lR extends v{constructor(){super(...arguments);h(this,"name","Form Revision");h(this,"url","/form-revisions");h(this,"actions",{addOne:Hl,addMany:ci,setOne:Wl,setMany:Kl,updateOne:Yl,updateMany:Zl,deleteOne:Jl,deleteMany:ri,initialize:Gl});h(this,"selectors",{selectById:Ql,selectByIds:xl})}add(e){const{addOne:n,updateOne:a,deleteOne:r}=this.actions,c=this.select(m=>{var S;return((S=m.userReducer.currentUser)==null?void 0:S.id)??null}),u=new Date().toISOString(),d=P({...e,created_by:c,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:R(d),blockers:[e.form],blocks:[d.uuid]});return p.then(m=>{this.dispatch(a(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}async refreshStore(e,n){const{initialize:a}=this.actions,r=await this.list({queryParams:{form__organization:e}},n);return this.dispatch(a(r)),r}}class oR extends v{constructor(){super(...arguments);h(this,"name","Form");h(this,"url","/forms");h(this,"actions",{addOne:Ao,addMany:Io,setOne:To,setMany:Oo,updateOne:Po,updateMany:Fo,deleteOne:bo,deleteMany:_o,initialize:fo});h(this,"selectors",{selectById:Ro,selectByIds:wo})}add(e){const{addOne:n,updateOne:a,deleteOne:r}=this.actions,c=new Date().toISOString(),u=this.select(m=>{var S;return((S=m.userReducer.currentUser)==null?void 0:S.id)??null}),d=P({...e,submitted_at:c,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:R(d),blockers:[],blocks:[d.uuid]});return p.then(m=>{this.dispatch(a(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}update(e){const{updateOne:n}=this.actions,{selectById:a}=this.selectors,r=this.select(a(e.uuid));if(!r)throw new Error(`Expected form with uuid ${e.uuid} to exist`);const c={...r,...e};this.dispatch(n(c));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))}),[c,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:r}=this.selectors,c=this.select(r(e));if(!c)throw new Error("Expected form to exist");const u=this.select(bh(e)),d=this.select(eo(e)),p=this.select(po(e));this.dispatch(n(e)),this.dispatch(St(w(u))),this.dispatch(ri(w(d))),this.dispatch(li(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(a(c)),this.dispatch(ci(d)),this.dispatch(yt(u)),this.dispatch(ui(p)),m}}async refreshStore(e,n){const{initialize:a}=this.actions,r=await this.list({queryParams:{organization:e}},n);return this.dispatch(a(r)),r}}class hR extends v{constructor(){super(...arguments);h(this,"name","Form Subscriber");h(this,"url","/form-subscribers");h(this,"actions",{addOne:no,addMany:ui,setOne:ao,setMany:co,updateOne:ro,updateMany:uo,deleteOne:lo,deleteMany:li,initialize:io});h(this,"selectors",{selectById:ho,selectByIds:mo})}add(e){const{addOne:n,updateOne:a,deleteOne:r}=this.actions,c=new Date().toISOString(),u=this.select(m=>{var S;return((S=m.userReducer.currentUser)==null?void 0:S.id)??null}),d=P({...e,created_by:u,submitted_at:c});this.dispatch(n(d));const p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:R(d),blockers:[d.form],blocks:[d.uuid]});return p.then(m=>{this.dispatch(a(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:r}=this.selectors,c=this.select(r(e));if(!c)throw new Error(`Expected form subscriber 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(a(c)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,r=await this.list({queryParams:{form__organization:e}},n);return this.dispatch(a(r)),r}}class mR extends j{constructor(){super(...arguments);h(this,"name","Form Submission Field Values Attachment");h(this,"url","/form-submission-field-values-attachments");h(this,"actions",{addOne:Vo,addMany:pi,setOne:Bo,setMany:zo,updateOne:Do,updateMany:jo,deleteOne:Co,deleteMany:yi,initialize:Eo});h(this,"selectors",{selectById:qo,selectByIds:Ai})}getId(e){return e.uuid}getBlockers(e){return[e.field_values]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var c;return((c=r.userReducer.currentUser)==null?void 0:c.id)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){const{uuid:n,field_identifier:a,field_values:r,file_sha1:c,file_name:u,file_extension:d}=e;return{uuid:n,submitted_at:e.submitted_at,field_identifier:a,field_values:r,file_sha1:c,file_name:u,file_extension:d}}buildBulkPayload(e){const{uuid:n,field_identifier:a,field_values:r,file_sha1:c,file_name:u,file_extension:d}=e;return{uuid:n,field_identifier:a,field_values:r,file_sha1:c,file_name:u,file_extension:d}}async bulkDelete(e){const{deleteMany:n,addMany:a}=this.actions,r=this.select(Ai(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(c){throw this.dispatch(a(r)),c}}async refreshStore(e,n){const{initialize:a}=this.actions,c=(await Promise.all([this.listPaginated({queryParams:{latest:!0,field_values__form_submission__organization:e}},n),this.listPaginated({queryParams:{latest:!0,field_values__form_submission__project__organization:e}},n)])).flatMap(u=>u.flat());return this.dispatch(a(c)),c}}class pR extends v{constructor(){super(...arguments);h(this,"name","Form Submission Field Values");h(this,"url","/form-submission-field-values");h(this,"actions",{addOne:No,addMany:Ti,setOne:Go,setMany:Ho,updateOne:Wo,updateMany:Ko,deleteOne:Yo,deleteMany:Oi,initialize:ko});h(this,"selectors",{selectById:Jo,selectByIds:Xo})}add(e){const{addOne:n,updateOne:a,deleteOne:r}=this.actions,c=this.select(m=>{var S;return((S=m.userReducer.currentUser)==null?void 0:S.id)??null}),u=new Date().toISOString(),d=P({...e,created_by:c,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:R(d),blockers:[d.form_submission],blocks:[d.uuid]});return p.then(m=>{this.dispatch(a(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}async refreshStore(e,n){const{initialize:a}=this.actions,c=(await Promise.all([this.listPaginated({queryParams:{latest:!0,form_submission__organization:e}},n),this.listPaginated({queryParams:{latest:!0,form_submission__project__organization:e}},n)])).flatMap(u=>u.flat());return this.dispatch(a(c)),c}}class yR extends v{constructor(){super(...arguments);h(this,"name","Form Submission Comment");h(this,"url","/form-submission-comments");h(this,"actions",{addOne:sh,addMany:bi,setOne:ih,setMany:nh,updateOne:ah,updateMany:ch,deleteOne:rh,deleteMany:_i,initialize:th});h(this,"selectors",{selectById:uh,selectByIds:lh})}add(e){const{addOne:n,updateOne:a,deleteOne:r}=this.actions,c=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(c));const u=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:R(c),blockers:[c.form_submission],blocks:[c.uuid]});return u.then(d=>{this.dispatch(a(d))}).catch(()=>{this.dispatch(r(c.uuid))}),[c,u]}update(e){const{updateOne:n}=this.actions,{selectById:a}=this.selectors,r=this.select(a(e.uuid));if(!r)throw new Error(`Form submission comment with uuid ${e.uuid} not found in store`);const c={...r,...e};this.dispatch(n(c));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))}),[c,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:r}=this.selectors,c=this.select(r(e));if(!c)throw new Error(`Form submission 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(a(c)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,c=(await Promise.all([this.listPaginated({queryParams:{form_submission__organization:e}},n),this.listPaginated({queryParams:{form_submission__project__organization:e}},n)])).flatMap(u=>u.flat());return this.dispatch(a(c)),c}}class SR extends v{constructor(){super(...arguments);h(this,"name","Form Submission");h(this,"url","/form-submissions");h(this,"actions",{addOne:fh,addMany:yt,setOne:yh,setMany:Sh,updateOne:Ah,updateMany:Ih,deleteOne:Th,deleteMany:St,initialize:ph});h(this,"selectors",{selectById:Ph,selectByIds:Fh})}add(e){const{addOne:n,updateOne:a,deleteOne:r}=this.actions,c=this.select(m=>{var S;return((S=m.userReducer.currentUser)==null?void 0:S.id)??null}),u=new Date().toISOString(),d=P({...e,created_by:c,submitted_at:u}),p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:R(d),blockers:[e.form_revision],blocks:[d.uuid]});return this.dispatch(n(d)),p.then(m=>{this.dispatch(a(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}update(e){const{updateOne:n}=this.actions,{selectById:a}=this.selectors,r=this.select(a(e.uuid));if(!r)throw new Error(`Expected submission with uuid ${e.uuid} to exist`);const c={...r,...e};this.dispatch(n(c));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${c.uuid}/`,payload:e,blockers:[c.uuid],blocks:[c.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[c,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:r}=this.selectors,c=this.select(r(e));if(!c)throw new Error(`Expected submission with uuid ${e} to exist`);const u=this.select(Qo(e)),d=u.flatMap(({uuid:m})=>this.select($o(m))),p=this.select(oh(e));this.dispatch(n(e)),this.dispatch(Oi(w(u))),this.dispatch(yi(w(d))),this.dispatch(_i(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(a(c)),this.dispatch(Ti(u)),this.dispatch(pi(d)),this.dispatch(bi(p)),m}}async refreshStore(e,n){const{initialize:a}=this.actions,c=(await Promise.all([this.listPaginated({queryParams:{organization:e}},n),this.listPaginated({queryParams:{project__organization:e}},n)])).flatMap(u=>u.flat());return this.dispatch(a(c)),c}}class fR extends j{constructor(){super(...arguments);h(this,"name","Geo Image");h(this,"url","/geo-images");h(this,"actions",{addOne:zh,addMany:Dh,setOne:Vh,setMany:Bh,updateOne:jh,updateMany:Ch,deleteOne:qh,deleteMany:$h,initialize:Eh});h(this,"selectors",{selectById:Lh,selectByIds:kh})}getId(e){return e.uuid}getBlockers(e){return[e.project]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var c;return((c=r.userReducer.currentUser)==null?void 0:c.id)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){return{uuid:e.uuid,submitted_at:e.submitted_at,file_sha1:e.file_sha1,file_name:e.file_name,file_extension:e.file_extension,title:e.title,description:e.description,geo_marker:e.geo_marker,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,direction:e.direction,original_date:e.original_date,project:e.project}}update(e){const{updateOne:n}=this.actions,{selectById:a}=this.selectors,r=this.select(a(e.uuid));if(!r)throw new Error(`Geo image with uuid ${e.uuid} does not exist in the store`);const c={...r,...e};this.dispatch(n(c));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))}),[c,u]}async refreshStore(e,n){const{initialize:a}=this.actions,r=await this.list({queryParams:{project:e}},n);return this.dispatch(a(r)),r}}class AR extends v{constructor(){super(...arguments);h(this,"name","Issue Association");h(this,"url","/issue-associations");h(this,"actions",{addOne:Jh,addMany:bt,setOne:Kh,setMany:Wh,updateOne:Yh,updateMany:Zh,deleteOne:Xh,deleteMany:_t,initialize:Hh});h(this,"selectors",{selectById:xh,selectByIds:em})}add(e){const{addOne:n,updateOne:a,deleteOne:r}=this.actions,c=new Date().toISOString(),u=this.select(m=>{var S;return((S=m.userReducer.currentUser)==null?void 0:S.id)??null}),d=P({...e,submitted_at:c,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:R(d),blockers:[e.issue,e.asset],blocks:[d.uuid]});return p.then(m=>{this.dispatch(a(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}bulkAdd(e){const{addMany:n,deleteMany:a,updateMany:r}=this.actions,c=this.select(m=>{var S;return((S=m.userReducer.currentUser)==null?void 0:S.id)??null}),u=new Date().toISOString(),d=e.map(m=>P({...m,submitted_at:u,created_by:c}));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=>R(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(a(w(d)))}),[d,p]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:r}=this.selectors,c=this.select(r(e));if(!c)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(a(c)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,c=(await this.listPaginated({queryParams:{issue__project:e}},n)).flat();return this.dispatch(a(c)),c}}class IR extends j{constructor(){super(...arguments);h(this,"name","Issue Attachment");h(this,"url","/issue-attachments");h(this,"actions",{addOne:dm,addMany:Ei,setOne:um,setMany:lm,updateOne:om,updateMany:hm,deleteOne:mm,deleteMany:Vi,initialize:rm});h(this,"selectors",{selectById:Sm,selectByIds:fm})}getId(e){return e.uuid}getBlockers(e){return[e.issue]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var c;return((c=r.userReducer.currentUser)==null?void 0:c.id)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){return{uuid:e.uuid,submitted_at:e.submitted_at,file_name:e.file_name,file_sha1:e.file_sha1,file_extension:e.file_extension,issue:e.issue}}buildBulkPayload(e){return{uuid:e.uuid,file_name:e.file_name,file_sha1:e.file_sha1,file_extension:e.file_extension,issue:e.issue}}async refreshStore(e,n){const{initialize:a}=this.actions,c=(await this.listPaginated({queryParams:{issue__project:e}},n)).flat();return this.dispatch(a(c)),c}}class TR extends j{constructor(){super(...arguments);h(this,"name","Issue Comment Attachment");h(this,"url","/issue-comment-attachments");h(this,"actions",{addOne:Om,addMany:Pm,setOne:Fm,setMany:bm,updateOne:_m,updateMany:gm,deleteOne:Mm,deleteMany:Rm,initialize:Tm});h(this,"selectors",{selectById:vm,selectByIds:Em})}getId(e){return e.uuid}getBlockers(e){return[e.issue_comment]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var c;return((c=r.userReducer.currentUser)==null?void 0:c.id)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){return{uuid:e.uuid,submitted_at:e.submitted_at,file_name:e.file_name,file_sha1:e.file_sha1,file_extension:e.file_extension,issue_comment:e.issue_comment}}buildBulkPayload(e){return{uuid:e.uuid,file_name:e.file_name,file_sha1:e.file_sha1,file_extension:e.file_extension,issue_comment:e.issue_comment}}async refreshStore(e,n){const{initialize:a}=this.actions,c=(await this.listPaginated({queryParams:{issue_comment__issue__project:e}},n)).flat();return this.dispatch(a(c)),c}}class OR extends v{constructor(){super(...arguments);h(this,"name","Issue Comment");h(this,"url","/issue-comments");h(this,"actions",{addOne:Dm,addMany:jm,setOne:Cm,setMany:qm,updateOne:$m,updateMany:Um,deleteOne:Lm,deleteMany:km,initialize:zm});h(this,"selectors",{selectById:Nm,selectByIds:Gm})}add(e){const{addOne:n,updateOne:a,deleteOne:r}=this.actions,c=P({...e,created_by:this.select(d=>d.userReducer.currentUser.id),submitted_at:new Date().toISOString()});this.dispatch(n(c));const u=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:R(c),blockers:[e.issue],blocks:[c.uuid]});return u.then(d=>{this.dispatch(a(d))}).catch(()=>{this.dispatch(r(c.uuid))}),[c,u]}update(e){const{updateOne:n}=this.actions,{selectById:a}=this.selectors,r=this.select(a(e.uuid));if(!r)throw new Error(`Comment with uuid ${e.uuid} not found in store`);const c={...r,...e};this.dispatch(n(c));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))}),[c,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:r}=this.selectors,c=this.select(r(e));if(!c)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(a(c)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,c=(await this.listPaginated({queryParams:{issue__project:e}},n)).flat();return this.dispatch(a(c)),c}}class PR extends v{constructor(){super(...arguments);h(this,"name","Issue");h(this,"url","/issues");h(this,"actions",{addOne:Ym,addMany:$i,setOne:Zm,setMany:Jm,updateOne:Xm,updateMany:Qm,deleteOne:xm,deleteMany:Ui,initialize:Km});h(this,"selectors",{selectById:tp,selectByIds:sp})}add(e){const{addOne:n,updateOne:a,deleteOne:r}=this.actions,c=new Date().toISOString(),u=this.select(m=>{var S;return((S=m.userReducer.currentUser)==null?void 0:S.id)??null}),d=P({...e,submitted_at:c,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:R(d),blockers:[d.project,d.issue_type,d.status,d.priority],blocks:[d.uuid]});return p.then(m=>{this.dispatch(a(m))}).catch(m=>{throw this.dispatch(r(d.uuid)),m}),[d,p]}update(e){const{updateOne:n}=this.actions,{selectById:a}=this.selectors,r=this.select(a(e.uuid));if(!r)throw new Error(`Attempting to update an issue with uuid ${e.uuid} that doesn't exist in the store`);const c={...r,...e};this.dispatch(n(c));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 S=e[m],T=this.select(sn(S));if(!T)throw new Error(`Trying to update issue type priority with ${S} which does not exist in store`);u[m]={name:T.name,color:T.color,uuid:T.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 S=e[m],T=this.select(dn(S));if(!T)throw new Error(`Trying to update issue type status with ${S} which does not exist in store`);u[m]={name:T.name,color:T.color,uuid:T.uuid};break}case $.ASSIGNED_TO:{const S=e[m];if(S===null)u[m]=null;else{const T=this.select(cs(S));if(!T)throw new Error(`Trying to update assigned to with ${S} which does not exist in store.`);u[m]={full_name:T.username,id:T.id}}break}}const d=P({created_by:this.select(m=>{var S;return((S=m.userReducer.currentUser)==null?void 0:S.id)??null}),submitted_at:new Date().toISOString(),issue:r.uuid,changes:u});this.dispatch(ln(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(hn(d.uuid))}),[c,p]}bulkUpdate(e,n){const{updateMany:a}=this.actions,{selectByIds:r}=this.selectors,c=w(e);if(new Set(c).size!==e.length)throw new Error("payloads contains duplicate uuids.");const u=this.select(r(c));if(c.length!=u.length)throw new Error(`Attempting to bulk update ${c.length-u.length} issues that dont exist in the store`);const d=u.toSorted(mt),p=e.toSorted(mt),m=[];for(let I=0;I<c.length;I++)m.push({...d[I],...p[I]});this.dispatch(a(m));const S=W(e,Math.min(n??e.length,H)),T=[];let _=null;for(const I of S){const M=ht.v4(),g=w(I),E=I.map(({status:z})=>z).filter(Boolean),V=I.map(({priority:z})=>z).filter(Boolean),D=this.enqueueRequest({description:A(o.PATCH,this.name,!0),method:o.PATCH,url:`${this.url}/bulk/`,payload:{payloads:I},blockers:(_?[_]:[]).concat(g).concat(E).concat(V),blocks:[M].concat(g)});T.push(D),_=M}return Promise.all(T).then(I=>{this.dispatch(a(I.flat()))}).catch(()=>{this.dispatch(a(u))}),[m,T]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:r}=this.selectors,c=this.select(r(e));if(!c)throw new Error(`No issue with uuid ${e} found in the store`);const u=this.select(sm(e)),d=this.select(ym(e)),p=this.select(kS(e)),m=this.select(_h(e));this.dispatch(n(e)),this.dispatch(Vi(w(d))),this.dispatch(mn(w(p))),this.dispatch(_t(w(u))),this.dispatch(St(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(S){throw this.dispatch(a(c)),this.dispatch(Ei(d)),this.dispatch(on(p)),this.dispatch(bt(u)),this.dispatch(yt(m)),S}}async bulkDelete(e){const{addMany:n,deleteMany:a}=this.actions,{selectByIds:r}=this.selectors,c=this.select(r(e)),u=this.select(tm(e)),d=this.select(gh(e));this.dispatch(a(e)),this.dispatch(_t(w(u))),this.dispatch(St(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(c)),this.dispatch(bt(u)),this.dispatch(yt(d)),p}}async refreshStore(e,n){const{initialize:a}=this.actions,c=(await this.listPaginated({queryParams:{project:e}},n)).flat();return this.dispatch(a(c)),c}}class FR extends j{constructor(){super(...arguments);h(this,"name","Issue Type Attachment");h(this,"url","/issue-type-attachments");h(this,"actions",{addOne:rp,addMany:dp,setOne:up,setMany:lp,updateOne:op,updateMany:hp,deleteOne:mp,deleteMany:pp,initialize:cp});h(this,"selectors",{selectById:Sp,selectByIds:fp})}getId(e){return e.uuid}getBlockers(e){return[e.issue_type]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var c;return((c=r.userReducer.currentUser)==null?void 0:c.id)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){return{uuid:e.uuid,submitted_at:e.submitted_at,file_name:e.file_name,file_sha1:e.file_sha1,file_extension:e.file_extension,issue_type:e.issue_type}}buildBulkPayload(e){return{uuid:e.uuid,file_name:e.file_name,file_sha1:e.file_sha1,file_extension:e.file_extension,issue_type:e.issue_type}}async refreshStore(e,n){const{initialize:a}=this.actions,r=await this.list({queryParams:{issue_type__organization:e}},n);return this.dispatch(a(r)),r}}class bR extends j{constructor(){super(...arguments);h(this,"name","Issue Type Fields Attachment");h(this,"url","/issue-type-fields-attachments");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})}getId(e){return e.uuid}getBlockers(e){return[e.fields_revision]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var c;return((c=r.userReducer.currentUser)==null?void 0:c.id)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){const{uuid:n,field_identifier:a,fields_revision:r,file_sha1:c,file_name:u,file_extension:d}=e;return{uuid:n,submitted_at:e.submitted_at,field_identifier:a,fields_revision:r,file_sha1:c,file_name:u,file_extension:d}}buildBulkPayload(e){const{uuid:n,field_identifier:a,fields_revision:r,file_sha1:c,file_name:u,file_extension:d}=e;return{uuid:n,field_identifier:a,fields_revision:r,file_sha1:c,file_name:u,file_extension:d}}async refreshStore(e,n){const{initialize:a}=this.actions,r=await this.list({queryParams:{fields_revision__issue_type__organization:e}},n);return this.dispatch(a(r)),r}}class _R extends v{constructor(){super(...arguments);h(this,"name","Issue Type Fields");h(this,"url","/issue-type-fields");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:ny,selectByIds:ay})}add(e){const{addOne:n,updateOne:a,deleteOne:r}=this.actions,c=this.select(m=>{var S;return((S=m.userReducer.currentUser)==null?void 0:S.id)??null}),u=new Date().toISOString(),d=P({...e,created_by:c,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:R(d),blockers:[d.issue_type],blocks:[d.uuid]});return p.then(m=>{this.dispatch(a(m))}).catch(m=>{throw this.dispatch(r(d.uuid)),m}),[d,p]}async refreshStore(e,n){const{initialize:a}=this.actions,r=await this.list({queryParams:{issue_type__organization:e}},n);return this.dispatch(a(r)),r}}class gR 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:uy,addMany:Yi,setOne:ly,setMany:oy,updateOne:hy,updateMany:my,deleteOne:py,deleteMany:Zi,initialize:dy});h(this,"selectors",{selectById:Sy,selectByIds:fy})}getId(e){return e.uuid}getBlockers(e){return[e.field_values]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var c;return((c=r.userReducer.currentUser)==null?void 0:c.id)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){const{uuid:n,field_identifier:a,field_values:r,file_sha1:c,file_name:u,file_extension:d}=e;return{uuid:n,submitted_at:e.submitted_at,field_identifier:a,field_values:r,file_sha1:c,file_name:u,file_extension:d}}buildBulkPayload(e){const{uuid:n,field_identifier:a,field_values:r,file_sha1:c,file_name:u,file_extension:d}=e;return{uuid:n,field_identifier:a,field_values:r,file_sha1:c,file_name:u,file_extension:d}}async bulkDelete(e){const{deleteMany:n,addMany:a}=this.actions,{selectByIds:r}=this.selectors,c=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(a(c)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,c=(await this.listPaginated({queryParams:{field_values__issue__project:e,latest:!0}},n)).flat();return this.dispatch(a(c)),c}}class MR extends v{constructor(){super(...arguments);h(this,"name","Issue Type Field Values");h(this,"url","/issue-type-field-values");h(this,"actions",{addOne:Dp,addMany:jp,setOne:Cp,setMany:qp,updateOne:$p,updateMany:Up,deleteOne:Lp,deleteMany:kp,initialize:zp});h(this,"selectors",{selectById:Gp,selectByIds:Hp})}add(e){const{addOne:n,updateOne:a,deleteOne:r}=this.actions,c=this.select(m=>{var S;return((S=m.userReducer.currentUser)==null?void 0:S.id)??null}),u=new Date().toISOString(),d=P({...e,created_by:c,submitted_at:u}),p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:R(d),blockers:[e.issue,e.fields_revision],blocks:[d.uuid]});return this.dispatch(n(d)),p.then(m=>{this.dispatch(a(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}update(e){const{updateOne:n}=this.actions,{selectById:a}=this.selectors,r=this.select(a(e.uuid));if(!r)throw new Error(`Expected IssueTypeFieldValues with uuid ${e.uuid} to exist`);const c={...r,...e};this.dispatch(n(c));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[c.uuid,c.fields_revision,c.issue],blocks:[c.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[c,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:r}=this.selectors,c=this.select(r(e));if(!c)throw new Error(`Expected submission with uuid ${e} to exist`);const u=this.select(Ay(e));this.dispatch(n(e)),this.dispatch(Zi(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(a(c)),this.dispatch(Yi(u)),d}}async refreshStore(e,n){const{initialize:a}=this.actions,c=(await this.listPaginated({queryParams:{issue__project:e,latest:!0}},n)).flat();return this.dispatch(a(c)),c}}class RR extends v{constructor(){super(...arguments);h(this,"name","Issue Type Identifier");h(this,"url","/issue-type-identifiers");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:Ey,selectByIds:Vy})}add(e){const{addOne:n,updateOne:a,deleteOne:r}=this.actions,c=this.select(m=>{var S;return((S=m.userReducer.currentUser)==null?void 0:S.id)??null}),u=new Date().toISOString(),d=P({...e,created_by:c,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:R(d),blockers:[d.issue_type],blocks:[d.uuid]});return p.then(m=>{this.dispatch(a(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}update(e){const{updateOne:n}=this.actions,{selectById:a}=this.selectors,r=this.select(a(e.uuid));if(!r)throw new Error(`Expected issue type identifier with uuid ${e.uuid} to exist`);const c={...r,...e};this.dispatch(n(c));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))}),[c,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:r}=this.selectors,c=this.select(r(e));if(!c)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(a(c)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,r=await this.list({queryParams:{issue_type__organization:e}},n);return this.dispatch(a(r)),r}}class wR extends v{constructor(){super(...arguments);h(this,"name","Issue Type Identifier Value");h(this,"url","/issue-type-identifier-values");h(this,"actions",{addOne:jy,addMany:Cy,setOne:qy,setMany:$y,updateOne:Uy,updateMany:Ly,deleteOne:ky,deleteMany:Ny,initialize:Dy});h(this,"selectors",{selectById:Hy,selectByIds:Wy})}add(e){const{addOne:n,updateOne:a,deleteOne:r}=this.actions,c=this.select(m=>{var S;return((S=m.userReducer.currentUser)==null?void 0:S.id)??null}),u=new Date().toISOString(),d=P({...e,created_by:c,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:R(d),blockers:[e.issue,e.issue_type_identifier],blocks:[d.uuid]});return p.then(m=>{this.dispatch(a(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:r}=this.selectors,c=this.select(r(e));if(!c)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(a(c)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,c=(await this.listPaginated({queryParams:{issue__project:e,latest:!0}},n)).flat();return this.dispatch(a(c)),c}}class vR extends v{constructor(){super(...arguments);h(this,"name","Issue Type Priority");h(this,"url","/issue-type-priorities");h(this,"actions",{addOne:Jy,addMany:Xy,setOne:Qy,setMany:xy,updateOne:eS,updateMany:tS,deleteOne:sS,deleteMany:iS,initialize:Zy});h(this,"selectors",{selectById:sn,selectByIds:aS})}add(e){const{addOne:n,updateOne:a,deleteOne:r}=this.actions,c=this.select(m=>{var S;return((S=m.userReducer.currentUser)==null?void 0:S.id)??null}),u=new Date().toISOString(),d=P({...e,created_by:c,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:R(d),blockers:[e.issue_type],blocks:[d.uuid]});return p.then(m=>{this.dispatch(a(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}update(e){const{updateOne:n}=this.actions,{selectById:a}=this.selectors,r=this.select(a(e.uuid));if(!r)throw new Error(`Expected an existing issue type priority with uuid ${e.uuid}`);const c={...r,...e};this.dispatch(n(c));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))}),[c,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:r}=this.selectors,c=this.select(r(e));if(!c)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(a(c)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,r=await this.list({queryParams:{issue_type__organization:e}},n);return this.dispatch(a(r)),r}}class ER extends v{constructor(){super(...arguments);h(this,"name","Issue Type");h(this,"url","/issue-types");h(this,"actions",{addOne:uS,addMany:lS,setOne:oS,setMany:hS,updateOne:mS,updateMany:pS,deleteOne:yS,deleteMany:SS,initialize:dS});h(this,"selectors",{selectById:AS,selectByIds:IS})}add(e){const{addOne:n,updateOne:a,deleteOne:r}=this.actions,c=this.select(m=>{var S;return((S=m.userReducer.currentUser)==null?void 0:S.id)??null}),u=new Date().toISOString(),d=P({...e,submitted_at:u,created_by:c});this.dispatch(n(d));const p=this.enqueueRequest({method:o.POST,url:`${this.url}/`,payload:R(d),blockers:[],blocks:[d.uuid]});return p.then(m=>{this.dispatch(a(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}update(e){const{updateOne:n}=this.actions,{selectById:a}=this.selectors,r=this.select(a(e.uuid));if(!r)throw new Error(`IssueType with uuid ${e.uuid} does not exist in the store.`);const c={...r,...e};this.dispatch(n(c));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))}),[c,u]}async delete(e){const{addOne:n,deleteOne:a}=this.actions,{selectById:r}=this.selectors,c=this.select(r(e));if(!c)throw new Error(`IssueType with uuid ${e} does not exist in the store.`);const u=this.select(ip(e));this.dispatch(a(e)),this.dispatch(Ui(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(n(c)),this.dispatch($i(u)),d}}async refreshStore(e,n){const{initialize:a}=this.actions,r=await this.list({queryParams:{organization:e}},n);return this.dispatch(a(r)),r}}class VR extends v{constructor(){super(...arguments);h(this,"name","Issue Type Status");h(this,"url","/issue-type-statuses");h(this,"actions",{addOne:FS,addMany:bS,setOne:_S,setMany:gS,updateOne:MS,updateMany:RS,deleteOne:wS,deleteMany:vS,initialize:PS});h(this,"selectors",{selectById:dn,selectByIds:VS})}add(e){const{addOne:n,updateOne:a,deleteOne:r}=this.actions,c=this.select(m=>{var S;return((S=m.userReducer.currentUser)==null?void 0:S.id)??null}),u=new Date().toISOString(),d=P({...e,created_by:c,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:R(d),blockers:[e.issue_type],blocks:[d.uuid]});return p.then(m=>{this.dispatch(a(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}update(e){const{updateOne:n}=this.actions,{selectById:a}=this.selectors,r=this.select(a(e.uuid));if(!r)throw new Error(`Expected an existing issue type status with uuid ${e.uuid}`);const c={...r,...e};this.dispatch(n(c));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))}),[c,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:r}=this.selectors,c=this.select(r(e));if(!c)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(a(c)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,r=await this.list({queryParams:{issue_type__organization:e}},n);return this.dispatch(a(r)),r}}class BR extends v{constructor(){super(...arguments);h(this,"name","Issue Update");h(this,"url","/issue-updates");h(this,"actions",{addOne:ln,addMany:on,setOne:jS,setMany:CS,updateOne:qS,updateMany:$S,deleteOne:hn,deleteMany:mn,initialize:DS});h(this,"selectors",{selectById:US,selectByIds:LS})}async refreshStore(e,n){const{initialize:a}=this.actions,c=(await this.listPaginated({queryParams:{issue__project:e}},n)).flat();return this.dispatch(a(c)),c}}const zR=1800;function DR(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 jR extends Gb{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 a;try{a=await n}catch(r){console.error("Could not renew tokens; clearing auth",r),this.clearAuth();return}if(!a.access)throw new Error("Missing access token");return{accessToken:a.access,refreshToken:a.refresh??this.getRefreshToken()}})}clearAuth(){console.debug(this.constructor.name,"clearing auth;"),this.dispatch(ou(!1)),this.clearTokens(),this.dispatch(O()),this.dispatch(O())}async renewTokens(){const e=this.getRefreshToken();if(!e)throw new Error("No refresh token found");console.debug(this.constructor.name,"renewing tokens");try{const n=await this._getRenewedTokens(e);if(!n)return;console.debug("Got renewed tokens"),this.setTokens(n)}catch(n){throw console.error("Could not renew tokens; clearing auth",n),this.clearAuth(),n}}tokenIsExpiringSoon(){const e=this.getAccessToken();if(!e)return!1;const n=Date.now()/1e3;let a;try{a=d_(e).exp??n}catch{a=n}return a-n<zR}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??wt).toString()))}}}async handleUnauthorized(e,n){if(e.url.endsWith("/token/refresh/"))throw this.select(a=>a.authReducer.isLoggedIn)&&console.warn("No signed-in user to sign out."),this.clearAuth(),new U({message:"You have been signed out due to inactivity.",response:n,discard:!0});if(this.select(a=>a.authReducer.isLoggedIn))await this.renewTokens();else throw console.debug("Forbidden; user is not logged in."),new U({message:"Incorrect username or password.",response:n,discard:!0})}async initAuth(e){const n=ht.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(a=>{this.setTokens(DR(a))})}}class CR extends Ot{constructor(){super(...arguments);h(this,"name","Organization Access");h(this,"url","/organization-accesses");h(this,"actions",{addOne:nf,addMany:af,setOne:cf,setMany:rf,updateOne:df,updateMany:uf,deleteOne:lf,deleteMany:of,initialize:sf});h(this,"selectors",{selectById:mf,selectByIds:pf})}update(e){const{updateOne:n}=this.actions,{selectById:a}=this.selectors,r=this.select(a(e.uuid)),c={...r,...e};this.dispatch(n(c));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}),[c,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:r}=this.selectors,c=this.select(r(e)),u=this.select(cs(c.user));this.dispatch(n(c.uuid)),this.dispatch(An(c.user));try{return await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${c.uuid}/`,blockers:[c.uuid],blocks:[]})}catch(d){throw this.dispatch(a(c)),this.dispatch(fn(u)),d}}async refreshStore(e,n){const{initialize:a}=this.actions,r=await this.list({queryParams:{organization:e}},n);return this.dispatch(a(r)),r}}class qR extends Ot{constructor(){super(...arguments);h(this,"name","Organization");h(this,"url","/organizations");h(this,"actions",{addOne:Of,addMany:Tf,setOne:If,setMany:Af,updateOne:Ff,updateMany:Pf,deleteOne:bf,deleteMany:_f,initialize:ff});h(this,"selectors",{selectById:Rf,selectByIds:wf})}async add(e){const{addOne:n}=this.actions,a=await this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:e,blockers:[],blocks:[]});return this.dispatch(n(a)),a}async update(e){const{updateOne:n}=this.actions,a=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(a)),a}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,a=await this.list({},e);return this.dispatch(n(a)),a}}class $R extends v{constructor(){super(...arguments);h(this,"name","Project Access");h(this,"url","/project-accesses");h(this,"actions",{addOne:$f,addMany:Uf,setOne:Lf,setMany:kf,updateOne:Nf,updateMany:Gf,deleteOne:Hf,deleteMany:Wf,initialize:qf});h(this,"selectors",{selectById:Yf,selectByIds:Zf})}add(e){const{addOne:n,updateOne:a,deleteOne:r}=this.actions,c=P({...e,created_by:this.select(d=>{var p;return((p=d.userReducer.currentUser)==null?void 0:p.id)??null})});this.dispatch(n(c));const u=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:R(c),blockers:[c.organization_access,c.project],blocks:[c.uuid]});return u.then(d=>{this.dispatch(a(d))}).catch(d=>{throw this.dispatch(r(c.uuid)),d}),[c,u]}bulkAdd(e){const{addMany:n,deleteMany:a,updateMany:r}=this.actions,c=this.select(p=>{var m;return((m=p.userReducer.currentUser)==null?void 0:m.id)??null}),u=e.map(p=>P({...p,created_by:c}));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=>R(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(a(u.map(m=>m.uuid))),p}),[u,d]}update(e){const{updateOne:n}=this.actions,{selectById:a}=this.selectors,r=this.select(a(e.uuid)),c={...r,...e};this.dispatch(n(c));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}),[c,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:r}=this.selectors,c=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(a(c)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,r=await this.list({queryParams:{project__organization:e}},n);return this.dispatch(a(r)),r}}class UR extends j{constructor(){super(...arguments);h(this,"name","Project Attachment");h(this,"url","/project-attachments");h(this,"actions",{addOne:Qf,addMany:xf,setOne:eA,setMany:tA,updateOne:sA,updateMany:iA,deleteOne:nA,deleteMany:aA,initialize:Xf});h(this,"selectors",{selectById:rA,selectByIds:dA})}getId(e){return e.uuid}getBlockers(e){return[e.project]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var c;return((c=r.userReducer.currentUser)==null?void 0:c.id)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){return{uuid:e.uuid,submitted_at:e.submitted_at,file_name:e.file_name,file_sha1:e.file_sha1,file_extension:e.file_extension,project:e.project}}buildBulkPayload(e){return{uuid:e.uuid,file_name:e.file_name,file_sha1:e.file_sha1,file_extension:e.file_extension,project:e.project}}async refreshStore(e,n){const{initialize:a}=this.actions,r=await this.list({queryParams:{project__organization:e}},n);return this.dispatch(a(r)),r}}class LR extends v{constructor(){super(...arguments);h(this,"name","Project Comment");h(this,"url","/project-comments");h(this,"actions",{addOne:hA,addMany:mA,setOne:pA,setMany:yA,updateOne:SA,updateMany:fA,deleteOne:AA,deleteMany:IA,initialize:oA});h(this,"selectors",{selectById:OA,selectByIds:PA})}add(e){const{addOne:n,updateOne:a,deleteOne:r}=this.actions,c=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(c));const u=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:R(c),blockers:[c.project],blocks:[c.uuid]});return u.then(d=>{this.dispatch(a(d))}).catch(()=>{this.dispatch(r(c.uuid))}),[c,u]}update(e){const{updateOne:n}=this.actions,{selectById:a}=this.selectors,r=this.select(a(e.uuid));if(!r)throw new Error(`Project comment with uuid ${e.uuid} not found in store`);const c={...r,...e};this.dispatch(n(c));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))}),[c,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:r}=this.selectors,c=this.select(r(e));if(!c)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(a(c)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,c=(await this.listPaginated({queryParams:{project:e}},n)).flat();return this.dispatch(a(c)),c}}class kR extends j{constructor(){super(...arguments);h(this,"name","Project File");h(this,"url","/project-files");h(this,"actions",{addOne:RA,addMany:wA,setOne:gA,setMany:MA,updateOne:vA,updateMany:EA,deleteOne:VA,deleteMany:BA,initialize:_A});h(this,"selectors",{selectById:jA,selectByIds:CA})}getId(e){return e.uuid}getBlockers(e){return[e.project]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var c;return((c=r.userReducer.currentUser)==null?void 0:c.id)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){return{uuid:e.uuid,submitted_at:e.submitted_at,file_sha1:e.file_sha1,file_name:e.file_name,file_extension:e.file_extension,project:e.project,z_index:e.z_index,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,bounds:e.bounds}}update(e){const{updateOne:n}=this.actions,{selectById:a}=this.selectors,r=this.select(a(e.uuid));if(!r)throw new Error(`${this.name} with uuid ${e.uuid} does not exist in the store`);const c={...r,...e};this.dispatch(n(c));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))}),[c,u]}async refreshStore(e,n){const{initialize:a}=this.actions,c=(await this.listPaginated({queryParams:{project:e}},n)).flat();return this.dispatch(a(c)),c}}class NR extends Ot{constructor(){super(...arguments);h(this,"name","Project");h(this,"url","/projects");h(this,"actions",{addOne:GA,addMany:NA,setOne:kA,setMany:LA,updateOne:WA,updateMany:HA,deleteOne:KA,deleteMany:YA,initialize:UA});h(this,"selectors",{selectById:XA,selectByIds:QA})}async add(e){const{addOne:n}=this.actions,a=await this.performRequest({method:o.POST,url:`${this.url}/`,payload:R(e)});return this.dispatch(n(a)),a}async update(e){const{updateOne:n}=this.actions,a=await this.performRequest({method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:R(e)});return this.dispatch(n(a)),a}async delete(e){const{deleteOne:n}=this.actions,a=await this.enqueueRequest({description:A(o.DELETE,this.name,!1),method:o.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]});return this.dispatch(n(e)),a}async refreshStore(e,n){const{initialize:a}=this.actions,r=await this.list({queryParams:{organization:e}},n);return this.dispatch(a(r)),r}}class GR extends v{constructor(){super(...arguments);h(this,"name","Procedure");h(this,"url","/procedures");h(this,"actions",{addOne:yI,addMany:Mt,setOne:SI,setMany:fI,updateOne:AI,updateMany:II,deleteOne:TI,deleteMany:Rt,initialize:pI});h(this,"selectors",{selectById:FI,selectByIds:bI})}add(e){const{addOne:n,updateOne:a,deleteOne:r}=this.actions,c=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(c));const u=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:R(c),blockers:[c.procedure_type,c.project,c.asset,...c.procedure_initiative?[c.procedure_initiative]:[]],blocks:[c.uuid]});return u.then(d=>{this.dispatch(a(d))}).catch(()=>{this.dispatch(r(c.uuid))}),[c,u]}bulkAdd(e,n){var I;const{store:a}=this.client,{addMany:r,updateMany:c,deleteMany:u}=this.actions,d=new Date().toISOString(),p=((I=a.getState().userReducer.currentUser)==null?void 0:I.id)??null,m=[],S=W(e,Math.min(n??e.length,H)),T=[];for(const M of S){const g=[],E=[],V=[];for(const z of M){const C=P({...z,submitted_at:d,created_by:p});m.push(C),g.push(R(C)),E.push(C.procedure_type,C.project,C.asset,...C.procedure_initiative?[C.procedure_initiative]:[]),V.push(C.uuid)}const D={payload:{submitted_at:d,payloads:g},blockers:E,blocks:V};T.push(D)}this.dispatch(r(m));const _=T.map(M=>{const{payload:g,blocks:E,blockers:V}=M;return this.enqueueRequest({description:A(o.POST,this.name,!0),method:o.POST,url:`${this.url}/bulk/`,payload:g,blockers:V,blocks:E})});return Promise.all(_).then(M=>{this.dispatch(c(M.flat()))}).catch(()=>{this.dispatch(u(w(m)))}),[m,Promise.all(_).then(M=>M.flat())]}update(e){const{updateOne:n}=this.actions,{selectById:a}=this.selectors,r=this.select(a(e.uuid));if(!r)throw new Error(`Expected procedure with uuid ${e.uuid} to exist`);const c={...r,...e};this.dispatch(n(c));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))}),[c,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:r}=this.selectors,c=this.select(r(e));if(!c)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(a(c)),u}}async bulkDelete(e){const{addMany:n,deleteMany:a}=this.actions,{selectByIds:r}=this.selectors,c=this.select(r(e));this.dispatch(a(w(c)));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(c)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,c=(await this.listPaginated({queryParams:{project:e}},n)).flat();return this.dispatch(a(c)),c}}class HR extends v{constructor(){super(...arguments);h(this,"name","Procedure Step Assignee");h(this,"url","/procedure-step-assignees");h(this,"actions",{addOne:EI,addMany:VI,setOne:BI,setMany:zI,updateOne:DI,updateMany:jI,deleteOne:CI,deleteMany:qI,initialize:vI});h(this,"selectors",{selectById:UI,selectByIds:LI})}add(e){const{addOne:n,updateOne:a,deleteOne:r}=this.actions,c=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(c));const u=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:R(c),blockers:[c.procedure,c.procedure_step],blocks:[c.uuid]});return u.then(d=>{this.dispatch(a(d))}).catch(()=>{this.dispatch(r(c.uuid))}),[c,u]}bulkAdd(e){const{addMany:n,updateMany:a,deleteMany:r}=this.actions,c=this.select(m=>{var S;return((S=m.userReducer.currentUser)==null?void 0:S.id)??null}),u=new Date().toISOString(),d=e.map(m=>P({...m,created_by:c,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=>R(m)),submitted_at:u},blockers:d.flatMap(m=>[m.procedure,m.procedure_step]),blocks:w(d)});return p.then(m=>{this.dispatch(a(m))}).catch(()=>{this.dispatch(r(w(d)))}),[d,p]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:r}=this.selectors,c=this.select(r(e));if(!c)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(a(c)),u}}async bulkDelete(e){const{deleteMany:n,addMany:a}=this.actions,{selectByIds:r}=this.selectors,c=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(a(c)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,c=(await this.listPaginated({queryParams:{procedure__project:e}},n)).flat();return this.dispatch(a(c)),c}}class WR extends v{constructor(){super(...arguments);h(this,"name","Procedure Step Comment");h(this,"url","/procedure-step-comments");h(this,"actions",{addOne:HI,addMany:WI,setOne:KI,setMany:YI,updateOne:ZI,updateMany:JI,deleteOne:XI,deleteMany:QI,initialize:GI});h(this,"selectors",{selectById:eT,selectByIds:tT})}add(e){const{addOne:n,updateOne:a,deleteOne:r}=this.actions,c=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(c));const u=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:R(c),blockers:[c.procedure,c.procedure_step],blocks:[c.uuid]});return u.then(d=>{this.dispatch(a(d))}).catch(()=>{this.dispatch(r(c.uuid))}),[c,u]}update(e){const{updateOne:n}=this.actions,{selectById:a}=this.selectors,r=this.select(a(e.uuid));if(!r)throw new Error(`Procedure step comment with uuid ${e.uuid} not found in store`);const c={...r,...e};this.dispatch(n(c));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))}),[c,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:r}=this.selectors,c=this.select(r(e));if(!c)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(a(c)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,c=(await this.listPaginated({queryParams:{procedure__project:e}},n)).flat();return this.dispatch(a(c)),c}}class KR extends v{constructor(){super(...arguments);h(this,"name","Procedure Step Default Assignee");h(this,"url","/procedure-step-default-assignees");h(this,"actions",{addOne:aT,addMany:cT,setOne:rT,setMany:dT,updateOne:uT,updateMany:lT,deleteOne:oT,deleteMany:hT,initialize:nT});h(this,"selectors",{selectById:pT,selectByIds:yT})}add(e){const{addOne:n,updateOne:a,deleteOne:r}=this.actions,c=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(c));const u=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:R(c),blockers:[c.procedure_step],blocks:[c.uuid]});return u.then(d=>{this.dispatch(a(d))}).catch(()=>{this.dispatch(r(c.uuid))}),[c,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:r}=this.selectors,c=this.select(r(e));if(!c)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(a(c)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,r=await this.list({queryParams:{procedure_step__procedure_type__organization:e}},n);return this.dispatch(a(r)),r}}class YR extends v{constructor(){super(...arguments);h(this,"name","Procedure Step Default Reviewer");h(this,"url","/procedure-step-default-reviewers");h(this,"actions",{addOne:IT,addMany:TT,setOne:OT,setMany:PT,updateOne:FT,updateMany:bT,deleteOne:_T,deleteMany:gT,initialize:AT});h(this,"selectors",{selectById:RT,selectByIds:wT})}add(e){const{addOne:n,updateOne:a,deleteOne:r}=this.actions,c=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(c));const u=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:R(c),blockers:[c.procedure_step],blocks:[c.uuid]});return u.then(d=>{this.dispatch(a(d))}).catch(()=>{this.dispatch(r(c.uuid))}),[c,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:r}=this.selectors,c=this.select(r(e));if(!c)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(a(c)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,r=await this.list({queryParams:{procedure_step__procedure_type__organization:e}},n);return this.dispatch(a(r)),r}}class ZR extends Ot{constructor(){super(...arguments);h(this,"name","Procedure Step Event");h(this,"url","/procedure-step-events");h(this,"actions",{addOne:BT,addMany:zT,setOne:DT,setMany:jT,updateOne:CT,updateMany:qT,deleteOne:$T,deleteMany:UT,initialize:VT});h(this,"selectors",{selectById:kT,selectByIds:NT})}async refreshStore(e,n){const{initialize:a}=this.actions,c=(await this.listPaginated({queryParams:{procedure__project:e}},n)).flat();return this.dispatch(a(c)),c}}class JR extends j{constructor(){super(...arguments);h(this,"name","Procedure Step Fields Attachment");h(this,"url","/procedure-step-fields-attachments");h(this,"actions",{addOne:KT,addMany:Un,setOne:YT,setMany:ZT,updateOne:JT,updateMany:XT,deleteOne:QT,deleteMany:Ln,initialize:WT});h(this,"selectors",{selectById:tO,selectByIds:sO})}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 a;return((a=n.userReducer.currentUser)==null?void 0:a.id)??null}),submitted_at:new Date().toISOString()})}buildPayload(e){const{uuid:n,field_identifier:a,fields_revision:r,file_sha1:c,file_name:u,file_extension:d}=e;return{uuid:n,submitted_at:e.submitted_at,field_identifier:a,fields_revision:r,file_sha1:c,file_name:u,file_extension:d}}buildBulkPayload(e){const{uuid:n,field_identifier:a,fields_revision:r,file_sha1:c,file_name:u,file_extension:d}=e;return{uuid:n,field_identifier:a,fields_revision:r,file_sha1:c,file_name:u,file_extension:d}}async refreshStore(e,n){const{initialize:a}=this.actions,r=await this.list({queryParams:{fields_revision__procedure_step__procedure_type__organization:e}},n);return this.dispatch(a(r)),r}}class XR extends v{constructor(){super(...arguments);h(this,"name","Procedure Step Fields");h(this,"url","/procedure-step-fields");h(this,"actions",{addOne:cO,addMany:rO,setOne:dO,setMany:uO,updateOne:lO,updateMany:oO,deleteOne:hO,deleteMany:mO,initialize:aO});h(this,"selectors",{selectById:pO,selectByIds:yO})}add(e){const{addOne:n,updateOne:a,deleteOne:r}=this.actions,c=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(c));const u=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:R(c),blockers:[c.procedure_step],blocks:[c.uuid]});return u.then(d=>{this.dispatch(a(d))}).catch(()=>{this.dispatch(r(c.uuid))}),[c,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:r}=this.selectors,c=this.select(r(e));if(!c)throw new Error(`Expected procedure step fields with uuid ${e} to exist`);const u=this.select(eO(e));this.dispatch(n(e)),this.dispatch(Ln(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(a(c)),this.dispatch(Un(u)),d}}async refreshStore(e,n){const{initialize:a}=this.actions,r=await this.list({queryParams:{procedure_step__procedure_type__organization:e}},n);return this.dispatch(a(r)),r}}class QR 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:IO,addMany:Wn,setOne:TO,setMany:OO,updateOne:PO,updateMany:FO,deleteOne:bO,deleteMany:Kn,initialize:AO});h(this,"selectors",{selectById:gO,selectByIds:MO})}getId(e){return e.uuid}getBlockers(e){return[e.field_values]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var c;return((c=r.userReducer.currentUser)==null?void 0:c.id)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){const{uuid:n,field_identifier:a,field_values:r,file_sha1:c,file_name:u,file_extension:d}=e;return{uuid:n,submitted_at:e.submitted_at,field_identifier:a,field_values:r,file_sha1:c,file_name:u,file_extension:d}}buildBulkPayload(e){const{uuid:n,field_identifier:a,field_values:r,file_sha1:c,file_name:u,file_extension:d}=e;return{uuid:n,field_identifier:a,field_values:r,file_sha1:c,file_name:u,file_extension:d}}async bulkDelete(e){const{deleteMany:n,addMany:a}=this.actions,{selectByIds:r}=this.selectors,c=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(a(c)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,c=(await this.listPaginated({queryParams:{field_values__procedure__project:e,latest:!0}},n)).flat();return this.dispatch(a(c)),c}}class xR 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:WO,addMany:Xn,setOne:KO,setMany:YO,updateOne:ZO,updateMany:JO,deleteOne:XO,deleteMany:Qn,initialize:HO});h(this,"selectors",{selectById:xO,selectByIds:eP})}add(e){const{addOne:n,updateOne:a,deleteOne:r}=this.actions,c=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(c));const u=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:R(c),blockers:[c.field_values],blocks:[c.uuid]});return u.then(d=>{this.dispatch(a(d))}).catch(()=>{this.dispatch(r(c.uuid))}),[c,u]}update(e){const{updateOne:n}=this.actions,{selectById:a}=this.selectors,r=this.select(a(e.uuid));if(!r)throw new Error(`Procedure step field values review with uuid ${e.uuid} not found in store`);const c={...r,...e};this.dispatch(n(c));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))}),[c,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:r}=this.selectors,c=this.select(r(e));if(!c)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(a(c)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,c=(await this.listPaginated({queryParams:{field_values__procedure__project:e}},n)).flat();return this.dispatch(a(c)),c}}class ew extends v{constructor(){super(...arguments);h(this,"name","Procedure Step Field Values");h(this,"url","/procedure-step-field-values");h(this,"actions",{addOne:VO,addMany:BO,setOne:zO,setMany:DO,updateOne:jO,updateMany:CO,deleteOne:qO,deleteMany:$O,initialize:EO});h(this,"selectors",{selectById:kO,selectByIds:NO})}add(e){const{addOne:n,updateOne:a,deleteOne:r}=this.actions,c=this.select(m=>{var S;return((S=m.userReducer.currentUser)==null?void 0:S.id)??null}),u=new Date().toISOString(),d=P({...e,created_by:c,submitted_at:u}),p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:R(d),blockers:[e.procedure,e.procedure_step,e.fields_revision],blocks:[d.uuid]});return this.dispatch(n(d)),p.then(m=>{this.dispatch(a(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}bulkAdd(e,n){const{addMany:a,updateMany:r,deleteMany:c}=this.actions,u=new Date().toISOString(),d=this.select(_=>{var I;return((I=_.userReducer.currentUser)==null?void 0:I.id)??null}),p=[],m=W(e,Math.min(n??e.length,H)),S=[];for(const _ of m){const I=[],M=[],g=[];for(const E of _){const V=P({...E,values:E.values,created_by:d,submitted_at:u});p.push(V),I.push(R(V)),M.push(V.procedure_step,V.procedure,V.fields_revision),g.push(V.uuid)}S.push({payload:{payloads:I,submitted_at:u},blockers:M,blocks:g})}this.dispatch(a(p));const T=S.map(_=>{const{payload:I,blocks:M,blockers:g}=_;return this.enqueueRequest({description:A(o.POST,this.name,!0),method:o.POST,url:`${this.url}/bulk/`,payload:I,blockers:g,blocks:M})});return Promise.all(T).then(_=>{this.dispatch(r(_.flat()))}).catch(()=>{this.dispatch(c(w(p)))}),[p,Promise.all(T).then(_=>_.flat())]}update(e){const{updateOne:n}=this.actions,{selectById:a}=this.selectors,r=this.select(a(e.uuid));if(!r)throw new Error(`Expected ProcedureStepFieldValues with uuid ${e.uuid} to exist`);const c={...r,...e};this.dispatch(n(c));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[c.uuid,c.procedure,c.procedure_step,c.fields_revision],blocks:[c.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[c,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:r}=this.selectors,c=this.select(r(e));if(!c)throw new Error(`Expected ProcedureStepFieldValues with uuid ${e} to exist`);const u=this.select(RO(e)),d=this.select(tP(e));this.dispatch(n(e)),this.dispatch(Kn(w(u))),this.dispatch(Qn(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(a(c)),this.dispatch(Wn(u)),this.dispatch(Xn(d)),p}}async refreshStore(e,n){const{initialize:a}=this.actions,c=(await this.listPaginated({queryParams:{procedure__project:e}},n)).flat();return this.dispatch(a(c)),c}}class tw extends v{constructor(){super(...arguments);h(this,"name","Procedure Step Reviewer");h(this,"url","/procedure-step-reviewers");h(this,"actions",{addOne:aP,addMany:cP,setOne:rP,setMany:dP,updateOne:uP,updateMany:lP,deleteOne:oP,deleteMany:hP,initialize:nP});h(this,"selectors",{selectById:pP,selectByIds:yP})}add(e){const{addOne:n,updateOne:a,deleteOne:r}=this.actions,c=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(c));const u=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:R(c),blockers:[c.procedure,c.procedure_step],blocks:[c.uuid]});return u.then(d=>{this.dispatch(a(d))}).catch(()=>{this.dispatch(r(c.uuid))}),[c,u]}bulkAdd(e){const{addMany:n,updateMany:a,deleteMany:r}=this.actions,c=this.select(m=>{var S;return((S=m.userReducer.currentUser)==null?void 0:S.id)??null}),u=new Date().toISOString(),d=e.map(m=>P({...m,created_by:c,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=>R(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(a(m))}).catch(()=>{this.dispatch(r(w(d)))}),[d,p]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:r}=this.selectors,c=this.select(r(e));if(!c)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(a(c)),u}}async bulkDelete(e){const{deleteMany:n,addMany:a}=this.actions,{selectByIds:r}=this.selectors,c=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(a(c)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,c=(await this.listPaginated({queryParams:{procedure__project:e}},n)).flat();return this.dispatch(a(c)),c}}class sw extends v{constructor(){super(...arguments);h(this,"name","Procedure Initiative");h(this,"url","/procedure-initiatives");h(this,"actions",{addOne:tI,addMany:sI,setOne:iI,setMany:nI,updateOne:aI,updateMany:cI,deleteOne:rI,deleteMany:dI,initialize:eI});h(this,"selectors",{selectById:oI,selectByIds:hI})}add(e){var p;const{store:n}=this.client,{addOne:a,updateOne:r,deleteOne:c}=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(a(u));const d=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:R(u),blockers:[u.procedure_type,u.project],blocks:[u.uuid]});return d.then(m=>{this.dispatch(r(m))}).catch(()=>{this.dispatch(c(u.uuid))}),[u,d]}update(e){const{updateOne:n}=this.actions,{selectById:a}=this.selectors,r=this.select(a(e.uuid));if(!r)throw new Error(`Expected ${this.name} with uuid ${e.uuid} to exist`);const c={...r,...e};this.dispatch(n(c));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))}),[c,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:r}=this.selectors,c=this.select(r(e));if(!c)throw new Error(`Expected ${this.name} with uuid ${e} to exist`);const u=this.select(RI(e));this.dispatch(n(e)),this.dispatch(Rt(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(a(c)),this.dispatch(Mt(u)),d}}async refreshStore(e,n){const{initialize:a}=this.actions,c=(await this.listPaginated({queryParams:{project:e}},n)).flat();return this.dispatch(a(c)),c}}class iw extends v{constructor(){super(...arguments);h(this,"name","Procedure Step");h(this,"url","/procedure-steps");h(this,"actions",{addOne:OP,addMany:PP,setOne:IP,setMany:TP,updateOne:FP,updateMany:bP,deleteOne:_P,deleteMany:gP,initialize:AP});h(this,"selectors",{selectById:RP,selectByIds:wP})}add(e){const{addOne:n,updateOne:a,deleteOne:r}=this.actions,c=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(c));const u=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:R(c),blockers:[c.procedure_type],blocks:[c.uuid]});return u.then(d=>{this.dispatch(a(d))}).catch(()=>{this.dispatch(r(c.uuid))}),[c,u]}update(e){const{updateOne:n}=this.actions,{selectById:a}=this.selectors,r=this.select(a(e.uuid));if(!r)throw new Error(`No procedure step with uuid ${e.uuid} found in the store`);const c={...r,...e};this.dispatch(n(c));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))}),[c,u]}async delete(e){const{addOne:n,deleteOne:a}=this.actions,{selectById:r}=this.selectors,c=this.select(r(e));if(!c)throw new Error(`No procedure step with uuid ${e} found in the store`);this.dispatch(a(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(c)),u}}bulkUpdate(e,n){const{updateMany:a}=this.actions,{selectByIds:r}=this.selectors,c=w(e);if(new Set(c).size!==e.length)throw new Error("payloads contains duplicate uuids.");const u=this.select(r(c));if(c.length!=u.length)throw new Error(`Attempting to bulk update ${c.length-u.length} ${this.name} that dont exist in the store`);const d=u.toSorted(mt),p=e.toSorted(mt),m=[];for(let I=0;I<c.length;I++)m.push({...d[I],...p[I]});this.dispatch(a(m));const S=W(e,Math.min(n??e.length,H)),T=[];let _=null;for(const I of S){const M=ht.v4(),g=w(I),E=this.enqueueRequest({description:A(o.PATCH,this.name,!0),method:o.PATCH,url:`${this.url}/bulk/`,payload:{payloads:I},blockers:(_?[_]:[]).concat(g),blocks:[M].concat(g)});T.push(E),_=M}return Promise.all(T).then(I=>{this.dispatch(a(I.flat()))}).catch(()=>{this.dispatch(a(u))}),[m,T]}async refreshStore(e,n){const{initialize:a}=this.actions,r=await this.list({queryParams:{procedure_type__organization:e}},n);return this.dispatch(a(r)),r}}class nw extends j{constructor(){super(...arguments);h(this,"name","Procedure Type Attachment");h(this,"url","/procedure-type-attachments");h(this,"actions",{addOne:VP,addMany:BP,setOne:zP,setMany:DP,updateOne:jP,updateMany:CP,deleteOne:qP,deleteMany:$P,initialize:EP});h(this,"selectors",{selectById:kP,selectByIds:NP})}getId(e){return e.uuid}getBlockers(e){return[e.procedure_type]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var c;return((c=r.userReducer.currentUser)==null?void 0:c.id)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){return{uuid:e.uuid,submitted_at:e.submitted_at,file_name:e.file_name,file_sha1:e.file_sha1,file_extension:e.file_extension,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:a}=this.actions,r=await this.list({queryParams:{procedure_type__organization:e}},n);return this.dispatch(a(r)),r}}class aw extends j{constructor(){super(...arguments);h(this,"name","Procedure Type Fields Attachment");h(this,"url","/procedure-type-fields-attachments");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})}getId(e){return e.uuid}getBlockers(e){return[e.fields_revision]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var c;return((c=r.userReducer.currentUser)==null?void 0:c.id)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){const{uuid:n,field_identifier:a,fields_revision:r,file_sha1:c,file_name:u,file_extension:d}=e;return{uuid:n,submitted_at:e.submitted_at,field_identifier:a,fields_revision:r,file_sha1:c,file_name:u,file_extension:d}}buildBulkPayload(e){const{uuid:n,field_identifier:a,fields_revision:r,file_sha1:c,file_name:u,file_extension:d}=e;return{uuid:n,field_identifier:a,fields_revision:r,file_sha1:c,file_name:u,file_extension:d}}async refreshStore(e,n){const{initialize:a}=this.actions,r=await this.list({queryParams:{fields_revision__procedure_type__organization:e}},n);return this.dispatch(a(r)),r}}class cw extends v{constructor(){super(...arguments);h(this,"name","Procedure Type Fields");h(this,"url","/procedure-type-fields");h(this,"actions",{addOne:cF,addMany:rF,setOne:dF,setMany:uF,updateOne:lF,updateMany:oF,deleteOne:hF,deleteMany:mF,initialize:aF});h(this,"selectors",{selectById:SF,selectByIds:fF})}add(e){const{addOne:n,updateOne:a,deleteOne:r}=this.actions,c=this.select(m=>{var S;return((S=m.userReducer.currentUser)==null?void 0:S.id)??null}),u=new Date().toISOString(),d=P({...e,created_by:c,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:R(d),blockers:[d.procedure_type],blocks:[d.uuid]});return p.then(m=>{this.dispatch(a(m))}).catch(m=>{throw this.dispatch(r(d.uuid)),m}),[d,p]}async refreshStore(e,n){const{initialize:a}=this.actions,r=await this.list({queryParams:{procedure_type__organization:e}},n);return this.dispatch(a(r)),r}}class rw extends j{constructor(){super(...arguments);h(this,"name","Procedure Field Values Attachment");h(this,"url","/procedure-field-values-attachments");h(this,"actions",{addOne:TF,addMany:ua,setOne:OF,setMany:PF,updateOne:FF,updateMany:bF,deleteOne:_F,deleteMany:la,initialize:IF});h(this,"selectors",{selectById:RF,selectByIds:wF})}getId(e){return e.uuid}getBlockers(e){return[e.field_values]}getBlocks(e){return[e.uuid]}buildModel(e){const n=this.select(r=>{var c;return((c=r.userReducer.currentUser)==null?void 0:c.id)??null}),a=new Date().toISOString();return P({...e,created_by:n,submitted_at:a})}buildPayload(e){const{uuid:n,field_identifier:a,field_values:r,file_sha1:c,file_name:u,file_extension:d}=e;return{uuid:n,submitted_at:e.submitted_at,field_identifier:a,field_values:r,file_sha1:c,file_name:u,file_extension:d}}buildBulkPayload(e){const{uuid:n,field_identifier:a,field_values:r,file_sha1:c,file_name:u,file_extension:d}=e;return{uuid:n,field_identifier:a,field_values:r,file_sha1:c,file_name:u,file_extension:d}}async bulkDelete(e){const{deleteMany:n,addMany:a}=this.actions,{selectByIds:r}=this.selectors,c=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(a(c)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,c=(await this.listPaginated({queryParams:{field_values__procedure__project:e,latest:!0}},n)).flat();return this.dispatch(a(c)),c}}class dw extends v{constructor(){super(...arguments);h(this,"name","Procedure Field Values");h(this,"url","/procedure-field-values");h(this,"actions",{addOne:BF,addMany:zF,setOne:DF,setMany:jF,updateOne:CF,updateMany:qF,deleteOne:$F,deleteMany:UF,initialize:VF});h(this,"selectors",{selectById:NF,selectByIds:GF})}add(e){const{addOne:n,updateOne:a,deleteOne:r}=this.actions,c=this.select(m=>{var S;return((S=m.userReducer.currentUser)==null?void 0:S.id)??null}),u=new Date().toISOString(),d=P({...e,created_by:c,submitted_at:u}),p=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:R(d),blockers:[e.fields_revision,e.procedure],blocks:[d.uuid]});return this.dispatch(n(d)),p.then(m=>{this.dispatch(a(m))}).catch(()=>{this.dispatch(r(d.uuid))}),[d,p]}bulkAdd(e,n){const{addMany:a,updateMany:r,deleteMany:c}=this.actions,u=new Date().toISOString(),d=this.select(_=>{var I;return((I=_.userReducer.currentUser)==null?void 0:I.id)??null}),p=[],m=W(e,Math.min(n??e.length,H)),S=[];for(const _ of m){const I=[],M=[],g=[];for(const E of _){const V=P({...E,values:E.values,created_by:d,submitted_at:u});p.push(V),I.push(R(V)),M.push(V.procedure,V.fields_revision),g.push(V.uuid)}S.push({payload:{payloads:I,submitted_at:u},blockers:M,blocks:g})}this.dispatch(a(p));const T=S.map(_=>{const{payload:I,blocks:M,blockers:g}=_;return this.enqueueRequest({description:A(o.POST,this.name,!0),method:o.POST,url:`${this.url}/bulk/`,payload:I,blockers:g,blocks:M})});return Promise.all(T).then(_=>{this.dispatch(r(_.flat()))}).catch(()=>{this.dispatch(c(w(p)))}),[p,Promise.all(T).then(_=>_.flat())]}update(e){const{updateOne:n}=this.actions,{selectById:a}=this.selectors,r=this.select(a(e.uuid));if(!r)throw new Error(`Expected ProcedureFieldValues with uuid ${e.uuid} to exist`);const c={...r,...e};this.dispatch(n(c));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[c.fields_revision,c.procedure],blocks:[c.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[c,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:r}=this.selectors,c=this.select(r(e));if(!c)throw new Error(`Expected submission with uuid ${e} to exist`);const u=this.select(vF(e));this.dispatch(n(e)),this.dispatch(la(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(a(c)),this.dispatch(ua(u)),d}}async refreshStore(e,n){const{initialize:a}=this.actions,c=(await this.listPaginated({queryParams:{procedure__project:e,latest:!0}},n)).flat();return this.dispatch(a(c)),c}}class uw extends v{constructor(){super(...arguments);h(this,"name","Procedure Type");h(this,"url","/procedure-types");h(this,"actions",{addOne:KF,addMany:YF,setOne:ZF,setMany:JF,updateOne:XF,updateMany:QF,deleteOne:xF,deleteMany:eb,initialize:WF});h(this,"selectors",{selectById:ib,selectByIds:nb})}add(e){const{addOne:n,updateOne:a,deleteOne:r}=this.actions,c=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(c));const u=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:R(c),blockers:[],blocks:[c.uuid]});return u.then(d=>{this.dispatch(a(d))}).catch(()=>{this.dispatch(r(c.uuid))}),[c,u]}update(e){const{updateOne:n}=this.actions,{selectById:a}=this.selectors,r=this.select(a(e.uuid));if(!r)throw new Error(`Expected procedure type with uuid ${e.uuid} to exist`);const c={...r,...e};this.dispatch(n(c));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))}),[c,u]}async delete(e){const{deleteOne:n,addOne:a}=this.actions,{selectById:r}=this.selectors,c=this.select(r(e));if(!c)throw new Error(`Expected procedure type with uuid ${e} to exist`);const u=this.select(_I(e));this.dispatch(n(e)),this.dispatch(Rt(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(a(c)),this.dispatch(Mt(u)),d}}async refreshStore(e,n){const{initialize:a}=this.actions,r=await this.list({queryParams:{organization:e}},n);return this.dispatch(a(r)),r}}class lw extends v{constructor(){super(...arguments);h(this,"name","Team Membership");h(this,"url","/team-memberships");h(this,"actions",{addOne:db,addMany:ub,setOne:lb,setMany:ob,updateOne:hb,updateMany:mb,deleteOne:pb,deleteMany:yb,initialize:rb});h(this,"selectors",{selectById:Ab,selectByIds:Ib})}add(e){const{addOne:n,updateOne:a,deleteOne:r}=this.actions,c=P({...e,created_by:this.select(d=>{var p;return((p=d.userReducer.currentUser)==null?void 0:p.id)??null})});this.dispatch(n(c));const u=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:R(c),blockers:[e.team],blocks:[c.uuid]});return u.then(d=>{this.dispatch(a(d))}).catch(()=>{this.dispatch(r(c.uuid))}),[c,u]}bulkAdd(e){const{addMany:n,updateMany:a,deleteMany:r}=this.actions,c=this.select(p=>{var m;return((m=p.userReducer.currentUser)==null?void 0:m.id)??null}),u=e.map(p=>P({...p,created_by:c}));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=>R(p))},blockers:u.map(p=>p.team),blocks:u.map(p=>p.uuid)});return d.then(p=>{this.dispatch(a(p))}).catch(()=>{this.dispatch(r(u.map(p=>p.uuid)))}),[u,d]}async delete(e){const{addOne:n,deleteOne:a}=this.actions,{selectById:r}=this.selectors,c=this.select(r(e));if(!c)throw new Error(`Expected team membership with uuid ${e} to exist`);this.dispatch(a(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(n(c)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,r=await this.list({queryParams:{team__organization:e}},n);return this.dispatch(a(r)),r}}class ow extends v{constructor(){super(...arguments);h(this,"name","Team");h(this,"url","/teams");h(this,"actions",{addOne:Pb,addMany:Fb,setOne:bb,setMany:_b,updateOne:gb,updateMany:Mb,deleteOne:Rb,deleteMany:wb,initialize:Ob});h(this,"selectors",{selectById:Eb,selectByIds:Vb})}add(e){const{addOne:n,updateOne:a,deleteOne:r}=this.actions,c=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(c));const u=this.enqueueRequest({description:A(o.POST,this.name,!1),method:o.POST,url:`${this.url}/`,payload:R(c),blockers:[],blocks:[c.uuid]});return u.then(d=>{this.dispatch(a(d))}).catch(()=>{this.dispatch(r(c.uuid))}),[c,u]}update(e){const{updateOne:n}=this.actions,{selectById:a}=this.selectors,r=this.select(a(e.uuid));if(!r)throw new Error(`Expected team with uuid ${e.uuid} to exist`);const c={...r,...e};this.dispatch(n(c));const u=this.enqueueRequest({description:A(o.PATCH,this.name,!1),method:o.PATCH,url:`${this.url}/${e.uuid}/`,payload:R(e),blockers:[e.uuid],blocks:[e.uuid]});return u.then(d=>{this.dispatch(n(d))}).catch(()=>{this.dispatch(n(r))}),[c,u]}async delete(e){const{addOne:n,deleteOne:a}=this.actions,{selectById:r}=this.selectors,c=this.select(r(e));if(!c)throw new Error(`Expected team with uuid ${e} to exist`);this.dispatch(a(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(n(c)),u}}async refreshStore(e,n){const{initialize:a}=this.actions,r=await this.list({queryParams:{organization:e}},n);return this.dispatch(a(r)),r}}class hw extends Ot{constructor(){super(...arguments);h(this,"name","User");h(this,"url","/user");h(this,"actions",{addOne:fn,addMany:YS,setOne:KS,setMany:WS,updateOne:JS,updateMany:ZS,deleteOne:An,deleteMany:XS,initialize:HS});h(this,"selectors",{selectById:cs,selectByIds:ef})}async list(e,n){const{organizationUuid:a,...r}=e,c=a?`/organizations/${a}${this.url}s/`:`/${this.url}`;return this.performRequest({method:o.GET,url:c,...r},n)}async refreshStore(e,n){const{initialize:a}=this.actions,r=await this.list({organizationUuid:e},n);return this.dispatch(a(r)),r}}async function ba(t,s,e,n,a){const r=n instanceof Tt;r&&s.checkAuth!==!1&&await n.auth.prepareAuth();const c={queryParams:"",isAuthNeeded:!0},{s3url:u,payload:d,headers:p,method:m,queryParams:S,attachmentHash:T,isExternalUrl:_,isAuthNeeded:I,isResponseBlob:M}={...c,...s};let g=s.url;const E=T?await e.files.getFileFromCache(T):void 0,V=E?await Ua(E):void 0;if(T){if(!V)throw new Error(`Cannot upload file ${T} because it's not cached.`);if(V.size===0)throw new Error(`Cannot upload file ${T} because its has a size of 0.`)}!_&&!g.startsWith("http")&&(!g.startsWith("/")&&!g.startsWith("blob:")&&(g="/"+g),g=t+g);const D=q=>{if(T){if(!u)throw new Error(`No S3 URL for file ${T}`);if("warning"in u)throw new Error(`S3 URL warning for file ${T}`);if(!V)throw new Error(`No file for file ${T}`);const L=u.fields["x-amz-checksum-sha1"];if(!L)throw new Error(`No checksum for file ${T}`);return q.set("x-amz-checksum-sha1",L).field({...d,...u.fields}).attach("file",V)}return q.send(d)},C={[o.GET]:()=>M?Ft.get(g.toString()).responseType("blob"):Ft.get(g.toString()),[o.POST]:()=>{const q=Ft.post(g.toString());return D(q)},[o.PATCH]:()=>{const q=Ft.patch(g.toString());return D(q)},[o.PUT]:()=>{const q=Ft.put(g.toString());return D(q)},[o.DELETE]:()=>{const q=Ft.delete(g.toString());return D(q)}}[m];let N=C();const ps=()=>{console.debug("aborting request:",s.url),N.abort()};a==null||a.addEventListener("abort",ps),I&&r&&(N=n.auth.applyAuth(N)),p&&(N=N.set(p));try{return await N.query(S)}catch(q){const L=Nb(q),Lt=L==null?void 0:L.status;throw r&&L&&n.auth.isAuthFailure(L)?(await n.auth.handleUnauthorized(N,L),new U({response:L,innerError:q,discard:!1})):new U({response:L,innerError:q,discard:Oa.includes(Lt)})}finally{a==null||a.removeEventListener("abort",ps)}}class mw{constructor(s){h(this,"store");this.store=s}_performRequest(s,e,n,a){const r=new ys,c={...e,uuid:e.uuid??ht.v4()};return ba(s,c,this,n,a).then(u=>{r.resolve(u.body)}).catch(u=>{u instanceof Error?r.reject(u):r.reject(new Error((u??wt).toString()))}),r}async performRequest(s,e,n,a){return this._performRequest(s,e,n,a).then(r=>{if(r instanceof U)throw r;return r})}async enqueueRequest(s,e,n){return this._enqueueRequest(s,e,n).then(a=>{if(a instanceof U)throw a;return a})}_enqueueRequest(s,e,n){const a=new ys,r={...s,BASE_URL:e,serviceName:n},c=this.store.dispatch(Bf(r)),u=p=>{if(p)a.resolve(p.body);else{const m=new U({message:"Could not get a response from the server.",response:p,discard:!0});a.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})),a.reject(p)};return c.then(u,d),a}async performPagination(s,e,n,a,r){const c={...e,queryParams:{...e.queryParams,paginate:!0,limit:n}},{method:u}=c,d=[];let p=await this.performRequest(s,c,a,r);for(d.push(p.results);p.next;)p=await this.performRequest(s,{url:p.next,method:u},a,r),d.push(p.results);return d}}class vt{constructor(){h(this,"graph");h(this,"requestAttemptCounter");this.graph=new u_.DepGraph,this.requestAttemptCounter={}}static _fromOutbox(s){const e=new vt;for(let n=0;n<s.length;n++){const a=s[n];if(!a){console.error("Outbox item was undefined");continue}e.sneakRequest(a);for(let r=0;r<n;r++){const c=s[r];if(!c){console.error("Previous outbox item was undefined");continue}c.payload.uuid!==a.payload.uuid&&c.payload.blocks.some(u=>a.payload.blockers.includes(u))&&vt._addDependency(a.payload.uuid,c.payload.uuid,e.graph)}}return e}_addDependency(s,e){vt._addDependency(s,e,this.graph)}static _addDependency(s,e,n){if(s===e)throw new Error(`Tried to add dependency from node to itself: ${s}`);if(!n.hasNode(s))throw new Error(`Tried to add dependency from non-existent node: ${s} (to node: ${e})`);if(!n.hasNode(e))throw new Error(`Tried to add dependency to non-existent node: ${e} (from node: ${s})`);n.addDependency(s,e)}addRequest(s){if(this.graph.addNode(s.payload.uuid,s),!(s.payload.blockers.length===0||this.graph.size()===1))for(const e of this.graph.overallOrder()){if(e===s.payload.uuid)continue;const n=this.graph.getNodeData(e),a=new Set(n.payload.blocks);s.payload.blockers.some(r=>a.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),a=new Set(s.payload.blocks);n.payload.blockers.some(r=>a.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 a of s){const r=this.requestAttemptCounter[a]||0;r<e&&(e=r,n=a)}return n}peek(){const s=this._getNextNode();if(s)return this.graph.getNodeData(s)}remove(s){this.graph.removeNode(s),delete this.requestAttemptCounter[s]}pop(){const s=this.peek();return s&&this.graph.removeNode(s.payload.uuid),s}getQueue(){const s=this.graph.overallOrder().map(n=>this.graph.getNodeData(n)),e=this._getNextNode();if(e){const n=this.graph.getNodeData(e),a=s.findIndex(r=>r.payload.uuid===n.payload.uuid);a!==-1&&(s.splice(a,1),s.unshift(n))}return s}getReady(){let s=this.graph.overallOrder(!0).map(e=>this.graph.getNodeData(e));return s=s.sort((e,n)=>e.meta.offline.effect.timestamp.localeCompare(n.meta.offline.effect.timestamp)),s=s.sort((e,n)=>{const a=this.requestAttemptCounter[e.payload.uuid]||0,r=this.requestAttemptCounter[n.payload.uuid]||0;return a-r}),s}registerRetry(s){this.requestAttemptCounter[s]=(this.requestAttemptCounter[s]||0)+1}}let Hb;function Wb(t){Hb=t}function Et(){return Hb}let Kb;function Yb(t){Kb=t}function Zb(){return Kb}let _a=null;function Pt(){const t=Et();if(!t)return console.warn("Client store not set; cannot get outbox coordinator yet."),null;if(_a)return _a;const s=t.getState().offline.outbox,e=vt._fromOutbox(s);return _a=e,e}const pw=(t,s)=>{const e=new s(t);return Yb(e),Wb(t),e};class yw{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 ga{constructor(){h(this,"next");this.next=null}then(s){return new yw(this).then(s)}async run(s){if(this.next)return this.next.run(s);{if(console.debug("Middleware finished. Performing request:",s.payload.url),!Et())throw new Error("Client store not set");const n=Zb();if(!n)throw new Error("Client SDK not set");return Ub(s,n)}}}class Jb extends ga{async run(s){return super.run(s)}}class Xb extends ga{async run(s){return super.run(s)}}const Qb=new Jb().then(new Xb).compile();function xb(t){var s;return(s=Qb[0])==null?void 0:s.run(t)}var e_=(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))(e_||{});i.ALL_MIDDLEWARE=Qb,i.APIError=U,i.AgentService=NM,i.AssetAttachmentService=GM,i.AssetCommentService=HM,i.AssetService=WM,i.AssetStatusType=za,i.AssetTypeAttachmentService=KM,i.AssetTypeFieldValuesAttachmentService=JM,i.AssetTypeFieldValuesService=XM,i.AssetTypeFieldsAttachmentService=YM,i.AssetTypeFieldsService=ZM,i.AssetTypeIdentifierService=QM,i.AssetTypeIdentifierValueService=xM,i.AssetTypeService=eR,i.AssetTypeStatusService=tR,i.BaseApiService=Tt,i.BaseAuthService=Gb,i.BaseModelApiService=Ot,i.BaseOfflineFileModelApiService=j,i.BaseOfflineModelApiService=v,i.BaseSDK=mw,i.COMMON_AUTO_FIELDS=Va,i.DEFAULT_PAGE_SIZE=Db,i.DISCARD_HTTP_STATUSES=Oa,i.DeferredPromise=ys,i.DocumentAttachmentService=sR,i.DocumentService=iR,i.EMPTY_ARRAY=wa,i.EMPTY_OBJECT=va,i.EmailDomainsService=nR,i.EmailVerificationService=aR,i.FileService=cR,i.FormIdentifierService=rR,i.FormIdentifierValueService=dR,i.FormRevisionAttachmentService=uR,i.FormRevisionService=lR,i.FormService=oR,i.FormSubmissionCommentService=yR,i.FormSubmissionFieldValuesAttachmentService=mR,i.FormSubmissionFieldValuesService=pR,i.FormSubmissionService=SR,i.FormSubscriberService=hR,i.GeoImageService=fR,i.HttpMethod=o,i.IssueAssociationService=AR,i.IssueAttachmentService=IR,i.IssueCommentAttachmentService=TR,i.IssueCommentService=OR,i.IssuePriorityType=ja,i.IssueService=PR,i.IssueStatusType=Da,i.IssueTypeAttachmentService=FR,i.IssueTypeFieldValuesAttachmentService=gR,i.IssueTypeFieldValuesService=MR,i.IssueTypeFieldsAttachmentService=bR,i.IssueTypeFieldsService=_R,i.IssueTypeIdentifierService=RR,i.IssueTypeIdentifierValueService=wR,i.IssueTypePriorityService=vR,i.IssueTypeService=ER,i.IssueTypeStatusService=VR,i.IssueUpdateChange=$,i.IssueUpdateService=BR,i.JWTService=jR,i.MAX_SERVICE_BATCH_SIZE=H,i.OUTBOX_RETRY_DELAY=Ea,i.OfflineAnalyticsMiddleware=Jb,i.OfflineMiddleware=ga,i.OrganizationAccessLevel=Ba,i.OrganizationAccessService=CR,i.OrganizationService=qR,i.OutboxCoordinator=vt,i.ProcdureInitiativeService=sw,i.ProcedureFieldValuesAttachmentService=rw,i.ProcedureFieldValuesService=dw,i.ProcedureService=GR,i.ProcedureStepAssigneeService=HR,i.ProcedureStepCommentService=WR,i.ProcedureStepDefaultAssigneeService=KR,i.ProcedureStepDefaultReviewerService=YR,i.ProcedureStepEventService=ZR,i.ProcedureStepEventType=Ca,i.ProcedureStepFieldValuesAttachmentService=QR,i.ProcedureStepFieldValuesReviewService=xR,i.ProcedureStepFieldValuesReviewType=qa,i.ProcedureStepFieldValuesService=ew,i.ProcedureStepFieldsAttachmentService=JR,i.ProcedureStepFieldsService=XR,i.ProcedureStepReviewerService=tw,i.ProcedureStepService=iw,i.ProcedureTypeAttachmentService=nw,i.ProcedureTypeFieldsAttachmentService=aw,i.ProcedureTypeFieldsService=cw,i.ProcedureTypeService=uw,i.ProjectAccessService=$R,i.ProjectAttachmentService=UR,i.ProjectCommentService=LR,i.ProjectFileService=kR,i.ProjectService=NR,i.RESET_ORGANIZATION_STATE=b,i.RESET_PROJECT_STATE=B,i.RESET_STATE=O,i.RateLimitingMiddleware=Xb,i.SelectorBuilder=v_,i.TeamMembershipService=lw,i.TeamService=ow,i.UNKNOWN_ERROR_MESSAGE=wt,i.UserService=hw,i.VerificationCodeType=e_,i._setLatestRetryTime=Df,i.addAsset=Cc,i.addAssetAttachment=lc,i.addAssetAttachments=Fs,i.addAssetComment=Fc,i.addAssetComments=Nt,i.addAssetType=Ud,i.addAssetTypeAttachment=Jc,i.addAssetTypeAttachments=Es,i.addAssetTypeFieldValues=Jr,i.addAssetTypeFieldValuesAttachment=Cr,i.addAssetTypeFieldValuesAttachments=qs,i.addAssetTypeFieldValuesMany=Xr,i.addAssetTypeFields=Fr,i.addAssetTypeFieldsAttachment=ur,i.addAssetTypeFieldsAttachments=lr,i.addAssetTypeFieldsMany=br,i.addAssetTypeIdentifier=ld,i.addAssetTypeIdentifierValue=bd,i.addAssetTypeIdentifierValues=_d,i.addAssetTypeIdentifiers=od,i.addAssetTypeStatus=Qd,i.addAssetTypeStatuses=xd,i.addAssetTypes=Ld,i.addAssets=Rs,i.addConversation=nc,i.addConversations=E_,i.addDocument=wu,i.addDocumentAttachment=yu,i.addDocumentAttachments=Su,i.addDocuments=vu,i.addEmailDomain=Nu,i.addEmailDomains=Gu,i.addForm=Ao,i.addFormIdentifier=il,i.addFormIdentifierValue=fl,i.addFormIdentifierValues=Al,i.addFormIdentifiers=nl,i.addFormRevision=Hl,i.addFormRevisionAttachment=El,i.addFormRevisionAttachments=Vl,i.addFormRevisions=ci,i.addFormSubmission=fh,i.addFormSubmissionComment=sh,i.addFormSubmissionComments=bi,i.addFormSubmissionFieldValues=No,i.addFormSubmissionFieldValuesAttachment=Vo,i.addFormSubmissionFieldValuesAttachments=pi,i.addFormSubmissionFieldValuesMany=Ti,i.addFormSubmissions=yt,i.addFormSubscriber=no,i.addFormSubscribers=ui,i.addForms=Io,i.addGeoImage=zh,i.addGeoImages=Dh,i.addIssue=Ym,i.addIssueAssociation=Jh,i.addIssueAssociations=bt,i.addIssueAttachment=dm,i.addIssueAttachments=Ei,i.addIssueComment=Dm,i.addIssueCommentAttachment=Om,i.addIssueCommentAttachments=Pm,i.addIssueComments=jm,i.addIssueType=uS,i.addIssueTypeAttachment=rp,i.addIssueTypeAttachments=dp,i.addIssueTypeFieldValues=Dp,i.addIssueTypeFieldValuesAttachment=uy,i.addIssueTypeFieldValuesAttachments=Yi,i.addIssueTypeFieldValuesMany=jp,i.addIssueTypeFields=Zp,i.addIssueTypeFieldsAttachment=Op,i.addIssueTypeFieldsAttachments=Pp,i.addIssueTypeFieldsMany=Jp,i.addIssueTypeIdentifier=Py,i.addIssueTypeIdentifierValue=jy,i.addIssueTypeIdentifierValues=Cy,i.addIssueTypeIdentifiers=Fy,i.addIssueTypePriorities=Xy,i.addIssueTypePriority=Jy,i.addIssueTypeStatus=FS,i.addIssueTypeStatuses=bS,i.addIssueTypes=lS,i.addIssueUpdate=ln,i.addIssueUpdates=on,i.addIssues=$i,i.addOrganization=Of,i.addOrganizationAccess=nf,i.addOrganizationAccesses=af,i.addOrganizations=Tf,i.addProcedure=yI,i.addProcedureFieldValues=BF,i.addProcedureFieldValuesAttachment=TF,i.addProcedureFieldValuesAttachments=ua,i.addProcedureFieldValuesMany=zF,i.addProcedureInitiative=tI,i.addProcedureInitiatives=sI,i.addProcedureStep=OP,i.addProcedureStepAssignee=EI,i.addProcedureStepAssignees=VI,i.addProcedureStepComment=HI,i.addProcedureStepComments=WI,i.addProcedureStepDefaultAssignee=aT,i.addProcedureStepDefaultAssignees=cT,i.addProcedureStepDefaultReviewer=IT,i.addProcedureStepDefaultReviewers=TT,i.addProcedureStepEvent=BT,i.addProcedureStepEvents=zT,i.addProcedureStepFieldValues=VO,i.addProcedureStepFieldValuesAttachment=IO,i.addProcedureStepFieldValuesAttachments=Wn,i.addProcedureStepFieldValuesMany=BO,i.addProcedureStepFieldValuesReview=WO,i.addProcedureStepFieldValuesReviews=Xn,i.addProcedureStepFields=cO,i.addProcedureStepFieldsAttachment=KT,i.addProcedureStepFieldsAttachments=Un,i.addProcedureStepFieldsMany=rO,i.addProcedureStepReviewer=aP,i.addProcedureStepReviewers=cP,i.addProcedureSteps=PP,i.addProcedureType=KF,i.addProcedureTypeAttachment=VP,i.addProcedureTypeAttachments=BP,i.addProcedureTypeFields=cF,i.addProcedureTypeFieldsAttachment=WP,i.addProcedureTypeFieldsAttachments=KP,i.addProcedureTypeFieldsMany=rF,i.addProcedureTypes=YF,i.addProcedures=Mt,i.addProject=GA,i.addProjectAccess=$f,i.addProjectAccesses=Uf,i.addProjectAttachment=Qf,i.addProjectAttachments=xf,i.addProjectComment=hA,i.addProjectComments=mA,i.addProjectFile=RA,i.addProjectFiles=wA,i.addProjects=NA,i.addTeam=Pb,i.addTeamMembership=db,i.addTeamMemberships=ub,i.addTeams=Fb,i.addUser=fn,i.addUsers=YS,i.agentsReducer=rc,i.agentsSlice=Ts,i.areArraysEqual=m_,i.assetAttachmentReducer=Tc,i.assetAttachmentSlice=Ps,i.assetCommentReducer=zc,i.assetCommentSlice=gs,i.assetReducer=Kc,i.assetSlice=Ms,i.assetTypeAttachmentReducer=cr,i.assetTypeAttachmentSlice=vs,i.assetTypeFieldValuesAttachmentReducer=Kr,i.assetTypeFieldValuesAttachmentSlice=Cs,i.assetTypeFieldValuesReducer=rd,i.assetTypeFieldValuesSlice=Ls,i.assetTypeFieldsAttachmentReducer=Tr,i.assetTypeFieldsAttachmentSlice=zs,i.assetTypeFieldsReducer=zr,i.assetTypeFieldsSlice=js,i.assetTypeIdentifierReducer=Od,i.assetTypeIdentifierSlice=ks,i.assetTypeIdentifierValueReducer=Dd,i.assetTypeIdentifierValueSlice=Gs,i.assetTypeReducer=Zd,i.assetTypeSlice=Hs,i.assetTypeStatusReducer=uu,i.assetTypeStatusSlice=Ks,i.assetTypeStatusSortFn=Xa,i.authReducer=hu,i.authSlice=Zt,i.baseReducer=BM,i.baseReducers=Ta,i.clearTokens=J_,i.createModelAdapter=F,i.createOfflineAction=Ef,i.createPayload=R,i.createSelectionAdapter=l_,i.deleteAsset=Uc,i.deleteAssetAttachment=yc,i.deleteAssetAttachments=bs,i.deleteAssetComment=Rc,i.deleteAssetComments=Gt,i.deleteAssetType=Gd,i.deleteAssetTypeAttachment=tr,i.deleteAssetTypeAttachments=Vs,i.deleteAssetTypeFieldValues=sd,i.deleteAssetTypeFieldValuesAttachment=kr,i.deleteAssetTypeFieldValuesAttachments=$s,i.deleteAssetTypeFieldValuesMany=id,i.deleteAssetTypeFields=wr,i.deleteAssetTypeFieldsAttachment=yr,i.deleteAssetTypeFieldsAttachments=Sr,i.deleteAssetTypeFieldsMany=vr,i.deleteAssetTypeIdentifier=Sd,i.deleteAssetTypeIdentifierValue=vd,i.deleteAssetTypeIdentifierValues=Ed,i.deleteAssetTypeIdentifiers=fd,i.deleteAssetTypeStatus=nu,i.deleteAssetTypeStatuses=au,i.deleteAssetTypes=Hd,i.deleteAssets=ws,i.deleteConversation=z_,i.deleteConversations=D_,i.deleteDocument=Du,i.deleteDocumentAttachment=Ou,i.deleteDocumentAttachments=Pu,i.deleteDocuments=ju,i.deleteEmailDomain=Zu,i.deleteEmailDomains=Ju,i.deleteForm=bo,i.deleteFormIdentifier=ul,i.deleteFormIdentifierValue=Fl,i.deleteFormIdentifierValues=bl,i.deleteFormIdentifiers=ll,i.deleteFormRevision=Jl,i.deleteFormRevisionAttachment=Cl,i.deleteFormRevisionAttachments=ql,i.deleteFormRevisions=ri,i.deleteFormSubmission=Th,i.deleteFormSubmissionComment=rh,i.deleteFormSubmissionComments=_i,i.deleteFormSubmissionFieldValues=Yo,i.deleteFormSubmissionFieldValuesAttachment=Co,i.deleteFormSubmissionFieldValuesAttachments=yi,i.deleteFormSubmissionFieldValuesMany=Oi,i.deleteFormSubmissions=St,i.deleteFormSubscriber=lo,i.deleteFormSubscribers=li,i.deleteForms=_o,i.deleteGeoImage=qh,i.deleteGeoImages=$h,i.deleteIssue=xm,i.deleteIssueAssociation=Xh,i.deleteIssueAssociations=_t,i.deleteIssueAttachment=mm,i.deleteIssueAttachments=Vi,i.deleteIssueComment=Lm,i.deleteIssueCommentAttachment=Mm,i.deleteIssueCommentAttachments=Rm,i.deleteIssueComments=km,i.deleteIssueType=yS,i.deleteIssueTypeAttachment=mp,i.deleteIssueTypeAttachments=pp,i.deleteIssueTypeFieldValues=Lp,i.deleteIssueTypeFieldValuesAttachment=py,i.deleteIssueTypeFieldValuesAttachments=Zi,i.deleteIssueTypeFieldValuesMany=kp,i.deleteIssueTypeFields=ty,i.deleteIssueTypeFieldsAttachment=Mp,i.deleteIssueTypeFieldsAttachments=Rp,i.deleteIssueTypeFieldsMany=sy,i.deleteIssueTypeIdentifier=Ry,i.deleteIssueTypeIdentifierValue=ky,i.deleteIssueTypeIdentifierValues=Ny,i.deleteIssueTypeIdentifiers=wy,i.deleteIssueTypePriorities=iS,i.deleteIssueTypePriority=sS,i.deleteIssueTypeStatus=wS,i.deleteIssueTypeStatuses=vS,i.deleteIssueTypes=SS,i.deleteIssueUpdate=hn,i.deleteIssueUpdates=mn,i.deleteIssues=Ui,i.deleteOrganization=bf,i.deleteOrganizationAccess=lf,i.deleteOrganizationAccesses=of,i.deleteOrganizations=_f,i.deleteProcedure=TI,i.deleteProcedureFieldValues=$F,i.deleteProcedureFieldValuesAttachment=_F,i.deleteProcedureFieldValuesAttachments=la,i.deleteProcedureFieldValuesMany=UF,i.deleteProcedureInitiative=rI,i.deleteProcedureInitiatives=dI,i.deleteProcedureStep=_P,i.deleteProcedureStepAssignee=CI,i.deleteProcedureStepAssignees=qI,i.deleteProcedureStepComment=XI,i.deleteProcedureStepComments=QI,i.deleteProcedureStepDefaultAssignee=oT,i.deleteProcedureStepDefaultAssignees=hT,i.deleteProcedureStepDefaultReviewer=_T,i.deleteProcedureStepDefaultReviewers=gT,i.deleteProcedureStepEvent=$T,i.deleteProcedureStepEvents=UT,i.deleteProcedureStepFieldValues=qO,i.deleteProcedureStepFieldValuesAttachment=bO,i.deleteProcedureStepFieldValuesAttachments=Kn,i.deleteProcedureStepFieldValuesMany=$O,i.deleteProcedureStepFieldValuesReview=XO,i.deleteProcedureStepFieldValuesReviews=Qn,i.deleteProcedureStepFields=hO,i.deleteProcedureStepFieldsAttachment=QT,i.deleteProcedureStepFieldsAttachments=Ln,i.deleteProcedureStepFieldsMany=mO,i.deleteProcedureStepReviewer=oP,i.deleteProcedureStepReviewers=hP,i.deleteProcedureSteps=gP,i.deleteProcedureType=xF,i.deleteProcedureTypeAttachment=qP,i.deleteProcedureTypeAttachments=$P,i.deleteProcedureTypeFields=hF,i.deleteProcedureTypeFieldsAttachment=QP,i.deleteProcedureTypeFieldsAttachments=xP,i.deleteProcedureTypeFieldsMany=mF,i.deleteProcedureTypes=eb,i.deleteProcedures=Rt,i.deleteProject=KA,i.deleteProjectAccess=Hf,i.deleteProjectAccesses=Wf,i.deleteProjectAttachment=nA,i.deleteProjectAttachments=aA,i.deleteProjectComment=AA,i.deleteProjectComments=IA,i.deleteProjectFile=VA,i.deleteProjectFiles=BA,i.deleteProjects=YA,i.deleteTeam=Rb,i.deleteTeamMembership=pb,i.deleteTeamMemberships=yb,i.deleteTeams=wb,i.deleteUser=An,i.deleteUsers=XS,i.dequeue=$b,i.discard=Lb,i.documentAttachmentReducer=gu,i.documentAttachmentSlice=Zs,i.documentSlice=Xs,i.documentsReducer=Cu,i.emailDomainsReducer=el,i.emailDomainsSlice=xs,i.emailRegex=R_,i.enqueue=qb,i.enqueueRequest=Bf,i.extractResponseFromError=Nb,i.fallbackToEmptyArray=f,i.fallbackToEmptyObject=As,i.fetchBlobFromObjectUrl=ka,i.fetchFileFromObjectUrl=Na,i.fileToBlob=Ua,i.formIdentifierReducer=pl,i.formIdentifierSlice=ti,i.formIdentifierValueReducer=Rl,i.formIdentifierValueSlice=ii,i.formReducer=go,i.formRevisionAttachmentReducer=kl,i.formRevisionAttachmentSlice=ni,i.formRevisionReducer=to,i.formRevisionsSlice=ai,i.formSlice=oi,i.formSubmissionCommentReducer=hh,i.formSubmissionCommentSlice=Fi,i.formSubmissionFieldValuesAttachmentReducer=Uo,i.formSubmissionFieldValuesAttachmentSlice=mi,i.formSubmissionFieldValuesReducer=xo,i.formSubmissionFieldValuesSlice=Ii,i.formSubmissionReducer=wh,i.formSubmissionSlice=gi,i.formSubscriberReducer=yo,i.formSubscriberSlice=di,i.geoImageReducer=Nh,i.geoImageSlice=Mi,i.getClientSDK=Zb,i.getClientStore=Et,i.getDocumentSubTree=tc,i.getDocumentTrees=w_,i.getFileExtension=La,i.getLocalDateString=$a,i.getLocalRelativeDateString=f_,i.getOutboxCoordinator=Pt,i.getPresignedUrlExpiryDate=Ka,i.getRenamedFile=T_,i.getRequestDescription=A,i.getS3FileKey=I_,i.hashFile=kt,i.initSDK=pw,i.initializeAssetAttachments=uc,i.initializeAssetComments=Pc,i.initializeAssetTypeAttachments=Zc,i.initializeAssetTypeFieldValues=Zr,i.initializeAssetTypeFieldValuesAttachments=jr,i.initializeAssetTypeFields=Pr,i.initializeAssetTypeFieldsAttachments=dr,i.initializeAssetTypeIdentifierValues=Fd,i.initializeAssetTypeIdentifiers=ud,i.initializeAssetTypeStatuses=Xd,i.initializeAssetTypes=Cd,i.initializeAssets=jc,i.initializeConversations=ic,i.initializeDocumentAttachments=pu,i.initializeDocuments=Ru,i.initializeEmailDomains=ku,i.initializeFormIdentifierValues=Sl,i.initializeFormIdentifiers=sl,i.initializeFormRevisionAttachments=vl,i.initializeFormRevisions=Gl,i.initializeFormSubmissionComments=th,i.initializeFormSubmissionFieldValues=ko,i.initializeFormSubmissionFieldValuesAttachments=Eo,i.initializeFormSubmissions=ph,i.initializeFormSubscribers=io,i.initializeForms=fo,i.initializeGeoImages=Eh,i.initializeIssueAssociations=Hh,i.initializeIssueAttachments=rm,i.initializeIssueCommentAttachments=Tm,i.initializeIssueComments=zm,i.initializeIssueTypeAttachments=cp,i.initializeIssueTypeFieldValues=zp,i.initializeIssueTypeFieldValuesAttachments=dy,i.initializeIssueTypeFields=Yp,i.initializeIssueTypeFieldsAttachments=Tp,i.initializeIssueTypeIdentifierValues=Dy,i.initializeIssueTypeIdentifiers=Oy,i.initializeIssueTypePriorities=Zy,i.initializeIssueTypeStatuses=PS,i.initializeIssueTypes=dS,i.initializeIssueUpdates=DS,i.initializeIssues=Km,i.initializeOrganizationAccesses=sf,i.initializeOrganizations=ff,i.initializeProcedureFieldValues=VF,i.initializeProcedureFieldValuesAttachments=IF,i.initializeProcedureInitiatives=eI,i.initializeProcedureStepAssignees=vI,i.initializeProcedureStepComments=GI,i.initializeProcedureStepDefaultAssignees=nT,i.initializeProcedureStepDefaultReviewers=AT,i.initializeProcedureStepEvents=VT,i.initializeProcedureStepFieldValues=EO,i.initializeProcedureStepFieldValuesAttachments=AO,i.initializeProcedureStepFieldValuesReviews=HO,i.initializeProcedureStepFields=aO,i.initializeProcedureStepFieldsAttachments=WT,i.initializeProcedureStepReviewers=nP,i.initializeProcedureSteps=AP,i.initializeProcedureTypeAttachments=EP,i.initializeProcedureTypeFields=aF,i.initializeProcedureTypeFieldsAttachments=HP,i.initializeProcedureTypes=WF,i.initializeProcedures=pI,i.initializeProjectAccesses=qf,i.initializeProjectAttachments=Xf,i.initializeProjectComments=oA,i.initializeProjectFiles=_A,i.initializeProjects=UA,i.initializeTeamMemberships=rb,i.initializeTeams=Ob,i.initializeUsers=HS,i.isCloudfrontUrl=Ha,i.isImageFile=O_,i.isObjectUrl=Ga,i.isPresignedUrlExpired=Ya,i.isS3Url=Wa,i.isToday=S_,i.issueAssociationReducer=am,i.issueAssociationSlice=wi,i.issueAttachmentReducer=Am,i.issueAttachmentSlice=vi,i.issueCommentAttachmentReducer=Vm,i.issueCommentAttachmentSlice=zi,i.issueCommentReducer=Hm,i.issueCommentSlice=ji,i.issueReducer=np,i.issueSlice=qi,i.issueTypeAttachmentReducer=Ap,i.issueTypeAttachmentSlice=Li,i.issueTypeFieldValuesAttachmentReducer=Iy,i.issueTypeFieldValuesAttachmentSlice=Ki,i.issueTypeFieldValuesReducer=Wp,i.issueTypeFieldValuesSlice=Hi,i.issueTypeFieldsAttachmentReducer=Vp,i.issueTypeFieldsAttachmentSlice=Ni,i.issueTypeFieldsReducer=cy,i.issueTypeFieldsSlice=Wi,i.issueTypeIdentifierReducer=By,i.issueTypeIdentifierSlice=Xi,i.issueTypeIdentifierValueReducer=Ky,i.issueTypeIdentifierValueSlice=xi,i.issueTypePriorityReducer=cS,i.issueTypePrioritySlice=en,i.issueTypePrioritySortFn=xa,i.issueTypeReducer=TS,i.issueTypeSlice=nn,i.issueTypeStatusReducer=BS,i.issueTypeStatusSlice=cn,i.issueTypeStatusSortFn=Qa,i.issueUpdateReducer=NS,i.issueUpdateSlice=un,i.logOnlyOnce=P_,i.markAsDeleted=zf,i.markForDeletion=Cg,i.memoize=fs,i.organizationAccessReducer=hf,i.organizationAccessSlice=Tn,i.organizationReducer=vf,i.organizationSlice=On,i.outboxReducer=jf,i.outboxSlice=Pn,i.overmapEnhancer=qM,i.overmapReducer=zM,i.overmapReducers=zb,i.performRequest=ba,i.performRequestFromAction=Ub,i.procedureFieldValuesAttachmentReducer=gF,i.procedureFieldValuesAttachmentSlice=da,i.procedureFieldValuesReducer=LF,i.procedureFieldValuesSlice=ha,i.procedureInitiativeReducer=uI,i.procedureInitiativeSlice=vn,i.procedureReducer=OI,i.procedureSlice=En,i.procedureStepAssigneeReducer=kI,i.procedureStepAssigneeSlice=Vn,i.procedureStepCommentReducer=sT,i.procedureStepCommentSlice=Bn,i.procedureStepDefaultAssigneeReducer=ST,i.procedureStepDefaultAssigneeSlice=zn,i.procedureStepDefaultReviewerReducer=vT,i.procedureStepDefaultReviewerSlice=jn,i.procedureStepEventReducer=GT,i.procedureStepEventSlice=qn,i.procedureStepFieldValuesAttachmentReducer=wO,i.procedureStepFieldValuesAttachmentSlice=Hn,i.procedureStepFieldValuesReducer=UO,i.procedureStepFieldValuesReviewReducer=sP,i.procedureStepFieldValuesReviewSlice=Jn,i.procedureStepFieldValuesSlice=Zn,i.procedureStepFieldsAttachmentReducer=iO,i.procedureStepFieldsAttachmentSlice=$n,i.procedureStepFieldsReducer=SO,i.procedureStepFieldsSlice=Nn,i.procedureStepReducer=MP,i.procedureStepReviewerReducer=SP,i.procedureStepReviewerSlice=xn,i.procedureStepSlice=ea,i.procedureTypeAttachmentReducer=UP,i.procedureTypeAttachmentSlice=ia,i.procedureTypeFieldsAttachmentReducer=eF,i.procedureTypeFieldsAttachmentSlice=aa,i.procedureTypeFieldsReducer=pF,i.procedureTypeFieldsSlice=ra,i.procedureTypeReducer=tb,i.procedureTypeSlice=pa,i.projectAccessReducer=Kf,i.projectAccessSlice=Fn,i.projectAttachmentReducer=uA,i.projectAttachmentSlice=_n,i.projectCommentReducer=FA,i.projectCommentSlice=Mn,i.projectFileReducer=qA,i.projectFileSlice=Rn,i.projectReducer=ZA,i.projectSlice=wn,i.rehydratedReducer=ab,i.rehydratedSlice=Sa,i.restructureSelectorWithArgs=y,i.runMiddleware=xb,i.selectAccessToken=X_,i.selectAccessesByUserOfProject=$g,i.selectAccessibleProjects=Gg,i.selectActiveOrganizationAccess=Bg,i.selectAllDocumentAttachments=Js,i.selectAssetAttachmentById=fc,i.selectAssetAttachmentMapping=Sc,i.selectAssetAttachments=_s,i.selectAssetAttachmentsByIds=Ac,i.selectAssetById=Hc,i.selectAssetCommentById=vc,i.selectAssetCommentMapping=wc,i.selectAssetComments=Ht,i.selectAssetCommentsByIds=Ec,i.selectAssetTypeAttachmentById=ir,i.selectAssetTypeAttachmentMapping=sr,i.selectAssetTypeAttachments=Bs,i.selectAssetTypeAttachmentsByIds=nr,i.selectAssetTypeById=Kd,i.selectAssetTypeFieldValues=Kt,i.selectAssetTypeFieldValuesAttachmentById=Gr,i.selectAssetTypeFieldValuesAttachments=Us,i.selectAssetTypeFieldValuesAttachmentsByIds=Hr,i.selectAssetTypeFieldValuesAttachmentsMapping=Nr,i.selectAssetTypeFieldValuesById=ad,i.selectAssetTypeFieldValuesByIds=cd,i.selectAssetTypeFieldValuesMapping=nd,i.selectAssetTypeFieldValuesOfAsset=k_,i.selectAssetTypeFields=Bt,i.selectAssetTypeFieldsAttachmentById=Ar,i.selectAssetTypeFieldsAttachments=Ds,i.selectAssetTypeFieldsAttachmentsByIds=Ir,i.selectAssetTypeFieldsAttachmentsMapping=fr,i.selectAssetTypeFieldsById=Vr,i.selectAssetTypeFieldsByIds=Br,i.selectAssetTypeFieldsMapping=Er,i.selectAssetTypeFieldsOfAssetType=U_,i.selectAssetTypeIdentifierById=Id,i.selectAssetTypeIdentifierMapping=Ad,i.selectAssetTypeIdentifierValueById=Bd,i.selectAssetTypeIdentifierValueMapping=Vd,i.selectAssetTypeIdentifierValues=Yt,i.selectAssetTypeIdentifierValuesByIds=zd,i.selectAssetTypeIdentifierValuesOfAsset=H_,i.selectAssetTypeIdentifierValuesOfIdentifier=W_,i.selectAssetTypeIdentifiers=Ns,i.selectAssetTypeIdentifiersByIds=Td,i.selectAssetTypeIdentifiersOfAssetType=G_,i.selectAssetTypeStatusById=ru,i.selectAssetTypeStatusMapping=cu,i.selectAssetTypeStatuses=Ys,i.selectAssetTypeStatusesByIds=du,i.selectAssetTypeStatusesOfAssetType=Y_,i.selectAssetTypeValuesOfAssetType=N_,i.selectAssetTypes=Ws,i.selectAssetTypesByIds=Yd,i.selectAssetTypesMapping=Wd,i.selectAssetTypesOfOrganization=K_,i.selectAssets=Wt,i.selectAssetsByIds=Wc,i.selectAssetsMapping=Nc,i.selectAssetsOfAssetType=Gc,i.selectAssetsOfProject=q_,i.selectAttachmentsOfAsset=Ic,i.selectAttachmentsOfAssetType=ar,i.selectAttachmentsOfAssetTypeFieldValues=Wr,i.selectAttachmentsOfAssetTypeFields=$_,i.selectAttachmentsOfDocument=x_,i.selectAttachmentsOfFormRevision=cg,i.selectAttachmentsOfFormSubmissionFieldValues=$o,i.selectAttachmentsOfIssue=ym,i.selectAttachmentsOfIssueComment=Sg,i.selectAttachmentsOfIssueType=Ig,i.selectAttachmentsOfIssueTypeFieldValues=Ay,i.selectAttachmentsOfIssueTypeFields=Tg,i.selectAttachmentsOfProcedureFieldValues=vF,i.selectAttachmentsOfProcedureStepFieldValues=RO,i.selectAttachmentsOfProcedureStepFields=eO,i.selectAttachmentsOfProcedureType=OM,i.selectAttachmentsOfProcedureTypeFields=PM,i.selectAttachmentsOfProject=Lg,i.selectCommentsOfAsset=Vc,i.selectCommentsOfAssets=Bc,i.selectCommentsOfFormSubmission=oh,i.selectCommentsOfFormSubmissions=lg,i.selectCommentsOfIssue=fg,i.selectCommentsOfProject=kg,i.selectCommentsOfProjects=Ng,i.selectConversation=C_,i.selectConversationMapping=Os,i.selectConversations=j_,i.selectCurrentUser=xS,i.selectDeletedRequests=Dg,i.selectDescendantsOfDocument=Uu,i.selectDocumentAttachmentById=bu,i.selectDocumentAttachmentMapping=Fu,i.selectDocumentAttachmentsByIds=_u,i.selectDocumentById=qu,i.selectDocuments=Jt,i.selectDocumentsByIds=$u,i.selectDocumentsMapping=Qs,i.selectEmailDomainById=Qu,i.selectEmailDomains=ei,i.selectEmailDomainsAsMapping=Xu,i.selectEmailDomainsByIds=xu,i.selectEmailDomainsOfOrganization=sg,i.selectFieldValuesOfProcedure=_M,i.selectFormById=Ro,i.selectFormIdentifierById=hl,i.selectFormIdentifierMapping=ol,i.selectFormIdentifierValueById=gl,i.selectFormIdentifierValueMapping=_l,i.selectFormIdentifierValues=Xt,i.selectFormIdentifierValuesByIds=Ml,i.selectFormIdentifierValuesOfFormSubmission=ng,i.selectFormIdentifierValuesOfIdentifier=ag,i.selectFormIdentifiers=si,i.selectFormIdentifiersByIds=ml,i.selectFormIdentifiersOfForm=ig,i.selectFormMapping=Mo,i.selectFormRevisionAttachmentById=Ul,i.selectFormRevisionAttachments=$l,i.selectFormRevisionAttachmentsByIds=Ll,i.selectFormRevisionAttachmentsMapping=Qt,i.selectFormRevisionById=Ql,i.selectFormRevisionMapping=Xl,i.selectFormRevisions=xt,i.selectFormRevisionsByIds=xl,i.selectFormRevisionsOfForm=eo,i.selectFormSubmissionById=Ph,i.selectFormSubmissionCommentById=uh,i.selectFormSubmissionCommentMapping=dh,i.selectFormSubmissionComments=ts,i.selectFormSubmissionCommentsByIds=lh,i.selectFormSubmissionFieldValues=Pi,i.selectFormSubmissionFieldValuesAttachmentById=qo,i.selectFormSubmissionFieldValuesAttachments=fi,i.selectFormSubmissionFieldValuesAttachmentsByIds=Ai,i.selectFormSubmissionFieldValuesAttachmentsMapping=Si,i.selectFormSubmissionFieldValuesById=Jo,i.selectFormSubmissionFieldValuesByIds=Xo,i.selectFormSubmissionFieldValuesMapping=Zo,i.selectFormSubmissionFieldValuesOfFormSubmission=Qo,i.selectFormSubmissions=G,i.selectFormSubmissionsByIds=Fh,i.selectFormSubmissionsMapping=Oh,i.selectFormSubmissionsOfAsset=Mh,i.selectFormSubmissionsOfAssets=Rh,i.selectFormSubmissionsOfForm=bh,i.selectFormSubmissionsOfIssue=_h,i.selectFormSubmissionsOfIssues=gh,i.selectFormSubmissionsOfOrganization=og,i.selectFormSubmissionsOfOrganizationAndForm=pg,i.selectFormSubmissionsOfProject=hg,i.selectFormSubmissionsOfProjectAndForm=mg,i.selectFormSubscriberById=ho,i.selectFormSubscriberMapping=oo,i.selectFormSubscribers=es,i.selectFormSubscribersByIds=mo,i.selectFormSubscribersOfForm=po,i.selectFormSubscribersOfUser=dg,i.selectForms=hi,i.selectFormsByIds=wo,i.selectFormsOfOrganization=ug,i.selectGeoImageById=Lh,i.selectGeoImageMapping=Uh,i.selectGeoImages=Ri,i.selectGeoImagesByIds=kh,i.selectGeoImagesOfProject=yg,i.selectIsLoggedIn=Q_,i.selectIssueAssociationById=xh,i.selectIssueAssociationMapping=Qh,i.selectIssueAssociations=gt,i.selectIssueAssociationsByIds=em,i.selectIssueAssociationsOfAsset=im,i.selectIssueAssociationsOfAssets=nm,i.selectIssueAssociationsOfIssue=sm,i.selectIssueAssociationsOfIssues=tm,i.selectIssueAttachmentById=Sm,i.selectIssueAttachmentMapping=pm,i.selectIssueAttachments=Bi,i.selectIssueAttachmentsByIds=fm,i.selectIssueById=tp,i.selectIssueCommentAttachmentById=vm,i.selectIssueCommentAttachmentMapping=wm,i.selectIssueCommentAttachments=Di,i.selectIssueCommentAttachmentsByIds=Em,i.selectIssueCommentById=Nm,i.selectIssueCommentMapping=Ci,i.selectIssueCommentsByIds=Gm,i.selectIssueMapping=ep,i.selectIssueTypeAttachmentById=Sp,i.selectIssueTypeAttachmentMapping=yp,i.selectIssueTypeAttachments=ki,i.selectIssueTypeAttachmentsByIds=fp,i.selectIssueTypeById=AS,i.selectIssueTypeFieldValues=is,i.selectIssueTypeFieldValuesAttachmentById=Sy,i.selectIssueTypeFieldValuesAttachments=Ji,i.selectIssueTypeFieldValuesAttachmentsByIds=fy,i.selectIssueTypeFieldValuesAttachmentsMapping=yy,i.selectIssueTypeFieldValuesById=Gp,i.selectIssueTypeFieldValuesByIds=Hp,i.selectIssueTypeFieldValuesMapping=Np,i.selectIssueTypeFieldValuesOfIssue=Og,i.selectIssueTypeFields=zt,i.selectIssueTypeFieldsAttachmentById=vp,i.selectIssueTypeFieldsAttachments=Gi,i.selectIssueTypeFieldsAttachmentsByIds=Ep,i.selectIssueTypeFieldsAttachmentsMapping=wp,i.selectIssueTypeFieldsById=ny,i.selectIssueTypeFieldsByIds=ay,i.selectIssueTypeFieldsMapping=iy,i.selectIssueTypeFieldsOfIssueType=Pg,i.selectIssueTypeIdentifierById=Ey,i.selectIssueTypeIdentifierMapping=vy,i.selectIssueTypeIdentifierValueById=Hy,i.selectIssueTypeIdentifierValueMapping=Gy,i.selectIssueTypeIdentifierValues=ns,i.selectIssueTypeIdentifierValuesByIds=Wy,i.selectIssueTypeIdentifierValuesOfIdentifier=Mg,i.selectIssueTypeIdentifierValuesOfIssue=gg,i.selectIssueTypeIdentifiers=Qi,i.selectIssueTypeIdentifiersByIds=Vy,i.selectIssueTypeIdentifiersOfIssueType=_g,i.selectIssueTypeMapping=fS,i.selectIssueTypePriorities=tn,i.selectIssueTypePrioritiesByIds=aS,i.selectIssueTypePrioritiesOfIssueType=Rg,i.selectIssueTypePriorityById=sn,i.selectIssueTypePriorityMapping=nS,i.selectIssueTypeStatusById=dn,i.selectIssueTypeStatusMapping=ES,i.selectIssueTypeStatuses=rn,i.selectIssueTypeStatusesByIds=VS,i.selectIssueTypeStatusesOfIssueType=vg,i.selectIssueTypeValuesOfIssueType=bg,i.selectIssueTypes=an,i.selectIssueTypesByIds=IS,i.selectIssueTypesOfOrganization=wg,i.selectIssueUpdateById=US,i.selectIssueUpdateMapping=pn,i.selectIssueUpdates=yn,i.selectIssueUpdatesByIds=LS,i.selectIssueUpdatesOfIssue=kS,i.selectIssues=ss,i.selectIssuesByIds=sp,i.selectIssuesOfIssueType=ip,i.selectIssuesOfProject=Ag,i.selectLatestAssetTypeFieldsOfAssetType=L_,i.selectLatestFieldsByProcedureStep=dM,i.selectLatestFormRevisionOfForm=rg,i.selectLatestIssueTypeFieldsOfIssueType=Fg,i.selectLatestProcedureStepFieldValuesReviewByProcedureStepFieldValues=yM,i.selectLatestProcedureStepFieldsOfProcedureStep=rM,i.selectLatestProcedureTypeFieldsOfProcedureType=bM,i.selectLatestRetryTime=jg,i.selectLatestReviewOfProcedureStepFieldValues=hM,i.selectMembershipsByUserOfTeam=vM,i.selectOrganizationAccessById=mf,i.selectOrganizationAccessMapping=rs,i.selectOrganizationAccessUserMapping=yf,i.selectOrganizationAccessesByIds=pf,i.selectOrganizationById=Rf,i.selectOrganizationDocuments=tg,i.selectOrganizations=Mf,i.selectOrganizationsByIds=wf,i.selectOrganizationsMapping=gf,i.selectProcedureById=FI,i.selectProcedureFieldValues=ma,i.selectProcedureFieldValuesAttachmentById=RF,i.selectProcedureFieldValuesAttachments=oa,i.selectProcedureFieldValuesAttachmentsByIds=wF,i.selectProcedureFieldValuesAttachmentsMapping=MF,i.selectProcedureFieldValuesById=NF,i.selectProcedureFieldValuesByIds=GF,i.selectProcedureFieldValuesMapping=kF,i.selectProcedureInitiativeById=oI,i.selectProcedureInitiatives=ls,i.selectProcedureInitiativesByIds=hI,i.selectProcedureInitiativesMapping=lI,i.selectProcedureInitiativesOfProcedureType=Kg,i.selectProcedureInitiativesOfProject=Wg,i.selectProcedureStepAssigneeById=UI,i.selectProcedureStepAssignees=jt,i.selectProcedureStepAssigneesByIds=LI,i.selectProcedureStepAssigneesMapping=$I,i.selectProcedureStepAssigneesOfProcedure=Zg,i.selectProcedureStepAssigneesOfProcedureAndProcedureStep=Xg,i.selectProcedureStepAssigneesOfProcedureStep=Jg,i.selectProcedureStepById=RP,i.selectProcedureStepCommentById=eT,i.selectProcedureStepComments=Ct,i.selectProcedureStepCommentsByIds=tT,i.selectProcedureStepCommentsMapping=xI,i.selectProcedureStepCommentsOfProcedure=Qg,i.selectProcedureStepCommentsOfProcedureAndProcedureStep=eM,i.selectProcedureStepCommentsOfProcedureStep=xg,i.selectProcedureStepDefaultAssigneeById=pT,i.selectProcedureStepDefaultAssignees=Dn,i.selectProcedureStepDefaultAssigneesByIds=yT,i.selectProcedureStepDefaultAssigneesMapping=mT,i.selectProcedureStepDefaultAssigneesOfProcedureStep=tM,i.selectProcedureStepDefaultReviewerById=RT,i.selectProcedureStepDefaultReviewers=Cn,i.selectProcedureStepDefaultReviewersByIds=wT,i.selectProcedureStepDefaultReviewersMapping=MT,i.selectProcedureStepDefaultReviewersOfProcedureStep=sM,i.selectProcedureStepEventById=kT,i.selectProcedureStepEvents=qt,i.selectProcedureStepEventsByIds=NT,i.selectProcedureStepEventsMapping=LT,i.selectProcedureStepEventsOfProcedure=iM,i.selectProcedureStepEventsOfProcedureAndProcedureStep=aM,i.selectProcedureStepEventsOfProcedureStep=nM,i.selectProcedureStepFieldValues=At,i.selectProcedureStepFieldValuesAttachmentById=gO,i.selectProcedureStepFieldValuesAttachments=Yn,i.selectProcedureStepFieldValuesAttachmentsByIds=MO,i.selectProcedureStepFieldValuesAttachmentsMapping=_O,i.selectProcedureStepFieldValuesById=kO,i.selectProcedureStepFieldValuesByIds=NO,i.selectProcedureStepFieldValuesMapping=LO,i.selectProcedureStepFieldValuesOfProcedure=uM,i.selectProcedureStepFieldValuesOfProcedureAndProcedureStep=oM,i.selectProcedureStepFieldValuesOfProcedureStep=lM,i.selectProcedureStepFieldValuesReviewById=xO,i.selectProcedureStepFieldValuesReviews=It,i.selectProcedureStepFieldValuesReviewsByIds=eP,i.selectProcedureStepFieldValuesReviewsMapping=QO,i.selectProcedureStepFieldValuesReviewsOfProcedure=mM,i.selectProcedureStepFieldValuesReviewsOfProcedureAndProcedureStep=pM,i.selectProcedureStepFields=os,i.selectProcedureStepFieldsAttachmentById=tO,i.selectProcedureStepFieldsAttachments=kn,i.selectProcedureStepFieldsAttachmentsByIds=sO,i.selectProcedureStepFieldsAttachmentsMapping=xT,i.selectProcedureStepFieldsById=pO,i.selectProcedureStepFieldsByIds=yO,i.selectProcedureStepFieldsMapping=Gn,i.selectProcedureStepFieldsOfProcedureStep=cM,i.selectProcedureStepReviewerById=pP,i.selectProcedureStepReviewers=$t,i.selectProcedureStepReviewersByIds=yP,i.selectProcedureStepReviewersMapping=mP,i.selectProcedureStepReviewersOfProcedure=SM,i.selectProcedureStepReviewersOfProcedureAndProcedureStep=AM,i.selectProcedureStepReviewersOfProcedureStep=fM,i.selectProcedureSteps=sa,i.selectProcedureStepsByIds=wP,i.selectProcedureStepsMapping=ta,i.selectProcedureStepsMappingOfProcedureType=IM,i.selectProcedureStepsOfProcedureType=TM,i.selectProcedureTypeAttachmentById=kP,i.selectProcedureTypeAttachmentMapping=LP,i.selectProcedureTypeAttachments=na,i.selectProcedureTypeAttachmentsByIds=NP,i.selectProcedureTypeById=ib,i.selectProcedureTypeFields=hs,i.selectProcedureTypeFieldsAttachmentById=sF,i.selectProcedureTypeFieldsAttachments=ca,i.selectProcedureTypeFieldsAttachmentsByIds=iF,i.selectProcedureTypeFieldsAttachmentsMapping=tF,i.selectProcedureTypeFieldsById=SF,i.selectProcedureTypeFieldsByIds=fF,i.selectProcedureTypeFieldsMapping=yF,i.selectProcedureTypeFieldsOfProcedureType=FM,i.selectProcedureTypes=ya,i.selectProcedureTypesByIds=nb,i.selectProcedureTypesMapping=sb,i.selectProcedureTypesOfOrganization=gM,i.selectProcedures=ft,i.selectProceduresByIds=bI,i.selectProceduresMapping=PI,i.selectProceduresOfAsset=gI,i.selectProceduresOfAssets=MI,i.selectProceduresOfProcedureInitiative=RI,i.selectProceduresOfProcedureType=_I,i.selectProceduresOfProject=Yg,i.selectProjectAccessById=Yf,i.selectProjectAccessMapping=bn,i.selectProjectAccesses=Dt,i.selectProjectAccessesByIds=Zf,i.selectProjectAccessesOfProject=qg,i.selectProjectAttachmentById=rA,i.selectProjectAttachmentMapping=cA,i.selectProjectAttachments=gn,i.selectProjectAttachmentsByIds=dA,i.selectProjectById=XA,i.selectProjectCommentById=OA,i.selectProjectCommentMapping=TA,i.selectProjectComments=ds,i.selectProjectCommentsByIds=PA,i.selectProjectDocuments=eg,i.selectProjectFileById=jA,i.selectProjectFileMapping=zA,i.selectProjectFiles=DA,i.selectProjectFilesByIds=CA,i.selectProjectMapping=JA,i.selectProjects=us,i.selectProjectsByIds=QA,i.selectProjectsOfOrganization=Hg,i.selectRehydrated=wM,i.selectReviewsOfProcedureStepFieldValues=tP,i.selectTeamById=Eb,i.selectTeamMembershipById=Ab,i.selectTeamMemberships=ms,i.selectTeamMembershipsByIds=Ib,i.selectTeamMembershipsMapping=fb,i.selectTeams=Ia,i.selectTeamsByIds=Vb,i.selectTeamsMapping=vb,i.selectTeamsOfOrganization=VM,i.selectUserById=cs,i.selectUsers=as,i.selectUsersByIds=ef,i.selectUsersMapping=In,i.selectUsersOfOrganization=zg,i.selectUsersOfProject=Ug,i.selectUsersOfTeam=EM,i.setAsset=Lc,i.setAssetAttachment=oc,i.setAssetAttachments=hc,i.setAssetComment=bc,i.setAssetComments=_c,i.setAssetType=qd,i.setAssetTypeAttachment=Xc,i.setAssetTypeAttachments=Qc,i.setAssetTypeFieldValues=Qr,i.setAssetTypeFieldValuesAttachment=qr,i.setAssetTypeFieldValuesAttachments=$r,i.setAssetTypeFieldValuesMany=xr,i.setAssetTypeFields=_r,i.setAssetTypeFieldsAttachment=or,i.setAssetTypeFieldsAttachments=hr,i.setAssetTypeFieldsMany=gr,i.setAssetTypeIdentifier=hd,i.setAssetTypeIdentifierValue=gd,i.setAssetTypeIdentifierValues=Md,i.setAssetTypeIdentifiers=md,i.setAssetTypeStatus=eu,i.setAssetTypeStatuses=tu,i.setAssetTypes=$d,i.setAssets=kc,i.setClientSDK=Yb,i.setClientStore=Wb,i.setConversation=ac,i.setConversations=V_,i.setCurrentUser=Eg,i.setCurrentUserProfile=Vg,i.setDocument=Eu,i.setDocumentAttachment=fu,i.setDocumentAttachments=Au,i.setDocuments=Vu,i.setEmailDomain=Hu,i.setEmailDomains=Wu,i.setForm=To,i.setFormIdentifier=al,i.setFormIdentifierValue=Il,i.setFormIdentifierValues=Tl,i.setFormIdentifiers=cl,i.setFormRevision=Wl,i.setFormRevisionAttachment=Bl,i.setFormRevisionAttachments=zl,i.setFormRevisions=Kl,i.setFormSubmission=yh,i.setFormSubmissionComment=ih,i.setFormSubmissionComments=nh,i.setFormSubmissionFieldValues=Go,i.setFormSubmissionFieldValuesAttachment=Bo,i.setFormSubmissionFieldValuesAttachments=zo,i.setFormSubmissionFieldValuesMany=Ho,i.setFormSubmissions=Sh,i.setFormSubscriber=ao,i.setFormSubscribers=co,i.setForms=Oo,i.setGeoImage=Vh,i.setGeoImages=Bh,i.setIssue=Zm,i.setIssueAssociation=Kh,i.setIssueAssociations=Wh,i.setIssueAttachment=um,i.setIssueAttachments=lm,i.setIssueComment=Cm,i.setIssueCommentAttachment=Fm,i.setIssueCommentAttachments=bm,i.setIssueComments=qm,i.setIssueType=oS,i.setIssueTypeAttachment=up,i.setIssueTypeAttachments=lp,i.setIssueTypeFieldValues=Cp,i.setIssueTypeFieldValuesAttachment=ly,i.setIssueTypeFieldValuesAttachments=oy,i.setIssueTypeFieldValuesMany=qp,i.setIssueTypeFields=Xp,i.setIssueTypeFieldsAttachment=Fp,i.setIssueTypeFieldsAttachments=bp,i.setIssueTypeFieldsMany=Qp,i.setIssueTypeIdentifier=by,i.setIssueTypeIdentifierValue=qy,i.setIssueTypeIdentifierValues=$y,i.setIssueTypeIdentifiers=_y,i.setIssueTypePriorities=xy,i.setIssueTypePriority=Qy,i.setIssueTypeStatus=_S,i.setIssueTypeStatuses=gS,i.setIssueTypes=hS,i.setIssueUpdate=jS,i.setIssueUpdates=CS,i.setIssues=Jm,i.setLoggedIn=ou,i.setOrganization=If,i.setOrganizationAccess=cf,i.setOrganizationAccesses=rf,i.setOrganizations=Af,i.setProcedure=SI,i.setProcedureFieldValues=DF,i.setProcedureFieldValuesAttachment=OF,i.setProcedureFieldValuesAttachments=PF,i.setProcedureFieldValuesMany=jF,i.setProcedureInitiative=iI,i.setProcedureInitiatives=nI,i.setProcedureStep=IP,i.setProcedureStepAssignee=BI,i.setProcedureStepAssignees=zI,i.setProcedureStepComment=KI,i.setProcedureStepComments=YI,i.setProcedureStepDefaultAssignee=rT,i.setProcedureStepDefaultAssignees=dT,i.setProcedureStepDefaultReviewer=OT,i.setProcedureStepDefaultReviewers=PT,i.setProcedureStepEvent=DT,i.setProcedureStepEvents=jT,i.setProcedureStepFieldValues=zO,i.setProcedureStepFieldValuesAttachment=TO,i.setProcedureStepFieldValuesAttachments=OO,i.setProcedureStepFieldValuesMany=DO,i.setProcedureStepFieldValuesReview=KO,i.setProcedureStepFieldValuesReviews=YO,i.setProcedureStepFields=dO,i.setProcedureStepFieldsAttachment=YT,i.setProcedureStepFieldsAttachments=ZT,i.setProcedureStepFieldsMany=uO,i.setProcedureStepReviewer=rP,i.setProcedureStepReviewers=dP,i.setProcedureSteps=TP,i.setProcedureType=ZF,i.setProcedureTypeAttachment=zP,i.setProcedureTypeAttachments=DP,i.setProcedureTypeFields=dF,i.setProcedureTypeFieldsAttachment=YP,i.setProcedureTypeFieldsAttachments=ZP,i.setProcedureTypeFieldsMany=uF,i.setProcedureTypes=JF,i.setProcedures=fI,i.setProject=kA,i.setProjectAccess=Lf,i.setProjectAccesses=kf,i.setProjectAttachment=eA,i.setProjectAttachments=tA,i.setProjectComment=pA,i.setProjectComments=yA,i.setProjectFile=gA,i.setProjectFiles=MA,i.setProjects=LA,i.setRehydrated=RM,i.setTeam=bb,i.setTeamMembership=lb,i.setTeamMemberships=ob,i.setTeams=_b,i.setTokens=Z_,i.setUser=KS,i.setUsers=WS,i.shallowEqual=h_,i.slugify=g_,i.spacesToDashesLower=__,i.submittedAtModelSortFn=pt,i.teamMembershipReducer=Sb,i.teamMembershipSlice=fa,i.teamReducer=Bb,i.teamSlice=Aa,i.toFileNameSafeString=b_,i.toUuidArray=w,i.toUuidIdRecord=F_,i.truncate=M_,i.updateAsset=qc,i.updateAssetAttachment=mc,i.updateAssetAttachments=pc,i.updateAssetComment=gc,i.updateAssetComments=Mc,i.updateAssetType=kd,i.updateAssetTypeAttachment=xc,i.updateAssetTypeAttachments=er,i.updateAssetTypeFieldValues=ed,i.updateAssetTypeFieldValuesAttachment=Ur,i.updateAssetTypeFieldValuesAttachments=Lr,i.updateAssetTypeFieldValuesMany=td,i.updateAssetTypeFields=Mr,i.updateAssetTypeFieldsAttachment=mr,i.updateAssetTypeFieldsAttachments=pr,i.updateAssetTypeFieldsMany=Rr,i.updateAssetTypeIdentifier=pd,i.updateAssetTypeIdentifierValue=Rd,i.updateAssetTypeIdentifierValues=wd,i.updateAssetTypeIdentifiers=yd,i.updateAssetTypeStatus=su,i.updateAssetTypeStatuses=iu,i.updateAssetTypes=Nd,i.updateAssets=$c,i.updateConversation=cc,i.updateConversations=B_,i.updateDocument=Bu,i.updateDocumentAttachment=Iu,i.updateDocumentAttachments=Tu,i.updateDocuments=zu,i.updateEmailDomain=Ku,i.updateEmailDomains=Yu,i.updateForm=Po,i.updateFormIdentifier=rl,i.updateFormIdentifierValue=Ol,i.updateFormIdentifierValues=Pl,i.updateFormIdentifiers=dl,i.updateFormRevision=Yl,i.updateFormRevisionAttachment=Dl,i.updateFormRevisionAttachments=jl,i.updateFormRevisions=Zl,i.updateFormSubmission=Ah,i.updateFormSubmissionComment=ah,i.updateFormSubmissionComments=ch,i.updateFormSubmissionFieldValues=Wo,i.updateFormSubmissionFieldValuesAttachment=Do,i.updateFormSubmissionFieldValuesAttachments=jo,i.updateFormSubmissionFieldValuesMany=Ko,i.updateFormSubmissions=Ih,i.updateFormSubscriber=ro,i.updateFormSubscribers=uo,i.updateForms=Fo,i.updateGeoImage=jh,i.updateGeoImages=Ch,i.updateIssue=Xm,i.updateIssueAssociation=Yh,i.updateIssueAssociations=Zh,i.updateIssueAttachment=om,i.updateIssueAttachments=hm,i.updateIssueComment=$m,i.updateIssueCommentAttachment=_m,i.updateIssueCommentAttachments=gm,i.updateIssueComments=Um,i.updateIssueType=mS,i.updateIssueTypeAttachment=op,i.updateIssueTypeAttachments=hp,i.updateIssueTypeFieldValues=$p,i.updateIssueTypeFieldValuesAttachment=hy,i.updateIssueTypeFieldValuesAttachments=my,i.updateIssueTypeFieldValuesMany=Up,i.updateIssueTypeFields=xp,i.updateIssueTypeFieldsAttachment=_p,i.updateIssueTypeFieldsAttachments=gp,i.updateIssueTypeFieldsMany=ey,i.updateIssueTypeIdentifier=gy,i.updateIssueTypeIdentifierValue=Uy,i.updateIssueTypeIdentifierValues=Ly,i.updateIssueTypeIdentifiers=My,i.updateIssueTypePriorities=tS,i.updateIssueTypePriority=eS,i.updateIssueTypeStatus=MS,i.updateIssueTypeStatuses=RS,i.updateIssueTypes=pS,i.updateIssueUpdate=qS,i.updateIssueUpdates=$S,i.updateIssues=Qm,i.updateOrganization=Ff,i.updateOrganizationAccess=df,i.updateOrganizationAccesses=uf,i.updateOrganizations=Pf,i.updateProcedure=AI,i.updateProcedureFieldValues=CF,i.updateProcedureFieldValuesAttachment=FF,i.updateProcedureFieldValuesAttachments=bF,i.updateProcedureFieldValuesMany=qF,i.updateProcedureInitiative=aI,i.updateProcedureInitiatives=cI,i.updateProcedureStep=FP,i.updateProcedureStepAssignee=DI,i.updateProcedureStepAssignees=jI,i.updateProcedureStepComment=ZI,i.updateProcedureStepComments=JI,i.updateProcedureStepDefaultAssignee=uT,i.updateProcedureStepDefaultAssignees=lT,i.updateProcedureStepDefaultReviewer=FT,i.updateProcedureStepDefaultReviewers=bT,i.updateProcedureStepEvent=CT,i.updateProcedureStepEvents=qT,i.updateProcedureStepFieldValues=jO,i.updateProcedureStepFieldValuesAttachment=PO,i.updateProcedureStepFieldValuesAttachments=FO,i.updateProcedureStepFieldValuesMany=CO,i.updateProcedureStepFieldValuesReview=ZO,i.updateProcedureStepFieldValuesReviews=JO,i.updateProcedureStepFields=lO,i.updateProcedureStepFieldsAttachment=JT,i.updateProcedureStepFieldsAttachments=XT,i.updateProcedureStepFieldsMany=oO,i.updateProcedureStepReviewer=uP,i.updateProcedureStepReviewers=lP,i.updateProcedureSteps=bP,i.updateProcedureType=XF,i.updateProcedureTypeAttachment=jP,i.updateProcedureTypeAttachments=CP,i.updateProcedureTypeFields=lF,i.updateProcedureTypeFieldsAttachment=JP,i.updateProcedureTypeFieldsAttachments=XP,i.updateProcedureTypeFieldsMany=oF,i.updateProcedureTypes=QF,i.updateProcedures=II,i.updateProject=WA,i.updateProjectAccess=Nf,i.updateProjectAccesses=Gf,i.updateProjectAttachment=sA,i.updateProjectAttachments=iA,i.updateProjectComment=SA,i.updateProjectComments=fA,i.updateProjectFile=vA,i.updateProjectFiles=EA,i.updateProjects=HA,i.updateTeam=gb,i.updateTeamMembership=hb,i.updateTeamMemberships=mb,i.updateTeams=Mb,i.updateUser=JS,i.updateUsers=ZS,i.useSelectorBuilder=o_,i.userReducer=QS,i.userSlice=Sn,i.uuidObj=P,i.uuidObjSortFn=mt,i.uuidSortFn=Ja,Object.defineProperty(i,Symbol.toStringTag,{value:"Module"})});
13
+ external URLs and therefore not prepended with VITE_API_URL.`;throw new Error(f)}return await this.cacheFile(h),h}processPresignedUrl(e,i){if("warning"in i){if(i.warning==="already_uploaded")return Promise.resolve(void 0);throw console.error(i.warning),new Error(i.warning)}return this.enqueueRequest({url:i.url,description:"Upload file to S3",method:l.POST,isExternalUrl:!0,isAuthNeeded:!1,attachmentHash:e,blockers:[`s3-${i.fields.key}`,"s3-presigned-upload"],blocks:[e,"s3-presigned-upload"],s3url:i})}processPresignedUrls(e){const i={};for(const[n,a]of Object.entries(e))i[n]=this.processPresignedUrl(n,a);return i}async getFilePayload(e){const n={sha1:await Ut(e),file_type:e.type,extension:Da(e),size:e.size};return await this.client.files.cacheFile(e),n}async cachePresignedUrl(e,i){if(Sa.has(e))return;const n=await this.getDB();!!await n.get("presignedUrls",e)?console.warn(`Attempting to add a presigned url already cached, ${i}`):await n.put("presignedUrls",i,e),Sa.add(e)}async uncachePresignedUrl(e){await(await this.getDB()).delete("presignedUrls",e),Sa.delete(e)}async getPresignedUrlFromCache(e){const i=await(await this.getDB()).get("presignedUrls",e);if(!i)return;if(ka(i)){await this.uncachePresignedUrl(e);return}return i}}class UM extends w{name="Form Identifier";url="/form-identifiers";actions={addOne:Xu,addMany:Qu,setOne:xu,setMany:el,updateOne:tl,updateMany:sl,deleteOne:il,deleteMany:nl,initialize:Ju};selectors={selectById:cl,selectByIds:rl};add(e){const{addOne:i,updateOne:n,deleteOne:a}=this.actions,c=this.select(o=>o.userReducer.currentUser?.id??null),d=new Date().toISOString(),r=O({...e,created_by:c,submitted_at:d});this.dispatch(i(r));const h=this.enqueueRequest({description:y(l.POST,this.name,!1),method:l.POST,url:`${this.url}/`,payload:M(r),blockers:[r.form],blocks:[r.uuid]});return h.then(o=>{this.dispatch(n(o))}).catch(()=>{this.dispatch(a(r.uuid))}),[r,h]}update(e){const{updateOne:i}=this.actions,{selectById:n}=this.selectors,a=this.select(n(e.uuid));if(!a)throw new Error(`Expected form identifier with uuid ${e.uuid} to exist`);const c={...a,...e};this.dispatch(i(c));const d=this.enqueueRequest({description:y(l.PATCH,this.name,!1),method:l.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return d.then(r=>{this.dispatch(i(r))}).catch(()=>{this.dispatch(i(a))}),[c,d]}async delete(e){const{deleteOne:i,addOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e));if(!c)throw new Error(`Expected form identifier with uuid ${e} to exist`);this.dispatch(i(e));try{return await this.enqueueRequest({description:y(l.DELETE,this.name,!1),method:l.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(d){throw this.dispatch(n(c)),d}}async refreshStore(e,i){const{initialize:n}=this.actions,a=await this.list({queryParams:{form__organization:e}},i);return this.dispatch(n(a)),a}}class LM extends w{name="Form Identifier Value";url="/form-identifier-values";actions={addOne:ol,addMany:hl,setOne:ml,setMany:pl,updateOne:yl,updateMany:fl,deleteOne:Sl,deleteMany:Al,initialize:ll};selectors={selectById:Tl,selectByIds:Ol};add(e){const{addOne:i,updateOne:n,deleteOne:a}=this.actions,c=this.select(o=>o.userReducer.currentUser?.id??null),d=new Date().toISOString(),r=O({...e,created_by:c,submitted_at:d});this.dispatch(i(r));const h=this.enqueueRequest({description:y(l.POST,this.name,!1),method:l.POST,url:`${this.url}/`,payload:M(r),blockers:[e.form_submission,e.form_identifier],blocks:[r.uuid]});return h.then(o=>{this.dispatch(n(o))}).catch(()=>{this.dispatch(a(r.uuid))}),[r,h]}async delete(e){const{deleteOne:i,addOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e));if(!c)throw new Error(`Expected form identifier value with uuid ${e} to exist`);this.dispatch(i(e));try{return await this.enqueueRequest({description:y(l.DELETE,this.name,!1),method:l.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(d){throw this.dispatch(n(c)),d}}async refreshStore(e,i){const{initialize:n}=this.actions,c=(await Promise.all([this.listPaginated({queryParams:{latest:!0,form_submission__organization:e}},i),this.listPaginated({queryParams:{latest:!0,form_submission__project__organization:e}},i)])).flatMap(d=>d.flat());return this.dispatch(n(c)),c}}class kM extends B{name="Form Revision Attachment";url="/form-revision-attachments";actions={addOne:_l,addMany:gl,setOne:Ml,setMany:Rl,updateOne:wl,updateMany:vl,deleteOne:El,deleteMany:Vl,initialize:bl};selectors={selectById:zl,selectByIds:Dl};getId(e){return e.uuid}getBlockers(e){return[e.form_revision]}getBlocks(e){return[e.uuid]}buildModel(e){const i=this.select(a=>a.userReducer.currentUser?.id??null),n=new Date().toISOString();return O({...e,created_by:i,submitted_at:n})}buildPayload(e){const{uuid:i,field_identifier:n,form_revision:a,file_sha1:c,file_name:d,file_extension:r}=e;return{uuid:i,submitted_at:e.submitted_at,field_identifier:n,form_revision:a,file_sha1:c,file_name:d,file_extension:r}}buildBulkPayload(e){const{uuid:i,field_identifier:n,form_revision:a,file_sha1:c,file_name:d,file_extension:r}=e;return{uuid:i,field_identifier:n,form_revision:a,file_sha1:c,file_name:d,file_extension:r}}async refreshStore(e,i){const{initialize:n}=this.actions,a=await this.list({queryParams:{form_revision__form__organization:e}},i);return this.dispatch(n(a)),a}}class NM extends w{name="Form Revision";url="/form-revisions";actions={addOne:$l,addMany:ii,setOne:Ul,setMany:Ll,updateOne:kl,updateMany:Nl,deleteOne:Gl,deleteMany:ni,initialize:Cl};selectors={selectById:Wl,selectByIds:Kl};add(e){const{addOne:i,updateOne:n,deleteOne:a}=this.actions,c=this.select(o=>o.userReducer.currentUser?.id??null),d=new Date().toISOString(),r=O({...e,created_by:c,submitted_at:d});this.dispatch(i(r));const h=this.enqueueRequest({description:y(l.POST,this.name,!1),method:l.POST,url:`${this.url}/`,payload:M(r),blockers:[e.form],blocks:[r.uuid]});return h.then(o=>{this.dispatch(n(o))}).catch(()=>{this.dispatch(a(r.uuid))}),[r,h]}async refreshStore(e,i){const{initialize:n}=this.actions,a=await this.list({queryParams:{form__organization:e}},i);return this.dispatch(n(a)),a}}class GM extends w{name="Form";url="/forms";actions={addOne:ho,addMany:mo,setOne:po,setMany:yo,updateOne:fo,updateMany:So,deleteOne:Ao,deleteMany:Io,initialize:oo};selectors={selectById:Po,selectByIds:Fo};add(e){const{addOne:i,updateOne:n,deleteOne:a}=this.actions,c=new Date().toISOString(),d=this.select(o=>o.userReducer.currentUser?.id??null),r=O({...e,submitted_at:c,created_by:d});this.dispatch(i(r));const h=this.enqueueRequest({description:y(l.POST,this.name,!1),method:l.POST,url:`${this.url}/`,payload:M(r),blockers:[],blocks:[r.uuid]});return h.then(o=>{this.dispatch(n(o))}).catch(()=>{this.dispatch(a(r.uuid))}),[r,h]}update(e){const{updateOne:i}=this.actions,{selectById:n}=this.selectors,a=this.select(n(e.uuid));if(!a)throw new Error(`Expected form with uuid ${e.uuid} to exist`);const c={...a,...e};this.dispatch(i(c));const d=this.enqueueRequest({description:y(l.PATCH,this.name,!1),method:l.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[a.uuid],blocks:[a.uuid]});return d.then(r=>{this.dispatch(i(r))}).catch(()=>{this.dispatch(i(a))}),[c,d]}async delete(e){const{deleteOne:i,addOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e));if(!c)throw new Error("Expected form to exist");const d=this.select(ah(e)),r=this.select(Yl(e)),h=this.select(ro(e));this.dispatch(i(e)),this.dispatch(ot(R(d))),this.dispatch(ni(R(r))),this.dispatch(ri(R(h)));try{return await this.enqueueRequest({description:y(l.DELETE,this.name,!1),method:l.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(o){throw this.dispatch(n(c)),this.dispatch(ii(r)),this.dispatch(lt(d)),this.dispatch(ci(h)),o}}async refreshStore(e,i){const{initialize:n}=this.actions,a=await this.list({queryParams:{organization:e}},i);return this.dispatch(n(a)),a}}class HM extends w{name="Form Subscriber";url="/form-subscribers";actions={addOne:Ql,addMany:ci,setOne:xl,setMany:eo,updateOne:to,updateMany:so,deleteOne:io,deleteMany:ri,initialize:Xl};selectors={selectById:ao,selectByIds:co};add(e){const{addOne:i,updateOne:n,deleteOne:a}=this.actions,c=new Date().toISOString(),d=this.select(o=>o.userReducer.currentUser?.id??null),r=O({...e,created_by:d,submitted_at:c});this.dispatch(i(r));const h=this.enqueueRequest({description:y(l.POST,this.name,!1),method:l.POST,url:`${this.url}/`,payload:M(r),blockers:[r.form],blocks:[r.uuid]});return h.then(o=>{this.dispatch(n(o))}).catch(()=>{this.dispatch(a(r.uuid))}),[r,h]}async delete(e){const{deleteOne:i,addOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e));if(!c)throw new Error(`Expected form subscriber with uuid ${e} to exist`);this.dispatch(i(e));try{return await this.enqueueRequest({description:y(l.DELETE,this.name,!1),method:l.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(d){throw this.dispatch(n(c)),d}}async refreshStore(e,i){const{initialize:n}=this.actions,a=await this.list({queryParams:{form__organization:e}},i);return this.dispatch(n(a)),a}}class WM extends B{name="Form Submission Field Values Attachment";url="/form-submission-field-values-attachments";actions={addOne:go,addMany:oi,setOne:Mo,setMany:Ro,updateOne:wo,updateMany:vo,deleteOne:Eo,deleteMany:hi,initialize:_o};selectors={selectById:Vo,selectByIds:yi};getId(e){return e.uuid}getBlockers(e){return[e.field_values]}getBlocks(e){return[e.uuid]}buildModel(e){const i=this.select(a=>a.userReducer.currentUser?.id??null),n=new Date().toISOString();return O({...e,created_by:i,submitted_at:n})}buildPayload(e){const{uuid:i,field_identifier:n,field_values:a,file_sha1:c,file_name:d,file_extension:r}=e;return{uuid:i,submitted_at:e.submitted_at,field_identifier:n,field_values:a,file_sha1:c,file_name:d,file_extension:r}}buildBulkPayload(e){const{uuid:i,field_identifier:n,field_values:a,file_sha1:c,file_name:d,file_extension:r}=e;return{uuid:i,field_identifier:n,field_values:a,file_sha1:c,file_name:d,file_extension:r}}async bulkDelete(e){const{deleteMany:i,addMany:n}=this.actions,a=this.select(yi(e));this.dispatch(i(e));try{return await this.enqueueRequest({description:y(l.DELETE,this.name,!0),method:l.DELETE,url:`${this.url}/bulk/`,payload:{uuids:e},blockers:e,blocks:[]})}catch(c){throw this.dispatch(n(a)),c}}async refreshStore(e,i){const{initialize:n}=this.actions,c=(await Promise.all([this.listPaginated({queryParams:{latest:!0,field_values__form_submission__organization:e}},i),this.listPaginated({queryParams:{latest:!0,field_values__form_submission__project__organization:e}},i)])).flatMap(d=>d.flat());return this.dispatch(n(c)),c}}class KM extends w{name="Form Submission Field Values";url="/form-submission-field-values";actions={addOne:qo,addMany:Si,setOne:Co,setMany:$o,updateOne:Uo,updateMany:Lo,deleteOne:ko,deleteMany:Ai,initialize:jo};selectors={selectById:Go,selectByIds:Ho};add(e){const{addOne:i,updateOne:n,deleteOne:a}=this.actions,c=this.select(o=>o.userReducer.currentUser?.id??null),d=new Date().toISOString(),r=O({...e,created_by:c,submitted_at:d});this.dispatch(i(r));const h=this.enqueueRequest({description:y(l.POST,this.name,!1),method:l.POST,url:`${this.url}/`,payload:M(r),blockers:[r.form_submission],blocks:[r.uuid]});return h.then(o=>{this.dispatch(n(o))}).catch(()=>{this.dispatch(a(r.uuid))}),[r,h]}async refreshStore(e,i){const{initialize:n}=this.actions,c=(await Promise.all([this.listPaginated({queryParams:{latest:!0,form_submission__organization:e}},i),this.listPaginated({queryParams:{latest:!0,form_submission__project__organization:e}},i)])).flatMap(d=>d.flat());return this.dispatch(n(c)),c}}class YM extends w{name="Form Submission";url="/form-submissions";actions={addOne:Qo,addMany:lt,setOne:Jo,setMany:Xo,updateOne:xo,updateMany:eh,deleteOne:th,deleteMany:ot,initialize:Zo};selectors={selectById:ih,selectByIds:nh};add(e){const{addOne:i,updateOne:n,deleteOne:a}=this.actions,c=this.select(o=>o.userReducer.currentUser?.id??null),d=new Date().toISOString(),r=O({...e,created_by:c,submitted_at:d}),h=this.enqueueRequest({description:y(l.POST,this.name,!1),method:l.POST,url:`${this.url}/`,payload:M(r),blockers:[e.form_revision],blocks:[r.uuid]});return this.dispatch(i(r)),h.then(o=>{this.dispatch(n(o))}).catch(()=>{this.dispatch(a(r.uuid))}),[r,h]}update(e){const{updateOne:i}=this.actions,{selectById:n}=this.selectors,a=this.select(n(e.uuid));if(!a)throw new Error(`Expected submission with uuid ${e.uuid} to exist`);const c={...a,...e};this.dispatch(i(c));const d=this.enqueueRequest({description:y(l.PATCH,this.name,!1),method:l.PATCH,url:`${this.url}/${c.uuid}/`,payload:e,blockers:[c.uuid],blocks:[c.uuid]});return d.then(r=>{this.dispatch(i(r))}).catch(()=>{this.dispatch(i(a))}),[c,d]}async delete(e){const{deleteOne:i,addOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e));if(!c)throw new Error(`Expected submission with uuid ${e} to exist`);const d=this.select(Wo(e)),r=d.flatMap(({uuid:h})=>this.select(Bo(h)));this.dispatch(i(e)),this.dispatch(Ai(R(d))),this.dispatch(hi(R(r)));try{return await this.enqueueRequest({description:y(l.DELETE,this.name,!1),method:l.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(h){throw this.dispatch(n(c)),this.dispatch(Si(d)),this.dispatch(oi(r)),h}}async refreshStore(e,i){const{initialize:n}=this.actions,c=(await Promise.all([this.listPaginated({queryParams:{organization:e}},i),this.listPaginated({queryParams:{project__organization:e}},i)])).flatMap(d=>d.flat());return this.dispatch(n(c)),c}}class ZM extends B{name="Geo Image";url="/geo-images";actions={addOne:yh,addMany:fh,setOne:mh,setMany:ph,updateOne:Sh,updateMany:Ah,deleteOne:Ih,deleteMany:Th,initialize:hh};selectors={selectById:Ph,selectByIds:Fh};getId(e){return e.uuid}getBlockers(e){return[e.project]}getBlocks(e){return[e.uuid]}buildModel(e){const i=this.select(a=>a.userReducer.currentUser?.id??null),n=new Date().toISOString();return O({...e,created_by:i,submitted_at:n})}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,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,direction:e.direction,original_date:e.original_date,project:e.project}}update(e){const{updateOne:i}=this.actions,{selectById:n}=this.selectors,a=this.select(n(e.uuid));if(!a)throw new Error(`Geo image with uuid ${e.uuid} does not exist in the store`);const c={...a,...e};this.dispatch(i(c));const d=this.enqueueRequest({description:y(l.PATCH,this.name,!1),method:l.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blocks:[e.uuid],blockers:[e.uuid]});return d.then(r=>{this.dispatch(i(r))}).catch(()=>{this.dispatch(i(a))}),[c,d]}async refreshStore(e,i){const{initialize:n}=this.actions,a=await this.list({queryParams:{project:e}},i);return this.dispatch(n(a)),a}}class JM extends w{name="Issue Association";url="/issue-associations";actions={addOne:Eh,addMany:Tt,setOne:Rh,setMany:Mh,updateOne:wh,updateMany:vh,deleteOne:Vh,deleteMany:Ot,initialize:gh};selectors={selectById:zh,selectByIds:Dh};add(e){const{addOne:i,updateOne:n,deleteOne:a}=this.actions,c=new Date().toISOString(),d=this.select(o=>o.userReducer.currentUser?.id??null),r=O({...e,submitted_at:c,created_by:d});this.dispatch(i(r));const h=this.enqueueRequest({description:y(l.POST,this.name,!1),method:l.POST,url:`${this.url}/`,payload:M(r),blockers:[e.issue,e.asset],blocks:[r.uuid]});return h.then(o=>{this.dispatch(n(o))}).catch(()=>{this.dispatch(a(r.uuid))}),[r,h]}bulkAdd(e){const{addMany:i,deleteMany:n,updateMany:a}=this.actions,c=this.select(o=>o.userReducer.currentUser?.id??null),d=new Date().toISOString(),r=e.map(o=>O({...o,submitted_at:d,created_by:c}));this.dispatch(i(r));const h=this.enqueueRequest({description:y(l.POST,this.name,!0),method:l.POST,url:`${this.url}/bulk/`,payload:{payloads:r.map(o=>M(o)),submitted_at:d},blockers:r.flatMap(o=>[o.issue,o.asset]),blocks:R(r)});return h.then(o=>{this.dispatch(a(o))}).catch(()=>{this.dispatch(n(R(r)))}),[r,h]}async delete(e){const{deleteOne:i,addOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e));if(!c)throw new Error(`Issue association with uuid ${e} not found in store.`);this.dispatch(i(e));try{return await this.enqueueRequest({description:y(l.DELETE,this.name,!1),method:l.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(d){throw this.dispatch(n(c)),d}}async refreshStore(e,i){const{initialize:n}=this.actions,c=(await this.listPaginated({queryParams:{issue__project:e}},i)).flat();return this.dispatch(n(c)),c}}class XM extends B{name="Issue Attachment";url="/issue-attachments";actions={addOne:Nh,addMany:_i,setOne:Gh,setMany:Hh,updateOne:Wh,updateMany:Kh,deleteOne:Yh,deleteMany:gi,initialize:kh};selectors={selectById:Xh,selectByIds:Qh};getId(e){return e.uuid}getBlockers(e){return[e.issue]}getBlocks(e){return[e.uuid]}buildModel(e){const i=this.select(a=>a.userReducer.currentUser?.id??null),n=new Date().toISOString();return O({...e,created_by:i,submitted_at: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,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,i){const{initialize:n}=this.actions,c=(await this.listPaginated({queryParams:{issue__project:e}},i)).flat();return this.dispatch(n(c)),c}}class QM extends B{name="Issue Comment Attachment";url="/issue-comment-attachments";actions={addOne:sm,addMany:im,setOne:nm,setMany:am,updateOne:cm,updateMany:rm,deleteOne:dm,deleteMany:um,initialize:tm};selectors={selectById:om,selectByIds:hm};getId(e){return e.uuid}getBlockers(e){return[e.issue_comment]}getBlocks(e){return[e.uuid]}buildModel(e){const i=this.select(a=>a.userReducer.currentUser?.id??null),n=new Date().toISOString();return O({...e,created_by:i,submitted_at: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,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,i){const{initialize:n}=this.actions,c=(await this.listPaginated({queryParams:{issue_comment__issue__project:e}},i)).flat();return this.dispatch(n(c)),c}}class xM extends w{name="Issue Comment";url="/issue-comments";actions={addOne:fm,addMany:Sm,setOne:Am,setMany:Im,updateOne:Tm,updateMany:Om,deleteOne:Pm,deleteMany:Fm,initialize:ym};selectors={selectById:bm,selectByIds:_m};add(e){const{addOne:i,updateOne:n,deleteOne:a}=this.actions,c=O({...e,created_by:this.select(r=>r.userReducer.currentUser.id),submitted_at:new Date().toISOString()});this.dispatch(i(c));const d=this.enqueueRequest({description:y(l.POST,this.name,!1),method:l.POST,url:`${this.url}/`,payload:M(c),blockers:[e.issue],blocks:[c.uuid]});return d.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(a(c.uuid))}),[c,d]}update(e){const{updateOne:i}=this.actions,{selectById:n}=this.selectors,a=this.select(n(e.uuid));if(!a)throw new Error(`Comment with uuid ${e.uuid} not found in store`);const c={...a,...e};this.dispatch(i(c));const d=this.enqueueRequest({description:y(l.PATCH,this.name,!1),method:l.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return d.then(r=>{this.dispatch(i(r))}).catch(()=>{this.dispatch(i(a))}),[c,d]}async delete(e){const{deleteOne:i,addOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e));if(!c)throw new Error(`Comment with uuid ${e} not found in store`);this.dispatch(i(e));try{return await this.enqueueRequest({description:y(l.DELETE,this.name,!1),method:l.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(d){throw this.dispatch(n(c)),d}}async refreshStore(e,i){const{initialize:n}=this.actions,c=(await this.listPaginated({queryParams:{issue__project:e}},i)).flat();return this.dispatch(n(c)),c}}class eR extends w{name="Issue";url="/issues";actions={addOne:wm,addMany:Bi,setOne:vm,setMany:Em,updateOne:Vm,updateMany:Bm,deleteOne:zm,deleteMany:zi,initialize:Rm};selectors={selectById:jm,selectByIds:qm};add(e){const{addOne:i,updateOne:n,deleteOne:a}=this.actions,c=new Date().toISOString(),d=this.select(o=>o.userReducer.currentUser?.id??null),r=O({...e,submitted_at:c,created_by:d});this.dispatch(i(r));const h=this.enqueueRequest({description:y(l.POST,this.name,!1),method:l.POST,url:`${this.url}/`,payload:M(r),blockers:[r.project,r.issue_type,r.status,r.priority],blocks:[r.uuid]});return h.then(o=>{this.dispatch(n(o))}).catch(o=>{throw this.dispatch(a(r.uuid)),o}),[r,h]}update(e){const{updateOne:i}=this.actions,{selectById:n}=this.selectors,a=this.select(n(e.uuid));if(!a)throw new Error(`Attempting to update an issue with uuid ${e.uuid} that doesn't exist in the store`);const c={...a,...e};this.dispatch(i(c));const d={};for(const o of[j.TITLE,j.DESCRIPTION,j.STATUS,j.PRIORITY,j.ASSIGNED_TO,j.DUE_DATE])if(o in e&&e[o]!==a[o])switch(o){case j.PRIORITY:{const f=e[o],A=this.select(Ji(f));if(!A)throw new Error(`Trying to update issue type priority with ${f} which does not exist in store`);d[o]={name:A.name,color:A.color,uuid:A.uuid};break}case j.DUE_DATE:d[o]=e.due_date;break;case j.DESCRIPTION:d[o]=e.description??"";break;case j.TITLE:d[o]=e.title??"";break;case j.STATUS:{const f=e[o],A=this.select(tn(f));if(!A)throw new Error(`Trying to update issue type status with ${f} which does not exist in store`);d[o]={name:A.name,color:A.color,uuid:A.uuid};break}case j.ASSIGNED_TO:{const f=e[o];if(f===null)d[o]=null;else{const A=this.select(is(f));if(!A)throw new Error(`Trying to update assigned to with ${f} which does not exist in store.`);d[o]={full_name:A.username,id:A.id}}break}}const r=O({created_by:this.select(o=>o.userReducer.currentUser?.id??null),submitted_at:new Date().toISOString(),issue:a.uuid,changes:d});this.dispatch(nn(r));const h=this.enqueueRequest({description:y(l.PATCH,this.name,!1),method:l.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return h.then(o=>{this.dispatch(i(o))}).catch(()=>{this.dispatch(i(a)),this.dispatch(cn(r.uuid))}),[c,h]}bulkUpdate(e,i){const{updateMany:n}=this.actions,{selectByIds:a}=this.selectors,c=R(e);if(new Set(c).size!==e.length)throw new Error("payloads contains duplicate uuids.");const d=this.select(a(c));if(c.length!=d.length)throw new Error(`Attempting to bulk update ${c.length-d.length} issues that dont exist in the store`);const r=d.toSorted(ut),h=e.toSorted(ut),o=[];for(let S=0;S<c.length;S++)o.push({...r[S],...h[S]});this.dispatch(n(o));const f=k(e,Math.min(i??e.length,U)),A=[];let I=null;for(const S of f){const b=dt.v4(),g=R(S),_=S.map(({status:v})=>v).filter(Boolean),E=S.map(({priority:v})=>v).filter(Boolean),z=this.enqueueRequest({description:y(l.PATCH,this.name,!0),method:l.PATCH,url:`${this.url}/bulk/`,payload:{payloads:S},blockers:(I?[I]:[]).concat(g).concat(_).concat(E),blocks:[b].concat(g)});A.push(z),I=b}return Promise.all(A).then(S=>{this.dispatch(n(S.flat()))}).catch(()=>{this.dispatch(n(d))}),[o,A]}async delete(e){const{deleteOne:i,addOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e));if(!c)throw new Error(`No issue with uuid ${e} found in the store`);const d=this.select(qh(e)),r=this.select(Jh(e)),h=this.select(bf(e)),o=this.select(ch(e));this.dispatch(i(e)),this.dispatch(gi(R(r))),this.dispatch(rn(R(h))),this.dispatch(Ot(R(d))),this.dispatch(ot(R(o)));try{return await this.enqueueRequest({description:y(l.DELETE,this.name,!1),method:l.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(f){throw this.dispatch(n(c)),this.dispatch(_i(r)),this.dispatch(an(h)),this.dispatch(Tt(d)),this.dispatch(lt(o)),f}}async bulkDelete(e){const{addMany:i,deleteMany:n}=this.actions,{selectByIds:a}=this.selectors,c=this.select(a(e)),d=this.select(jh(e)),r=this.select(rh(e));this.dispatch(n(e)),this.dispatch(Ot(R(d))),this.dispatch(ot(R(r)));try{return await this.enqueueRequest({description:y(l.DELETE,this.name,!0),method:l.DELETE,url:`${this.url}/bulk/`,payload:{uuids:e},blockers:e,blocks:[]})}catch(h){throw this.dispatch(i(c)),this.dispatch(Tt(d)),this.dispatch(lt(r)),h}}async refreshStore(e,i){const{initialize:n}=this.actions,c=(await this.listPaginated({queryParams:{project:e}},i)).flat();return this.dispatch(n(c)),c}}class tR extends B{name="Issue Type Attachment";url="/issue-type-attachments";actions={addOne:km,addMany:Nm,setOne:Gm,setMany:Hm,updateOne:Wm,updateMany:Km,deleteOne:Ym,deleteMany:Zm,initialize:Lm};selectors={selectById:Xm,selectByIds:Qm};getId(e){return e.uuid}getBlockers(e){return[e.issue_type]}getBlocks(e){return[e.uuid]}buildModel(e){const i=this.select(a=>a.userReducer.currentUser?.id??null),n=new Date().toISOString();return O({...e,created_by:i,submitted_at: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,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,i){const{initialize:n}=this.actions,a=await this.list({queryParams:{issue_type__organization:e}},i);return this.dispatch(n(a)),a}}class sR extends B{name="Issue Type Fields Attachment";url="/issue-type-fields-attachments";actions={addOne:sp,addMany:ip,setOne:np,setMany:ap,updateOne:cp,updateMany:rp,deleteOne:dp,deleteMany:up,initialize:tp};selectors={selectById:op,selectByIds:hp};getId(e){return e.uuid}getBlockers(e){return[e.fields_revision]}getBlocks(e){return[e.uuid]}buildModel(e){const i=this.select(a=>a.userReducer.currentUser?.id??null),n=new Date().toISOString();return O({...e,created_by:i,submitted_at:n})}buildPayload(e){const{uuid:i,field_identifier:n,fields_revision:a,file_sha1:c,file_name:d,file_extension:r}=e;return{uuid:i,submitted_at:e.submitted_at,field_identifier:n,fields_revision:a,file_sha1:c,file_name:d,file_extension:r}}buildBulkPayload(e){const{uuid:i,field_identifier:n,fields_revision:a,file_sha1:c,file_name:d,file_extension:r}=e;return{uuid:i,field_identifier:n,fields_revision:a,file_sha1:c,file_name:d,file_extension:r}}async refreshStore(e,i){const{initialize:n}=this.actions,a=await this.list({queryParams:{fields_revision__issue_type__organization:e}},i);return this.dispatch(n(a)),a}}class iR extends w{name="Issue Type Fields";url="/issue-type-fields";actions={addOne:vp,addMany:Ep,setOne:Vp,setMany:Bp,updateOne:zp,updateMany:Dp,deleteOne:jp,deleteMany:qp,initialize:wp};selectors={selectById:$p,selectByIds:Up};add(e){const{addOne:i,updateOne:n,deleteOne:a}=this.actions,c=this.select(o=>o.userReducer.currentUser?.id??null),d=new Date().toISOString(),r=O({...e,created_by:c,submitted_at:d});this.dispatch(i(r));const h=this.enqueueRequest({description:y(l.POST,this.name,!1),method:l.POST,url:`${this.url}/`,payload:M(r),blockers:[r.issue_type],blocks:[r.uuid]});return h.then(o=>{this.dispatch(n(o))}).catch(o=>{throw this.dispatch(a(r.uuid)),o}),[r,h]}async refreshStore(e,i){const{initialize:n}=this.actions,a=await this.list({queryParams:{issue_type__organization:e}},i);return this.dispatch(n(a)),a}}class nR extends B{name="Issue Type Field Values Attachment";url="/issue-type-field-values-attachments";actions={addOne:Gp,addMany:ki,setOne:Hp,setMany:Wp,updateOne:Kp,updateMany:Yp,deleteOne:Zp,deleteMany:Ni,initialize:Np};selectors={selectById:Xp,selectByIds:Qp};getId(e){return e.uuid}getBlockers(e){return[e.field_values]}getBlocks(e){return[e.uuid]}buildModel(e){const i=this.select(a=>a.userReducer.currentUser?.id??null),n=new Date().toISOString();return O({...e,created_by:i,submitted_at:n})}buildPayload(e){const{uuid:i,field_identifier:n,field_values:a,file_sha1:c,file_name:d,file_extension:r}=e;return{uuid:i,submitted_at:e.submitted_at,field_identifier:n,field_values:a,file_sha1:c,file_name:d,file_extension:r}}buildBulkPayload(e){const{uuid:i,field_identifier:n,field_values:a,file_sha1:c,file_name:d,file_extension:r}=e;return{uuid:i,field_identifier:n,field_values:a,file_sha1:c,file_name:d,file_extension:r}}async bulkDelete(e){const{deleteMany:i,addMany:n}=this.actions,{selectByIds:a}=this.selectors,c=this.select(a(e));this.dispatch(i(e));try{return await this.enqueueRequest({description:y(l.DELETE,this.name,!0),method:l.DELETE,url:`${this.url}/bulk/`,payload:{uuids:e},blockers:e,blocks:[]})}catch(d){throw this.dispatch(n(c)),d}}async refreshStore(e,i){const{initialize:n}=this.actions,c=(await this.listPaginated({queryParams:{field_values__issue__project:e,latest:!0}},i)).flat();return this.dispatch(n(c)),c}}class aR extends w{name="Issue Type Field Values";url="/issue-type-field-values";actions={addOne:fp,addMany:Sp,setOne:Ap,setMany:Ip,updateOne:Tp,updateMany:Op,deleteOne:Pp,deleteMany:Fp,initialize:yp};selectors={selectById:_p,selectByIds:gp};add(e){const{addOne:i,updateOne:n,deleteOne:a}=this.actions,c=this.select(o=>o.userReducer.currentUser?.id??null),d=new Date().toISOString(),r=O({...e,created_by:c,submitted_at:d}),h=this.enqueueRequest({description:y(l.POST,this.name,!1),method:l.POST,url:`${this.url}/`,payload:M(r),blockers:[e.issue,e.fields_revision],blocks:[r.uuid]});return this.dispatch(i(r)),h.then(o=>{this.dispatch(n(o))}).catch(()=>{this.dispatch(a(r.uuid))}),[r,h]}update(e){const{updateOne:i}=this.actions,{selectById:n}=this.selectors,a=this.select(n(e.uuid));if(!a)throw new Error(`Expected IssueTypeFieldValues with uuid ${e.uuid} to exist`);const c={...a,...e};this.dispatch(i(c));const d=this.enqueueRequest({description:y(l.PATCH,this.name,!1),method:l.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[c.uuid,c.fields_revision,c.issue],blocks:[c.uuid]});return d.then(r=>{this.dispatch(i(r))}).catch(()=>{this.dispatch(i(a))}),[c,d]}async delete(e){const{deleteOne:i,addOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e));if(!c)throw new Error(`Expected submission with uuid ${e} to exist`);const d=this.select(xp(e));this.dispatch(i(e)),this.dispatch(Ni(R(d)));try{return await this.enqueueRequest({description:y(l.DELETE,this.name,!1),method:l.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(r){throw this.dispatch(n(c)),this.dispatch(ki(d)),r}}async refreshStore(e,i){const{initialize:n}=this.actions,c=(await this.listPaginated({queryParams:{issue__project:e,latest:!0}},i)).flat();return this.dispatch(n(c)),c}}class cR extends w{name="Issue Type Identifier";url="/issue-type-identifiers";actions={addOne:iy,addMany:ny,setOne:ay,setMany:cy,updateOne:ry,updateMany:dy,deleteOne:uy,deleteMany:ly,initialize:sy};selectors={selectById:hy,selectByIds:my};add(e){const{addOne:i,updateOne:n,deleteOne:a}=this.actions,c=this.select(o=>o.userReducer.currentUser?.id??null),d=new Date().toISOString(),r=O({...e,created_by:c,submitted_at:d});this.dispatch(i(r));const h=this.enqueueRequest({description:y(l.POST,this.name,!1),method:l.POST,url:`${this.url}/`,payload:M(r),blockers:[r.issue_type],blocks:[r.uuid]});return h.then(o=>{this.dispatch(n(o))}).catch(()=>{this.dispatch(a(r.uuid))}),[r,h]}update(e){const{updateOne:i}=this.actions,{selectById:n}=this.selectors,a=this.select(n(e.uuid));if(!a)throw new Error(`Expected issue type identifier with uuid ${e.uuid} to exist`);const c={...a,...e};this.dispatch(i(c));const d=this.enqueueRequest({description:y(l.PATCH,this.name,!1),method:l.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return d.then(r=>{this.dispatch(i(r))}).catch(()=>{this.dispatch(i(a))}),[c,d]}async delete(e){const{deleteOne:i,addOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e));if(!c)throw new Error(`Expected issue type identifier with uuid ${e} to exist`);this.dispatch(i(e));try{return await this.enqueueRequest({description:y(l.DELETE,this.name,!1),method:l.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(d){throw this.dispatch(n(c)),d}}async refreshStore(e,i){const{initialize:n}=this.actions,a=await this.list({queryParams:{issue_type__organization:e}},i);return this.dispatch(n(a)),a}}class rR extends w{name="Issue Type Identifier Value";url="/issue-type-identifier-values";actions={addOne:Sy,addMany:Ay,setOne:Iy,setMany:Ty,updateOne:Oy,updateMany:Py,deleteOne:Fy,deleteMany:by,initialize:fy};selectors={selectById:gy,selectByIds:My};add(e){const{addOne:i,updateOne:n,deleteOne:a}=this.actions,c=this.select(o=>o.userReducer.currentUser?.id??null),d=new Date().toISOString(),r=O({...e,created_by:c,submitted_at:d});this.dispatch(i(r));const h=this.enqueueRequest({description:y(l.POST,this.name,!1),method:l.POST,url:`${this.url}/`,payload:M(r),blockers:[e.issue,e.issue_type_identifier],blocks:[r.uuid]});return h.then(o=>{this.dispatch(n(o))}).catch(()=>{this.dispatch(a(r.uuid))}),[r,h]}async delete(e){const{deleteOne:i,addOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e));if(!c)throw new Error(`Expected issue type identifier value with uuid ${e} to exist`);this.dispatch(i(e));try{return await this.enqueueRequest({description:y(l.DELETE,this.name,!1),method:l.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(d){throw this.dispatch(n(c)),d}}async refreshStore(e,i){const{initialize:n}=this.actions,c=(await this.listPaginated({queryParams:{issue__project:e,latest:!0}},i)).flat();return this.dispatch(n(c)),c}}class dR extends w{name="Issue Type Priority";url="/issue-type-priorities";actions={addOne:Ey,addMany:Vy,setOne:By,setMany:zy,updateOne:Dy,updateMany:jy,deleteOne:qy,deleteMany:Cy,initialize:vy};selectors={selectById:Ji,selectByIds:Uy};add(e){const{addOne:i,updateOne:n,deleteOne:a}=this.actions,c=this.select(o=>o.userReducer.currentUser?.id??null),d=new Date().toISOString(),r=O({...e,created_by:c,submitted_at:d});this.dispatch(i(r));const h=this.enqueueRequest({description:y(l.POST,this.name,!1),method:l.POST,url:`${this.url}/`,payload:M(r),blockers:[e.issue_type],blocks:[r.uuid]});return h.then(o=>{this.dispatch(n(o))}).catch(()=>{this.dispatch(a(r.uuid))}),[r,h]}update(e){const{updateOne:i}=this.actions,{selectById:n}=this.selectors,a=this.select(n(e.uuid));if(!a)throw new Error(`Expected an existing issue type priority with uuid ${e.uuid}`);const c={...a,...e};this.dispatch(i(c));const d=this.enqueueRequest({description:y(l.PATCH,this.name,!1),method:l.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return d.then(r=>{this.dispatch(i(r))}).catch(()=>{this.dispatch(i(a))}),[c,d]}async delete(e){const{deleteOne:i,addOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e));if(!c)throw new Error(`No issue type priority with uuid ${e} found in the store`);this.dispatch(i(e));try{return await this.enqueueRequest({description:y(l.DELETE,this.name,!1),method:l.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(d){throw this.dispatch(n(c)),d}}async refreshStore(e,i){const{initialize:n}=this.actions,a=await this.list({queryParams:{issue_type__organization:e}},i);return this.dispatch(n(a)),a}}class uR extends w{name="Issue Type";url="/issue-types";actions={addOne:Gy,addMany:Hy,setOne:Wy,setMany:Ky,updateOne:Yy,updateMany:Zy,deleteOne:Jy,deleteMany:Xy,initialize:Ny};selectors={selectById:xy,selectByIds:ef};add(e){const{addOne:i,updateOne:n,deleteOne:a}=this.actions,c=this.select(o=>o.userReducer.currentUser?.id??null),d=new Date().toISOString(),r=O({...e,submitted_at:d,created_by:c});this.dispatch(i(r));const h=this.enqueueRequest({method:l.POST,url:`${this.url}/`,payload:M(r),blockers:[],blocks:[r.uuid]});return h.then(o=>{this.dispatch(n(o))}).catch(()=>{this.dispatch(a(r.uuid))}),[r,h]}update(e){const{updateOne:i}=this.actions,{selectById:n}=this.selectors,a=this.select(n(e.uuid));if(!a)throw new Error(`IssueType with uuid ${e.uuid} does not exist in the store.`);const c={...a,...e};this.dispatch(i(c));const d=this.enqueueRequest({method:l.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return d.then(r=>{this.dispatch(i(r))}).catch(()=>{this.dispatch(i(a))}),[c,d]}async delete(e){const{addOne:i,deleteOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e));if(!c)throw new Error(`IssueType with uuid ${e} does not exist in the store.`);const d=this.select(Cm(e));this.dispatch(n(e)),this.dispatch(zi(R(d)));try{return await this.enqueueRequest({description:y(l.DELETE,this.name,!1),method:l.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(r){throw this.dispatch(i(c)),this.dispatch(Bi(d)),r}}async refreshStore(e,i){const{initialize:n}=this.actions,a=await this.list({queryParams:{organization:e}},i);return this.dispatch(n(a)),a}}class lR extends w{name="Issue Type Status";url="/issue-type-statuses";actions={addOne:af,addMany:cf,setOne:rf,setMany:df,updateOne:uf,updateMany:lf,deleteOne:of,deleteMany:hf,initialize:nf};selectors={selectById:tn,selectByIds:pf};add(e){const{addOne:i,updateOne:n,deleteOne:a}=this.actions,c=this.select(o=>o.userReducer.currentUser?.id??null),d=new Date().toISOString(),r=O({...e,created_by:c,submitted_at:d});this.dispatch(i(r));const h=this.enqueueRequest({description:y(l.POST,this.name,!1),method:l.POST,url:`${this.url}/`,payload:M(r),blockers:[e.issue_type],blocks:[r.uuid]});return h.then(o=>{this.dispatch(n(o))}).catch(()=>{this.dispatch(a(r.uuid))}),[r,h]}update(e){const{updateOne:i}=this.actions,{selectById:n}=this.selectors,a=this.select(n(e.uuid));if(!a)throw new Error(`Expected an existing issue type status with uuid ${e.uuid}`);const c={...a,...e};this.dispatch(i(c));const d=this.enqueueRequest({description:y(l.PATCH,this.name,!1),method:l.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return d.then(r=>{this.dispatch(i(r))}).catch(()=>{this.dispatch(i(a))}),[c,d]}async delete(e){const{deleteOne:i,addOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e));if(!c)throw new Error(`No issue type status with uuid ${e} found in the store`);this.dispatch(i(e));try{return await this.enqueueRequest({description:y(l.DELETE,this.name,!1),method:l.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(d){throw this.dispatch(n(c)),d}}async refreshStore(e,i){const{initialize:n}=this.actions,a=await this.list({queryParams:{issue_type__organization:e}},i);return this.dispatch(n(a)),a}}class oR extends w{name="Issue Update";url="/issue-updates";actions={addOne:nn,addMany:an,setOne:Af,setMany:If,updateOne:Tf,updateMany:Of,deleteOne:cn,deleteMany:rn,initialize:Sf};selectors={selectById:Pf,selectByIds:Ff};async refreshStore(e,i){const{initialize:n}=this.actions,c=(await this.listPaginated({queryParams:{issue__project:e}},i)).flat();return this.dispatch(n(c)),c}}const hR=1800;function mR(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 pR extends _b{_getRenewedTokens=async e=>{const i=this.performRequest({method:l.POST,url:this.refreshTokensUrl,payload:{refresh:e},isAuthNeeded:!1,checkAuth:!1});let n;try{n=await i}catch(a){console.error("Could not renew tokens; clearing auth",a),this.clearAuth();return}if(!n.access)throw new Error("Missing access token");return{accessToken:n.access,refreshToken:n.refresh??this.getRefreshToken()}};clearAuth(){console.debug(this.constructor.name,"clearing auth;"),this.dispatch(au(!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 i=await this._getRenewedTokens(e);if(!i)return;console.debug("Got renewed tokens"),this.setTokens(i)}catch(i){throw console.error("Could not renew tokens; clearing auth",i),this.clearAuth(),i}}tokenIsExpiringSoon(){const e=this.getAccessToken();if(!e)return!1;const i=Date.now()/1e3;let n;try{n=kb(e).exp??i}catch{n=i}return n-i<hR}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 q&&this.clearAuth(),e instanceof Error?Promise.reject(e):Promise.reject(new Error((e??_t).toString()))}}}async handleUnauthorized(e,i){if(e.url.endsWith("/token/refresh/"))throw this.select(n=>n.authReducer.isLoggedIn)&&console.warn("No signed-in user to sign out."),this.clearAuth(),new q({message:"You have been signed out due to inactivity.",response:i,discard:!0});if(this.select(n=>n.authReducer.isLoggedIn))await this.renewTokens();else throw console.debug("Forbidden; user is not logged in."),new q({message:"Incorrect username or password.",response:i,discard:!0})}async initAuth(e){const i=dt.v4();return console.debug(this.constructor.name,"Initiating auth"),this.performRequest({uuid:i,method:l.POST,url:this.initTokensUrl,payload:e,isAuthNeeded:!1,checkAuth:!1}).then(n=>{this.setTokens(mR(n))})}}class yR extends ft{name="Organization Access";url="/organization-accesses";actions={addOne:$f,addMany:Uf,setOne:Lf,setMany:kf,updateOne:Nf,updateMany:Gf,deleteOne:Hf,deleteMany:Wf,initialize:Cf};selectors={selectById:Yf,selectByIds:Zf};update(e){const{updateOne:i}=this.actions,{selectById:n}=this.selectors,a=this.select(n(e.uuid)),c={...a,...e};this.dispatch(i(c));const d=this.enqueueRequest({description:y(l.PATCH,this.name,!1),method:l.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return d.then(r=>{this.dispatch(i(r))}).catch(r=>{throw this.dispatch(i(a)),r}),[c,d]}async delete(e){const{deleteOne:i,addOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e)),d=this.select(is(c.user));this.dispatch(i(c.uuid)),this.dispatch(hn(c.user));try{return await this.enqueueRequest({description:y(l.DELETE,this.name,!1),method:l.DELETE,url:`${this.url}/${c.uuid}/`,blockers:[c.uuid],blocks:[]})}catch(r){throw this.dispatch(n(c)),this.dispatch(on(d)),r}}async refreshStore(e,i){const{initialize:n}=this.actions,a=await this.list({queryParams:{organization:e}},i);return this.dispatch(n(a)),a}}class fR extends ft{name="Organization";url="/organizations";actions={addOne:sS,addMany:tS,setOne:eS,setMany:xf,updateOne:nS,updateMany:iS,deleteOne:aS,deleteMany:cS,initialize:Qf};selectors={selectById:uS,selectByIds:lS};async add(e){const{addOne:i}=this.actions,n=await this.enqueueRequest({description:y(l.POST,this.name,!1),method:l.POST,url:`${this.url}/`,payload:e,blockers:[],blocks:[]});return this.dispatch(i(n)),n}async update(e){const{updateOne:i}=this.actions,n=await this.enqueueRequest({description:y(l.PATCH,this.name,!1),method:l.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return this.dispatch(i(n)),n}async invite(e,i){return this.enqueueRequest({description:y(l.POST,this.name,!1),method:l.POST,url:`${this.url}/${e}/invite/${i}/`,blockers:[],blocks:[]})}async refreshStore(e){const{initialize:i}=this.actions,n=await this.list({},e);return this.dispatch(i(n)),n}}class SR extends w{name="Project Access";url="/project-accesses";actions={addOne:TS,addMany:OS,setOne:PS,setMany:FS,updateOne:bS,updateMany:_S,deleteOne:gS,deleteMany:MS,initialize:IS};selectors={selectById:wS,selectByIds:vS};add(e){const{addOne:i,updateOne:n,deleteOne:a}=this.actions,c=O({...e,created_by:this.select(r=>r.userReducer.currentUser?.id??null)});this.dispatch(i(c));const d=this.enqueueRequest({description:y(l.POST,this.name,!1),method:l.POST,url:`${this.url}/`,payload:M(c),blockers:[c.organization_access,c.project],blocks:[c.uuid]});return d.then(r=>{this.dispatch(n(r))}).catch(r=>{throw this.dispatch(a(c.uuid)),r}),[c,d]}bulkAdd(e){const{addMany:i,deleteMany:n,updateMany:a}=this.actions,c=this.select(h=>h.userReducer.currentUser?.id??null),d=e.map(h=>O({...h,created_by:c}));this.dispatch(i(d));const r=this.enqueueRequest({description:y(l.POST,this.name,!0),method:l.POST,url:`${this.url}/bulk/`,payload:{project_accesses:d.map(h=>M(h))},blockers:d.flatMap(h=>[h.project,h.organization_access]),blocks:d.map(h=>h.uuid)});return r.then(h=>{this.dispatch(a(h))}).catch(h=>{throw this.dispatch(n(d.map(o=>o.uuid))),h}),[d,r]}update(e){const{updateOne:i}=this.actions,{selectById:n}=this.selectors,a=this.select(n(e.uuid)),c={...a,...e};this.dispatch(i(c));const d=this.enqueueRequest({description:y(l.PATCH,this.name,!1),method:l.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[]});return d.then(r=>{this.dispatch(i(r))}).catch(r=>{throw this.dispatch(i(a)),r}),[c,d]}async delete(e){const{deleteOne:i,addOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e));this.dispatch(i(e));try{return await this.enqueueRequest({description:y(l.DELETE,this.name,!1),method:l.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(d){throw this.dispatch(n(c)),d}}async refreshStore(e,i){const{initialize:n}=this.actions,a=await this.list({queryParams:{project__organization:e}},i);return this.dispatch(n(a)),a}}class AR extends B{name="Project Attachment";url="/project-attachments";actions={addOne:BS,addMany:zS,setOne:DS,setMany:jS,updateOne:qS,updateMany:CS,deleteOne:$S,deleteMany:US,initialize:VS};selectors={selectById:kS,selectByIds:NS};getId(e){return e.uuid}getBlockers(e){return[e.project]}getBlocks(e){return[e.uuid]}buildModel(e){const i=this.select(a=>a.userReducer.currentUser?.id??null),n=new Date().toISOString();return O({...e,created_by:i,submitted_at: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,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,i){const{initialize:n}=this.actions,a=await this.list({queryParams:{project__organization:e}},i);return this.dispatch(n(a)),a}}class IR extends w{name="Project Comment";url="/project-comments";actions={addOne:KS,addMany:YS,setOne:ZS,setMany:JS,updateOne:XS,updateMany:QS,deleteOne:xS,deleteMany:eA,initialize:WS};selectors={selectById:sA,selectByIds:iA};add(e){const{addOne:i,updateOne:n,deleteOne:a}=this.actions,c=O({...e,created_by:this.select(r=>r.userReducer.currentUser?.id??null),submitted_at:new Date().toISOString()});this.dispatch(i(c));const d=this.enqueueRequest({description:y(l.POST,this.name,!1),method:l.POST,url:`${this.url}/`,payload:M(c),blockers:[c.project],blocks:[c.uuid]});return d.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(a(c.uuid))}),[c,d]}update(e){const{updateOne:i}=this.actions,{selectById:n}=this.selectors,a=this.select(n(e.uuid));if(!a)throw new Error(`Project comment with uuid ${e.uuid} not found in store`);const c={...a,...e};this.dispatch(i(c));const d=this.enqueueRequest({description:y(l.PATCH,this.name,!1),method:l.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return d.then(r=>{this.dispatch(i(r))}).catch(()=>{this.dispatch(i(a))}),[c,d]}async delete(e){const{deleteOne:i,addOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e));if(!c)throw new Error(`Project comment with uuid ${e} not found in store`);this.dispatch(i(e));try{return await this.enqueueRequest({description:y(l.DELETE,this.name,!1),method:l.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(d){throw this.dispatch(n(c)),d}}async refreshStore(e,i){const{initialize:n}=this.actions,c=(await this.listPaginated({queryParams:{project:e}},i)).flat();return this.dispatch(n(c)),c}}class TR extends B{name="Project File";url="/project-files";actions={addOne:uA,addMany:lA,setOne:rA,setMany:dA,updateOne:oA,updateMany:hA,deleteOne:mA,deleteMany:pA,initialize:cA};selectors={selectById:SA,selectByIds:AA};getId(e){return e.uuid}getBlockers(e){return[e.project]}getBlocks(e){return[e.uuid]}buildModel(e){const i=this.select(a=>a.userReducer.currentUser?.id??null),n=new Date().toISOString();return O({...e,created_by:i,submitted_at:n})}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,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,bounds:e.bounds}}update(e){const{updateOne:i}=this.actions,{selectById:n}=this.selectors,a=this.select(n(e.uuid));if(!a)throw new Error(`${this.name} with uuid ${e.uuid} does not exist in the store`);const c={...a,...e};this.dispatch(i(c));const d=this.enqueueRequest({description:y(l.PATCH,this.name,!1),method:l.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blocks:[e.uuid],blockers:[e.uuid]});return d.then(r=>{this.dispatch(i(r))}).catch(()=>{this.dispatch(i(a))}),[c,d]}async refreshStore(e,i){const{initialize:n}=this.actions,c=(await this.listPaginated({queryParams:{project:e}},i)).flat();return this.dispatch(n(c)),c}}class OR extends ft{name="Project";url="/projects";actions={addOne:_A,addMany:bA,setOne:FA,setMany:PA,updateOne:MA,updateMany:gA,deleteOne:RA,deleteMany:wA,initialize:OA};selectors={selectById:VA,selectByIds:BA};async add(e){const{addOne:i}=this.actions,n=await this.performRequest({method:l.POST,url:`${this.url}/`,payload:M(e)});return this.dispatch(i(n)),n}async update(e){const{updateOne:i}=this.actions,n=await this.performRequest({method:l.PATCH,url:`${this.url}/${e.uuid}/`,payload:M(e)});return this.dispatch(i(n)),n}async delete(e){const{deleteOne:i}=this.actions,n=await this.enqueueRequest({description:y(l.DELETE,this.name,!1),method:l.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]});return this.dispatch(i(e)),n}async refreshStore(e,i){const{initialize:n}=this.actions,a=await this.list({queryParams:{organization:e}},i);return this.dispatch(n(a)),a}}class PR extends w{name="Procedure";url="/procedures";actions={addOne:JA,addMany:Ft,setOne:XA,setMany:QA,updateOne:xA,updateMany:eI,deleteOne:tI,deleteMany:bt,initialize:ZA};selectors={selectById:nI,selectByIds:aI};add(e){const{addOne:i,updateOne:n,deleteOne:a}=this.actions,c=O({...e,created_by:this.select(r=>r.userReducer.currentUser?.id??null),submitted_at:new Date().toISOString()});this.dispatch(i(c));const d=this.enqueueRequest({description:y(l.POST,this.name,!1),method:l.POST,url:`${this.url}/`,payload:M(c),blockers:[c.procedure_type,c.project,c.asset,...c.procedure_initiative?[c.procedure_initiative]:[]],blocks:[c.uuid]});return d.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(a(c.uuid))}),[c,d]}bulkAdd(e,i){const{store:n}=this.client,{addMany:a,updateMany:c,deleteMany:d}=this.actions,r=new Date().toISOString(),h=n.getState().userReducer.currentUser?.id??null,o=[],f=k(e,Math.min(i??e.length,U)),A=[];for(const S of f){const b=[],g=[],_=[];for(const z of S){const v=O({...z,submitted_at:r,created_by:h});o.push(v),b.push(M(v)),g.push(v.procedure_type,v.project,v.asset,...v.procedure_initiative?[v.procedure_initiative]:[]),_.push(v.uuid)}const E={payload:{submitted_at:r,payloads:b},blockers:g,blocks:_};A.push(E)}this.dispatch(a(o));const I=A.map(S=>{const{payload:b,blocks:g,blockers:_}=S;return this.enqueueRequest({description:y(l.POST,this.name,!0),method:l.POST,url:`${this.url}/bulk/`,payload:b,blockers:_,blocks:g})});return Promise.all(I).then(S=>{this.dispatch(c(S.flat()))}).catch(()=>{this.dispatch(d(R(o)))}),[o,Promise.all(I).then(S=>S.flat())]}update(e){const{updateOne:i}=this.actions,{selectById:n}=this.selectors,a=this.select(n(e.uuid));if(!a)throw new Error(`Expected procedure with uuid ${e.uuid} to exist`);const c={...a,...e};this.dispatch(i(c));const d=this.enqueueRequest({description:y(l.PATCH,this.name,!1),method:l.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[a.uuid],blocks:[a.uuid]});return d.then(r=>{this.dispatch(i(r))}).catch(()=>{this.dispatch(i(a))}),[c,d]}async delete(e){const{deleteOne:i,addOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e));if(!c)throw new Error(`Expected procedure with uuid ${e} to exist`);this.dispatch(i(e));try{return await this.enqueueRequest({description:y(l.DELETE,this.name,!1),method:l.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(d){throw this.dispatch(n(c)),d}}async bulkDelete(e){const{addMany:i,deleteMany:n}=this.actions,{selectByIds:a}=this.selectors,c=this.select(a(e));this.dispatch(n(R(c)));try{return await this.enqueueRequest({description:y(l.DELETE,this.name,!0),method:l.DELETE,url:`${this.url}/bulk/`,payload:{uuids:e},blockers:e,blocks:[]})}catch(d){throw this.dispatch(i(c)),d}}async refreshStore(e,i){const{initialize:n}=this.actions,c=(await this.listPaginated({queryParams:{project:e}},i)).flat();return this.dispatch(n(c)),c}}class FR extends w{name="Procedure Step Assignee";url="/procedure-step-assignees";actions={addOne:hI,addMany:mI,setOne:pI,setMany:yI,updateOne:fI,updateMany:SI,deleteOne:AI,deleteMany:II,initialize:oI};selectors={selectById:OI,selectByIds:PI};add(e){const{addOne:i,updateOne:n,deleteOne:a}=this.actions,c=O({...e,created_by:this.select(r=>r.userReducer.currentUser?.id??null),submitted_at:new Date().toISOString()});this.dispatch(i(c));const d=this.enqueueRequest({description:y(l.POST,this.name,!1),method:l.POST,url:`${this.url}/`,payload:M(c),blockers:[c.procedure,c.procedure_step],blocks:[c.uuid]});return d.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(a(c.uuid))}),[c,d]}bulkAdd(e){const{addMany:i,updateMany:n,deleteMany:a}=this.actions,c=this.select(o=>o.userReducer.currentUser?.id??null),d=new Date().toISOString(),r=e.map(o=>O({...o,created_by:c,submitted_at:d}));this.dispatch(i(r));const h=this.enqueueRequest({description:y(l.POST,this.name,!0),method:l.POST,url:`${this.url}/bulk/`,payload:{procedure_step_assignees:r.map(o=>M(o)),submitted_at:d},blockers:r.flatMap(o=>[o.procedure,o.procedure_step]),blocks:R(r)});return h.then(o=>{this.dispatch(n(o))}).catch(()=>{this.dispatch(a(R(r)))}),[r,h]}async delete(e){const{deleteOne:i,addOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e));if(!c)throw new Error(`Expected procedure step assignee with uuid ${e} to exist`);this.dispatch(i(e));try{return await this.enqueueRequest({description:y(l.DELETE,this.name,!1),method:l.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(d){throw this.dispatch(n(c)),d}}async bulkDelete(e){const{deleteMany:i,addMany:n}=this.actions,{selectByIds:a}=this.selectors,c=this.select(a(e));this.dispatch(i(e));try{return await this.enqueueRequest({description:y(l.DELETE,this.name,!0),method:l.DELETE,url:`${this.url}/bulk/`,payload:{uuids:e},blockers:e,blocks:[]})}catch(d){throw this.dispatch(n(c)),d}}async refreshStore(e,i){const{initialize:n}=this.actions,c=(await this.listPaginated({queryParams:{procedure__project:e}},i)).flat();return this.dispatch(n(c)),c}}class bR extends w{name="Procedure Step Comment";url="/procedure-step-comments";actions={addOne:gI,addMany:MI,setOne:RI,setMany:wI,updateOne:vI,updateMany:EI,deleteOne:VI,deleteMany:BI,initialize:_I};selectors={selectById:DI,selectByIds:jI};add(e){const{addOne:i,updateOne:n,deleteOne:a}=this.actions,c=O({...e,created_by:this.select(r=>r.userReducer.currentUser?.id??null),submitted_at:new Date().toISOString()});this.dispatch(i(c));const d=this.enqueueRequest({description:y(l.POST,this.name,!1),method:l.POST,url:`${this.url}/`,payload:M(c),blockers:[c.procedure,c.procedure_step],blocks:[c.uuid]});return d.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(a(c.uuid))}),[c,d]}update(e){const{updateOne:i}=this.actions,{selectById:n}=this.selectors,a=this.select(n(e.uuid));if(!a)throw new Error(`Procedure step comment with uuid ${e.uuid} not found in store`);const c={...a,...e};this.dispatch(i(c));const d=this.enqueueRequest({description:y(l.PATCH,this.name,!1),method:l.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return d.then(r=>{this.dispatch(i(r))}).catch(()=>{this.dispatch(i(a))}),[c,d]}async delete(e){const{deleteOne:i,addOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e));if(!c)throw new Error(`Procedure step comment with uuid ${e} not found in store`);this.dispatch(i(e));try{return await this.enqueueRequest({description:y(l.DELETE,this.name,!1),method:l.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(d){throw this.dispatch(n(c)),d}}async refreshStore(e,i){const{initialize:n}=this.actions,c=(await this.listPaginated({queryParams:{procedure__project:e}},i)).flat();return this.dispatch(n(c)),c}}class _R extends w{name="Procedure Step Default Assignee";url="/procedure-step-default-assignees";actions={addOne:UI,addMany:LI,setOne:kI,setMany:NI,updateOne:GI,updateMany:HI,deleteOne:WI,deleteMany:KI,initialize:$I};selectors={selectById:ZI,selectByIds:JI};add(e){const{addOne:i,updateOne:n,deleteOne:a}=this.actions,c=O({...e,created_by:this.select(r=>r.userReducer.currentUser?.id??null),submitted_at:new Date().toISOString()});this.dispatch(i(c));const d=this.enqueueRequest({description:y(l.POST,this.name,!1),method:l.POST,url:`${this.url}/`,payload:M(c),blockers:[c.procedure_step],blocks:[c.uuid]});return d.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(a(c.uuid))}),[c,d]}async delete(e){const{deleteOne:i,addOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e));if(!c)throw new Error(`Expected procedure step default assignee with uuid ${e} to exist`);this.dispatch(i(e));try{return await this.enqueueRequest({description:y(l.DELETE,this.name,!1),method:l.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(d){throw this.dispatch(n(c)),d}}async refreshStore(e,i){const{initialize:n}=this.actions,a=await this.list({queryParams:{procedure_step__procedure_type__organization:e}},i);return this.dispatch(n(a)),a}}class gR extends w{name="Procedure Step Default Reviewer";url="/procedure-step-default-reviewers";actions={addOne:eT,addMany:tT,setOne:sT,setMany:iT,updateOne:nT,updateMany:aT,deleteOne:cT,deleteMany:rT,initialize:xI};selectors={selectById:uT,selectByIds:lT};add(e){const{addOne:i,updateOne:n,deleteOne:a}=this.actions,c=O({...e,created_by:this.select(r=>r.userReducer.currentUser?.id??null),submitted_at:new Date().toISOString()});this.dispatch(i(c));const d=this.enqueueRequest({description:y(l.POST,this.name,!1),method:l.POST,url:`${this.url}/`,payload:M(c),blockers:[c.procedure_step],blocks:[c.uuid]});return d.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(a(c.uuid))}),[c,d]}async delete(e){const{deleteOne:i,addOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e));if(!c)throw new Error(`Expected procedure step default reviewer with uuid ${e} to exist`);this.dispatch(i(e));try{return await this.enqueueRequest({description:y(l.DELETE,this.name,!1),method:l.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(d){throw this.dispatch(n(c)),d}}async refreshStore(e,i){const{initialize:n}=this.actions,a=await this.list({queryParams:{procedure_step__procedure_type__organization:e}},i);return this.dispatch(n(a)),a}}class MR extends ft{name="Procedure Step Event";url="/procedure-step-events";actions={addOne:pT,addMany:yT,setOne:fT,setMany:ST,updateOne:AT,updateMany:IT,deleteOne:TT,deleteMany:OT,initialize:mT};selectors={selectById:FT,selectByIds:bT};async refreshStore(e,i){const{initialize:n}=this.actions,c=(await this.listPaginated({queryParams:{procedure__project:e}},i)).flat();return this.dispatch(n(c)),c}}class RR extends B{name="Procedure Step Fields Attachment";url="/procedure-step-fields-attachments";actions={addOne:RT,addMany:zn,setOne:wT,setMany:vT,updateOne:ET,updateMany:VT,deleteOne:BT,deleteMany:Dn,initialize:MT};selectors={selectById:jT,selectByIds:qT};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(i=>i.userReducer.currentUser?.id??null),submitted_at:new Date().toISOString()})}buildPayload(e){const{uuid:i,field_identifier:n,fields_revision:a,file_sha1:c,file_name:d,file_extension:r}=e;return{uuid:i,submitted_at:e.submitted_at,field_identifier:n,fields_revision:a,file_sha1:c,file_name:d,file_extension:r}}buildBulkPayload(e){const{uuid:i,field_identifier:n,fields_revision:a,file_sha1:c,file_name:d,file_extension:r}=e;return{uuid:i,field_identifier:n,fields_revision:a,file_sha1:c,file_name:d,file_extension:r}}async refreshStore(e,i){const{initialize:n}=this.actions,a=await this.list({queryParams:{fields_revision__procedure_step__procedure_type__organization:e}},i);return this.dispatch(n(a)),a}}class wR extends w{name="Procedure Step Fields";url="/procedure-step-fields";actions={addOne:LT,addMany:kT,setOne:NT,setMany:GT,updateOne:HT,updateMany:WT,deleteOne:KT,deleteMany:YT,initialize:UT};selectors={selectById:ZT,selectByIds:JT};add(e){const{addOne:i,updateOne:n,deleteOne:a}=this.actions,c=O({...e,created_by:this.select(r=>r.userReducer.currentUser?.id??null),submitted_at:new Date().toISOString()});this.dispatch(i(c));const d=this.enqueueRequest({description:y(l.POST,this.name,!1),method:l.POST,url:`${this.url}/`,payload:M(c),blockers:[c.procedure_step],blocks:[c.uuid]});return d.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(a(c.uuid))}),[c,d]}async delete(e){const{deleteOne:i,addOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e));if(!c)throw new Error(`Expected procedure step fields with uuid ${e} to exist`);const d=this.select(DT(e));this.dispatch(i(e)),this.dispatch(Dn(R(d)));try{return await this.enqueueRequest({description:y(l.DELETE,this.name,!1),method:l.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(r){throw this.dispatch(n(c)),this.dispatch(zn(d)),r}}async refreshStore(e,i){const{initialize:n}=this.actions,a=await this.list({queryParams:{procedure_step__procedure_type__organization:e}},i);return this.dispatch(n(a)),a}}class vR extends B{name="Procedure Step Field Values Attachment";url="/procedure-step-field-values-attachments";actions={addOne:eO,addMany:Un,setOne:tO,setMany:sO,updateOne:iO,updateMany:nO,deleteOne:aO,deleteMany:Ln,initialize:xT};selectors={selectById:rO,selectByIds:dO};getId(e){return e.uuid}getBlockers(e){return[e.field_values]}getBlocks(e){return[e.uuid]}buildModel(e){const i=this.select(a=>a.userReducer.currentUser?.id??null),n=new Date().toISOString();return O({...e,created_by:i,submitted_at:n})}buildPayload(e){const{uuid:i,field_identifier:n,field_values:a,file_sha1:c,file_name:d,file_extension:r}=e;return{uuid:i,submitted_at:e.submitted_at,field_identifier:n,field_values:a,file_sha1:c,file_name:d,file_extension:r}}buildBulkPayload(e){const{uuid:i,field_identifier:n,field_values:a,file_sha1:c,file_name:d,file_extension:r}=e;return{uuid:i,field_identifier:n,field_values:a,file_sha1:c,file_name:d,file_extension:r}}async bulkDelete(e){const{deleteMany:i,addMany:n}=this.actions,{selectByIds:a}=this.selectors,c=this.select(a(e));this.dispatch(i(e));try{return await this.enqueueRequest({description:y(l.DELETE,this.name,!0),method:l.DELETE,url:`${this.url}/bulk/`,payload:{uuids:e},blockers:e,blocks:[]})}catch(d){throw this.dispatch(n(c)),d}}async refreshStore(e,i){const{initialize:n}=this.actions,c=(await this.listPaginated({queryParams:{field_values__procedure__project:e,latest:!0}},i)).flat();return this.dispatch(n(c)),c}}class ER extends w{name="Procedure Step Field Values Review";url="/procedure-step-field-values-reviews";actions={addOne:MO,addMany:Hn,setOne:RO,setMany:wO,updateOne:vO,updateMany:EO,deleteOne:VO,deleteMany:Wn,initialize:gO};selectors={selectById:zO,selectByIds:DO};add(e){const{addOne:i,updateOne:n,deleteOne:a}=this.actions,c=O({...e,created_by:this.select(r=>r.userReducer.currentUser?.id??null),submitted_at:new Date().toISOString()});this.dispatch(i(c));const d=this.enqueueRequest({description:y(l.POST,this.name,!1),method:l.POST,url:`${this.url}/`,payload:M(c),blockers:[c.field_values],blocks:[c.uuid]});return d.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(a(c.uuid))}),[c,d]}update(e){const{updateOne:i}=this.actions,{selectById:n}=this.selectors,a=this.select(n(e.uuid));if(!a)throw new Error(`Procedure step field values review with uuid ${e.uuid} not found in store`);const c={...a,...e};this.dispatch(i(c));const d=this.enqueueRequest({description:y(l.PATCH,this.name,!1),method:l.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[e.uuid],blocks:[e.uuid]});return d.then(r=>{this.dispatch(i(r))}).catch(()=>{this.dispatch(i(a))}),[c,d]}async delete(e){const{deleteOne:i,addOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e));if(!c)throw new Error(`Procedure step field values review with uuid ${e} not found in store`);this.dispatch(i(e));try{return await this.enqueueRequest({description:y(l.DELETE,this.name,!1),method:l.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(d){throw this.dispatch(n(c)),d}}async refreshStore(e,i){const{initialize:n}=this.actions,c=(await this.listPaginated({queryParams:{field_values__procedure__project:e}},i)).flat();return this.dispatch(n(c)),c}}class VR extends w{name="Procedure Step Field Values";url="/procedure-step-field-values";actions={addOne:mO,addMany:pO,setOne:yO,setMany:fO,updateOne:SO,updateMany:AO,deleteOne:IO,deleteMany:TO,initialize:hO};selectors={selectById:FO,selectByIds:bO};add(e){const{addOne:i,updateOne:n,deleteOne:a}=this.actions,c=this.select(o=>o.userReducer.currentUser?.id??null),d=new Date().toISOString(),r=O({...e,created_by:c,submitted_at:d}),h=this.enqueueRequest({description:y(l.POST,this.name,!1),method:l.POST,url:`${this.url}/`,payload:M(r),blockers:[e.procedure,e.procedure_step,e.fields_revision],blocks:[r.uuid]});return this.dispatch(i(r)),h.then(o=>{this.dispatch(n(o))}).catch(()=>{this.dispatch(a(r.uuid))}),[r,h]}bulkAdd(e,i){const{addMany:n,updateMany:a,deleteMany:c}=this.actions,d=new Date().toISOString(),r=this.select(I=>I.userReducer.currentUser?.id??null),h=[],o=k(e,Math.min(i??e.length,U)),f=[];for(const I of o){const S=[],b=[],g=[];for(const _ of I){const E=O({..._,values:_.values,created_by:r,submitted_at:d});h.push(E),S.push(M(E)),b.push(E.procedure_step,E.procedure,E.fields_revision),g.push(E.uuid)}f.push({payload:{payloads:S,submitted_at:d},blockers:b,blocks:g})}this.dispatch(n(h));const A=f.map(I=>{const{payload:S,blocks:b,blockers:g}=I;return this.enqueueRequest({description:y(l.POST,this.name,!0),method:l.POST,url:`${this.url}/bulk/`,payload:S,blockers:g,blocks:b})});return Promise.all(A).then(I=>{this.dispatch(a(I.flat()))}).catch(()=>{this.dispatch(c(R(h)))}),[h,Promise.all(A).then(I=>I.flat())]}update(e){const{updateOne:i}=this.actions,{selectById:n}=this.selectors,a=this.select(n(e.uuid));if(!a)throw new Error(`Expected ProcedureStepFieldValues with uuid ${e.uuid} to exist`);const c={...a,...e};this.dispatch(i(c));const d=this.enqueueRequest({description:y(l.PATCH,this.name,!1),method:l.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[c.uuid,c.procedure,c.procedure_step,c.fields_revision],blocks:[c.uuid]});return d.then(r=>{this.dispatch(i(r))}).catch(()=>{this.dispatch(i(a))}),[c,d]}async delete(e){const{deleteOne:i,addOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e));if(!c)throw new Error(`Expected ProcedureStepFieldValues with uuid ${e} to exist`);const d=this.select(uO(e)),r=this.select(jO(e));this.dispatch(i(e)),this.dispatch(Ln(R(d))),this.dispatch(Wn(R(r)));try{return await this.enqueueRequest({description:y(l.DELETE,this.name,!1),method:l.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(h){throw this.dispatch(n(c)),this.dispatch(Un(d)),this.dispatch(Hn(r)),h}}async refreshStore(e,i){const{initialize:n}=this.actions,c=(await this.listPaginated({queryParams:{procedure__project:e}},i)).flat();return this.dispatch(n(c)),c}}class BR extends w{name="Procedure Step Reviewer";url="/procedure-step-reviewers";actions={addOne:UO,addMany:LO,setOne:kO,setMany:NO,updateOne:GO,updateMany:HO,deleteOne:WO,deleteMany:KO,initialize:$O};selectors={selectById:ZO,selectByIds:JO};add(e){const{addOne:i,updateOne:n,deleteOne:a}=this.actions,c=O({...e,created_by:this.select(r=>r.userReducer.currentUser?.id??null),submitted_at:new Date().toISOString()});this.dispatch(i(c));const d=this.enqueueRequest({description:y(l.POST,this.name,!1),method:l.POST,url:`${this.url}/`,payload:M(c),blockers:[c.procedure,c.procedure_step],blocks:[c.uuid]});return d.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(a(c.uuid))}),[c,d]}bulkAdd(e){const{addMany:i,updateMany:n,deleteMany:a}=this.actions,c=this.select(o=>o.userReducer.currentUser?.id??null),d=new Date().toISOString(),r=e.map(o=>O({...o,created_by:c,submitted_at:d}));this.dispatch(i(r));const h=this.enqueueRequest({description:y(l.POST,this.name,!0),method:l.POST,url:`${this.url}/bulk/`,payload:{procedure_step_reviewers:r.map(o=>M(o)),submitted_at:d},blockers:r.flatMap(o=>[o.procedure,o.procedure_step]),blocks:r.map(o=>o.uuid)});return h.then(o=>{this.dispatch(n(o))}).catch(()=>{this.dispatch(a(R(r)))}),[r,h]}async delete(e){const{deleteOne:i,addOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e));if(!c)throw new Error(`Expected procedure step reviewer with uuid ${e} to exist`);this.dispatch(i(e));try{return await this.enqueueRequest({description:y(l.DELETE,this.name,!1),method:l.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(d){throw this.dispatch(n(c)),d}}async bulkDelete(e){const{deleteMany:i,addMany:n}=this.actions,{selectByIds:a}=this.selectors,c=this.select(a(e));this.dispatch(i(e));try{return await this.enqueueRequest({description:y(l.DELETE,this.name,!0),method:l.DELETE,url:`${this.url}/bulk/`,payload:{uuids:e},blockers:e,blocks:[]})}catch(d){throw this.dispatch(n(c)),d}}async refreshStore(e,i){const{initialize:n}=this.actions,c=(await this.listPaginated({queryParams:{procedure__project:e}},i)).flat();return this.dispatch(n(c)),c}}class zR extends w{name="Procedure Initiative";url="/procedure-initiatives";actions={addOne:jA,addMany:qA,setOne:CA,setMany:$A,updateOne:UA,updateMany:LA,deleteOne:kA,deleteMany:NA,initialize:DA};selectors={selectById:WA,selectByIds:KA};add(e){const{store:i}=this.client,{addOne:n,updateOne:a,deleteOne:c}=this.actions,d=O({...e,created_by:i.getState().userReducer.currentUser?.id??null,submitted_at:new Date().toISOString()});this.dispatch(n(d));const r=this.enqueueRequest({description:y(l.POST,this.name,!1),method:l.POST,url:`${this.url}/`,payload:M(d),blockers:[d.procedure_type,d.project],blocks:[d.uuid]});return r.then(h=>{this.dispatch(a(h))}).catch(()=>{this.dispatch(c(d.uuid))}),[d,r]}update(e){const{updateOne:i}=this.actions,{selectById:n}=this.selectors,a=this.select(n(e.uuid));if(!a)throw new Error(`Expected ${this.name} with uuid ${e.uuid} to exist`);const c={...a,...e};this.dispatch(i(c));const d=this.enqueueRequest({description:y(l.PATCH,this.name,!1),method:l.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[a.uuid],blocks:[a.uuid]});return d.then(r=>{this.dispatch(i(r))}).catch(()=>{this.dispatch(i(a))}),[c,d]}async delete(e){const{deleteOne:i,addOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e));if(!c)throw new Error(`Expected ${this.name} with uuid ${e} to exist`);const d=this.select(uI(e));this.dispatch(i(e)),this.dispatch(bt(R(d)));try{return await this.enqueueRequest({description:y(l.DELETE,this.name,!1),method:l.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(r){throw this.dispatch(n(c)),this.dispatch(Ft(d)),r}}async refreshStore(e,i){const{initialize:n}=this.actions,c=(await this.listPaginated({queryParams:{project:e}},i)).flat();return this.dispatch(n(c)),c}}class DR extends w{name="Procedure Step";url="/procedure-steps";actions={addOne:sP,addMany:iP,setOne:eP,setMany:tP,updateOne:nP,updateMany:aP,deleteOne:cP,deleteMany:rP,initialize:xO};selectors={selectById:uP,selectByIds:lP};add(e){const{addOne:i,updateOne:n,deleteOne:a}=this.actions,c=O({...e,created_by:this.select(r=>r.userReducer.currentUser?.id??null),submitted_at:new Date().toISOString()});this.dispatch(i(c));const d=this.enqueueRequest({description:y(l.POST,this.name,!1),method:l.POST,url:`${this.url}/`,payload:M(c),blockers:[c.procedure_type],blocks:[c.uuid]});return d.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(a(c.uuid))}),[c,d]}update(e){const{updateOne:i}=this.actions,{selectById:n}=this.selectors,a=this.select(n(e.uuid));if(!a)throw new Error(`No procedure step with uuid ${e.uuid} found in the store`);const c={...a,...e};this.dispatch(i(c));const d=this.enqueueRequest({description:y(l.PATCH,this.name,!1),method:l.PATCH,url:`${this.url}/${a.uuid}/`,payload:e,blockers:[a.uuid],blocks:[a.uuid]});return d.then(r=>{this.dispatch(i(r))}).catch(()=>{this.dispatch(i(a))}),[c,d]}async delete(e){const{addOne:i,deleteOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e));if(!c)throw new Error(`No procedure step with uuid ${e} found in the store`);this.dispatch(n(e));try{return await this.enqueueRequest({description:y(l.DELETE,this.name,!1),method:l.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(d){throw this.dispatch(i(c)),d}}bulkUpdate(e,i){const{updateMany:n}=this.actions,{selectByIds:a}=this.selectors,c=R(e);if(new Set(c).size!==e.length)throw new Error("payloads contains duplicate uuids.");const d=this.select(a(c));if(c.length!=d.length)throw new Error(`Attempting to bulk update ${c.length-d.length} ${this.name} that dont exist in the store`);const r=d.toSorted(ut),h=e.toSorted(ut),o=[];for(let S=0;S<c.length;S++)o.push({...r[S],...h[S]});this.dispatch(n(o));const f=k(e,Math.min(i??e.length,U)),A=[];let I=null;for(const S of f){const b=dt.v4(),g=R(S),_=this.enqueueRequest({description:y(l.PATCH,this.name,!0),method:l.PATCH,url:`${this.url}/bulk/`,payload:{payloads:S},blockers:(I?[I]:[]).concat(g),blocks:[b].concat(g)});A.push(_),I=b}return Promise.all(A).then(S=>{this.dispatch(n(S.flat()))}).catch(()=>{this.dispatch(n(d))}),[o,A]}async refreshStore(e,i){const{initialize:n}=this.actions,a=await this.list({queryParams:{procedure_type__organization:e}},i);return this.dispatch(n(a)),a}}class jR extends B{name="Procedure Type Attachment";url="/procedure-type-attachments";actions={addOne:mP,addMany:pP,setOne:yP,setMany:fP,updateOne:SP,updateMany:AP,deleteOne:IP,deleteMany:TP,initialize:hP};selectors={selectById:FP,selectByIds:bP};getId(e){return e.uuid}getBlockers(e){return[e.procedure_type]}getBlocks(e){return[e.uuid]}buildModel(e){const i=this.select(a=>a.userReducer.currentUser?.id??null),n=new Date().toISOString();return O({...e,created_by:i,submitted_at: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,i){const{initialize:n}=this.actions,a=await this.list({queryParams:{procedure_type__organization:e}},i);return this.dispatch(n(a)),a}}class qR extends B{name="Procedure Type Fields Attachment";url="/procedure-type-fields-attachments";actions={addOne:MP,addMany:RP,setOne:wP,setMany:vP,updateOne:EP,updateMany:VP,deleteOne:BP,deleteMany:zP,initialize:gP};selectors={selectById:qP,selectByIds:CP};getId(e){return e.uuid}getBlockers(e){return[e.fields_revision]}getBlocks(e){return[e.uuid]}buildModel(e){const i=this.select(a=>a.userReducer.currentUser?.id??null),n=new Date().toISOString();return O({...e,created_by:i,submitted_at:n})}buildPayload(e){const{uuid:i,field_identifier:n,fields_revision:a,file_sha1:c,file_name:d,file_extension:r}=e;return{uuid:i,submitted_at:e.submitted_at,field_identifier:n,fields_revision:a,file_sha1:c,file_name:d,file_extension:r}}buildBulkPayload(e){const{uuid:i,field_identifier:n,fields_revision:a,file_sha1:c,file_name:d,file_extension:r}=e;return{uuid:i,field_identifier:n,fields_revision:a,file_sha1:c,file_name:d,file_extension:r}}async refreshStore(e,i){const{initialize:n}=this.actions,a=await this.list({queryParams:{fields_revision__procedure_type__organization:e}},i);return this.dispatch(n(a)),a}}class CR extends w{name="Procedure Type Fields";url="/procedure-type-fields";actions={addOne:LP,addMany:kP,setOne:NP,setMany:GP,updateOne:HP,updateMany:WP,deleteOne:KP,deleteMany:YP,initialize:UP};selectors={selectById:XP,selectByIds:QP};add(e){const{addOne:i,updateOne:n,deleteOne:a}=this.actions,c=this.select(o=>o.userReducer.currentUser?.id??null),d=new Date().toISOString(),r=O({...e,created_by:c,submitted_at:d});this.dispatch(i(r));const h=this.enqueueRequest({description:y(l.POST,this.name,!1),method:l.POST,url:`${this.url}/`,payload:M(r),blockers:[r.procedure_type],blocks:[r.uuid]});return h.then(o=>{this.dispatch(n(o))}).catch(o=>{throw this.dispatch(a(r.uuid)),o}),[r,h]}async refreshStore(e,i){const{initialize:n}=this.actions,a=await this.list({queryParams:{procedure_type__organization:e}},i);return this.dispatch(n(a)),a}}class $R extends B{name="Procedure Field Values Attachment";url="/procedure-field-values-attachments";actions={addOne:tF,addMany:ia,setOne:sF,setMany:iF,updateOne:nF,updateMany:aF,deleteOne:cF,deleteMany:na,initialize:eF};selectors={selectById:uF,selectByIds:lF};getId(e){return e.uuid}getBlockers(e){return[e.field_values]}getBlocks(e){return[e.uuid]}buildModel(e){const i=this.select(a=>a.userReducer.currentUser?.id??null),n=new Date().toISOString();return O({...e,created_by:i,submitted_at:n})}buildPayload(e){const{uuid:i,field_identifier:n,field_values:a,file_sha1:c,file_name:d,file_extension:r}=e;return{uuid:i,submitted_at:e.submitted_at,field_identifier:n,field_values:a,file_sha1:c,file_name:d,file_extension:r}}buildBulkPayload(e){const{uuid:i,field_identifier:n,field_values:a,file_sha1:c,file_name:d,file_extension:r}=e;return{uuid:i,field_identifier:n,field_values:a,file_sha1:c,file_name:d,file_extension:r}}async bulkDelete(e){const{deleteMany:i,addMany:n}=this.actions,{selectByIds:a}=this.selectors,c=this.select(a(e));this.dispatch(i(e));try{return await this.enqueueRequest({description:y(l.DELETE,this.name,!0),method:l.DELETE,url:`${this.url}/bulk/`,payload:{uuids:e},blockers:e,blocks:[]})}catch(d){throw this.dispatch(n(c)),d}}async refreshStore(e,i){const{initialize:n}=this.actions,c=(await this.listPaginated({queryParams:{field_values__procedure__project:e,latest:!0}},i)).flat();return this.dispatch(n(c)),c}}class UR extends w{name="Procedure Field Values";url="/procedure-field-values";actions={addOne:pF,addMany:yF,setOne:fF,setMany:SF,updateOne:AF,updateMany:IF,deleteOne:TF,deleteMany:OF,initialize:mF};selectors={selectById:bF,selectByIds:_F};add(e){const{addOne:i,updateOne:n,deleteOne:a}=this.actions,c=this.select(o=>o.userReducer.currentUser?.id??null),d=new Date().toISOString(),r=O({...e,created_by:c,submitted_at:d}),h=this.enqueueRequest({description:y(l.POST,this.name,!1),method:l.POST,url:`${this.url}/`,payload:M(r),blockers:[e.fields_revision,e.procedure],blocks:[r.uuid]});return this.dispatch(i(r)),h.then(o=>{this.dispatch(n(o))}).catch(()=>{this.dispatch(a(r.uuid))}),[r,h]}bulkAdd(e,i){const{addMany:n,updateMany:a,deleteMany:c}=this.actions,d=new Date().toISOString(),r=this.select(I=>I.userReducer.currentUser?.id??null),h=[],o=k(e,Math.min(i??e.length,U)),f=[];for(const I of o){const S=[],b=[],g=[];for(const _ of I){const E=O({..._,values:_.values,created_by:r,submitted_at:d});h.push(E),S.push(M(E)),b.push(E.procedure,E.fields_revision),g.push(E.uuid)}f.push({payload:{payloads:S,submitted_at:d},blockers:b,blocks:g})}this.dispatch(n(h));const A=f.map(I=>{const{payload:S,blocks:b,blockers:g}=I;return this.enqueueRequest({description:y(l.POST,this.name,!0),method:l.POST,url:`${this.url}/bulk/`,payload:S,blockers:g,blocks:b})});return Promise.all(A).then(I=>{this.dispatch(a(I.flat()))}).catch(()=>{this.dispatch(c(R(h)))}),[h,Promise.all(A).then(I=>I.flat())]}update(e){const{updateOne:i}=this.actions,{selectById:n}=this.selectors,a=this.select(n(e.uuid));if(!a)throw new Error(`Expected ProcedureFieldValues with uuid ${e.uuid} to exist`);const c={...a,...e};this.dispatch(i(c));const d=this.enqueueRequest({description:y(l.PATCH,this.name,!1),method:l.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[c.fields_revision,c.procedure],blocks:[c.uuid]});return d.then(r=>{this.dispatch(i(r))}).catch(()=>{this.dispatch(i(a))}),[c,d]}async delete(e){const{deleteOne:i,addOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e));if(!c)throw new Error(`Expected submission with uuid ${e} to exist`);const d=this.select(oF(e));this.dispatch(i(e)),this.dispatch(na(R(d)));try{return await this.enqueueRequest({description:y(l.DELETE,this.name,!1),method:l.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(r){throw this.dispatch(n(c)),this.dispatch(ia(d)),r}}async refreshStore(e,i){const{initialize:n}=this.actions,c=(await this.listPaginated({queryParams:{procedure__project:e,latest:!0}},i)).flat();return this.dispatch(n(c)),c}}class LR extends w{name="Procedure Type";url="/procedure-types";actions={addOne:RF,addMany:wF,setOne:vF,setMany:EF,updateOne:VF,updateMany:BF,deleteOne:zF,deleteMany:DF,initialize:MF};selectors={selectById:CF,selectByIds:$F};add(e){const{addOne:i,updateOne:n,deleteOne:a}=this.actions,c=O({...e,created_by:this.select(r=>r.userReducer.currentUser?.id??null),submitted_at:new Date().toISOString()});this.dispatch(i(c));const d=this.enqueueRequest({description:y(l.POST,this.name,!1),method:l.POST,url:`${this.url}/`,payload:M(c),blockers:[],blocks:[c.uuid]});return d.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(a(c.uuid))}),[c,d]}update(e){const{updateOne:i}=this.actions,{selectById:n}=this.selectors,a=this.select(n(e.uuid));if(!a)throw new Error(`Expected procedure type with uuid ${e.uuid} to exist`);const c={...a,...e};this.dispatch(i(c));const d=this.enqueueRequest({description:y(l.PATCH,this.name,!1),method:l.PATCH,url:`${this.url}/${e.uuid}/`,payload:e,blockers:[a.uuid],blocks:[a.uuid]});return d.then(r=>{this.dispatch(i(r))}).catch(()=>{this.dispatch(i(a))}),[c,d]}async delete(e){const{deleteOne:i,addOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e));if(!c)throw new Error(`Expected procedure type with uuid ${e} to exist`);const d=this.select(cI(e));this.dispatch(i(e)),this.dispatch(bt(R(d)));try{return await this.enqueueRequest({description:y(l.DELETE,this.name,!1),method:l.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[]})}catch(r){throw this.dispatch(n(c)),this.dispatch(Ft(d)),r}}async refreshStore(e,i){const{initialize:n}=this.actions,a=await this.list({queryParams:{organization:e}},i);return this.dispatch(n(a)),a}}class kR extends w{name="Team Membership";url="/team-memberships";actions={addOne:NF,addMany:GF,setOne:HF,setMany:WF,updateOne:KF,updateMany:YF,deleteOne:ZF,deleteMany:JF,initialize:kF};selectors={selectById:xF,selectByIds:eb};add(e){const{addOne:i,updateOne:n,deleteOne:a}=this.actions,c=O({...e,created_by:this.select(r=>r.userReducer.currentUser?.id??null)});this.dispatch(i(c));const d=this.enqueueRequest({description:y(l.POST,this.name,!1),method:l.POST,url:`${this.url}/`,payload:M(c),blockers:[e.team],blocks:[c.uuid]});return d.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(a(c.uuid))}),[c,d]}bulkAdd(e){const{addMany:i,updateMany:n,deleteMany:a}=this.actions,c=this.select(h=>h.userReducer.currentUser?.id??null),d=e.map(h=>O({...h,created_by:c}));this.dispatch(i(d));const r=this.enqueueRequest({description:y(l.POST,this.name,!0),method:l.POST,url:`${this.url}/bulk/`,payload:{team_memberships:d.map(h=>M(h))},blockers:d.map(h=>h.team),blocks:d.map(h=>h.uuid)});return r.then(h=>{this.dispatch(n(h))}).catch(()=>{this.dispatch(a(d.map(h=>h.uuid)))}),[d,r]}async delete(e){const{addOne:i,deleteOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e));if(!c)throw new Error(`Expected team membership with uuid ${e} to exist`);this.dispatch(n(e));try{return await this.enqueueRequest({description:y(l.DELETE,this.name,!1),method:l.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[e]})}catch(d){throw this.dispatch(i(c)),d}}async refreshStore(e,i){const{initialize:n}=this.actions,a=await this.list({queryParams:{team__organization:e}},i);return this.dispatch(n(a)),a}}class NR extends w{name="Team";url="/teams";actions={addOne:ib,addMany:nb,setOne:ab,setMany:cb,updateOne:rb,updateMany:db,deleteOne:ub,deleteMany:lb,initialize:sb};selectors={selectById:hb,selectByIds:mb};add(e){const{addOne:i,updateOne:n,deleteOne:a}=this.actions,c=O({...e,submitted_at:new Date().toISOString(),created_by:this.select(r=>r.userReducer.currentUser?.id??null)});this.dispatch(i(c));const d=this.enqueueRequest({description:y(l.POST,this.name,!1),method:l.POST,url:`${this.url}/`,payload:M(c),blockers:[],blocks:[c.uuid]});return d.then(r=>{this.dispatch(n(r))}).catch(()=>{this.dispatch(a(c.uuid))}),[c,d]}update(e){const{updateOne:i}=this.actions,{selectById:n}=this.selectors,a=this.select(n(e.uuid));if(!a)throw new Error(`Expected team with uuid ${e.uuid} to exist`);const c={...a,...e};this.dispatch(i(c));const d=this.enqueueRequest({description:y(l.PATCH,this.name,!1),method:l.PATCH,url:`${this.url}/${e.uuid}/`,payload:M(e),blockers:[e.uuid],blocks:[e.uuid]});return d.then(r=>{this.dispatch(i(r))}).catch(()=>{this.dispatch(i(a))}),[c,d]}async delete(e){const{addOne:i,deleteOne:n}=this.actions,{selectById:a}=this.selectors,c=this.select(a(e));if(!c)throw new Error(`Expected team with uuid ${e} to exist`);this.dispatch(n(e));try{return await this.enqueueRequest({description:y(l.DELETE,this.name,!1),method:l.DELETE,url:`${this.url}/${e}/`,blockers:[e],blocks:[e]})}catch(d){throw this.dispatch(i(c)),d}}async refreshStore(e,i){const{initialize:n}=this.actions,a=await this.list({queryParams:{organization:e}},i);return this.dispatch(n(a)),a}}class GR extends ft{name="User";url="/user";actions={addOne:on,addMany:vf,setOne:wf,setMany:Rf,updateOne:Vf,updateMany:Ef,deleteOne:hn,deleteMany:Bf,initialize:Mf};selectors={selectById:is,selectByIds:jf};async list(e,i){const{organizationUuid:n,...a}=e,c=n?`/organizations/${n}${this.url}s/`:`/${this.url}`;return this.performRequest({method:l.GET,url:c,...a},i)}async refreshStore(e,i){const{initialize:n}=this.actions,a=await this.list({organizationUuid:e},i);return this.dispatch(n(a)),a}}async function Aa(t,e,i,n,a){const c=n instanceof yt;c&&e.checkAuth!==!1&&await n.auth.prepareAuth();const d={queryParams:"",isAuthNeeded:!0},{s3url:r,payload:h,headers:o,method:f,queryParams:A,attachmentHash:I,isExternalUrl:S,isAuthNeeded:b,isResponseBlob:g}={...d,...e};let _=e.url;const E=I?await i.files.getFileFromCache(I):void 0,z=E?await za(E):void 0;if(I){if(!z)throw new Error(`Cannot upload file ${I} because it's not cached.`);if(z.size===0)throw new Error(`Cannot upload file ${I} because its has a size of 0.`)}!S&&!_.startsWith("http")&&(!_.startsWith("/")&&!_.startsWith("blob:")&&(_="/"+_),_=t+_);const v=D=>{if(I){if(!r)throw new Error(`No S3 URL for file ${I}`);if("warning"in r)throw new Error(`S3 URL warning for file ${I}`);if(!z)throw new Error(`No file for file ${I}`);const L=r.fields["x-amz-checksum-sha1"];if(!L)throw new Error(`No checksum for file ${I}`);return D.set("x-amz-checksum-sha1",L).field({...h,...r.fields}).attach("file",z)}return D.send(h)},qt={[l.GET]:()=>g?At.get(_.toString()).responseType("blob"):At.get(_.toString()),[l.POST]:()=>{const D=At.post(_.toString());return v(D)},[l.PATCH]:()=>{const D=At.patch(_.toString());return v(D)},[l.PUT]:()=>{const D=At.put(_.toString());return v(D)},[l.DELETE]:()=>{const D=At.delete(_.toString());return v(D)}}[f];let C=qt();const os=()=>{console.debug("aborting request:",e.url),C.abort()};a?.addEventListener("abort",os),b&&c&&(C=n.auth.applyAuth(C)),o&&(C=C.set(o));try{return await C.query(A)}catch(D){const L=bb(D),Ct=L?.status;throw c&&L&&n.auth.isAuthFailure(L)?(await n.auth.handleUnauthorized(C,L),new q({response:L,innerError:D,discard:!1})):new q({response:L,innerError:D,discard:ya.includes(Ct)})}finally{a?.removeEventListener("abort",os)}}class HR{store;constructor(e){this.store=e}_performRequest(e,i,n,a){const c=new hs,d={...i,uuid:i.uuid??dt.v4()};return Aa(e,d,this,n,a).then(r=>{c.resolve(r.body)}).catch(r=>{r instanceof Error?c.reject(r):c.reject(new Error((r??_t).toString()))}),c}async performRequest(e,i,n,a){return this._performRequest(e,i,n,a).then(c=>{if(c instanceof q)throw c;return c})}async enqueueRequest(e,i,n){return this._enqueueRequest(e,i,n).then(a=>{if(a instanceof q)throw a;return a})}_enqueueRequest(e,i,n){const a=new hs,c={...e,BASE_URL:i,serviceName:n},d=this.store.dispatch(pS(c)),r=o=>{if(o)a.resolve(o.body);else{const f=new q({message:"Could not get a response from the server.",response:o,discard:!0});a.reject(f)}},h=o=>{o instanceof q?o.options.discard=!0:(console.error("Received an unexpected error while processing a request:",o,`
14
+ Converting error to APIError and discarding.`),o=new q({message:"An error occurred while processing the request.",innerError:o,discard:!0})),a.reject(o)};return d.then(r,h),a}async performPagination(e,i,n,a,c){const d={...i,queryParams:{...i.queryParams,paginate:!0,limit:n}},{method:r}=d,h=[];let o=await this.performRequest(e,d,a,c);for(h.push(o.results);o.next;)o=await this.performRequest(e,{url:o.next,method:r},a,c),h.push(o.results);return h}}class gt{graph;requestAttemptCounter;constructor(){this.graph=new Nb.DepGraph,this.requestAttemptCounter={}}static _fromOutbox(e){const i=new gt;for(let n=0;n<e.length;n++){const a=e[n];if(!a){console.error("Outbox item was undefined");continue}i.sneakRequest(a);for(let c=0;c<n;c++){const d=e[c];if(!d){console.error("Previous outbox item was undefined");continue}d.payload.uuid!==a.payload.uuid&&d.payload.blocks.some(r=>a.payload.blockers.includes(r))&&gt._addDependency(a.payload.uuid,d.payload.uuid,i.graph)}}return i}_addDependency(e,i){gt._addDependency(e,i,this.graph)}static _addDependency(e,i,n){if(e===i)throw new Error(`Tried to add dependency from node to itself: ${e}`);if(!n.hasNode(e))throw new Error(`Tried to add dependency from non-existent node: ${e} (to node: ${i})`);if(!n.hasNode(i))throw new Error(`Tried to add dependency to non-existent node: ${i} (from node: ${e})`);n.addDependency(e,i)}addRequest(e){if(this.graph.addNode(e.payload.uuid,e),!(e.payload.blockers.length===0||this.graph.size()===1))for(const i of this.graph.overallOrder()){if(i===e.payload.uuid)continue;const n=this.graph.getNodeData(i),a=new Set(n.payload.blocks);e.payload.blockers.some(c=>a.has(c))&&this._addDependency(e.payload.uuid,i)}}insertRequest(e){this.graph.addNode(e.payload.uuid,e);for(const i of this.graph.overallOrder()){if(i===e.payload.uuid)continue;const n=this.graph.getNodeData(i),a=new Set(e.payload.blocks);n.payload.blockers.some(c=>a.has(c))&&this._addDependency(i,e.payload.uuid)}}sneakRequest(e){this.graph.addNode(e.payload.uuid,e)}_getNextNode(){const e=this.graph.overallOrder(!0);let i=1/0,n;for(const a of e){const c=this.requestAttemptCounter[a]||0;c<i&&(i=c,n=a)}return n}peek(){const e=this._getNextNode();if(e)return this.graph.getNodeData(e)}remove(e){this.graph.removeNode(e),delete this.requestAttemptCounter[e]}pop(){const e=this.peek();return e&&this.graph.removeNode(e.payload.uuid),e}getQueue(){const e=this.graph.overallOrder().map(n=>this.graph.getNodeData(n)),i=this._getNextNode();if(i){const n=this.graph.getNodeData(i),a=e.findIndex(c=>c.payload.uuid===n.payload.uuid);a!==-1&&(e.splice(a,1),e.unshift(n))}return e}getReady(){let e=this.graph.overallOrder(!0).map(i=>this.graph.getNodeData(i));return e=e.sort((i,n)=>i.meta.offline.effect.timestamp.localeCompare(n.meta.offline.effect.timestamp)),e=e.sort((i,n)=>{const a=this.requestAttemptCounter[i.payload.uuid]||0,c=this.requestAttemptCounter[n.payload.uuid]||0;return a-c}),e}registerRetry(e){this.requestAttemptCounter[e]=(this.requestAttemptCounter[e]||0)+1}}let gb;function Mb(t){gb=t}function Mt(){return gb}let Rb;function wb(t){Rb=t}function vb(){return Rb}let Ia=null;function St(){const t=Mt();if(!t)return console.warn("Client store not set; cannot get outbox coordinator yet."),null;if(Ia)return Ia;const e=t.getState().offline.outbox,i=gt._fromOutbox(e);return Ia=i,i}const WR=(t,e)=>{const i=new e(t);return wb(i),Mb(t),i};class KR{_all;_previous;constructor(e){this._all=[e],this._previous=e,this.then=this.then.bind(this),this.compile=this.compile.bind(this)}then(e){return this._previous&&(this._previous.next=e),this._all.push(e),this._previous=e,{then:this.then,compile:this.compile}}compile(){return this._all}}class Ta{next;constructor(){this.next=null}then(e){return new KR(this).then(e)}async run(e){if(this.next)return this.next.run(e);{if(console.debug("Middleware finished. Performing request:",e.payload.url),!Mt())throw new Error("Client store not set");const n=vb();if(!n)throw new Error("Client SDK not set");return Ob(e,n)}}}class Eb extends Ta{async run(e){return super.run(e)}}class Vb extends Ta{async run(e){return super.run(e)}}const Bb=new Eb().then(new Vb).compile();function zb(t){return Bb[0]?.run(t)}var Db=(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))(Db||{});s.ALL_MIDDLEWARE=Bb,s.APIError=q,s.AgentService=PM,s.AssetAttachmentService=FM,s.AssetCommentService=bM,s.AssetService=_M,s.AssetStatusType=Ra,s.AssetTypeAttachmentService=gM,s.AssetTypeFieldValuesAttachmentService=wM,s.AssetTypeFieldValuesService=vM,s.AssetTypeFieldsAttachmentService=MM,s.AssetTypeFieldsService=RM,s.AssetTypeIdentifierService=EM,s.AssetTypeIdentifierValueService=VM,s.AssetTypeService=BM,s.AssetTypeStatusService=zM,s.BaseApiService=yt,s.BaseAuthService=_b,s.BaseModelApiService=ft,s.BaseOfflineFileModelApiService=B,s.BaseOfflineModelApiService=w,s.BaseSDK=HR,s.COMMON_AUTO_FIELDS=ga,s.DEFAULT_PAGE_SIZE=fb,s.DISCARD_HTTP_STATUSES=ya,s.DeferredPromise=hs,s.DocumentAttachmentService=DM,s.DocumentService=jM,s.EMPTY_ARRAY=Fa,s.EMPTY_OBJECT=ba,s.EmailDomainsService=qM,s.EmailVerificationService=CM,s.FileService=$M,s.FormIdentifierService=UM,s.FormIdentifierValueService=LM,s.FormRevisionAttachmentService=kM,s.FormRevisionService=NM,s.FormService=GM,s.FormSubmissionFieldValuesAttachmentService=WM,s.FormSubmissionFieldValuesService=KM,s.FormSubmissionService=YM,s.FormSubscriberService=HM,s.GeoImageService=ZM,s.HttpMethod=l,s.IssueAssociationService=JM,s.IssueAttachmentService=XM,s.IssueCommentAttachmentService=QM,s.IssueCommentService=xM,s.IssuePriorityType=va,s.IssueService=eR,s.IssueStatusType=wa,s.IssueTypeAttachmentService=tR,s.IssueTypeFieldValuesAttachmentService=nR,s.IssueTypeFieldValuesService=aR,s.IssueTypeFieldsAttachmentService=sR,s.IssueTypeFieldsService=iR,s.IssueTypeIdentifierService=cR,s.IssueTypeIdentifierValueService=rR,s.IssueTypePriorityService=dR,s.IssueTypeService=uR,s.IssueTypeStatusService=lR,s.IssueUpdateChange=j,s.IssueUpdateService=oR,s.JWTService=pR,s.MAX_SERVICE_BATCH_SIZE=U,s.OUTBOX_RETRY_DELAY=_a,s.OfflineAnalyticsMiddleware=Eb,s.OfflineMiddleware=Ta,s.OrganizationAccessLevel=Ma,s.OrganizationAccessService=yR,s.OrganizationService=fR,s.OutboxCoordinator=gt,s.ProcdureInitiativeService=zR,s.ProcedureFieldValuesAttachmentService=$R,s.ProcedureFieldValuesService=UR,s.ProcedureService=PR,s.ProcedureStepAssigneeService=FR,s.ProcedureStepCommentService=bR,s.ProcedureStepDefaultAssigneeService=_R,s.ProcedureStepDefaultReviewerService=gR,s.ProcedureStepEventService=MR,s.ProcedureStepEventType=Ea,s.ProcedureStepFieldValuesAttachmentService=vR,s.ProcedureStepFieldValuesReviewService=ER,s.ProcedureStepFieldValuesReviewType=Va,s.ProcedureStepFieldValuesService=VR,s.ProcedureStepFieldsAttachmentService=RR,s.ProcedureStepFieldsService=wR,s.ProcedureStepReviewerService=BR,s.ProcedureStepService=DR,s.ProcedureTypeAttachmentService=jR,s.ProcedureTypeFieldsAttachmentService=qR,s.ProcedureTypeFieldsService=CR,s.ProcedureTypeService=LR,s.ProjectAccessService=SR,s.ProjectAttachmentService=AR,s.ProjectCommentService=IR,s.ProjectFileService=TR,s.ProjectService=OR,s.RESET_ORGANIZATION_STATE=F,s.RESET_PROJECT_STATE=V,s.RESET_STATE=T,s.RateLimitingMiddleware=Vb,s.SelectorBuilder=l_,s.TeamMembershipService=kR,s.TeamService=NR,s.UNKNOWN_ERROR_MESSAGE=_t,s.UserService=GR,s.VerificationCodeType=Db,s._setLatestRetryTime=fS,s.addAsset=Ec,s.addAssetAttachment=nc,s.addAssetAttachments=Ts,s.addAssetComment=Sc,s.addAssetComments=Lt,s.addAssetType=zd,s.addAssetTypeAttachment=Gc,s.addAssetTypeAttachments=Rs,s.addAssetTypeFieldValues=Gr,s.addAssetTypeFieldValuesAttachment=Er,s.addAssetTypeFieldValuesAttachments=Ds,s.addAssetTypeFieldValuesMany=Hr,s.addAssetTypeFields=Sr,s.addAssetTypeFieldsAttachment=ir,s.addAssetTypeFieldsAttachments=nr,s.addAssetTypeFieldsMany=Ar,s.addAssetTypeIdentifier=nd,s.addAssetTypeIdentifierValue=Ad,s.addAssetTypeIdentifierValues=Id,s.addAssetTypeIdentifiers=ad,s.addAssetTypeStatus=Wd,s.addAssetTypeStatuses=Kd,s.addAssetTypes=Dd,s.addAssets=_s,s.addConversation=Qa,s.addConversations=o_,s.addDocument=Fu,s.addDocumentAttachment=uu,s.addDocumentAttachments=lu,s.addDocuments=bu,s.addEmailDomain=qu,s.addEmailDomains=Cu,s.addForm=ho,s.addFormIdentifier=Xu,s.addFormIdentifierValue=ol,s.addFormIdentifierValues=hl,s.addFormIdentifiers=Qu,s.addFormRevision=$l,s.addFormRevisionAttachment=_l,s.addFormRevisionAttachments=gl,s.addFormRevisions=ii,s.addFormSubmission=Qo,s.addFormSubmissionFieldValues=qo,s.addFormSubmissionFieldValuesAttachment=go,s.addFormSubmissionFieldValuesAttachments=oi,s.addFormSubmissionFieldValuesMany=Si,s.addFormSubmissions=lt,s.addFormSubscriber=Ql,s.addFormSubscribers=ci,s.addForms=mo,s.addGeoImage=yh,s.addGeoImages=fh,s.addIssue=wm,s.addIssueAssociation=Eh,s.addIssueAssociations=Tt,s.addIssueAttachment=Nh,s.addIssueAttachments=_i,s.addIssueComment=fm,s.addIssueCommentAttachment=sm,s.addIssueCommentAttachments=im,s.addIssueComments=Sm,s.addIssueType=Gy,s.addIssueTypeAttachment=km,s.addIssueTypeAttachments=Nm,s.addIssueTypeFieldValues=fp,s.addIssueTypeFieldValuesAttachment=Gp,s.addIssueTypeFieldValuesAttachments=ki,s.addIssueTypeFieldValuesMany=Sp,s.addIssueTypeFields=vp,s.addIssueTypeFieldsAttachment=sp,s.addIssueTypeFieldsAttachments=ip,s.addIssueTypeFieldsMany=Ep,s.addIssueTypeIdentifier=iy,s.addIssueTypeIdentifierValue=Sy,s.addIssueTypeIdentifierValues=Ay,s.addIssueTypeIdentifiers=ny,s.addIssueTypePriorities=Vy,s.addIssueTypePriority=Ey,s.addIssueTypeStatus=af,s.addIssueTypeStatuses=cf,s.addIssueTypes=Hy,s.addIssueUpdate=nn,s.addIssueUpdates=an,s.addIssues=Bi,s.addOrganization=sS,s.addOrganizationAccess=$f,s.addOrganizationAccesses=Uf,s.addOrganizations=tS,s.addProcedure=JA,s.addProcedureFieldValues=pF,s.addProcedureFieldValuesAttachment=tF,s.addProcedureFieldValuesAttachments=ia,s.addProcedureFieldValuesMany=yF,s.addProcedureInitiative=jA,s.addProcedureInitiatives=qA,s.addProcedureStep=sP,s.addProcedureStepAssignee=hI,s.addProcedureStepAssignees=mI,s.addProcedureStepComment=gI,s.addProcedureStepComments=MI,s.addProcedureStepDefaultAssignee=UI,s.addProcedureStepDefaultAssignees=LI,s.addProcedureStepDefaultReviewer=eT,s.addProcedureStepDefaultReviewers=tT,s.addProcedureStepEvent=pT,s.addProcedureStepEvents=yT,s.addProcedureStepFieldValues=mO,s.addProcedureStepFieldValuesAttachment=eO,s.addProcedureStepFieldValuesAttachments=Un,s.addProcedureStepFieldValuesMany=pO,s.addProcedureStepFieldValuesReview=MO,s.addProcedureStepFieldValuesReviews=Hn,s.addProcedureStepFields=LT,s.addProcedureStepFieldsAttachment=RT,s.addProcedureStepFieldsAttachments=zn,s.addProcedureStepFieldsMany=kT,s.addProcedureStepReviewer=UO,s.addProcedureStepReviewers=LO,s.addProcedureSteps=iP,s.addProcedureType=RF,s.addProcedureTypeAttachment=mP,s.addProcedureTypeAttachments=pP,s.addProcedureTypeFields=LP,s.addProcedureTypeFieldsAttachment=MP,s.addProcedureTypeFieldsAttachments=RP,s.addProcedureTypeFieldsMany=kP,s.addProcedureTypes=wF,s.addProcedures=Ft,s.addProject=_A,s.addProjectAccess=TS,s.addProjectAccesses=OS,s.addProjectAttachment=BS,s.addProjectAttachments=zS,s.addProjectComment=KS,s.addProjectComments=YS,s.addProjectFile=uA,s.addProjectFiles=lA,s.addProjects=bA,s.addTeam=ib,s.addTeamMembership=NF,s.addTeamMemberships=GF,s.addTeams=nb,s.addUser=on,s.addUsers=vf,s.agentsReducer=tc,s.agentsSlice=Ss,s.areArraysEqual=Kb,s.assetAttachmentReducer=pc,s.assetAttachmentSlice=Is,s.assetCommentReducer=Rc,s.assetCommentSlice=Fs,s.assetReducer=Lc,s.assetSlice=bs,s.assetTypeAttachmentReducer=er,s.assetTypeAttachmentSlice=Ms,s.assetTypeFieldValuesAttachmentReducer=Lr,s.assetTypeFieldValuesAttachmentSlice=zs,s.assetTypeFieldValuesReducer=td,s.assetTypeFieldValuesSlice=Cs,s.assetTypeFieldsAttachmentReducer=pr,s.assetTypeFieldsAttachmentSlice=Es,s.assetTypeFieldsReducer=Rr,s.assetTypeFieldsSlice=Bs,s.assetTypeIdentifierReducer=yd,s.assetTypeIdentifierSlice=$s,s.assetTypeIdentifierValueReducer=wd,s.assetTypeIdentifierValueSlice=Ls,s.assetTypeReducer=Nd,s.assetTypeSlice=ks,s.assetTypeStatusReducer=iu,s.assetTypeStatusSlice=Gs,s.assetTypeStatusSortFn=Ha,s.authReducer=cu,s.authSlice=Kt,s.baseReducer=hM,s.baseReducers=pa,s.clearTokens=v_,s.createModelAdapter=P,s.createOfflineAction=hS,s.createPayload=M,s.createSelectionAdapter=Gb,s.deleteAsset=zc,s.deleteAssetAttachment=uc,s.deleteAssetAttachments=Os,s.deleteAssetComment=Pc,s.deleteAssetComments=kt,s.deleteAssetType=Cd,s.deleteAssetTypeAttachment=Zc,s.deleteAssetTypeAttachments=ws,s.deleteAssetTypeFieldValues=Jr,s.deleteAssetTypeFieldValuesAttachment=jr,s.deleteAssetTypeFieldValuesAttachments=js,s.deleteAssetTypeFieldValuesMany=Xr,s.deleteAssetTypeFields=Fr,s.deleteAssetTypeFieldsAttachment=ur,s.deleteAssetTypeFieldsAttachments=lr,s.deleteAssetTypeFieldsMany=br,s.deleteAssetTypeIdentifier=ld,s.deleteAssetTypeIdentifierValue=bd,s.deleteAssetTypeIdentifierValues=_d,s.deleteAssetTypeIdentifiers=od,s.deleteAssetTypeStatus=Qd,s.deleteAssetTypeStatuses=xd,s.deleteAssetTypes=$d,s.deleteAssets=gs,s.deleteConversation=p_,s.deleteConversations=y_,s.deleteDocument=wu,s.deleteDocumentAttachment=yu,s.deleteDocumentAttachments=fu,s.deleteDocuments=vu,s.deleteEmailDomain=Nu,s.deleteEmailDomains=Gu,s.deleteForm=Ao,s.deleteFormIdentifier=il,s.deleteFormIdentifierValue=Sl,s.deleteFormIdentifierValues=Al,s.deleteFormIdentifiers=nl,s.deleteFormRevision=Gl,s.deleteFormRevisionAttachment=El,s.deleteFormRevisionAttachments=Vl,s.deleteFormRevisions=ni,s.deleteFormSubmission=th,s.deleteFormSubmissionFieldValues=ko,s.deleteFormSubmissionFieldValuesAttachment=Eo,s.deleteFormSubmissionFieldValuesAttachments=hi,s.deleteFormSubmissionFieldValuesMany=Ai,s.deleteFormSubmissions=ot,s.deleteFormSubscriber=io,s.deleteFormSubscribers=ri,s.deleteForms=Io,s.deleteGeoImage=Ih,s.deleteGeoImages=Th,s.deleteIssue=zm,s.deleteIssueAssociation=Vh,s.deleteIssueAssociations=Ot,s.deleteIssueAttachment=Yh,s.deleteIssueAttachments=gi,s.deleteIssueComment=Pm,s.deleteIssueCommentAttachment=dm,s.deleteIssueCommentAttachments=um,s.deleteIssueComments=Fm,s.deleteIssueType=Jy,s.deleteIssueTypeAttachment=Ym,s.deleteIssueTypeAttachments=Zm,s.deleteIssueTypeFieldValues=Pp,s.deleteIssueTypeFieldValuesAttachment=Zp,s.deleteIssueTypeFieldValuesAttachments=Ni,s.deleteIssueTypeFieldValuesMany=Fp,s.deleteIssueTypeFields=jp,s.deleteIssueTypeFieldsAttachment=dp,s.deleteIssueTypeFieldsAttachments=up,s.deleteIssueTypeFieldsMany=qp,s.deleteIssueTypeIdentifier=uy,s.deleteIssueTypeIdentifierValue=Fy,s.deleteIssueTypeIdentifierValues=by,s.deleteIssueTypeIdentifiers=ly,s.deleteIssueTypePriorities=Cy,s.deleteIssueTypePriority=qy,s.deleteIssueTypeStatus=of,s.deleteIssueTypeStatuses=hf,s.deleteIssueTypes=Xy,s.deleteIssueUpdate=cn,s.deleteIssueUpdates=rn,s.deleteIssues=zi,s.deleteOrganization=aS,s.deleteOrganizationAccess=Hf,s.deleteOrganizationAccesses=Wf,s.deleteOrganizations=cS,s.deleteProcedure=tI,s.deleteProcedureFieldValues=TF,s.deleteProcedureFieldValuesAttachment=cF,s.deleteProcedureFieldValuesAttachments=na,s.deleteProcedureFieldValuesMany=OF,s.deleteProcedureInitiative=kA,s.deleteProcedureInitiatives=NA,s.deleteProcedureStep=cP,s.deleteProcedureStepAssignee=AI,s.deleteProcedureStepAssignees=II,s.deleteProcedureStepComment=VI,s.deleteProcedureStepComments=BI,s.deleteProcedureStepDefaultAssignee=WI,s.deleteProcedureStepDefaultAssignees=KI,s.deleteProcedureStepDefaultReviewer=cT,s.deleteProcedureStepDefaultReviewers=rT,s.deleteProcedureStepEvent=TT,s.deleteProcedureStepEvents=OT,s.deleteProcedureStepFieldValues=IO,s.deleteProcedureStepFieldValuesAttachment=aO,s.deleteProcedureStepFieldValuesAttachments=Ln,s.deleteProcedureStepFieldValuesMany=TO,s.deleteProcedureStepFieldValuesReview=VO,s.deleteProcedureStepFieldValuesReviews=Wn,s.deleteProcedureStepFields=KT,s.deleteProcedureStepFieldsAttachment=BT,s.deleteProcedureStepFieldsAttachments=Dn,s.deleteProcedureStepFieldsMany=YT,s.deleteProcedureStepReviewer=WO,s.deleteProcedureStepReviewers=KO,s.deleteProcedureSteps=rP,s.deleteProcedureType=zF,s.deleteProcedureTypeAttachment=IP,s.deleteProcedureTypeAttachments=TP,s.deleteProcedureTypeFields=KP,s.deleteProcedureTypeFieldsAttachment=BP,s.deleteProcedureTypeFieldsAttachments=zP,s.deleteProcedureTypeFieldsMany=YP,s.deleteProcedureTypes=DF,s.deleteProcedures=bt,s.deleteProject=RA,s.deleteProjectAccess=gS,s.deleteProjectAccesses=MS,s.deleteProjectAttachment=$S,s.deleteProjectAttachments=US,s.deleteProjectComment=xS,s.deleteProjectComments=eA,s.deleteProjectFile=mA,s.deleteProjectFiles=pA,s.deleteProjects=wA,s.deleteTeam=ub,s.deleteTeamMembership=ZF,s.deleteTeamMemberships=JF,s.deleteTeams=lb,s.deleteUser=hn,s.deleteUsers=Bf,s.dequeue=Tb,s.discard=Pb,s.documentAttachmentReducer=Tu,s.documentAttachmentSlice=Ws,s.documentSlice=Ys,s.documentsReducer=Eu,s.emailDomainsReducer=Yu,s.emailDomainsSlice=Js,s.emailRegex=d_,s.enqueue=Ib,s.enqueueRequest=pS,s.extractResponseFromError=bb,s.fallbackToEmptyArray=p,s.fallbackToEmptyObject=ys,s.fetchBlobFromObjectUrl=ja,s.fetchFileFromObjectUrl=qa,s.fileToBlob=za,s.formIdentifierReducer=dl,s.formIdentifierSlice=Qs,s.formIdentifierValueReducer=Pl,s.formIdentifierValueSlice=ei,s.formReducer=To,s.formRevisionAttachmentReducer=jl,s.formRevisionAttachmentSlice=ti,s.formRevisionReducer=Zl,s.formRevisionsSlice=si,s.formSlice=di,s.formSubmissionFieldValuesAttachmentReducer=zo,s.formSubmissionFieldValuesAttachmentSlice=li,s.formSubmissionFieldValuesReducer=Ko,s.formSubmissionFieldValuesSlice=fi,s.formSubmissionReducer=lh,s.formSubmissionSlice=Ti,s.formSubscriberReducer=uo,s.formSubscriberSlice=ai,s.geoImageReducer=bh,s.geoImageSlice=Oi,s.getClientSDK=vb,s.getClientStore=Mt,s.getDocumentSubTree=Za,s.getDocumentTrees=u_,s.getFileExtension=Da,s.getLocalDateString=Ba,s.getLocalRelativeDateString=Xb,s.getOutboxCoordinator=St,s.getPresignedUrlExpiryDate=La,s.getRenamedFile=e_,s.getRequestDescription=y,s.getS3FileKey=xb,s.hashFile=Ut,s.initSDK=WR,s.initializeAssetAttachments=ic,s.initializeAssetComments=fc,s.initializeAssetTypeAttachments=Nc,s.initializeAssetTypeFieldValues=Nr,s.initializeAssetTypeFieldValuesAttachments=vr,s.initializeAssetTypeFields=fr,s.initializeAssetTypeFieldsAttachments=sr,s.initializeAssetTypeIdentifierValues=Sd,s.initializeAssetTypeIdentifiers=id,s.initializeAssetTypeStatuses=Hd,s.initializeAssetTypes=Ed,s.initializeAssets=vc,s.initializeConversations=Xa,s.initializeDocumentAttachments=du,s.initializeDocuments=Pu,s.initializeEmailDomains=ju,s.initializeFormIdentifierValues=ll,s.initializeFormIdentifiers=Ju,s.initializeFormRevisionAttachments=bl,s.initializeFormRevisions=Cl,s.initializeFormSubmissionFieldValues=jo,s.initializeFormSubmissionFieldValuesAttachments=_o,s.initializeFormSubmissions=Zo,s.initializeFormSubscribers=Xl,s.initializeForms=oo,s.initializeGeoImages=hh,s.initializeIssueAssociations=gh,s.initializeIssueAttachments=kh,s.initializeIssueCommentAttachments=tm,s.initializeIssueComments=ym,s.initializeIssueTypeAttachments=Lm,s.initializeIssueTypeFieldValues=yp,s.initializeIssueTypeFieldValuesAttachments=Np,s.initializeIssueTypeFields=wp,s.initializeIssueTypeFieldsAttachments=tp,s.initializeIssueTypeIdentifierValues=fy,s.initializeIssueTypeIdentifiers=sy,s.initializeIssueTypePriorities=vy,s.initializeIssueTypeStatuses=nf,s.initializeIssueTypes=Ny,s.initializeIssueUpdates=Sf,s.initializeIssues=Rm,s.initializeOrganizationAccesses=Cf,s.initializeOrganizations=Qf,s.initializeProcedureFieldValues=mF,s.initializeProcedureFieldValuesAttachments=eF,s.initializeProcedureInitiatives=DA,s.initializeProcedureStepAssignees=oI,s.initializeProcedureStepComments=_I,s.initializeProcedureStepDefaultAssignees=$I,s.initializeProcedureStepDefaultReviewers=xI,s.initializeProcedureStepEvents=mT,s.initializeProcedureStepFieldValues=hO,s.initializeProcedureStepFieldValuesAttachments=xT,s.initializeProcedureStepFieldValuesReviews=gO,s.initializeProcedureStepFields=UT,s.initializeProcedureStepFieldsAttachments=MT,s.initializeProcedureStepReviewers=$O,s.initializeProcedureSteps=xO,s.initializeProcedureTypeAttachments=hP,s.initializeProcedureTypeFields=UP,s.initializeProcedureTypeFieldsAttachments=gP,s.initializeProcedureTypes=MF,s.initializeProcedures=ZA,s.initializeProjectAccesses=IS,s.initializeProjectAttachments=VS,s.initializeProjectComments=WS,s.initializeProjectFiles=cA,s.initializeProjects=OA,s.initializeTeamMemberships=kF,s.initializeTeams=sb,s.initializeUsers=Mf,s.isCloudfrontUrl=$a,s.isImageFile=t_,s.isObjectUrl=Ca,s.isPresignedUrlExpired=ka,s.isS3Url=Ua,s.isToday=Jb,s.issueAssociationReducer=Uh,s.issueAssociationSlice=Fi,s.issueAttachmentReducer=xh,s.issueAttachmentSlice=bi,s.issueCommentAttachmentReducer=mm,s.issueCommentAttachmentSlice=Ri,s.issueCommentReducer=gm,s.issueCommentSlice=vi,s.issueReducer=$m,s.issueSlice=Vi,s.issueTypeAttachmentReducer=xm,s.issueTypeAttachmentSlice=Di,s.issueTypeFieldValuesAttachmentReducer=ey,s.issueTypeFieldValuesAttachmentSlice=Li,s.issueTypeFieldValuesReducer=Mp,s.issueTypeFieldValuesSlice=$i,s.issueTypeFieldsAttachmentReducer=mp,s.issueTypeFieldsAttachmentSlice=qi,s.issueTypeFieldsReducer=Lp,s.issueTypeFieldsSlice=Ui,s.issueTypeIdentifierReducer=py,s.issueTypeIdentifierSlice=Hi,s.issueTypeIdentifierValueReducer=Ry,s.issueTypeIdentifierValueSlice=Ki,s.issueTypePriorityReducer=Ly,s.issueTypePrioritySlice=Yi,s.issueTypePrioritySortFn=Ka,s.issueTypeReducer=tf,s.issueTypeSlice=Xi,s.issueTypeStatusReducer=yf,s.issueTypeStatusSlice=xi,s.issueTypeStatusSortFn=Wa,s.issueUpdateReducer=_f,s.issueUpdateSlice=sn,s.logOnlyOnce=s_,s.markAsDeleted=yS,s.markForDeletion=fg,s.memoize=ps,s.organizationAccessReducer=Kf,s.organizationAccessSlice=pn,s.organizationReducer=oS,s.organizationSlice=yn,s.outboxReducer=SS,s.outboxSlice=fn,s.overmapEnhancer=SM,s.overmapReducer=mM,s.overmapReducers=yb,s.performRequest=Aa,s.performRequestFromAction=Ob,s.procedureFieldValuesAttachmentReducer=rF,s.procedureFieldValuesAttachmentSlice=sa,s.procedureFieldValuesReducer=PF,s.procedureFieldValuesSlice=ca,s.procedureInitiativeReducer=GA,s.procedureInitiativeSlice=bn,s.procedureReducer=sI,s.procedureSlice=_n,s.procedureStepAssigneeReducer=FI,s.procedureStepAssigneeSlice=gn,s.procedureStepCommentReducer=qI,s.procedureStepCommentSlice=Mn,s.procedureStepDefaultAssigneeReducer=XI,s.procedureStepDefaultAssigneeSlice=Rn,s.procedureStepDefaultReviewerReducer=oT,s.procedureStepDefaultReviewerSlice=vn,s.procedureStepEventReducer=_T,s.procedureStepEventSlice=Vn,s.procedureStepFieldValuesAttachmentReducer=lO,s.procedureStepFieldValuesAttachmentSlice=$n,s.procedureStepFieldValuesReducer=OO,s.procedureStepFieldValuesReviewReducer=qO,s.procedureStepFieldValuesReviewSlice=Gn,s.procedureStepFieldValuesSlice=Nn,s.procedureStepFieldsAttachmentReducer=CT,s.procedureStepFieldsAttachmentSlice=Bn,s.procedureStepFieldsReducer=XT,s.procedureStepFieldsSlice=qn,s.procedureStepReducer=dP,s.procedureStepReviewerReducer=XO,s.procedureStepReviewerSlice=Kn,s.procedureStepSlice=Yn,s.procedureTypeAttachmentReducer=OP,s.procedureTypeAttachmentSlice=Xn,s.procedureTypeFieldsAttachmentReducer=DP,s.procedureTypeFieldsAttachmentSlice=xn,s.procedureTypeFieldsReducer=ZP,s.procedureTypeFieldsSlice=ta,s.procedureTypeReducer=jF,s.procedureTypeSlice=da,s.projectAccessReducer=RS,s.projectAccessSlice=Sn,s.projectAttachmentReducer=GS,s.projectAttachmentSlice=In,s.projectCommentReducer=nA,s.projectCommentSlice=On,s.projectFileReducer=IA,s.projectFileSlice=Pn,s.projectReducer=vA,s.projectSlice=Fn,s.rehydratedReducer=UF,s.rehydratedSlice=la,s.restructureSelectorWithArgs=m,s.runMiddleware=zb,s.selectAccessToken=E_,s.selectAccessesByUserOfProject=Ag,s.selectAccessibleProjects=Fg,s.selectActiveOrganizationAccess=hg,s.selectAllDocumentAttachments=Ks,s.selectAssetAttachmentById=oc,s.selectAssetAttachmentMapping=lc,s.selectAssetAttachments=Ps,s.selectAssetAttachmentsByIds=hc,s.selectAssetById=$c,s.selectAssetCommentById=bc,s.selectAssetCommentMapping=Fc,s.selectAssetComments=Nt,s.selectAssetCommentsByIds=_c,s.selectAssetTypeAttachmentById=Xc,s.selectAssetTypeAttachmentMapping=Jc,s.selectAssetTypeAttachments=vs,s.selectAssetTypeAttachmentsByIds=Qc,s.selectAssetTypeById=Ld,s.selectAssetTypeFieldValues=Ht,s.selectAssetTypeFieldValuesAttachmentById=Cr,s.selectAssetTypeFieldValuesAttachments=qs,s.selectAssetTypeFieldValuesAttachmentsByIds=$r,s.selectAssetTypeFieldValuesAttachmentsMapping=qr,s.selectAssetTypeFieldValuesById=xr,s.selectAssetTypeFieldValuesByIds=ed,s.selectAssetTypeFieldValuesMapping=Qr,s.selectAssetTypeFieldValuesOfAsset=P_,s.selectAssetTypeFields=wt,s.selectAssetTypeFieldsAttachmentById=hr,s.selectAssetTypeFieldsAttachments=Vs,s.selectAssetTypeFieldsAttachmentsByIds=mr,s.selectAssetTypeFieldsAttachmentsMapping=or,s.selectAssetTypeFieldsById=gr,s.selectAssetTypeFieldsByIds=Mr,s.selectAssetTypeFieldsMapping=_r,s.selectAssetTypeFieldsOfAssetType=T_,s.selectAssetTypeIdentifierById=md,s.selectAssetTypeIdentifierMapping=hd,s.selectAssetTypeIdentifierValueById=Md,s.selectAssetTypeIdentifierValueMapping=gd,s.selectAssetTypeIdentifierValues=Wt,s.selectAssetTypeIdentifierValuesByIds=Rd,s.selectAssetTypeIdentifierValuesOfAsset=__,s.selectAssetTypeIdentifierValuesOfIdentifier=g_,s.selectAssetTypeIdentifiers=Us,s.selectAssetTypeIdentifiersByIds=pd,s.selectAssetTypeIdentifiersOfAssetType=b_,s.selectAssetTypeStatusById=tu,s.selectAssetTypeStatusMapping=eu,s.selectAssetTypeStatuses=Hs,s.selectAssetTypeStatusesByIds=su,s.selectAssetTypeStatusesOfAssetType=R_,s.selectAssetTypeValuesOfAssetType=F_,s.selectAssetTypes=Ns,s.selectAssetTypesByIds=kd,s.selectAssetTypesMapping=Ud,s.selectAssetTypesOfOrganization=M_,s.selectAssets=Gt,s.selectAssetsByIds=Uc,s.selectAssetsMapping=qc,s.selectAssetsOfAssetType=Cc,s.selectAssetsOfProject=A_,s.selectAttachmentsOfAsset=mc,s.selectAttachmentsOfAssetType=xc,s.selectAttachmentsOfAssetTypeFieldValues=Ur,s.selectAttachmentsOfAssetTypeFields=I_,s.selectAttachmentsOfDocument=B_,s.selectAttachmentsOfFormRevision=U_,s.selectAttachmentsOfFormSubmissionFieldValues=Bo,s.selectAttachmentsOfIssue=Jh,s.selectAttachmentsOfIssueComment=Z_,s.selectAttachmentsOfIssueType=Q_,s.selectAttachmentsOfIssueTypeFieldValues=xp,s.selectAttachmentsOfIssueTypeFields=x_,s.selectAttachmentsOfProcedureFieldValues=oF,s.selectAttachmentsOfProcedureStepFieldValues=uO,s.selectAttachmentsOfProcedureStepFields=DT,s.selectAttachmentsOfProcedureType=eM,s.selectAttachmentsOfProcedureTypeFields=tM,s.selectAttachmentsOfProject=Tg,s.selectCommentsOfAsset=gc,s.selectCommentsOfAssets=Mc,s.selectCommentsOfIssue=J_,s.selectCommentsOfProject=Og,s.selectCommentsOfProjects=Pg,s.selectConversation=S_,s.selectConversationMapping=As,s.selectConversations=f_,s.selectCurrentUser=Df,s.selectDeletedRequests=pg,s.selectDescendantsOfDocument=zu,s.selectDocumentAttachmentById=Au,s.selectDocumentAttachmentMapping=Su,s.selectDocumentAttachmentsByIds=Iu,s.selectDocumentById=Vu,s.selectDocuments=Yt,s.selectDocumentsByIds=Bu,s.selectDocumentsMapping=Zs,s.selectEmailDomainById=Wu,s.selectEmailDomains=Xs,s.selectEmailDomainsAsMapping=Hu,s.selectEmailDomainsByIds=Ku,s.selectEmailDomainsOfOrganization=j_,s.selectFieldValuesOfProcedure=nM,s.selectFormById=Po,s.selectFormIdentifierById=cl,s.selectFormIdentifierMapping=al,s.selectFormIdentifierValueById=Tl,s.selectFormIdentifierValueMapping=Il,s.selectFormIdentifierValues=Zt,s.selectFormIdentifierValuesByIds=Ol,s.selectFormIdentifierValuesOfFormSubmission=C_,s.selectFormIdentifierValuesOfIdentifier=$_,s.selectFormIdentifiers=xs,s.selectFormIdentifiersByIds=rl,s.selectFormIdentifiersOfForm=q_,s.selectFormMapping=Oo,s.selectFormRevisionAttachmentById=zl,s.selectFormRevisionAttachments=Bl,s.selectFormRevisionAttachmentsByIds=Dl,s.selectFormRevisionAttachmentsMapping=Jt,s.selectFormRevisionById=Wl,s.selectFormRevisionMapping=Hl,s.selectFormRevisions=Xt,s.selectFormRevisionsByIds=Kl,s.selectFormRevisionsOfForm=Yl,s.selectFormSubmissionById=ih,s.selectFormSubmissionFieldValues=Ii,s.selectFormSubmissionFieldValuesAttachmentById=Vo,s.selectFormSubmissionFieldValuesAttachments=pi,s.selectFormSubmissionFieldValuesAttachmentsByIds=yi,s.selectFormSubmissionFieldValuesAttachmentsMapping=mi,s.selectFormSubmissionFieldValuesById=Go,s.selectFormSubmissionFieldValuesByIds=Ho,s.selectFormSubmissionFieldValuesMapping=No,s.selectFormSubmissionFieldValuesOfFormSubmission=Wo,s.selectFormSubmissions=$,s.selectFormSubmissionsByIds=nh,s.selectFormSubmissionsMapping=sh,s.selectFormSubmissionsOfAsset=dh,s.selectFormSubmissionsOfAssets=uh,s.selectFormSubmissionsOfForm=ah,s.selectFormSubmissionsOfIssue=ch,s.selectFormSubmissionsOfIssues=rh,s.selectFormSubmissionsOfOrganization=G_,s.selectFormSubmissionsOfOrganizationAndForm=K_,s.selectFormSubmissionsOfProject=H_,s.selectFormSubmissionsOfProjectAndForm=W_,s.selectFormSubscriberById=ao,s.selectFormSubscriberMapping=no,s.selectFormSubscribers=Qt,s.selectFormSubscribersByIds=co,s.selectFormSubscribersOfForm=ro,s.selectFormSubscribersOfUser=k_,s.selectForms=ui,s.selectFormsByIds=Fo,s.selectFormsOfOrganization=N_,s.selectGeoImageById=Ph,s.selectGeoImageMapping=Oh,s.selectGeoImages=Pi,s.selectGeoImagesByIds=Fh,s.selectGeoImagesOfProject=Y_,s.selectIsLoggedIn=V_,s.selectIssueAssociationById=zh,s.selectIssueAssociationMapping=Bh,s.selectIssueAssociations=Pt,s.selectIssueAssociationsByIds=Dh,s.selectIssueAssociationsOfAsset=Ch,s.selectIssueAssociationsOfAssets=$h,s.selectIssueAssociationsOfIssue=qh,s.selectIssueAssociationsOfIssues=jh,s.selectIssueAttachmentById=Xh,s.selectIssueAttachmentMapping=Zh,s.selectIssueAttachments=Mi,s.selectIssueAttachmentsByIds=Qh,s.selectIssueById=jm,s.selectIssueCommentAttachmentById=om,s.selectIssueCommentAttachmentMapping=lm,s.selectIssueCommentAttachments=wi,s.selectIssueCommentAttachmentsByIds=hm,s.selectIssueCommentById=bm,s.selectIssueCommentMapping=Ei,s.selectIssueCommentsByIds=_m,s.selectIssueMapping=Dm,s.selectIssueTypeAttachmentById=Xm,s.selectIssueTypeAttachmentMapping=Jm,s.selectIssueTypeAttachments=ji,s.selectIssueTypeAttachmentsByIds=Qm,s.selectIssueTypeById=xy,s.selectIssueTypeFieldValues=es,s.selectIssueTypeFieldValuesAttachmentById=Xp,s.selectIssueTypeFieldValuesAttachments=Gi,s.selectIssueTypeFieldValuesAttachmentsByIds=Qp,s.selectIssueTypeFieldValuesAttachmentsMapping=Jp,s.selectIssueTypeFieldValuesById=_p,s.selectIssueTypeFieldValuesByIds=gp,s.selectIssueTypeFieldValuesMapping=bp,s.selectIssueTypeFieldValuesOfIssue=eg,s.selectIssueTypeFields=vt,s.selectIssueTypeFieldsAttachmentById=op,s.selectIssueTypeFieldsAttachments=Ci,s.selectIssueTypeFieldsAttachmentsByIds=hp,s.selectIssueTypeFieldsAttachmentsMapping=lp,s.selectIssueTypeFieldsById=$p,s.selectIssueTypeFieldsByIds=Up,s.selectIssueTypeFieldsMapping=Cp,s.selectIssueTypeFieldsOfIssueType=tg,s.selectIssueTypeIdentifierById=hy,s.selectIssueTypeIdentifierMapping=oy,s.selectIssueTypeIdentifierValueById=gy,s.selectIssueTypeIdentifierValueMapping=_y,s.selectIssueTypeIdentifierValues=ts,s.selectIssueTypeIdentifierValuesByIds=My,s.selectIssueTypeIdentifierValuesOfIdentifier=cg,s.selectIssueTypeIdentifierValuesOfIssue=ag,s.selectIssueTypeIdentifiers=Wi,s.selectIssueTypeIdentifiersByIds=my,s.selectIssueTypeIdentifiersOfIssueType=ng,s.selectIssueTypeMapping=Qy,s.selectIssueTypePriorities=Zi,s.selectIssueTypePrioritiesByIds=Uy,s.selectIssueTypePrioritiesOfIssueType=rg,s.selectIssueTypePriorityById=Ji,s.selectIssueTypePriorityMapping=$y,s.selectIssueTypeStatusById=tn,s.selectIssueTypeStatusMapping=mf,s.selectIssueTypeStatuses=en,s.selectIssueTypeStatusesByIds=pf,s.selectIssueTypeStatusesOfIssueType=ug,s.selectIssueTypeValuesOfIssueType=ig,s.selectIssueTypes=Qi,s.selectIssueTypesByIds=ef,s.selectIssueTypesOfOrganization=dg,s.selectIssueUpdateById=Pf,s.selectIssueUpdateMapping=dn,s.selectIssueUpdates=un,s.selectIssueUpdatesByIds=Ff,s.selectIssueUpdatesOfIssue=bf,s.selectIssues=xt,s.selectIssuesByIds=qm,s.selectIssuesOfIssueType=Cm,s.selectIssuesOfProject=X_,s.selectLatestAssetTypeFieldsOfAssetType=O_,s.selectLatestFieldsByProcedureStep=Lg,s.selectLatestFormRevisionOfForm=L_,s.selectLatestIssueTypeFieldsOfIssueType=sg,s.selectLatestProcedureStepFieldValuesReviewByProcedureStepFieldValues=Yg,s.selectLatestProcedureStepFieldsOfProcedureStep=Ug,s.selectLatestProcedureTypeFieldsOfProcedureType=iM,s.selectLatestRetryTime=yg,s.selectLatestReviewOfProcedureStepFieldValues=Hg,s.selectMembershipsByUserOfTeam=uM,s.selectOrganizationAccessById=Yf,s.selectOrganizationAccessMapping=ns,s.selectOrganizationAccessUserMapping=Jf,s.selectOrganizationAccessesByIds=Zf,s.selectOrganizationById=uS,s.selectOrganizationDocuments=D_,s.selectOrganizations=dS,s.selectOrganizationsByIds=lS,s.selectOrganizationsMapping=rS,s.selectProcedureById=nI,s.selectProcedureFieldValues=ra,s.selectProcedureFieldValuesAttachmentById=uF,s.selectProcedureFieldValuesAttachments=aa,s.selectProcedureFieldValuesAttachmentsByIds=lF,s.selectProcedureFieldValuesAttachmentsMapping=dF,s.selectProcedureFieldValuesById=bF,s.selectProcedureFieldValuesByIds=_F,s.selectProcedureFieldValuesMapping=FF,s.selectProcedureInitiativeById=WA,s.selectProcedureInitiatives=rs,s.selectProcedureInitiativesByIds=KA,s.selectProcedureInitiativesMapping=HA,s.selectProcedureInitiativesOfProcedureType=gg,s.selectProcedureInitiativesOfProject=_g,s.selectProcedureStepAssigneeById=OI,s.selectProcedureStepAssignees=Vt,s.selectProcedureStepAssigneesByIds=PI,s.selectProcedureStepAssigneesMapping=TI,s.selectProcedureStepAssigneesOfProcedure=Rg,s.selectProcedureStepAssigneesOfProcedureAndProcedureStep=vg,s.selectProcedureStepAssigneesOfProcedureStep=wg,s.selectProcedureStepById=uP,s.selectProcedureStepCommentById=DI,s.selectProcedureStepComments=Bt,s.selectProcedureStepCommentsByIds=jI,s.selectProcedureStepCommentsMapping=zI,s.selectProcedureStepCommentsOfProcedure=Eg,s.selectProcedureStepCommentsOfProcedureAndProcedureStep=Bg,s.selectProcedureStepCommentsOfProcedureStep=Vg,s.selectProcedureStepDefaultAssigneeById=ZI,s.selectProcedureStepDefaultAssignees=wn,s.selectProcedureStepDefaultAssigneesByIds=JI,s.selectProcedureStepDefaultAssigneesMapping=YI,s.selectProcedureStepDefaultAssigneesOfProcedureStep=zg,s.selectProcedureStepDefaultReviewerById=uT,s.selectProcedureStepDefaultReviewers=En,s.selectProcedureStepDefaultReviewersByIds=lT,s.selectProcedureStepDefaultReviewersMapping=dT,s.selectProcedureStepDefaultReviewersOfProcedureStep=Dg,s.selectProcedureStepEventById=FT,s.selectProcedureStepEvents=zt,s.selectProcedureStepEventsByIds=bT,s.selectProcedureStepEventsMapping=PT,s.selectProcedureStepEventsOfProcedure=jg,s.selectProcedureStepEventsOfProcedureAndProcedureStep=Cg,s.selectProcedureStepEventsOfProcedureStep=qg,s.selectProcedureStepFieldValues=mt,s.selectProcedureStepFieldValuesAttachmentById=rO,s.selectProcedureStepFieldValuesAttachments=kn,s.selectProcedureStepFieldValuesAttachmentsByIds=dO,s.selectProcedureStepFieldValuesAttachmentsMapping=cO,s.selectProcedureStepFieldValuesById=FO,s.selectProcedureStepFieldValuesByIds=bO,s.selectProcedureStepFieldValuesMapping=PO,s.selectProcedureStepFieldValuesOfProcedure=kg,s.selectProcedureStepFieldValuesOfProcedureAndProcedureStep=Gg,s.selectProcedureStepFieldValuesOfProcedureStep=Ng,s.selectProcedureStepFieldValuesReviewById=zO,s.selectProcedureStepFieldValuesReviews=pt,s.selectProcedureStepFieldValuesReviewsByIds=DO,s.selectProcedureStepFieldValuesReviewsMapping=BO,s.selectProcedureStepFieldValuesReviewsOfProcedure=Wg,s.selectProcedureStepFieldValuesReviewsOfProcedureAndProcedureStep=Kg,s.selectProcedureStepFields=ds,s.selectProcedureStepFieldsAttachmentById=jT,s.selectProcedureStepFieldsAttachments=jn,s.selectProcedureStepFieldsAttachmentsByIds=qT,s.selectProcedureStepFieldsAttachmentsMapping=zT,s.selectProcedureStepFieldsById=ZT,s.selectProcedureStepFieldsByIds=JT,s.selectProcedureStepFieldsMapping=Cn,s.selectProcedureStepFieldsOfProcedureStep=$g,s.selectProcedureStepReviewerById=ZO,s.selectProcedureStepReviewers=Dt,s.selectProcedureStepReviewersByIds=JO,s.selectProcedureStepReviewersMapping=YO,s.selectProcedureStepReviewersOfProcedure=Zg,s.selectProcedureStepReviewersOfProcedureAndProcedureStep=Xg,s.selectProcedureStepReviewersOfProcedureStep=Jg,s.selectProcedureSteps=Jn,s.selectProcedureStepsByIds=lP,s.selectProcedureStepsMapping=Zn,s.selectProcedureStepsMappingOfProcedureType=Qg,s.selectProcedureStepsOfProcedureType=xg,s.selectProcedureTypeAttachmentById=FP,s.selectProcedureTypeAttachmentMapping=PP,s.selectProcedureTypeAttachments=Qn,s.selectProcedureTypeAttachmentsByIds=bP,s.selectProcedureTypeById=CF,s.selectProcedureTypeFields=us,s.selectProcedureTypeFieldsAttachmentById=qP,s.selectProcedureTypeFieldsAttachments=ea,s.selectProcedureTypeFieldsAttachmentsByIds=CP,s.selectProcedureTypeFieldsAttachmentsMapping=jP,s.selectProcedureTypeFieldsById=XP,s.selectProcedureTypeFieldsByIds=QP,s.selectProcedureTypeFieldsMapping=JP,s.selectProcedureTypeFieldsOfProcedureType=sM,s.selectProcedureTypes=ua,s.selectProcedureTypesByIds=$F,s.selectProcedureTypesMapping=qF,s.selectProcedureTypesOfOrganization=aM,s.selectProcedures=ht,s.selectProceduresByIds=aI,s.selectProceduresMapping=iI,s.selectProceduresOfAsset=rI,s.selectProceduresOfAssets=dI,s.selectProceduresOfProcedureInitiative=uI,s.selectProceduresOfProcedureType=cI,s.selectProceduresOfProject=Mg,s.selectProjectAccessById=wS,s.selectProjectAccessMapping=An,s.selectProjectAccesses=Et,s.selectProjectAccessesByIds=vS,s.selectProjectAccessesOfProject=Sg,s.selectProjectAttachmentById=kS,s.selectProjectAttachmentMapping=LS,s.selectProjectAttachments=Tn,s.selectProjectAttachmentsByIds=NS,s.selectProjectById=VA,s.selectProjectCommentById=sA,s.selectProjectCommentMapping=tA,s.selectProjectComments=as,s.selectProjectCommentsByIds=iA,s.selectProjectDocuments=z_,s.selectProjectFileById=SA,s.selectProjectFileMapping=yA,s.selectProjectFiles=fA,s.selectProjectFilesByIds=AA,s.selectProjectMapping=EA,s.selectProjects=cs,s.selectProjectsByIds=BA,s.selectProjectsOfOrganization=bg,s.selectRehydrated=dM,s.selectReviewsOfProcedureStepFieldValues=jO,s.selectTeamById=hb,s.selectTeamMembershipById=xF,s.selectTeamMemberships=ls,s.selectTeamMembershipsByIds=eb,s.selectTeamMembershipsMapping=QF,s.selectTeams=ma,s.selectTeamsByIds=mb,s.selectTeamsMapping=ob,s.selectTeamsOfOrganization=oM,s.selectUserById=is,s.selectUsers=ss,s.selectUsersByIds=jf,s.selectUsersMapping=mn,s.selectUsersOfOrganization=mg,s.selectUsersOfProject=Ig,s.selectUsersOfTeam=lM,s.setAsset=Dc,s.setAssetAttachment=ac,s.setAssetAttachments=cc,s.setAssetComment=Ac,s.setAssetComments=Ic,s.setAssetType=Vd,s.setAssetTypeAttachment=Hc,s.setAssetTypeAttachments=Wc,s.setAssetTypeFieldValues=Wr,s.setAssetTypeFieldValuesAttachment=Vr,s.setAssetTypeFieldValuesAttachments=Br,s.setAssetTypeFieldValuesMany=Kr,s.setAssetTypeFields=Ir,s.setAssetTypeFieldsAttachment=ar,s.setAssetTypeFieldsAttachments=cr,s.setAssetTypeFieldsMany=Tr,s.setAssetTypeIdentifier=cd,s.setAssetTypeIdentifierValue=Td,s.setAssetTypeIdentifierValues=Od,s.setAssetTypeIdentifiers=rd,s.setAssetTypeStatus=Yd,s.setAssetTypeStatuses=Zd,s.setAssetTypes=Bd,s.setAssets=jc,s.setClientSDK=wb,s.setClientStore=Mb,s.setConversation=xa,s.setConversations=h_,s.setCurrentUser=lg,s.setCurrentUserProfile=og,s.setDocument=_u,s.setDocumentAttachment=ou,s.setDocumentAttachments=hu,s.setDocuments=gu,s.setEmailDomain=$u,s.setEmailDomains=Uu,s.setForm=po,s.setFormIdentifier=xu,s.setFormIdentifierValue=ml,s.setFormIdentifierValues=pl,s.setFormIdentifiers=el,s.setFormRevision=Ul,s.setFormRevisionAttachment=Ml,s.setFormRevisionAttachments=Rl,s.setFormRevisions=Ll,s.setFormSubmission=Jo,s.setFormSubmissionFieldValues=Co,s.setFormSubmissionFieldValuesAttachment=Mo,s.setFormSubmissionFieldValuesAttachments=Ro,s.setFormSubmissionFieldValuesMany=$o,s.setFormSubmissions=Xo,s.setFormSubscriber=xl,s.setFormSubscribers=eo,s.setForms=yo,s.setGeoImage=mh,s.setGeoImages=ph,s.setIssue=vm,s.setIssueAssociation=Rh,s.setIssueAssociations=Mh,s.setIssueAttachment=Gh,s.setIssueAttachments=Hh,s.setIssueComment=Am,s.setIssueCommentAttachment=nm,s.setIssueCommentAttachments=am,s.setIssueComments=Im,s.setIssueType=Wy,s.setIssueTypeAttachment=Gm,s.setIssueTypeAttachments=Hm,s.setIssueTypeFieldValues=Ap,s.setIssueTypeFieldValuesAttachment=Hp,s.setIssueTypeFieldValuesAttachments=Wp,s.setIssueTypeFieldValuesMany=Ip,s.setIssueTypeFields=Vp,s.setIssueTypeFieldsAttachment=np,s.setIssueTypeFieldsAttachments=ap,s.setIssueTypeFieldsMany=Bp,s.setIssueTypeIdentifier=ay,s.setIssueTypeIdentifierValue=Iy,s.setIssueTypeIdentifierValues=Ty,s.setIssueTypeIdentifiers=cy,s.setIssueTypePriorities=zy,s.setIssueTypePriority=By,s.setIssueTypeStatus=rf,s.setIssueTypeStatuses=df,s.setIssueTypes=Ky,s.setIssueUpdate=Af,s.setIssueUpdates=If,s.setIssues=Em,s.setLoggedIn=au,s.setOrganization=eS,s.setOrganizationAccess=Lf,s.setOrganizationAccesses=kf,s.setOrganizations=xf,s.setProcedure=XA,s.setProcedureFieldValues=fF,s.setProcedureFieldValuesAttachment=sF,s.setProcedureFieldValuesAttachments=iF,s.setProcedureFieldValuesMany=SF,s.setProcedureInitiative=CA,s.setProcedureInitiatives=$A,s.setProcedureStep=eP,s.setProcedureStepAssignee=pI,s.setProcedureStepAssignees=yI,s.setProcedureStepComment=RI,s.setProcedureStepComments=wI,s.setProcedureStepDefaultAssignee=kI,s.setProcedureStepDefaultAssignees=NI,s.setProcedureStepDefaultReviewer=sT,s.setProcedureStepDefaultReviewers=iT,s.setProcedureStepEvent=fT,s.setProcedureStepEvents=ST,s.setProcedureStepFieldValues=yO,s.setProcedureStepFieldValuesAttachment=tO,s.setProcedureStepFieldValuesAttachments=sO,s.setProcedureStepFieldValuesMany=fO,s.setProcedureStepFieldValuesReview=RO,s.setProcedureStepFieldValuesReviews=wO,s.setProcedureStepFields=NT,s.setProcedureStepFieldsAttachment=wT,s.setProcedureStepFieldsAttachments=vT,s.setProcedureStepFieldsMany=GT,s.setProcedureStepReviewer=kO,s.setProcedureStepReviewers=NO,s.setProcedureSteps=tP,s.setProcedureType=vF,s.setProcedureTypeAttachment=yP,s.setProcedureTypeAttachments=fP,s.setProcedureTypeFields=NP,s.setProcedureTypeFieldsAttachment=wP,s.setProcedureTypeFieldsAttachments=vP,s.setProcedureTypeFieldsMany=GP,s.setProcedureTypes=EF,s.setProcedures=QA,s.setProject=FA,s.setProjectAccess=PS,s.setProjectAccesses=FS,s.setProjectAttachment=DS,s.setProjectAttachments=jS,s.setProjectComment=ZS,s.setProjectComments=JS,s.setProjectFile=rA,s.setProjectFiles=dA,s.setProjects=PA,s.setRehydrated=rM,s.setTeam=ab,s.setTeamMembership=HF,s.setTeamMemberships=WF,s.setTeams=cb,s.setTokens=w_,s.setUser=wf,s.setUsers=Rf,s.shallowEqual=Wb,s.slugify=c_,s.spacesToDashesLower=a_,s.submittedAtModelSortFn=It,s.teamMembershipReducer=XF,s.teamMembershipSlice=oa,s.teamReducer=pb,s.teamSlice=ha,s.toFileNameSafeString=n_,s.toUuidArray=R,s.toUuidIdRecord=i_,s.truncate=r_,s.updateAsset=Vc,s.updateAssetAttachment=rc,s.updateAssetAttachments=dc,s.updateAssetComment=Tc,s.updateAssetComments=Oc,s.updateAssetType=jd,s.updateAssetTypeAttachment=Kc,s.updateAssetTypeAttachments=Yc,s.updateAssetTypeFieldValues=Yr,s.updateAssetTypeFieldValuesAttachment=zr,s.updateAssetTypeFieldValuesAttachments=Dr,s.updateAssetTypeFieldValuesMany=Zr,s.updateAssetTypeFields=Or,s.updateAssetTypeFieldsAttachment=rr,s.updateAssetTypeFieldsAttachments=dr,s.updateAssetTypeFieldsMany=Pr,s.updateAssetTypeIdentifier=dd,s.updateAssetTypeIdentifierValue=Pd,s.updateAssetTypeIdentifierValues=Fd,s.updateAssetTypeIdentifiers=ud,s.updateAssetTypeStatus=Jd,s.updateAssetTypeStatuses=Xd,s.updateAssetTypes=qd,s.updateAssets=Bc,s.updateConversation=ec,s.updateConversations=m_,s.updateDocument=Mu,s.updateDocumentAttachment=mu,s.updateDocumentAttachments=pu,s.updateDocuments=Ru,s.updateEmailDomain=Lu,s.updateEmailDomains=ku,s.updateForm=fo,s.updateFormIdentifier=tl,s.updateFormIdentifierValue=yl,s.updateFormIdentifierValues=fl,s.updateFormIdentifiers=sl,s.updateFormRevision=kl,s.updateFormRevisionAttachment=wl,s.updateFormRevisionAttachments=vl,s.updateFormRevisions=Nl,s.updateFormSubmission=xo,s.updateFormSubmissionFieldValues=Uo,s.updateFormSubmissionFieldValuesAttachment=wo,s.updateFormSubmissionFieldValuesAttachments=vo,s.updateFormSubmissionFieldValuesMany=Lo,s.updateFormSubmissions=eh,s.updateFormSubscriber=to,s.updateFormSubscribers=so,s.updateForms=So,s.updateGeoImage=Sh,s.updateGeoImages=Ah,s.updateIssue=Vm,s.updateIssueAssociation=wh,s.updateIssueAssociations=vh,s.updateIssueAttachment=Wh,s.updateIssueAttachments=Kh,s.updateIssueComment=Tm,s.updateIssueCommentAttachment=cm,s.updateIssueCommentAttachments=rm,s.updateIssueComments=Om,s.updateIssueType=Yy,s.updateIssueTypeAttachment=Wm,s.updateIssueTypeAttachments=Km,s.updateIssueTypeFieldValues=Tp,s.updateIssueTypeFieldValuesAttachment=Kp,s.updateIssueTypeFieldValuesAttachments=Yp,s.updateIssueTypeFieldValuesMany=Op,s.updateIssueTypeFields=zp,s.updateIssueTypeFieldsAttachment=cp,s.updateIssueTypeFieldsAttachments=rp,s.updateIssueTypeFieldsMany=Dp,s.updateIssueTypeIdentifier=ry,s.updateIssueTypeIdentifierValue=Oy,s.updateIssueTypeIdentifierValues=Py,s.updateIssueTypeIdentifiers=dy,s.updateIssueTypePriorities=jy,s.updateIssueTypePriority=Dy,s.updateIssueTypeStatus=uf,s.updateIssueTypeStatuses=lf,s.updateIssueTypes=Zy,s.updateIssueUpdate=Tf,s.updateIssueUpdates=Of,s.updateIssues=Bm,s.updateOrganization=nS,s.updateOrganizationAccess=Nf,s.updateOrganizationAccesses=Gf,s.updateOrganizations=iS,s.updateProcedure=xA,s.updateProcedureFieldValues=AF,s.updateProcedureFieldValuesAttachment=nF,s.updateProcedureFieldValuesAttachments=aF,s.updateProcedureFieldValuesMany=IF,s.updateProcedureInitiative=UA,s.updateProcedureInitiatives=LA,s.updateProcedureStep=nP,s.updateProcedureStepAssignee=fI,s.updateProcedureStepAssignees=SI,s.updateProcedureStepComment=vI,s.updateProcedureStepComments=EI,s.updateProcedureStepDefaultAssignee=GI,s.updateProcedureStepDefaultAssignees=HI,s.updateProcedureStepDefaultReviewer=nT,s.updateProcedureStepDefaultReviewers=aT,s.updateProcedureStepEvent=AT,s.updateProcedureStepEvents=IT,s.updateProcedureStepFieldValues=SO,s.updateProcedureStepFieldValuesAttachment=iO,s.updateProcedureStepFieldValuesAttachments=nO,s.updateProcedureStepFieldValuesMany=AO,s.updateProcedureStepFieldValuesReview=vO,s.updateProcedureStepFieldValuesReviews=EO,s.updateProcedureStepFields=HT,s.updateProcedureStepFieldsAttachment=ET,s.updateProcedureStepFieldsAttachments=VT,s.updateProcedureStepFieldsMany=WT,s.updateProcedureStepReviewer=GO,s.updateProcedureStepReviewers=HO,s.updateProcedureSteps=aP,s.updateProcedureType=VF,s.updateProcedureTypeAttachment=SP,s.updateProcedureTypeAttachments=AP,s.updateProcedureTypeFields=HP,s.updateProcedureTypeFieldsAttachment=EP,s.updateProcedureTypeFieldsAttachments=VP,s.updateProcedureTypeFieldsMany=WP,s.updateProcedureTypes=BF,s.updateProcedures=eI,s.updateProject=MA,s.updateProjectAccess=bS,s.updateProjectAccesses=_S,s.updateProjectAttachment=qS,s.updateProjectAttachments=CS,s.updateProjectComment=XS,s.updateProjectComments=QS,s.updateProjectFile=oA,s.updateProjectFiles=hA,s.updateProjects=gA,s.updateTeam=rb,s.updateTeamMembership=KF,s.updateTeamMemberships=YF,s.updateTeams=db,s.updateUser=Vf,s.updateUsers=Ef,s.useSelectorBuilder=Hb,s.userReducer=zf,s.userSlice=ln,s.uuidObj=O,s.uuidObjSortFn=ut,s.uuidSortFn=Ga,Object.defineProperty(s,Symbol.toStringTag,{value:"Module"})}));