import{s as X,n as j,o as z}from"../chunks/scheduler.9cda857a.js";import{S as A,i as F,e as d,s as l,c as M,h as G,a as h,d as a,b as m,f as E,g as S,j as T,k,l as O,m as n,n as C,t as H,o as L,p as q}from"../chunks/index.f47f3121.js";import{H as R,E as U}from"../chunks/MermaidChart.svelte_svelte_type_style_lang.64d112fc.js";function B(b){let i,f,p,g,s,_,o,x="Xet storage provides data deduplication over all chunks stored in Hugging Face. This is done via cryptographic hashing in a privacy sensitive way. The contents of chunks are protected and are associated with repository permissions, i.e. you can only read chunks which are required to reproduce files you have access to, and no more.",$,r,P='More information and details on how deduplication is done in a privacy-preserving way are described in the <a href="https://huggingface.co/docs/xet/deduplication" rel="nofollow">Xet Protocol Specification</a>.',v,c,y,u,w;return s=new R({props:{title:"Security Model",local:"security-model",headingTag:"h2"}}),c=new U({props:{source:"https://github.com/huggingface/hub-docs/blob/main/docs/hub/xet/security.md"}}),{c(){i=d("meta"),f=l(),p=d("p"),g=l(),M(s.$$.fragment),_=l(),o=d("p"),o.textContent=x,$=l(),r=d("p"),r.innerHTML=P,v=l(),M(c.$$.fragment),y=l(),u=d("p"),this.h()},l(e){const t=G("svelte-u9bgzb",document.head);i=h(t,"META",{name:!0,content:!0}),t.forEach(a),f=m(e),p=h(e,"P",{}),E(p).forEach(a),g=m(e),S(s.$$.fragment,e),_=m(e),o=h(e,"P",{"data-svelte-h":!0}),T(o)!=="svelte-ikuv1s"&&(o.textContent=x),$=m(e),r=h(e,"P",{"data-svelte-h":!0}),T(r)!=="svelte-1vfrs8c"&&(r.innerHTML=P),v=m(e),S(c.$$.fragment,e),y=m(e),u=h(e,"P",{}),E(u).forEach(a),this.h()},h(){k(i,"name","hf:doc:metadata"),k(i,"content",D)},m(e,t){O(document.head,i),n(e,f,t),n(e,p,t),n(e,g,t),C(s,e,t),n(e,_,t),n(e,o,t),n(e,$,t),n(e,r,t),n(e,v,t),C(c,e,t),n(e,y,t),n(e,u,t),w=!0},p:j,i(e){w||(H(s.$$.fragment,e),H(c.$$.fragment,e),w=!0)},o(e){L(s.$$.fragment,e),L(c.$$.fragment,e),w=!1},d(e){e&&(a(f),a(p),a(g),a(_),a(o),a($),a(r),a(v),a(y),a(u)),a(i),q(s,e),q(c,e)}}}const D='{"title":"Security Model","local":"security-model","sections":[],"depth":2}';function I(b){return z(()=>{new URLSearchParams(window.location.search).get("fw")}),[]}class Q extends A{constructor(i){super(),F(this,i,I,B,X,{})}}export{Q as component};
