1import{r as p,R as V,U as Y,X as Q,at as $,O as K,j as e,f as X,s as n,am as A,Z,bN as J,S as m,g as ee,G as te,T as s,q as se,L as r,a5 as ne}from"./index-B1JCX_-d.js";import{F as oe}from"./fuse-Dw8P0qyA.js";import{u as S}from"./useInstructionMethod-DmgXxNCI.js";import{T as ie}from"./TextInput-D-E7ywd3.js";import{I as re}from"./IconSearch-C_afXE85.js";import{A as o}from"./Accordion-DmrTPlX9.js";import{L as t}from"./List-Bq6CPE7n.js";import{A as G}from"./Alert-rB0v6-kr.js";import{I as ae}from"./IconInfoCircle-BUY0Ko0n.js";import{I as E}from"./IconPuzzle-D23OF60d.js";import{I as le}from"./IconTable-U-GBBQPS.js";import"./InputBase-CWPbF_yb.js";import"./get-safe-id-Bp3H8K0-.js";import"./Collapse-WaTycHdN.js";import"./get-style-object-DUJZA7T_.js";const ce={x:0,y:0,width:0,height:0,top:0,left:0,bottom:0,right:0};function de(l){const a=p.useRef(0),d=p.useRef(null),[u,h]=p.useState(ce),x=p.useMemo(()=>typeof window<"u"?new ResizeObserver(f=>{const c=f[0];c&&(cancelAnimationFrame(a.current),a.current=requestAnimationFrame(()=>{if(d.current){const i=c.borderBoxSize?.[0]||c.contentBoxSize?.[0];if(i){const j=i.inlineSize,g=i.blockSize;h({width:j,height:g,x:c.contentRect.x,y:c.contentRect.y,top:c.contentRect.top,left:c.contentRect.left,bottom:c.contentRect.bottom,right:c.contentRect.right})}else h(c.contentRect)}}))}):null,[]);return p.useEffect(()=>(d.current&&x?.observe(d.current,l),()=>{x?.disconnect(),a.current&&cancelAnimationFrame(a.current)}),[d.current]),[d,u]}function he(l){const[a,{width:d,height:u}]=de(l);return{ref:a,width:d,height:u}}var O={root:"m_559cce2d",content:"m_b912df4e",control:"m_b9131032"};const me={maxHeight:100,initialState:!1},pe=Z((l,{transitionDuration:a})=>({root:{"--spoiler-transition-duration":a!==void 0?`${a}ms`:void 0}})),T=V((l,a)=>{const d=Y("Spoiler",me,l),{classNames:u,className:h,style:x,styles:f,unstyled:c,vars:i,initialState:j,maxHeight:g,hideLabel:b,showLabel:y,children:L,controlRef:H,transitionDuration:ge,id:M,expanded:W,onExpandedChange:P,attributes:U,...D}=d,v=Q({name:"Spoiler",classes:O,props:d,className:h,style:x,classNames:u,styles:f,unstyled:c,attributes:U,vars:i,varsResolver:pe}),z=$(M),F=`${z}-region`,[w,B]=K({value:W,defaultValue:j,finalValue:!1,onChange:P}),{ref:_,height:I}=he(),R=w?b:y,C=R!==null&&g<I;return e.jsxs(X,{...v("root"),id:z,ref:a,"data-has-spoiler":C||void 0,...D,children:[C&&e.jsx(n,{component:"button",type:"button",ref:H,onClick:()=>B(!w),"aria-expanded":w,"aria-controls":F,...v("control"),children:R}),e.jsx("div",{...v("content",{style:{maxHeight:w?I?A(I):void 0:A(g)}}),"data-reduce-motion":!0,role:"region",id:F,children:e.jsx("div",{ref:_,children:L})})]})});T.classes=O;T.displayName="@mantine/core/Spoiler";function N(){const[l]=S();return l==="addon"?e.jsxs(e.Fragment,{children:["the ",e.jsx("strong",{children:"Settings"})," tab of the add-on sidebar"]}):e.jsxs(e.Fragment,{children:["the ",e.jsx("strong",{children:"Other Settings"})," tab"]})}function k(){const[l]=S();return l==="addon"?e.jsx("strong",{children:"Restart workflow on edit"}):e.jsx("strong",{children:"Restart workflow when requestor edits"})}function ue(){const[l]=S();return e.jsx(m,{gap:"xs",mt:"xs",children:l==="addon"?e.jsxs(t,{type:"ordered",size:"sm",children:[e.jsx(t.Item,{children:"Open the Google Form⢠and open the add-on."}),e.jsxs(t.Item,{children:["Click ",e.jsx("strong",{children:"Settings"}),", then ",e.jsx("strong",{children:"Email Editor"}),", then click the ",e.jsx("strong",{children:"Other"})," tab."]}),e.jsx(t.Item,{children:"Scroll to the Attachments section. Templates that need re-authorization will have a warning icon next to the attachment. Click it to re-select each file from your Google Driveâ¢."}),e.jsx(t.Item,{children:"Save your changes."})]}):e.jsxs(t,{type:"ordered",size:"sm",children:[e.jsxs(t.Item,{children:["Go to your ",e.jsx(n,{component:r,to:"/my-forms/",children:"My Forms"})," dashboard and open the form's settings."]}),e.jsxs(t.Item,{children:["Click the ",e.jsx("strong",{children:"Attachments"})," tab."]}),e.jsx(t.Item,{children:"Templates that need re-authorization will have a warning icon next to the attachment. Click it to re-select each file from your Google Drive."}),e.jsx(t.Item,{children:"Save your changes."})]})})}const fe={"how-do-i-change-the-admin":"change-administrator","how-do-i-notify-users":"notify-users-complete","collect-email-addresses":"notify-users-complete"},q=[{id:"purchase-subscription",question:"How do I purchase a subscription?",searchText:"purchase subscription paid plan pricing support email subscribe stripe checkout",content:e.jsxs(e.Fragment,{children:[e.jsxs(s,{mb:"sm",children:["Subscriptions can be purchased via our"," ",e.jsx(n,{component:r,to:"/subscribe/?p=new-plan",children:"subscription page"}),"."]}),e.jsxs(s,{children:["For subscription-related questions, please refer to the frequently asked questions at the bottom of our ",e.jsx(n,{component:r,to:"/pricing/",children:"pricing page"}),", or email our support team at [email protected]."]})]})},{id:"change-administrator",question:"How do I change the administrator?",searchText:"change administrator admin transfer ownership google form sheet install activate account step dashboard left the organization leaving departed no longer available it team workspace administrator access permission share files",content:e.jsxs(e.Fragment,{children:[e.jsx(s,{mb:"sm",children:"The below steps outline how to change the administrator of a form."}),e.jsxs(o,{multiple:!0,defaultValue:[],variant:"separated",order:4,styles:{label:{fontSize:"var(--mantine-font-size-lg)"},panel:{fontSize:"var(--mantine-font-size-sm)"}},children:[e.jsxs(o.Item,{value:"step-1",children:[e.jsx(o.Control,{children:e.jsxs(s,{children:["Step 1: Share the Google files ",e.jsx(s,{span:!0,c:"dimmed",children:"(existing admin)"})]})}),e.jsx(o.Panel,{children:e.jsxs(m,{gap:"xs",children:[e.jsxs(s,{children:["Share each of the following with the new administrator, giving ",e.jsx("em",{children:"owner"})," level access where possible:"]}),e.jsxs(t,{children:[e.jsxs(t.Item,{children:["The ",e.jsx("u",{children:"Google Form"}),";"]}),e.jsxs(t.Item,{children:["The ",e.jsx("u",{children:"Google Sheet"})," linked to the form. Open it from the 'Responses' tab of your Google Form;"]}),e.jsxs(t.Item,{children:["The ",e.jsx("u",{children:"folder"})," that stores file uploads, if your form has a File Upload question;"]}),e.jsxs(t.Item,{children:["Any ",e.jsx("u",{children:"attachment templates"}),", if the add-on generates PDFs from a template."]})]}),e.jsx(s,{c:"dimmed",children:"Editor level access also works, but can be problematic if the previous owner's account is ever closed or spreadsheet protection is ever added."}),e.jsx(G,{variant:"light",color:"brand",icon:e.jsx(ae,{size:28}),title:"Unable to share the files with the new administrator?",children:"The new administrator must have access to the files. If nobody can share them â for example, the existing admin has already left the organization â contact your Google Worksp
1ace administrator (your IT team). Only they can transfer ownership of files out of an account that has been suspended or deleted."})]})})]}),e.jsxs(o.Item,{value:"step-2",children:[e.jsx(o.Control,{children:e.jsxs(s,{children:["Step 2: Transfer the forms ",e.jsx(s,{span:!0,c:"dimmed",children:"(existing admin)"})]})}),e.jsx(o.Panel,{children:e.jsxs(m,{gap:"xs",children:[e.jsxs(t,{type:"ordered",children:[e.jsxs(t.Item,{children:["Ask the new administrator to"," ",e.jsx(n,{component:r,to:"/support/#installing-the-addon",children:"install the add-on"}),". The transfer will not work until they have."]}),e.jsxs(t.Item,{children:["Go to your ",e.jsx(n,{component:r,to:"/my-forms/",children:"My Forms"})," dashboard and use ",e.jsx("strong",{children:"Transfer Form"})," or ",e.jsx("strong",{children:"Transfer All Forms"})," from the Actions menu, then enter the new administrator's email address."]})]}),e.jsx(s,{c:"dimmed",children:"Your forms will be deactivated and the new administrator will be emailed. They can now complete Step 3."}),e.jsx(G,{variant:"light",color:"yellow",icon:e.jsx(ne,{size:28}),title:"Has the existing admin already left the organization?",children:"Skip this step. The new administrator can take over the forms themselves in Step 3."})]})})]}),e.jsxs(o.Item,{value:"step-3",children:[e.jsx(o.Control,{children:e.jsxs(s,{children:["Step 3: Activate each form ",e.jsx(s,{span:!0,c:"dimmed",children:"(new admin)"})]})}),e.jsx(o.Panel,{children:e.jsxs(m,{gap:"xs",children:[e.jsxs(t,{type:"ordered",children:[e.jsxs(t.Item,{children:[e.jsx(n,{component:r,to:"/support/#installing-the-addon",children:"Install the add-on"}
1)," ","if you haven't already."]}),e.jsxs(t.Item,{children:["Open the Google Form, then open the add-on from the puzzle piece"," ",e.jsx(E,{size:16,style:{verticalAlign:"middle"}})," icon in the toolbar."]}),e.jsxs(t.Item,{children:["If you are warned that the form is managed by the previous admin, click ",e.jsx("strong",{children:"OK"})," to continue."]}),e.jsxs(t.Item,{children:["Click ",e.jsx("strong",{children:"Settings"}),", then ",e.jsx("strong",{children:"Account"}),", then toggle the add-on ",e.jsx("strong",{children:"ON"}),". The form is now managed by your account, and is deactivated on the previous admin's account."]}),e.jsxs(t.Item,{children:["If the form uses attachment templates, re-authorize them. This is required because the add-on needs your permission to access the template files.",e.jsx(T,{maxHeight:0,showLabel:"Show attachment re-authorization steps",hideLabel:"Hide steps",styles:{control:{fontSize:"var(--mantine-font-size-xs)"}},children:e.jsx(ue,{})})]})]}),e.jsx(s,{fw:500,children:"Repeat this step for every form that is connected to the add-on."})]})})]})]}),e.jsxs(s,{mt:"sm",children:["If you have a paid subscription with us, also make sure to"," ",e.jsx(s,{component:"a",href:"#transfer-subscription",c:"brand",td:"underline",span:!0,children:"transfer / update your subscription"}),". If the existing admin has already left the organization, email [email protected]."]})]})},{id:"transfer-subscription",question:"How do I transfer my paid subscription to another user?",searchText:"transfer subscription paid individual team admin email support account",content:e.jsxs(e.Fragment,{children:[e.jsxs(s,{mb:"sm",children:["First, follow the steps in"," ",e.jsx(s,{component:"a",href:"#change-administrator",c:"brand",td:"underline",span:!0,children:"How do I change the administrator?"})," ","to share your Google files and transfer your forms."]}),e.jsx(s,{mb:"md",fw:500,children:"For Individual subscriptions:"}),e.jsxs(t,{type:"ordered",mb:"md",children:[e.jsxs(t.Item,{children:[e.jsx("strong",{children:"Existing admin:"})," Go to your"," ",e.jsx(n,{component:r,to:"/subscribe/",children:"Subscription page"}),", scroll to the ",e.jsx("strong",{children:"Transfer Subscription"})," section, and enter the new user's email address. You can optionally check ",e.jsx("strong",{children:"Also transfer all my forms"})," to transfer your forms and subscription together."]}),e.jsxs(t.Item,{children:[e.jsx("strong",{children:"New admin:"})," You will receive an email notification with details of the transfer. No further action is required for the subscription itself."]})]}),e.jsx(s,{mb:"sm",fw:500,children:"For Team subscriptions:"}),e.jsxs(s,{children:[e.jsx("strong",{children:"Existing admin:"})," Simply add the new administrator to your Team by following the steps on"," ",e.jsx(n,{component:r,to:"/support/team-plan-features/#team-members",children:"this support article"}),"."]})]})},{id:"activate-addon",question:"How do I activate the add-on on a form?",searchText:"reactivate re-activate activate inactive form addon add-on toggle enable turn on account settings dashboard",content:e.jsxs(e.Fragment,{children:[e.jsxs(s,{mb:"sm",children:["If a form is showing as ",e.jsx("strong",{children:"Inactive"}),", it means the add-on is not processing submissions for that form. You can activate it from within Google Forms."]}),e.jsxs(t,{type:"ordered",children:[e.jsx(t.Item,{children:"Open the Google Form that you want to activate."}),e.jsxs(t.Item,{children:["Open the Form Approvals add-on from the puzzle piece ",e.jsx(E,{size:16,style:{verticalAlign:"middle"}})," icon in the toolbar."]}),e.jsxs(t.Item,{children:["Click ",e.jsx("strong",{children:"Settings"}),", then click ",e.jsx("strong",{children:"Account"}),"."]}),e.jsxs(t.Item,{children:["Toggle the add-on ",e.jsx("strong",{children:"ON"}),"."]})]}),e.jsxs(s,{mt:"sm",children:["Once activated, the add-on will resume processing form submissions for that form. If you experience any issues, refer to our"," ",e.jsx(n,{component:r,to:"/support/troubleshooting/",children:"troubleshooting guide"}),"."]})]})},{id:"language-timezone",question:"Can the language and timezone be changed?",searchText:"language timezone locale translate spreadsheet settings notification email editor personalize",content:e.jsxs(e.Fragment,{children:[e.jsxs(s,{mb:"sm",children:["The ",e.jsx("strong",{children:"timezone"})," is taken from the settings of the ",e.jsx("strong",{children:"spreadsheet"})," that is linked to your Google Form. To change the timezone, refer to this"," ",e.jsx(n,{href:"https://support.google.com/docs/answer/58515",target:"_blank",rel:"noopener noreferrer",children:"Google support article"}),"."]}),e.jsxs(s,{children:["Users can also change the ",e.jsx("strong",{children:"language"})," of email notifications. To change the language, update the language (locale) in your spreadsheet settings. Refer to this"," ",e.jsx(n,{href:"https://support.google.com/docs/answer/58515",target:"_blank",rel:"noopener noreferrer",children:"Google support article"})," ","for how to change the locale. The add-on will translate the items on email notifications ",e.jsx("em",{children:"that are not customizable using the Email Editor"}),". Use the Email Editor to then change the remaining content as you require. Learn more about"," ",e.jsx(n,{component:r,to:"/support/personalizing-notifications/",children:"personalizing notifications"})," ","using the Email Editor."]})]})}
1,{id:"notify-users-complete",question:"How do I notify users when the workflow is complete?",searchText:"notify users workflow complete requestor recipient email notification declined cancelled collect email addresses receives a copy settings",content:e.jsxs(t,{children:[e.jsxs(t.Item,{children:["To notify the ",e.jsx("u",{children:"requestor"})," when the workflow is ",e.jsx("u",{children:"complete"})," (i.e., approved by all recipients) or ",e.jsx("u",{children:"ends early"})," (i.e., declined, cancelled, or more info is requested), simply enable 'Collect email addresses' in your Google Form settings. When this is enabled, the add-on will automatically notify the requestor."]}),e.jsxs(t.Item,{children:["To notify all existing ",e.jsx("u",{children:"recipients"})," when the workflow is ",e.jsx("u",{children:"complete"}),", enable 'Notify recipients when complete' within the 'Settings' tab of the add-on."]}),e.jsxs(t.Item,{children:["To notify existing ",e.jsx("u",{children:"recipients"})," when the workflow ",e.jsx("u",{children:"ends early"}),", enable 'Notify recipients when ends early' within the 'Settings' tab of the add-on. This will notify any recipient(s) who the add-on is currently awaiting a response from, recipient(s) that have already responded, and recipient(s) with the 'Receives a Copy' role type."]}),e.jsxs(t.Item,{children:["To notify ",e.jsx("u",{children:"specific recipients"})," when the workflow is ",e.jsx("u",{children:"complete"}),","," ",e.jsx(n,{component:r,to:"/support/adding-recipients/",children:"add a new recipient"}),", then"," ",e.jsx(n,{component:r,to:"/support/other-recipient-settings/#role-types",children:"change the role type"})," ","to 'Receives a Copy', then"," ",e.jsx(n,{component:r,to:"/support/setting-receiving-order/",children:"set the receiving order"})," ","to the ",e.jsx("em",{children:"last level"})," of the workflow. For example, if you have a workflow already set up with one recipient, set the receiving order of the new recipient to 2."]})]})},{id:"requestor-vs-recipient",question:"What is the difference between a requestor and recipient?",searchText:"requestor recipient difference approve recommend acknowledge action edit receives a copy role",content:e.jsxs(e.Fragment,{children:[e.jsx(s,{mb:"sm",children:"Within our documentation, we refer to 'requestor' and 'recipient' quite often:"}),e.jsxs(t,{children:[e.jsxs(t.Item,{children:["The ",e.jsx("u",{children:"requestor"})," is the person completing the form submission (initiating the request)."]}),e.jsxs(t.Item,{children:["The ",e.jsx("u",{children:"recipient"})," is the person receiving and responding to the request. The recipient may have one of the following roles: 'Needs to Approve', 'Needs to Sign', 'Needs to Recommend', 'Needs to Acknowledge', 'Needs to Action', 'Needs to Edit' or 'Receives a Copy'. Learn more about"," ",e.jsx(n,{component:r,to:"/support/other-recipient-settings/#role-types",children:"recipient role types"}),"."]})]})]})},{id:"recipient-google-account",question:"Does a recipient need a Google account?",searchText:"recipient google account login install email link respond authorization access form sheet",content:e.jsxs(e.Fragment,{children:[e.jsxs(s,{mb:"sm",children:["Recipients are ",e.jsx("u",{children:"not"})," required to have a Google account, nor are they required to install anything. Each time a submission is made on your form, an email is sent to your recipients with a unique link to respond directly from their email without having to log in."]}),e.jsxs(s,{children:["In addition, unlike other add-ons, recipients are ",e.jsx("u",{children:"not"})," required to have access to your Google Form or linked Google Sheet."]})]})},{id:"notification-emails",question:"What notification emails are sent by the add-on?",searchText:"notification email requestor recipient confirmation complete declined more info cancelled personalize template",content:e.jsxs(e.Fragment,{children:[e.jsxs(t,{children:[e.jsx(t.Item,{children:"Requestor Confirmation - If 'Collect email addresses' is enabled in your Google Form settings, the person submitting the request will receive a notification confirming receipt of their request."}),e.jsx(t.Item,{children:"Recipient Notification - each time a form submission is made, the first recipient(s) will receive a notification with details of the request and links to action the request. Once they have responded, a notification will be sent to the second recipient (if any), and so on."}),e.jsxs(t.Item,{children:["Complete / Declined / More Info Required / Cancelled - These notifications state the outcome of the request and are sent to the requestor if 'Collect email addresses' is enabled in your Google Form settings. These notifications will also be sent to recipients with role 'Receives a Copy' if they are in the final position of the workflow. See"," ",e.jsx(s,{component:"a",href:"#notify-users-complete",c:"brand",td:"underline",span:!0,size:"sm",children:"How do I
1notify users when the workflow is complete?"})," ","for more information."]})]}),e.jsxs(s,{mt:"sm",children:["Each notification type can be personalized. For further details, refer to"," ",e.jsx(n,{component:r,to:"/support/personalizing-notifications/",children:"this support article"}),"."]})]})},{id:"restart-workflow",question:"Can I restart a workflow request from the beginning?",searchText:"restart workflow request beginning edit response spreadsheet detailed approval records revision reset re-route",content:e.jsxs(e.Fragment,{children:[e.jsx(s,{mb:"sm",children:"If a recipient has incorrectly responded to a request or you have changed your workflow settings and need a request to re-route based on your new settings, you can restart a workflow request from the beginning by following these steps:"}),e.jsxs(t,{type:"ordered",children:[e.jsxs(t.Item,{children:["Make sure the ",e.jsx(k,{})," setting is enabled in"," ",e.jsx(N,{}),". This setting controls whether the workflow restarts when a response is edited."]}),e.jsx(t.Item,{children:"Open your Google Form"}),e.jsxs(t.Item,{children:["In your Google Form settings, make sure you have ",e.jsx("strong",{children:"Collect email addresses"})," set to"," ",e.jsx("em",{children:"Responder Input"})," and ",e.jsx("strong",{children:"Allow response editing"})," ",e.jsx("em",{children:"enabled"}),". These settings can be changed back after the next steps have been completed."]}),e.jsxs(t.Item,{children:["From your Google Form, click the ",e.jsx("strong",{children:"Responses"})," tab"]}),e.jsxs(t.Item,{children:["Click the small green spreadsheet ",e.jsx(le,{size:16,style:{verticalAlign:"middle"}})," icon to open the spreadsheet"]}),e.jsxs(t.Item,{children:["Within the spreadsheet, go to the ",e.jsx("strong",{children:"Detailed Approval Records"})," tab"]}),e.jsx(t.Item,{children:"Locate the Request # that you want to reset"}),e.jsx(t.Item,{children:"Click on the Edit Response URL from column G"}),e.jsx(t.Item,{children:"Click through and re-submit the request."})]}),e.jsx(s,{mt:"sm",children:"This process will restart the workflow from the beginning."})]})},{id:"edits",question:"How does the add-on treat edits to a form submission?",searchText:"edit form submission response allow response editing restart workflow revision needs to edit edit response url private message recipient role",content:e.jsxs(e.Fragment,{children:[e.jsxs(s,{mb:"sm",children:["To allow edits, enable ",e.jsx("strong",{children:"Allow response editing"})," in your Google Form settings. When enabled, the add-on will include a link for the ",e.jsx("u",{children:"requestor"})," to edit their form submission in the confirmation email sent immediately after a response is made."]}),e.jsxs(o,{multiple:!0,defaultValue:[],variant:"separated",order:4,mt:"md",styles:{label:{fontSize:"var(--mantine-font-size-lg)"},panel:{fontSize:"var(--mantine-font-size-sm)"}},children:[e.jsxs(o.Item,{value:"requestor-edits",children:[e.jsx(o.Control,{children:e.jsx(s,{children:"When the requestor edits their submission"})}),e.jsx(o.Panel,{children:e.jsxs(m,{gap:"xs",children:[e.jsx(s,{children:"The add-on can optionally restart the workflow when the requestor edits a form submission, sending the request back to the first recipient. This preserves the integrity of the request and gives recipients the opportunity to re-approve the revised request. When the workflow restarts, the Revision # is incremented (e.g., Request #5 becomes Request #5/1)."}),e.jsxs(s,{children:["This behavior is controlled by the"," ",e.jsx(k,{})," setting in"," ",e.jsx(N,{}),", and applies when the request is ",e.jsx("strong",{children:"In progress"}),","," ",e.jsx("strong",{children:"Complete"}),", or ",e.jsx("strong",{children:"Cancelled"})," at the time of the edit. When disabled, the edit is recorded but the workflow continues without interruption â no emails are re-sent and no statuses are reset."]}),e.jsx(s,{children:"Two situations are always handled the same way, regardless of this setting:"}),e.jsxs(t,{children:[e.jsxs(t.Item,{children:[e.jsx("strong",{children:"More info requested / Declined"})," â resubmitting the form resumes the workflow with the specific recipient who requested more info or declined, rather than restarting from the beginning."]}),e.jsxs(t.Item,{children:[e.jsx("strong",{children:"Conditions not met"})," â resubmitting the form always re-evaluates the recipient list, in case the new answers now match a recipient rule."]})]})]})})]}),e.jsxs(o.Item,{value:"recipient-edits",children:[e.jsx(o.Control,{children:e.jsx(s,{children:"When a recipient edits the submission"})}),e.jsx(o.Panel,{children:e.jsxs(m,{gap:"xs",children:[e.jsxs(s,{children:["To allow ",e.jsx("u",{children:"recipients"})," to edit the request, the add-on provides two options:"]}),e.jsxs(t,{type:"ordered",children:[e.jsxs(t.Item,{children:[e.jsx("strong",{children:"Needs to Edit role"})," â"," ",e.jsx(n,{component:r,to:"/support/other-recipient-settings/#role-types",children:"Change a recipient's role"})," ",'to "Needs to Edit". The add-on will send them a link to edit the form submission. Once edited, the workflow proceeds to the next step. Note: this recipient must be on its own level in the'," ",e.jsx(n,{component:r,to:"/support/setting-receiving-order/",children:"receiving order"}),". See"," ",e.jsx(n,{component:r,to:"/support/other-recipient-settings/#things-to-know-when-using-editors",children:"important considerations"})," ","for this role type."]}),e.jsxs(t.Item,{children:[e.jsx("strong",{children:"Edit Response URL marker"})," â Add the ","<<Edit Response URL>>"," marker to the"," ",e.jsx("em",{children:"Recipient"})," notification template or to a"," ",e.jsx(n,{component:r,to:"/support/other-recipient-settings/#private-message",children:"private message"}),"."," ","The recipient can edit the form response, but the workflow will not proceed until they also perform the action associated with their role (e.g., Ap
1prove, Action, Recommend). This allows a recipient to both edit and respond."]})]})]})})]}),e.jsxs(o.Item,{value:"who-made-the-edit",children:[e.jsx(o.Control,{children:e.jsx(s,{children:"How the add-on determines who made an edit"})}),e.jsx(o.Panel,{children:e.jsxs(m,{gap:"xs",children:[e.jsxs(s,{children:["Google Forms does not tell add-ons ",e.jsx("u",{children:"who"})," made an edit. When recipients are able to edit (via the methods above), the add-on infers who made the edit using the following logic:"]}),e.jsxs(t,{type:"ordered",children:[e.jsxs(t.Item,{children:["If a recipient with the ",e.jsx("strong",{children:"Needs to Edit"})," role"," ","is currently awaiting a response, the add-on assumes the edit was made by the recipient, so it accepts the edit and proceeds to the next recipient."]}),e.jsxs(t.Item,{children:["If the ","<<Edit Response URL>>"," marker is included in the Recipient notification template or within a private message, the add-on assumes the edit was made by the recipient, so it "," ",e.jsx("u",{children:"will not"})," restart the workflow."]}),e.jsxs(t.Item,{children:[`In all other cases, the add-on assumes the edit was made by the requestor. If the request is currently "More info requested" or "Declined", it resumes with the recipient who requested more info or declined. If it's "Conditions not met", it re-evaluates the recipient list. Otherwise ("In progress", "Complete", or "Cancelled"), it restarts the workflow unless`," ",e.jsx(k,{})," is disabled."]})]})]})})]})]})]})},{id:"error-messages",question:"My recipients or I are receiving an error message.",searchText:"error message refused connect permission authorization script multiple google accounts troubleshooting we're sorry a server error occurred please wait a bit and try again",content:e.jsxs(e.Fragment,{children:[e.jsx(s,{mb:"sm",children:"Common error messages include:"}),e.jsxs(t,{children:[e.jsx(t.Item,{children:"We're sorry, a server error occurred. Please wait a bit and try again."}),e.jsx(t.Item,{children:"drive.google.com refused to connect"}),e.jsx(t.Item,{children:"You need permission (to access a file)"}),e.jsx(t.Item,{children:"Something isn't quite right, please try again in a few minutes."}),e.jsx(t.Item,{children:"There was a problem: The add-on does not have sufficient authorization to run"}),e.jsx(t.Item,{children:"ScriptError: Authorization is required to perform that action"}),e.jsx(t.Item,{children:"Error: Logged in with multiple Google accounts. Sign in with one account only."})]}),e.jsxs(s,{mt:"sm",children:["Refer to our"," ",e.jsx(n,{component:r,to:"/support/troubleshooting/",children:"troubleshooting"})," ","support article for guidance on how to avoid the above errors."]})]})},{id:"microsoft-organisation",question:"Can I use the add-on if my organisation is on Microsoft?",searchText:"microsoft organisation organization google account mail email formapprovals.com domain paid plan trial",content:e.jsx(s,{children:"We recommend the add-on administrator sets up the add-on using a Google account that has Google Mail enabled. It's not an issue if you don't, however since Google add-ons run and send emails from your Google account, you will be required to purchase the Mail option (send emails from the formapprovals.com domain) when subscribing to one of our paid plans. If you would like to trial the service with emails being sent from formapprovals.com before purchasing a subscription, email [email protected]"})}];function Ae(){const l=J(),[a,d]=p.useState(""),[u,h]=p.useState([]),x=p.useMemo(()=>new oe(q,{keys:[{name:"question",weight:2},{name:"searchText",weight:1}],threshold:.4,ignoreLocation:!0}),[]);p.useEffect(()=>{if(l.hash){const i=decodeURIComponent(l.hash.slice(1)),j=fe[i]??i,g=q.find(y=>y.id===j);g&&h([g.id]);const b=j.replace(/-/g," ");d(b)}},[l.hash]);const f=a.trim()?x.search(a).map(i=>i.item):q,c=u.length>0;return e.jsxs(m,{gap:"xl",children:[e.jsxs(m,{gap:"xs",pb:8,style:{borderBottom:"1px solid var(--mantine-color-gray-2)"},children:[e.jsx(ee,{order:1,size:"h2",style:{borderBottom:"none",paddingBottom:0},children:"Frequently Asked Questions"}),e.jsxs(te,{justify:"space-between",align:"center",children:[e.jsx(s,{size:"sm",c:"dimmed",fw:400,children:"Below are answers to the most common questions."}),e.jsx(n,{component:"button",size:"sm",c:"dimmed",onClick:()=>h(c?[]:f.map(i=>i.id)),style:{whiteSpace:"nowrap"},children:c?"Collapse all":"Expand all"})]})]}),e.jsx(ie,{placeholder:"Search FAQs...",leftSection:e.jsx(re,{size:16}),rightSection:a&&e.jsx(se,{size:"sm",onClick:()=>{d(""),h([])}}),value:a,onChange:i=>d(i.currentTarget.value),size:"md"}),f.length===0?e.jsxs(s,{c:"dimmed",ta:"center",py:"xl",children:['No results found for "',a,'"']}):e.jsx(o,{multiple:!0,value:u,onChange:h,variant:"separated",order:3,styles:{label:{fontSize:"var(--mantine-font-size-lg)"},panel:{fontSize:"var(--mantine-font-size-sm)"}},children:f.map(i=>e.jsxs(o.Item,{value:i.id,id:i.id,children:[e.jsx(o.Control,{children:e.jsx(s,{children:i.question})}),e.jsx(o.Panel,{children:i.content})]},i.id))})]})}export{Ae as default};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.