PageSourceSearch

https://fluidframework.com/assets/js/0f1aa834.a92eaee9.js

js fluidframework.com collected 2026-10-02 04:35:44 UTC 16,094 bytes, 1 lines download raw bytes

1"use strict";(self.webpackChunkfluid_framework_website=self.webpackChunkfluid_framework_website||[]).push([[2585],{491262:(e,r,n)=>{n.r(r),n.d(r,{assets:()=>a,contentTitle:()=>t,default:()=>h,frontMatter:()=>d,metadata:()=>i,toc:()=>c});const i=JSON.parse('{"id":"api/container-loader/iloaderprops-interface","title":"ILoaderProps Interface","description":"Services and properties necessary for creating a loader","source":"@site/versioned_docs/version-2/api/container-loader/iloaderprops-interface.md","sourceDirName":"api/container-loader","slug":"/api/container-loader/iloaderprops-interface","permalink":"/docs/v2/api/container-loader/iloaderprops-interface","draft":false,"unlisted":false,"tags":[],"version":"2","frontMatter":{"title":"ILoaderProps Interface","sidebar_label":"ILoaderProps","displayed_sidebar":"docsSidebar"},"sidebar":"docsSidebar"}');var o=n(886070),s=n(403793);const d={title:"ILoaderProps Interface",sidebar_label:"ILoaderProps",displayed_sidebar:"docsSidebar"},t=void 0,a={},c=[{value:"Properties",id:"properties",level:2},{value:"Property Details",id:"property-details",level:2}];function l(e){const r={a:"a",admonition:"admonition",code:"code",h2:"h2",h3:"h3",h4:"h4",p:"p",pre:"pre",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",...(0,s.R)(),...e.components};return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(r.p,{children:"Services and properties necessary for creating a loader"}),"\n",(0,o.jsxs)(r.admonition,{title:"This API is provided for existing users, but is not recommended for new users.",type:"warning",children:[(0,o.jsxs)(r.p,{children:["To use, import via ",(0,o.jsx)(r.code,{children:"@fluidframework/container-loader/legacy"}),"."]}),(0,o.jsxs)(r.p,{children:["For more information about our API support guarantees, see ",(0,o.jsx)(r.a,{href:"https://fluidframework.com/docs/build/releases-and-apitags/#api-support-levels",children:"here"}),"."]})]}),"\n",(0,o.jsx)(r.h2,{id:"iloaderprops-signature",children:"Signature"}),"\n",(0,o.jsx)(r.pre,{children:(0,o.jsx)(r.code,{className:"language-typescript",children:"export interface ILoaderProps\n"})}),"\n",(0,o.jsx)(r.h2,{id:"properties",children:"Properties"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,o.jsxs)(r.table,{children:[(0,o.jsx)(r.thead,{children:(0,o.jsxs)(r.tr,{children:[(0,o.jsx)(r.th,{children:"Property"}),(0,o.jsx)(r.th,{children:"Alerts"}),(0,o.jsx)(r.th,{children:"Modifiers"}),(0,o.jsx)(r.th,{children:"Type"}),(0,o.jsx)(r.th,{children:"Description"})]})}),(0,o.jsxs)(r.tbody,{children:[(0,o.jsxs)(r.tr,{children:[(0,o.jsx)(r.td,{children:(0,o.jsx)(r.a,{href:"/docs/v2/api/container-loader/iloaderprops-interface#codeloader-propertysignature",children:"codeLoader"})}),(0,o.jsx)(r.td,{children:(0,o.jsx)(r.code,{children:"Beta"})}),(0,o.jsx)(r.td,{children:(0,o.jsx)(r.code,{children:"readonly"})}),(0,o.jsx)(r.td,{children:(0,o.jsx)(r.a,{href:"/docs/v2/api/container-loader/icodedetailsloader-interface",children:"ICodeDetailsLoader"})}),(0,o.jsx)(r.td,{children:"The code loader handles loading the necessary code for running a container once it is loaded."})]}),(0,o.jsxs)(r.tr,{children:[(0,o.jsx)(r.td,{children:(0,o.jsx)(r.a,{href:"/docs/v2/api/container-loader/iloaderprops-interface#configprovider-propertysignature",children:"configProvider"})}),(0,o.jsx)(r.td,{children:(0,o.jsx)(r.code,{children:"Beta"})}),(0,o.jsxs)(r.td,{children:[(0,o.jsx)(r.code,{children:"optional"}),", ",(0,o.jsx)(r.code,{children:"readonly"})]}),(0,o.jsx)(r.td,{children:(0,o.jsx)(r.a,{href:"/docs/v2/api/core-interfaces/iconfigproviderbase-interface",children:"IConfigProviderBase"})}),(0,o.jsx)(r.td,{children:"The configuration provider which may be used to control features."})]}),(0,o.jsxs)(r.tr,{children:[(0,o.jsx)(r.td,{children:(0,o.jsx)(r.a,{href:"/docs/v2/api/container-loader/iloaderprops-interface#documentservicefactory-propertysignature",children:"documentServiceFactory"})}),(0,o.jsx)(r.td,{children:(0,o.jsx)(r.code,{children:"Beta"})}),(0,o.jsx)(r.td,{children:(0,o.jsx)(r.code,{children:"readonly"})}),(0,o.jsx)(r.td,{children:(0,o.jsx)(r.a,{href:"/docs/v2/api/driver-definitions/idocumentservicefactory-interface",children:"IDocumentServiceFactory"})}),(0,o.jsx)(r.td,{children:"The document service factory take the Fluid url provided by the resolved url and constructs all the necessary services for communication with the container's server."})]}),(0,o.jsxs)(r.tr,{children:[(0,o.jsx)(r.td,{children:(0,o.jsx)(r.a,{href:"/docs/v2/api/container-loader/iloaderprops-interface#logger-propertysignature",children:"logger"})}),(0,o.jsx)(r.td,{children:(0,o.jsx)(r.code,{children:"Beta"})}),(0,o.jsxs)(r.td,{children:[(0,o.jsx)(r.code,{children:"optional"}),", ",(0,o.jsx)(r.code,{children:"readonly"})]}),(0,o.jsx)(r.td,{children:(0,o.jsx)(r.a,{href:"/docs/v2/api/core-interfaces/itelemetrybaselogger-interface",children:"ITelemetryB
1aseLogger"})}),(0,o.jsx)(r.td,{children:"The logger that all telemetry should be pushed to."})]}),(0,o.jsxs)(r.tr,{children:[(0,o.jsx)(r.td,{children:(0,o.jsx)(r.a,{href:"/docs/v2/api/container-loader/iloaderprops-interface#options-propertysignature",children:"options"})}),(0,o.jsx)(r.td,{children:(0,o.jsx)(r.code,{children:"Beta"})}),(0,o.jsxs)(r.td,{children:[(0,o.jsx)(r.code,{children:"optional"}),", ",(0,o.jsx)(r.code,{children:"readonly"})]}),(0,o.jsx)(r.td,{children:(0,o.jsx)(r.a,{href:"/docs/v2/api/container-definitions/iloaderoptions-typealias",children:"ILoaderOptions"})}),(0,o.jsx)(r.td,{children:"A property bag of options used by various layers to control features"})]}),(0,o.jsxs)(r.tr,{children:[(0,o.jsx)(r.td,{children:(0,o.jsx)(r.a,{href:"/docs/v2/api/container-loader/iloaderprops-interface#protocolhandlerbuilder-propertysignature",children:"protocolHandlerBuilder"})}),(0,o.jsx)(r.td,{children:(0,o.jsx)(r.code,{children:"Beta"})}),(0,o.jsxs)(r.td,{children:[(0,o.jsx)(r.code,{children:"optional"}),", ",(0,o.jsx)(r.code,{children:"readonly"})]}),(0,o.jsx)(r.td,{children:(0,o.jsx)(r.a,{href:"/docs/v2/api/container-loader/protocolhandlerbuilder-typealias",children:"ProtocolHandlerBuilder"})}),(0,o.jsx)(r.td,{children:"Optional property for allowing the container to use a custom protocol implementation for handling the quorum and/or the audience."})]}),(0,o.jsxs)(r.tr,{children:[(0,o.jsx)(r.td,{children:(0,o.jsx)(r.a,{href:"/docs/v2/api/container-loader/iloaderprops-interface#scope-propertysignature",children:"scope"})}),(0,o.jsx)(r.td,{children:(0,o.jsx)(r.code,{children:"Beta"})}),(0,o.jsxs)(r.td,{children:[(0,o.jsx)(r.code,{children:"optional"}),", ",(0,o.jsx)(r.code,{children:"readonly"})]}),(0,o.jsx)(r.td,{children:(0,o.jsx)(r.a,{href:"/docs/v2/api/core-interfaces/fluidobject-typealias",children:"FluidObject"})}),(0,o.jsx)(r.td,{children:"Scope is provided to all container and is a set of shared services for container's to integrate with their host environment."})]}),(0,o.jsxs)(r.tr,{children:[(0,o.jsx)(r.td,{children:(0,o.jsx)(r.a,{href:"/docs/v2/api/container-loader/iloaderprops-interface#urlresolver-propertysignature",children:"urlResolver"})}),(0,o.jsx)(r.td,{children:(0,o.jsx)(r.code,{children:"Beta"})}),(0,o.jsx)(r.td,{children:(0,o.jsx)(r.code,{children:"readonly"})}),(0,o.jsx)(r.td,{children:(0,o.jsx)(r.a,{href:"/docs/v2/api/driver-definitions/iurlresolver-interface",children:"IUrlResolver"})}),(0,o.jsx)(r.td,{children:"The url resolver used by the loader for resolving external urls into Fluid urls such that the container specified by the external url can be loaded."})]})]})]}),"\n",(0,o.jsx)(r.h2,{id:"property-details",children:"Property Details"}),"\n",(0,o.jsx)(r.h3,{id:"codeloader-propertysignature",children:"codeLoader"}),"\n",(0,o.jsx)(r.p,{children:"The code loader handles loading the necessary code for running a container once it is loaded."}),"\n",(0,o.jsx)(r.admonition,{title:"This API is provided for existing users, but is not recommended for new users.",type:"warning",children:(0,o.jsxs)(r.p,{children:["For more information about our API support guarantees, see ",(0,o.jsx)(r.a,{href:"https://fluidframework.com/docs/build/releases-and-apitags/#api-support-levels",children:"here"}),"."]})}),"\n",(0,o.jsx)(r.h4,{id:"codeloader-signature",children:"Signature"}),"\n",(0,o.jsx)(r.pre,{children:(0,o.jsx)(r.code,{className:"language-typescript",children:"readonly codeLoader: ICodeDetailsLoader;\n"})}),"\n",(0,o.jsxs)(r.p,{children:[(0,o.jsx)(r.strong,{children:"Type"}),": ",(0,o.jsx)(r.a,{href:"/docs/v2/api/container-loader/icodedetailsloader-interface",children:"ICodeDetailsLoader"})]}),"\n",(0,o.jsx)(r.h3,{id:"configprovider-propertysignature",children:"configProvider"}),"\n",(0,o.jsx)(r.p,{children:"The configuration provider which may be used to control features."}),"\n",(0,o.jsx)(r.admonition,{title:"This API is provided for existing users, but is not recommended for new users.",type:"warning",children:(0,o.jsxs)(r.p,{children:["For more information about our API support guarantees, see ",(0,o.jsx)(r.a,{href:"https://fluidframework.com/docs/build/releases-and-apitags/#api-support-levels",children:"here"}),"."]})}),"\n",(0,o.jsx)(r.h4,{id:"configprovider-signature",children:"Signature"}),"\n",(0,o.jsx)(r.pre,{children:(0,o.jsx)(r.code,{className:"language-typescript",children:"readonly configProvider?: IConfigProviderBase;\n"})}),"\n",(0,o.jsxs)(r.p,{children:[(0,o.jsx)(r.strong,{children:"Type"}),": ",(0,o.jsx)(r.a,{href:"/docs/v2/api/core-interfaces/iconfigproviderbase-interface",children:"IConfigProviderBase"})]}),"\n",(0,o.jsx)(r.h3,{id:"documentservicefactory-propertysignature",children:"documentServiceFactory"}),"\n",(0,o.jsx)(r.p,{children:"The document service factory take the Fluid url provided by the resolved url and constructs all the necessary services for communication with the container's server."}),"\n",(0,o.jsx)(r.admonition,{title:"This API is provided for existing users, but is not recommended for new users.",type:"warning",children:(0,o.jsxs)(r.p,{children:["For more information about our API support guarantees, see ",(0,o.jsx)(r.a,{href:"https://fluidframework.com/docs/build/releases-and-apitags/#api-support-levels",children:"here"}),"."]})}),"\n",(0,o.jsx)(r.h4,{id:"documentservicefactory-signature",children:"Signature"}),"\n",(0,o.jsx)(r.pre,{children:(0,o.jsx)(r.code,{className:"language-typescript",children:"readonly documentServiceFactory: IDocumentServiceFactory;\n"})}),"\n",(0,o.jsxs)(r.p,{children:[(0,o.jsx)(r.strong,{children:"Type"}),": ",(0,o.jsx)(r.a,{href:"/docs/v2/api/driver-definitions/idocumentservicefactory-interface",children:"IDocumentServiceFactory"})]}),"\n",(0,o.jsx)(r.h3,{id:"logger-propertysignature",children:"logger"}),"\n",(0,o.jsx)(r.p,{children:"The logger that all telemetry should be pushed to."}),"\n",(0,o.jsx)(r.admonition,{title:"This API is provided for existing users, but is not recommended for new users.",type:"warning",children:(0,o.jsxs)(r.p,{children:["For more information about our API support guarantees, see ",(0,o.jsx)(r.a,{href:"https://fluidframework.com/docs/build/releases-and-apitags/#api-support-levels",children:"here"}),"."]})}),"\n",(0,o.jsx)(r.h4,{id:"logger-signature",children:"Signature"}),"\n",(0,o.jsx)(r.pre,{children:(0,o.jsx)(r.code,{className:"language-typescript",children:"readonly logger?: ITelemetryB
1aseLogger;\n"})}),"\n",(0,o.jsxs)(r.p,{children:[(0,o.jsx)(r.strong,{children:"Type"}),": ",(0,o.jsx)(r.a,{href:"/docs/v2/api/core-interfaces/itelemetrybaselogger-interface",children:"ITelemetryBaseLogger"})]}),"\n",(0,o.jsx)(r.h3,{id:"options-propertysignature",children:"options"}),"\n",(0,o.jsx)(r.p,{children:"A property bag of options used by various layers to control features"}),"\n",(0,o.jsx)(r.admonition,{title:"This API is provided for existing users, but is not recommended for new users.",type:"warning",children:(0,o.jsxs)(r.p,{children:["For more information about our API support guarantees, see ",(0,o.jsx)(r.a,{href:"https://fluidframework.com/docs/build/releases-and-apitags/#api-support-levels",children:"here"}),"."]})}),"\n",(0,o.jsx)(r.h4,{id:"options-signature",children:"Signature"}),"\n",(0,o.jsx)(r.pre,{children:(0,o.jsx)(r.code,{className:"language-typescript",children:"readonly options?: ILoaderOptions;\n"})}),"\n",(0,o.jsxs)(r.p,{children:[(0,o.jsx)(r.strong,{children:"Type"}),": ",(0,o.jsx)(r.a,{href:"/docs/v2/api/container-definitions/iloaderoptions-typealias",children:"ILoaderOptions"})]}),"\n",(0,o.jsx)(r.h3,{id:"protocolhandlerbuilder-propertysignature",children:"protocolHandlerBuilder"}),"\n",(0,o.jsx)(r.p,{children:"Optional property for allowing the container to use a custom protocol implementation for handling the quorum and/or the audience."}),"\n",(0,o.jsx)(r.admonition,{title:"This API is provided for existing users, but is not recommended for new users.",type:"warning",children:(0,o.jsxs)(r.p,{children:["For more information about our API support guarantees, see ",(0,o.jsx)(r.a,{href:"https://fluidframework.com/docs/build/releases-and-apitags/#api-support-levels",children:"here"}),"."]})}),"\n",(0,o.jsx)(r.h4,{id:"protocolhandlerbuilder-signature",children:"Signature"}),"\n",(0,o.jsx)(r.pre,{children:(0,o.jsx)(r.code,{className:"language-typescript",children:"readonly protocolHandlerBuilder?: ProtocolHandlerBuilder;\n"})}),"\n",(0,o.jsxs)(r.p,{children:[(0,o.jsx)(r.strong,{children:"Type"}),": ",(0,o.jsx)(r.a,{href:"/docs/v2/api/container-loader/protocolhandlerbuilder-typealias",children:"ProtocolHandlerBuilder"})]}),"\n",(0,o.jsx)(r.h3,{id:"scope-propertysignature",children:"scope"}),"\n",(0,o.jsx)(r.p,{children:"Scope is provided to all container and is a set of shared services for container's to integrate with their host environment."}),"\n",(0,o.jsx)(r.admonition,{title:"This API is provided for existing users, but is not recommended for new users.",type:"warning",children:(0,o.jsxs)(r.p,{children:["For more information about our API support guarantees, see ",(0,o.jsx)(r.a,{href:"https://fluidframework.com/docs/build/releases-and-apitags/#api-support-levels",children:"here"}),"."]})}),"\n",(0,o.jsx)(r.h4,{id:"scope-signature",children:"Signature"}),"\n",(0,o.jsx)(r.pre,{children:(0,o.jsx)(r.code,{className:"language-typescript",children:"readonly scope?: FluidObject;\n"})}),"\n",(0,o.jsxs)(r.p,{children:[(0,o.jsx)(r.strong,{children:"Type"}),": ",(0,o.jsx)(r.a,{href:"/docs/v2/api/core-interfaces/fluidobject-typealias",children:"FluidObject"})]}),"\n",(0,o.jsx)(r.h3,{id:"urlresolver-propertysignature",children:"urlResolver"}),"\n",(0,o.jsx)(r.p,{children:"The url resolver used by the loader for resolving external urls into Fluid urls such that the container specified by the external url can be loaded."}),"\n",(0,o.jsx)(r.admonition,{title:"This API is provided for existing users, but is not recommended for new users.",type:"warning",children:(0,o.jsxs)(r.p,{children:["For more information about our API support guarantees, see ",(0,o.jsx)(r.a,{href:"https://fluidframework.com/docs/build/releases-and-apitags/#api-support-levels",children:"here"}),"."]})}),"\n",(0,o.jsx)(r.h4,{id:"urlresolver-signature",children:"Signature"}),"\n",(0,o.jsx)(r.pre,{children:(0,o.jsx)(r.code,{className:"language-typescript",children:"readonly urlResolver: IUrlResolver;\n"})}),"\n",(0,o.jsxs)(r.p,{children:[(0,o.jsx)(r.strong,{children:"Type"}),": ",(0,o.jsx)(r.a,{href:"/docs/v2/api/driver-definitions/iurlresolver-interface",children:"IUrlResolver"})]})]})}function h(e={}){const{wrapper:r}={...(0,s.R)(),...e.components};return r?(0,o.jsx)(r,{...e,children:(0,o.jsx)(l,{...e})}):l(e)}},403793:(e,r,n)=>{n.d(r,{R:()=>d,x:()=>t});var i=n(830758);const o={},s=i.createContext(o);function d(e){const r=i.useContext(s);return i.useMemo((function(){return"function"==typeof e?e(r):{...r,...e}}),[r,e])}function t(e){let r;return r=e.disableParentContext?"function"==typeof e.components?e.components(o):e.components||o:d(e.components),i.createElement(s.Provider,{value:r},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.