PageSourceSearch

https://relay.dev/assets/js/1a00f498.41465fab.js

js relay.dev collected 2026-10-02 03:11:44 UTC 22,941 bytes, 1 lines download raw bytes

1"use strict";(self.webpackChunk=self.webpackChunk||[]).push([["14021"],{75116(e,t,n){n.r(t),n.d(t,{metadata:()=>i,default:()=>m,frontMatter:()=>l,contentTitle:()=>d,toc:()=>p,assets:()=>h});var i=JSON.parse('{"id":"api-reference/relay-runtime/commit-mutation","title":"commitMutation","description":"API reference for commitMutation, which imperatively executes a mutation","source":"@site/versioned_docs/version-v19.0.0/api-reference/relay-runtime/commit-mutation.md","sourceDirName":"api-reference/relay-runtime","slug":"/api-reference/commit-mutation/","permalink":"/docs/v19.0.0/api-reference/commit-mutation/","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/relay/tree/main/website/versioned_docs/version-v19.0.0/api-reference/relay-runtime/commit-mutation.md","tags":[],"version":"v19.0.0","frontMatter":{"id":"commit-mutation","title":"commitMutation","slug":"/api-reference/commit-mutation/","description":"API reference for commitMutation, which imperatively executes a mutation","keywords":["mutation"]},"sidebar":"docs","previous":{"title":"relayFieldLogger","permalink":"/docs/v19.0.0/api-reference/field-logger/"},"next":{"title":"requestSubscription","permalink":"/docs/v19.0.0/api-reference/request-subscription/"}}'),r=n(74848),s=n(28453),o=n(86898);n(17352);var a=n(19956),c=n(29135);let l={id:"commit-mutation",title:"commitMutation",slug:"/api-reference/commit-mutation/",description:"API reference for commitMutation, which imperatively executes a mutation",keywords:["mutation"]},d,h={},p=[{value:"<code>commitMutation</code>",id:"commitmutation",level:2},{value:"Arguments",id:"arguments",level:3},...a.toc,{value:"Return Value",id:"return-value",level:3},...c.toc];function u(e){let t={a:"a",code:"code",h2:"h2",h3:"h3",li:"li",p:"p",pre:"pre",ul:"ul",...(0,s.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(t.h2,{id:"commitmutation",children:(0,r.jsx)(t.code,{children:"commitMutation"})}),"\n",(0,r.jsx)(t.p,{children:"Imperatively execute a mutation."}),"\n",(0,r.jsxs)(t.p,{children:["See also the ",(0,r.jsx)(t.a,{href:"../use-mutation/",children:(0,r.jsx)(t.code,{children:"useMutation"})})," API and ",(0,r.jsx)(t.a,{href:"/docs/v19.0.0/guided-tour/updating-data/introduction",children:"Guide to Updating Data"}),"."]}),"\n",(0,r.jsx)(t.pre,{children:(0,r.jsx)(t.code,{className:"language-js",children:"import type {FeedbackLikeMutation} from 'FeedbackLikeMutation.graphql';\nconst React = require('React');\n\nconst {graphql, commitMutation} = require('react-relay');\n\nfunction likeFeedback(environment: IEnvironment): Disposable {\n  return commitMutation<FeedbackLikeMutation>(environment, {\n    mutation: graphql`\n      mutation FeedbackLikeMutation($input: FeedbackLikeData!) {\n        feedback_like(data: $input) {\n          feedback {\n            id\n            viewer_does_like\n            like_count\n          }\n        }\n      }\n    `,\n    variables: {\n      input: {\n        id: '123',\n      },\n    },\n  });\n}\n"})}),"\n",(0,r.jsx)(t.h3,{id:"arguments",children:"Arguments"}),"\n",(0,r.jsxs)(t.ul,{children:["\n",(0,r.jsxs)(t.li,{children:[(0,r.jsx)(t.code,{children:"environment"}),": ",(0,r.jsx)(t.code,{children:"IEnvironment"}),". A Relay environment."]}),"\n",(0,r.jsxs)(t.li,{children:[(0,r.jsx)(t.code,{children:"config"}),": ",(0,r.jsx)(t.a,{href:"#type-mutationconfigtmutationconfig-mutationparameters",children:(0,r.jsx)(t.code,{children:"MutationConfig<TMutation>"})}),"."]}),"\n"]}),"\n",(0,r.jsx)(a.default,{}),"\n",(0,r.jsx)(t.h3,{id:"return-value",children:"Return Value"}),"\n",(0,r.jsxs)(t.ul,{children:["\n",(0,r.jsxs)(t.li,{children:["A ",(0,r.jsx)(t.a,{href:"#interface-disposable",children:(0,r.jsx)(t.code,{children:"Disposable"})})," which:","\n",(0,r.jsxs)(t.ul,{children:["\n",(0,r.jsxs)(t.li,{children:["If called while before the request completes, will cancel revert any optimistic updates and prevent the ",(0,r.jsx)(t.code,{children:"onComplete"})," and ",(0,r.jsx)(t.code,{children:"onError"})," callbacks from being executed. It will not necessarily cancel any network request. Will cause the ",(0,r.jsx)(t.code,{children:"onUnsubscribe"})," callback to be called."]}),"\n",(0,r.jsx)(t.li,{children:"If called after the initial request completes, will do nothing."}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,r.jsx)(c.default,{}),"\n",(0,r.jsx)(o.A,{})]})}function m(e={}){let{wrapper:t}={...(0,s.R)(),...e.components};return t?(0,r.jsx)(t,{...e,children:(0,r.jsx)(u,{...e})}):u(e)}},27076(e,t,n){n.r(t),n.d(t,{metadata:()=>i,default:()=>h,frontMatter:()=>o,contentTitle:()=>a,toc:()=>l,assets:()=>c});var i=JSON.parse('{"id":"api-reference/types/CacheConfig","title":"CacheConfig","description":"Type CacheConfig","source":"@site/versioned_docs/version-v19.0.0/api-reference/types/CacheConfig.md","sourceDirName":"api-reference/types","slug":"/api-reference/types/CacheConfig","permalink":"/docs/v19.0.0/api-reference/types/CacheConfig","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/relay/tree/main/website/versioned_docs/version-v19.0.0/api-reference/types/CacheConfig.md","tags":[],"version":"v19.0.0","frontMatter":{}}'),r=n(74848),s=n(28453);let o={},a,c={},l=[{value:"Type <code>CacheConfig</code>
1",id:"type-cacheconfig",level:4}];function d(e){let t={code:"code",em:"em",h4:"h4",li:"li",ul:"ul",...(0,s.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)(t.h4,{id:"type-cacheconfig",children:["Type ",(0,r.jsx)(t.code,{children:"CacheConfig"})]}),"\n",(0,r.jsxs)(t.ul,{children:["\n",(0,r.jsxs)(t.li,{children:["An object with the following fields:","\n",(0,r.jsxs)(t.ul,{children:["\n",(0,r.jsxs)(t.li,{children:[(0,r.jsx)(t.code,{children:"force"}),": ",(0,r.jsx)(t.em,{children:(0,r.jsx)(t.em,{children:"[Optional]"})})," A boolean. If true, causes a query to be issued unconditionally, regardless of the state of any configured response cache."]}),"\n",(0,r.jsxs)(t.li,{children:[(0,r.jsx)(t.code,{children:"poll"}),": ",(0,r.jsx)(t.em,{children:(0,r.jsx)(t.em,{children:"[Optional]"})})," A number. Causes a query to live-update by polling at the specified interval, in milliseconds. (This value will be passed to ",(0,r.jsx)(t.code,{children:"setTimeout"}),")."]}),"\n",(0,r.jsxs)(t.li,{children:[(0,r.jsx)(t.code,{children:"liveConfigId"}),": ",(0,r.jsx)(t.em,{children:(0,r.jsx)(t.em,{children:"[Optional]"})})," A string. Causes a query to live-update by calling GraphQLLiveQuery; it represents a configuration of gateway when doing live query."]}),"\n",(0,r.jsxs)(t.li,{children:[(0,r.jsx)(t.code,{children:"metadata"}),": ",(0,r.jsx)(t.em,{children:(0,r.jsx)(t.em,{children:"[Optional]"})})," An object. User-supplied metadata."]}),"\n",(0,r.jsxs)(t.li,{children:[(0,r.jsx)(t.code,{children:"transactionId"}),": ",(0,r.jsx)(t.em,{children:(0,r.jsx)(t.em,{children:"[Optional]"})})," A string. A user-supplied value, intended for use as a unique id for a given instance of executing an operation."]}),"\n"]}),"\n"]}),"\n"]})]})}function h(e={}){let{wrapper:t}={...(0,s.R)(),...e.components};return t?(0,r.jsx)(t,{...e,children:(0,r.jsx)(d,{...e})}):d(e)}},29135(e,t,n){n.r(t),n.d(t,{metadata:()=>i,default:()=>h,frontMatter:()=>o,contentTitle:()=>a,toc:()=>l,assets:()=>c});var i=JSON.parse('{"id":"api-reference/types/Disposable","title":"Disposable","description":"Interface Disposable","source":"@site/versioned_docs/version-v19.0.0/api-reference/types/Disposable.md","sourceDirName":"api-reference/types","slug":"/api-reference/types/Disposable","permalink":"/docs/v19.0.0/api-reference/types/Disposable","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/relay/tree/main/website/versioned_docs/version-v19.0.0/api-reference/types/Disposable.md","tags":[],"version":"v19.0.0","frontMatter":{}}'),r=n(74848),s=n(28453);let o={},a,c={},l=[{value:"Interface <code>Disposable</code>",id:"interface-disposable",level:4}];function d(e){let t={code:"code",h4:"h4",li:"li",ul:"ul",...(0,s.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)(t.h4,{id:"interface-disposable",children:["Interface ",(0,r.jsx)(t.code,{children:"Disposable"})]}),"\n",(0,r.jsxs)(t.ul,{children:["\n",(0,r.jsxs)(t.li,{children:["An object with the following key:","\n",(0,r.jsxs)(t.ul,{children:["\n",(0,r.jsxs)(t.li,{children:[(0,r.jsx)(t.code,{children:"dispose"}),": ",(0,r.jsx)(t.code,{children:"() => void"}),". Disposes of the resource."]}),"\n"]}),"\n"]}),"\n"]})]})}function h(e={}){let{wrapper:t}={...(0,s.R)(),...e.components};return t?(0,r.jsx)(t,{...e,children:(0,r.jsx)(d,{...e})}):d(e)}},19956(e,t,n){n.r(t),n.d(t,{metadata:()=>i,default:()=>m,frontMatter:()=>l,contentTitle:()=>d,toc:()=>p,assets:()=>h});var i=JSON.parse('{"id":"api-reference/types/MutationConfig","title":"MutationConfig","description":"Type MutationConfig","source":"@site/versioned_docs/version-v19.0.0/api-reference/types/MutationConfig.md","sourceDirName":"api-reference/types","slug":"/api-reference/types/MutationConfig","permalink":"/docs/v19.0.0/api-reference/types/MutationConfig","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/relay/tree/main/website/versioned_docs/version-v19.0.0/api-reference/types/MutationConfig.md","tags":[],"version":"v19.0.0","frontMatter":{}}'),r=n(74848),s=n(28453),o=n(27076),a=n(19812),c=n(74569);let l={},d,h={},p=[{value:"Type <code>MutationConfig&lt;TMutationConfig: MutationParameters&gt;</code>
1",id:"type-mutationconfigtmutationconfig-mutationparameters",level:4},...o.toc,...a.toc,...c.toc,{value:"Type <code>MutationParameters</code>",id:"type-mutationparameters",level:4}];function u(e){let t={a:"a",code:"code",em:"em",h4:"h4",li:"li",strong:"strong",ul:"ul",...(0,s.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)(t.h4,{id:"type-mutationconfigtmutationconfig-mutationparameters",children:["Type ",(0,r.jsx)(t.code,{children:"MutationConfig<TMutationConfig: MutationParameters>"})]}),"\n",(0,r.jsxs)(t.ul,{children:["\n",(0,r.jsxs)(t.li,{children:["An object with the following fields:","\n",(0,r.jsxs)(t.ul,{children:["\n",(0,r.jsxs)(t.li,{children:[(0,r.jsx)(t.code,{children:"cacheConfig"}),": ",(0,r.jsx)(t.em,{children:(0,r.jsx)(t.em,{children:"[Optional]"})})," ",(0,r.jsx)(t.a,{href:"#type-cacheconfig",children:(0,r.jsx)(t.code,{children:"CacheConfig"})})]}),"\n",(0,r.jsxs)(t.li,{children:[(0,r.jsx)(t.code,{children:"mutation"}),": ",(0,r.jsx)(t.code,{children:"GraphQLTaggedNode"}),". A mutation specified using a GraphQL literal"]}),"\n",(0,r.jsxs)(t.li,{children:[(0,r.jsx)(t.code,{children:"onError"}),": ",(0,r.jsx)(t.em,{children:(0,r.jsx)(t.em,{children:"[Optional]"})})," ",(0,r.jsx)(t.code,{children:"(Error) => void"}),". An optional callback executed if the mutation results in an error."]}),"\n",(0,r.jsxs)(t.li,{children:[(0,r.jsx)(t.code,{children:"onCompleted"}),": ",(0,r.jsx)(t.em,{children:(0,r.jsx)(t.em,{children:"[Optional]"})})," ",(0,r.jsx)(t.code,{children:"($ElementType<TMutationConfig, 'response'>) => void"}),". An optional callback that is executed when the mutation completes.","\n",(0,r.jsxs)(t.ul,{children:["\n",(0,r.jsxs)(t.li,{children:["The value passed to ",(0,r.jsx)(t.code,{children:"onCompleted"})," is the the mutation fragment, as read out from the store, ",(0,r.jsx)(t.strong,{children:"after"})," updaters and declarative mutation directives are applied. This means that data from within unmasked fragments will not be read, and records that were deleted (e.g. by ",(0,r.jsx)(t.code,{children:"@deleteRecord"}),") may also be null."]}),"\n"]}),"\n"]}),"\n",(0,r.jsxs)(t.li,{children:[(0,r.jsx)(t.code,{children:"onUnsubscribe"}),": ",(0,r.jsx)(t.em,{children:(0,r.jsx)(t.em,{children:"[Optional]"})})," ",(0,r.jsx)(t.code,{children:"() => void"}),". An optional callback that is executed when the mutation is unsubscribed, which occurs when the returned ",(0,r.jsx)(t.code,{children:"Disposable"})," is disposed."]}),"\n",(0,r.jsxs)(t.li,{children:[(0,r.jsx)(t.code,{children:"optimisticResponse"}),": ",(0,r.jsx)(t.em,{children:(0,r.jsx)(t.em,{children:"[Optional]"})})," An object whose type matches the raw response type of the mutation. Make sure you decorate your mutation with ",(0,r.jsx)(t.code,{children:"@raw_response_type"})," if you are using this field."]}),"\n",(0,r.jsxs)(t.li,{children:[(0,r.jsx)(t.code,{children:"optimisticUpdater"}),": ",(0,r.jsx)(t.em,{children:(0,r.jsx)(t.em,{children:"[Optional]"})})," ",(0,r.jsx)(t.a,{href:"#type-selectorstoreupdater",children:(0,r.jsx)(t.code,{children:"SelectorStoreUpdater"})}),". A callback that is executed when ",(0,r.jsx)(t.code,{children:"commitMutation"})," is called, after the ",(0,r.jsx)(t.code,{children:"optimisticResponse"})," has been normalized into the store."]}),"\n",(0,r.jsxs)(t.li,{children:[(0,r.jsx)(t.code,{children:"updater"}),": ",(0,r.jsx)(t.em,{children:(0,r.jsx)(t.em,{children:"[Optional]"})})," ",(0,r.jsx)(t.a,{href:"#type-selectorstoreupdater",children:(0,r.jsx)(t.code,{children:"SelectorStoreUpdater"})}),". A callback that is executed when a payload is received, after the payload has been written into the store."]}),"\n",(0,r.jsxs)(t.li,{children:[(0,r.jsx)(t.code,{children:"uploadables"}),": ",(0,r.jsx)(t.em,{children:(0,r.jsx)(t.em,{children:"[Optional]"})})," ",(0,r.jsx)(t.a,{href:"#type-uploadablemap",children:(0,r.jsx)(t.code,{children:"UploadableMap"})}),". An optional uploadable map."]}),"\n",(0,r.jsxs)(t.li,{children:[(0,r.jsx)(t.code,{children:"variables"}),": ",(0,r.jsx)(t.code,{children:"$ElementType<TMutationConfig, 'variables'>"}),". The variables to pass to the mutation."]}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,r.jsx)(o.default,{}),"\n",(0,r.jsx)(a.default,{}),"\n",(0,r.jsx)(c.default,{}),"\n",(0,r.jsxs)(t.h4,{id:"type-mutationparameters",children:["Type ",(0,r.jsx)(t.code,{children:"MutationParameters"})]}),"\n",(0,r.jsxs)(t.ul,{children:["\n",(0,r.jsxs)(t.li,{children:["An object with the following fields:","\n",(0,r.jsxs)(t.ul,{children:["\n",(0,r.jsxs)(t.li,{children:[(0,r.jsx)(t.code,{children:"response"}),": An object"]}),"\n",(0,r.jsxs)(t.li,{children:[(0,r.jsx)(t.code,{children:"variables"}),": An object"]}),"\n",(0,r.jsxs)(t.li,{children:[(0,r.jsx)(t.code,{children:"rawResponse"}),": An optional object"]}),"\n"]}),"\n"]}),"\n"]})]})}function m(e={}){let{wrapper:t}={...(0,s.R)(),...e.components};return t?(0,r.jsx)(t,{...e,children:(0,r.jsx)(u,{...e})}):u(e)}},19812(e,t,n){n.r(t),n.d(t,{metadata:()=>i,default:()=>p,frontMatter:()=>a,contentTitle:()=>c,toc:()=>d,assets:()=>l});var i=JSON.parse('{"id":"api-reference/types/SelectorStoreUpdater","title":"SelectorStoreUpdater","description":"Type SelectorStoreUpdater","source":"@site/versioned_docs/version-v19.0.0/api-reference/types/SelectorStoreUpdater.md","sourceDirName":"api-reference/types","slug":"/api-reference/types/SelectorStoreUpdater","permalink":"/docs/v19.0.0/api-reference/types/SelectorStoreUpdater","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/relay/tree/main/website/versioned_docs/version-v19.0.0/api-reference/types/SelectorStoreUpdater.md","tags":[],"version":"v19.0.0","frontMatter":{}}'),r=n(74848),s=n(28453),o=n(66497);let a={},c,l={},d=[{value:"Type <code>SelectorStoreUpdater</code>
1",id:"type-selectorstoreupdater",level:4}];function h(e){let t={code:"code",em:"em",h4:"h4",li:"li",ul:"ul",...(0,s.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)(t.h4,{id:"type-selectorstoreupdater",children:["Type ",(0,r.jsx)(t.code,{children:"SelectorStoreUpdater"})]}),"\n",(0,r.jsxs)(t.ul,{children:["\n",(0,r.jsxs)(t.li,{children:["A function with signature ",(0,r.jsx)(t.code,{children:"(store: RecordSourceSelectorProxy, data) => void"})]}),"\n",(0,r.jsxs)(t.li,{children:["This interface allows you to ",(0,r.jsx)(t.em,{children:"imperatively"})," write and read data directly to and from the Relay store. This means that you have full control over how to update the store in response to the subscription payload: you can ",(0,r.jsx)(t.em,{children:"create entirely new records"}),", or ",(0,r.jsx)(t.em,{children:"update or delete existing ones"}),". The full API for reading and writing to the Relay store is available ",(0,r.jsx)("a",{href:(0,o.default)("docs/api-reference/store/#recordsourceselectorproxy"),children:"here"}),"."]}),"\n"]})]})}function p(e={}){let{wrapper:t}={...(0,s.R)(),...e.components};return t?(0,r.jsx)(t,{...e,children:(0,r.jsx)(h,{...e})}):h(e)}},74569(e,t,n){n.r(t),n.d(t,{metadata:()=>i,default:()=>h,frontMatter:()=>o,contentTitle:()=>a,toc:()=>l,assets:()=>c});var i=JSON.parse('{"id":"api-reference/types/UploadableMap","title":"UploadableMap","description":"Type UploadableMap","source":"@site/versioned_docs/version-v19.0.0/api-reference/types/UploadableMap.md","sourceDirName":"api-reference/types","slug":"/api-reference/types/UploadableMap","permalink":"/docs/v19.0.0/api-reference/types/UploadableMap","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/relay/tree/main/website/versioned_docs/version-v19.0.0/api-reference/types/UploadableMap.md","tags":[],"version":"v19.0.0","frontMatter":{}}'),r=n(74848),s=n(28453);let o={},a,c={},l=[{value:"Type <code>UploadableMap</code>",id:"type-uploadablemap",level:4}];function d(e){let t={a:"a",code:"code",h4:"h4",li:"li",ul:"ul",...(0,s.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)(t.h4,{id:"type-uploadablemap",children:["Type ",(0,r.jsx)(t.code,{children:"UploadableMap"})]}),"\n",(0,r.jsxs)(t.ul,{children:["\n",(0,r.jsxs)(t.li,{children:["An object whose values are ",(0,r.jsx)(t.a,{href:"https://developer.mozilla.org/en-US/docs/Web/API/File",children:(0,r.jsx)(t.code,{children:"File"})})," or ",(0,r.jsx)(t.a,{href:"https://developer.mozilla.org/en-US/docs/Web/API/Blob",children:(0,r.jsx)(t.code,{children:"Blob"})}),"."]}),"\n"]})]})}function h(e={}){let{wrapper:t}={...(0,s.R)(),...e.components};return t?(0,r.jsx)(t,{...e,children:(0,r.jsx)(d,{...e})}):d(e)}},86898(e,t,n){n.d(t,{A:()=>m});var i=n(74848),r=n(95310),s=n(17352),o=n(96540);function a(){let e=window.encodeURI(JSON.stringify({title:"Feedback about "+window.location.pathname,description:"**!!! Required !!!**\n\nPlease modify the task description to let us know how the docs can be improved.\n\n**Please do not ask support questions via this form! Instead, ask in fburl.com/relay_support**",tag_ids:{add:[0xac96423e5b680,0x64079768ac750]}}));window.open("https://www.internalfb.com/tasks/?n="+e)}function c({children:e}){return(0,i.jsxs)("div",{className:"docsRating",id:"docsRating",children:[(0,i.jsx)("hr",{}),e]})}let l=()=>{let[e,t]=o.useState(!1),n=e=>{t(!0),window.ga&&window.ga("send",{hitType:"event",eventCategory:"button",eventAction:"feedback",eventValue:e})};return e?"Thank you for letting us know!":(0,i.jsxs)(i.Fragment,{children:["Is this page useful?",(0,i.jsx)("svg",{className:"i_thumbsup",alt:"Like",id:"docsRating-like",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 81.13 89.76",onClick:()=>n(1),children:(0,i.jsx)("path",{d:"M22.9 6a18.57 18.57 0 002.67 8.4 25.72 25.72 0 008.65 7.66c3.86 2 8.67 7.13 13.51 11 3.86 3.11 8.57 7.11 11.54 8.45s13.59.26 14.64 1.17c1.88 1.63 1.55 9-.11 15.25-1.61 5.86-5.96 10.55-6.48 16.86-.4 4.83-2.7 4.88-10.93 4.88h-1.35c-3.82 0-8.24 2.93-12.92 3.62a68 68 0 01-9.73.5c-3.57 0-7.86-.08-13.25-.08-3.56 0-4.71-1.83-4.71-4.48h8.42a3.51 3.51 0 000-7H12.28a2.89 2.89 0 01-2.88-2.88 1.91 1.91 0 01.77-1.78h16.46a3.51 3.51 0 000-7H12.29c-3.21 0-4.84-1.83-4.84-4a6.41 6.41 0 011.17-3.78h19.06a3.5 3.5 0 100-7H9.75A3.51 3.51 0 016 42.27a3.45 3.45 0 013.75-3.48h13.11c5.61 0 7.71-3 5.71-5.52-4.43-4.74-10.84-12.62-11-18.71-.15-6.51 2.6-7.83 5.36-8.56m0-6a6.18 6.18 0 00-1.53.2c-6.69 1.77-10 6.65-9.82 14.5.08 5.09 2.99 11.18 8.52 18.09H9.74a9.52 9.52 0 00-6.23 16.9 12.52 12.52 0 00-2.07 6.84 9.64 9.64 0 003.65 7.7 7.85 7.85 0 00-1.7 5.13 8.9 8.9 0 005.3 8.13 6 6 0 00-.26 1.76c0 6.37 4.2 10.48 10.71 10.48h13.25a73.75 73.75 0 0010.6-.56 35.89 35.89 0 007.58-2.18 17.83 17.83 0 014.48-1.34h1.35c4.69 0 7.79 0 10.5-1 3.85-1.44 6-4.59 6.41-9.38.2-2.46 1.42-4.85 2.84-7.62a41.3 41.3 0 003.42-8.13 48 48 0 001.59-10.79c.1-5.13-1-8.48-3.35-10.55-2.16-1.87-4.64-1.87-9.6-1.88a46.86 46.86 0 01-6.64-.29c-1.92-.94-5.72-4-8.51-6.3l-1.58-1.28c-1.6-1.3-3.27-2.79-4.87-4.23-3.33-3-6.47-5.79-9.61-7.45a20.2 20.2 0 01-6.43-5.53 12.44 12.44 0 01-1.72-5.36 6 6 0 00-6-5.86z"})}),(0,i.jsx)("svg",{className:"i_thumbsdown",alt:"Dislike",id:"docsRating-dislike",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 81.13 89.76",onClick:()=>n(0),children:(0,i.jsx)("path",{d:"M22.9 6a18.57 18.57 0 002.67 8.4 25.72 25.72 0 008.65 7.66c3.86 2 8.67 7.13 13.51 11 3.86 3.11 8.57 7.11 11.54 8.45s13.59.26 14.64 1.17c1.88 1.63 1.55 9-.11 15.25-1.61 5.86-5.96 10.55-6.48 16.86-.4 4.83-2.7 4.88-10.93 4.88h-1.35c-3.82 0-8.24 2.93-12.92 3.62a68 68 0 01-9.73.5c-3.57 0-7.86-.08-13.25-.08-3.56 0-4.71-1.83-4.71-4.48h8.42a3.51 3.51 0 000-7H12.28a2.89 2.89 0 01-2.88-2.88 1.91 1.91 0 01.77-1.78h16.46a3.51 3.51 0 000-7H12.29c-3.21 0-4.84-1.83-4.84-4a6.41 6.41 0 011.17-3.78h19.06a3.5 3.5 0 100-7H9.75A3.51 3.51 0 016 42.27a3.45 3.45 0 013.75-3.48h13.11c5.61 0 7.71-3 5.71-5.52-4.43-4.74-10.84-12.62-11-18.71-.15-6.51 2.6-7.83 5.36-8.56m0-6a6.18 6.18 0 00-1.53.2c-6.69 1.77-10 6.65-9.82 14.5.08 5.09 2.99 11.18 8.52 18.09H9.74a9.52 9.52 0 00-6.23 16.9 12.52 12.52 0 00-2.07 6.84 9.64 9.64 0 003.65 7.7 7.85 7.85 0 00-1.7 5.13 8.9 8.9 0 005.3 8.13 6 6 0 00-.26 1.76c0 6.37 4.2 10.48 10.71 10.48h13.25a73.75 73.75 0 0010.6-.56 35.89 35.89 0 007.58-2.18 17.83 17.83 0 014.48-1.34h1.35c4.69 0 7.79 0 10.5-1 3.85-1.44 6-4.59 6.41-9.38.2-2.46 1.42-4.85 2.84-7.62a41.3 41.3 0 003.42-8.13 48 48 0 001.59-10.79c.1-5.13-1-8.48-3.35-10.55-2.16-1.87-4.64-1.87-9.6-1.88a46.86 46.86 0 01-6.64-.29c-1.92-.94-5.72-4-8.51-6.3l-1.58-1.28c-1.6-1.3-3.27-2.79-4.87-4.23-3.33-3-6.47-5.79-9.61-7.45a20.2 20.2 0 01-6.43-5.53 12.44 12.44 0 01-1.72-5.36 6 6 0 00-6-5.86z"})})]})},d=()=>(0,i.jsxs)("p",{children:["Let us know how these docs can be improved by",(0,i.jsx)("a",{className:"button",role:"button",tabIndex:0,onClick:a,children:"Filing a task"})]}),h=()=>(0,i.jsxs)("p",{children:["Help us make the site even better by"," ",(0,i.jsx)(r.default,{to:"https://www.surveymonkey.com/r/FYC9TCJ",children:"answering a few quick questions"}),"."]}),p=()=>(0,i.jsxs)(c,{children:[(0,i.jsx)(d,{}),(0,i.jsx)(l,{}),(0,i.jsx)(h,{})]}),u=()=>(0,i.jsxs)(c,{children:[(0,i.jsx)(l,{}),(0,i.jsx)(h,{})]}),m=()=>(0,s.fbContent)({internal:(0,i.jsx)(p,{}),external:(0,i.jsx)(u,{})})},28453(e,t,n){n.d(t,{R:()=>o,x:()=>a});var i=n(96540);let r={},s=i.createContext(r);function o(e){let t=i.useContext(s);return i.useMemo(function(){return"function"==typeof e?e(t):{...t,...e}},[t,e])}function a(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:o(e.components),i.createElement(s.Provider,{value:t},e.children)}}}]);

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.