slice-machine-ui 2.17.2-beta.2 → 2.17.3-alpha.dani-git-integration.1
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.
- package/out/404.html +1 -1
- package/out/_next/static/Dspi7FlwsRsCyYdANJ8OZ/_buildManifest.js +1 -0
- package/out/_next/static/chunks/248-6f20227ad4764216.js +1 -0
- package/out/_next/static/chunks/34-6c3125e6f01c62c7.js +1 -0
- package/out/_next/static/chunks/489-eaa4848c00e8986b.js +1 -0
- package/out/_next/static/chunks/pages/{_app-83cf3b3fa23f9705.js → _app-e874a85ca6fd4980.js} +1 -1
- package/out/_next/static/chunks/pages/changelog-98836c22c6a40c5d.js +1 -0
- package/out/_next/static/chunks/pages/changes-db800bf4a08faa31.js +1 -0
- package/out/_next/static/chunks/pages/custom-types/{[customTypeId]-a408f5a660e096a6.js → [customTypeId]-041985d94bb9649f.js} +1 -1
- package/out/_next/static/chunks/pages/labs-ad7f36c6f544c1a8.js +1 -0
- package/out/_next/static/chunks/pages/page-types/{[pageTypeId]-f5e851ebe35049a8.js → [pageTypeId]-338f685c0723043b.js} +1 -1
- package/out/_next/static/chunks/pages/slices/[lib]/[sliceName]/[variation]-0bc862dd7bd99611.js +1 -0
- package/out/_next/static/chunks/pages/slices-6dbc3df2c4ef058a.js +1 -0
- package/out/changelog.html +1 -1
- package/out/changes.html +1 -1
- package/out/custom-types/[customTypeId].html +1 -1
- package/out/custom-types.html +1 -1
- package/out/index.html +1 -1
- package/out/labs.html +1 -1
- package/out/page-types/[pageTypeId].html +1 -1
- package/out/slices/[lib]/[sliceName]/[variation]/simulator.html +1 -1
- package/out/slices/[lib]/[sliceName]/[variation].html +1 -1
- package/out/slices.html +1 -1
- package/package.json +4 -4
- package/src/components/FieldSet/FieldSet.stories.tsx +5 -27
- package/src/features/changes/PushChangesButton.tsx +4 -67
- package/src/features/environments/actions/getActiveEnvironment.ts +20 -5
- package/src/features/navigation/Navigation.tsx +3 -17
- package/src/features/slices/sliceCards/SharedSliceCard.tsx +2 -10
- package/src/legacy/components/AppLayout/index.tsx +34 -2
- package/src/legacy/components/Navigation/Environment.tsx +11 -3
- package/src/legacy/lib/builders/CustomTypeBuilder/SliceZone/SlicesTemplatesModal.tsx +19 -24
- package/src/legacy/lib/builders/CustomTypeBuilder/SliceZone/UpdateSliceZoneModalList.tsx +1 -6
- package/out/_next/static/chunks/248-03446cd9e9f13730.js +0 -1
- package/out/_next/static/chunks/34-e684c5fd75cc9dd0.js +0 -1
- package/out/_next/static/chunks/882-151468121d542ed6.js +0 -1
- package/out/_next/static/chunks/pages/changelog-063c5e11dfc8fd55.js +0 -1
- package/out/_next/static/chunks/pages/changes-564336edb0ed18b0.js +0 -1
- package/out/_next/static/chunks/pages/labs-9630bfb1005be02b.js +0 -1
- package/out/_next/static/chunks/pages/settings-01f4aeb9112a1f87.js +0 -1
- package/out/_next/static/chunks/pages/slices/[lib]/[sliceName]/[variation]-bd5e45632c419567.js +0 -1
- package/out/_next/static/chunks/pages/slices-4a60cd5f2c71327e.js +0 -1
- package/out/_next/static/css/e5f781f20e24a5ea.css +0 -1
- package/out/_next/static/ho9gRBtPlj9hhfjQcLKuh/_buildManifest.js +0 -1
- package/out/settings.html +0 -1
- package/out/videoHighlights.png +0 -0
- package/public/videoHighlights.png +0 -0
- package/src/features/settings/SettingsPage.tsx +0 -50
- package/src/features/settings/git/ConnectGitRepository.tsx +0 -112
- package/src/features/settings/git/ConnectGitRepositoryBlankSlate.tsx +0 -33
- package/src/features/settings/git/GitOwnerSelect.tsx +0 -71
- package/src/features/settings/git/GitProvider.ts +0 -40
- package/src/features/settings/git/GitProviderConnectButtons.tsx +0 -63
- package/src/features/settings/git/GitRepositoriesList.tsx +0 -76
- package/src/features/settings/git/GitRepositoriesSearch.tsx +0 -69
- package/src/features/settings/git/GitRepositoryConnectDialog.tsx +0 -97
- package/src/features/settings/git/GitRepositoryDisconnectDialog.tsx +0 -62
- package/src/features/settings/git/useGitIntegrationExperiment.ts +0 -8
- package/src/features/settings/git/useGitOwners.ts +0 -12
- package/src/features/settings/git/useGitRepos.ts +0 -24
- package/src/features/settings/git/useLinkedGitRepos.ts +0 -41
- package/src/features/settings/git/useWriteAPIToken.ts +0 -23
- package/src/icons/BitbucketIcon.tsx +0 -19
- package/src/icons/GitHubIcon.tsx +0 -17
- package/src/icons/GitLabIcon.tsx +0 -19
- package/src/icons/SettingsIcon.tsx +0 -19
- package/src/legacy/lib/builders/CustomTypeBuilder/SliceZone/sliceTemplatesComingSoon.ts +0 -30
- package/src/pages/settings.tsx +0 -1
- /package/out/_next/static/{ho9gRBtPlj9hhfjQcLKuh → Dspi7FlwsRsCyYdANJ8OZ}/_ssgManifest.js +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[849],{21985:function(e,t,n){(window.__NEXT_P=window.__NEXT_P||[]).push(["/changes",function(){return n(45031)}])},72641:function(e,t,n){"use strict";n.d(t,{R$:function(){return a},Qj:function(){return x},T9:function(){return d},nf:function(){return h},u2:function(){return c},_T:function(){return u}});var i=n(52322),s=n(56803),r=n(6277),l=n(83478),o=n.n(l);let a=e=>{let{backgroundImage:t,style:n,...s}=e,l=void 0!==t;return(0,i.jsx)("article",{...s,className:(0,r.W)(o().root,{[o().withBackground]:l}),style:{backgroundImage:l?"url(".concat(t,")"):void 0,...n}})},c=e=>(0,i.jsx)("div",{...e,className:o().image}),d=e=>(0,i.jsx)("div",{...e,className:o().content}),u=e=>(0,i.jsx)(s.bL,{...e,variant:"h3"}),h=e=>(0,i.jsx)(s.bL,{...e,color:"grey11"}),x=e=>(0,i.jsx)("div",{...e,className:o().actions,color:"grey"})},99251:function(e,t,n){"use strict";n.d(t,{Q:function(){return l}});let i={GitHub:"gitHub"};var s=n(52322),r=n(80148);let l={gitHub:{connect:async()=>await o("gitHub"),Icon:e=>(0,s.jsx)("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,s.jsx)("path",{d:"M12 4C7.57486 4 4 7.57486 4 12C4 15.5246 6.30057 18.5257 9.47429 19.6C9.87429 19.6754 10.0251 19.4251 10.0251 19.2251V17.8754C7.8 18.3497 7.32457 16.8 7.32457 16.8C6.94971 15.8743 6.42514 15.6251 6.42514 15.6251C5.70057 15.1246 6.47543 15.1497 6.47543 15.1497C7.27543 15.2 7.69943 15.9749 7.69943 15.9749C8.42514 17.2 9.57486 16.8503 10.0251 16.6491C10.1006 16.1246 10.2994 15.7749 10.5246 15.5749C8.74971 15.3749 6.87543 14.6754 6.87543 11.6251C6.87543 10.7497 7.17486 10.0503 7.69943 9.47543C7.62514 9.27543 7.34971 8.45029 7.77486 7.34971C7.77486 7.34971 8.44914 7.12457 9.97486 8.17486C10.6266 7.99627 11.2991 7.90405 11.9749 7.90057C12.6491 7.90057 13.3497 8 13.9749 8.17486C15.5006 7.14971 16.1749 7.34971 16.1749 7.34971C16.6 8.45029 16.3246 9.27543 16.2503 9.47543C16.776 10.024 17.0754 10.7497 17.0754 11.624C17.0754 14.6994 15.2 15.3749 13.4251 15.5749C13.6994 15.8251 13.9749 16.2994 13.9749 17.0491V19.2503C13.9749 19.4754 14.1246 19.7246 14.5246 19.6251C17.7006 18.5246 20 15.5246 20 12C20 7.57486 16.4251 4 12 4Z",fill:"currentColor"})}),name:"GitHub",supported:a("gitHub")},bitbucket:{connect:async()=>await o("bitbucket"),Icon:e=>(0,s.jsx)("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,s.jsx)("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M4.77596 5.47599C4.84147 5.44648 4.91265 5.43167 4.9845 5.4326L19.3525 5.43506C19.4243 5.43413 19.4955 5.44894 19.561 5.47845C19.6265 5.50796 19.6848 5.55146 19.7317 5.60588C19.7786 5.6603 19.8131 5.72433 19.8326 5.79348C19.8521 5.86262 19.8563 5.93521 19.8448 6.00614L19.1802 10.0751H9.71803L10.5722 14.6018H11.1162L11.1162 14.6018H13.7846L14.56 10.0751H19.1803L17.7575 18.8357C17.7387 18.9522 17.6786 19.058 17.5882 19.1339C17.4979 19.2098 17.3832 19.2507 17.2652 19.2492H7.23692C7.2134 19.249 7.19001 19.2476 7.16682 19.2449C7.03392 19.2298 6.90803 19.175 6.80603 19.0868C6.68704 18.9851 6.60772 18.8448 6.58203 18.6904L4.49219 6.00367C4.48069 5.93275 4.48485 5.86016 4.50438 5.79102C4.52392 5.72187 4.55835 5.65784 4.60527 5.60342C4.65218 5.54899 4.71044 5.5055 4.77596 5.47599Z",fill:"currentColor"})}),name:"Bitbucket",supported:a("bitbucket")},gitLab:{connect:async()=>await o("gitLab"),Icon:e=>(0,s.jsx)("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,s.jsx)("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M14.7881 10.5954L16.5431 5.20756C16.6328 4.93081 17.0594 4.93081 17.1492 5.20756L18.9076 10.5954H14.7881ZM6.6192 5.20756L4.86353 10.5954H8.97968L7.22468 5.20756C7.1349 4.93081 6.70898 4.93081 6.6192 5.20756ZM4.0299 13.2981L4.86352 10.5954H4.86353H8.979H14.7881H18.9076L19.7392 13.2981C19.7796 13.4207 19.7802 13.553 19.7408 13.676C19.7014 13.799 19.624 13.9063 19.5198 13.9826L11.893 19.5257L11.8879 19.5319L11.8923 19.5378L11.8865 19.5336L11.8835 19.5371L11.8852 19.5326L4.24927 13.9826C4.0299 13.8246 3.95092 13.5458 4.0299 13.2981Z",fill:"currentColor"})}),name:"GitLab",supported:a("gitLab")}};async function o(e){if(!a(e))throw Error("Not implemented.");let t=await r.managerClient.git.getProviderAppInstallURL({provider:e});window.open(t,"git-provider-app-installation")}function a(e){return!!Object.values(i).includes(e)}},45276:function(e,t,n){"use strict";n.d(t,{G:function(){return l}});var i=n(18566),s=n(31470),r=n(80148);function l(){let[e]=(0,s.f)();return{linkedGitRepos:(0,i.QT)(o,[e.repositoryName]),linkRepo:async t=>{await r.managerClient.git.linkRepo({prismic:{domain:e.repositoryName},git:t}),await (0,i.gw)(o,[e.repositoryName])},unlinkRepo:async t=>{await r.managerClient.git.unlinkRepo({prismic:{domain:e.repositoryName},git:t}),await (0,i.gw)(o,[e.repositoryName])}}}async function o(e){return await r.managerClient.git.fetchLinkedRepos({prismic:{domain:e}})}},31470:function(e,t,n){"use strict";n.d(t,{f:function(){return r}});var i=n(18566),s=n(80148);function r(){return[(0,i.QT)(l,[]),async e=>{await s.managerClient.project.writeSliceMachineConfig({config:e}),(0,i.VA)(l,[],e)}]}async function l(){return s.managerClient.project.getSliceMachineConfig()}},33986:function(e,t,n){"use strict";n.d(t,{z:function(){return a}});var i=n(52322),s=n(2784),r=n(75289);let l=(e,t)=>e?"".concat(e,"-").concat(t):"",o=e=>{switch(e){case"white":case"secondaryMedium":case"secondarySmall":case"secondary":return"#1A1523";default:return"grey01"}},a=(0,s.forwardRef)((e,t)=>{let{label:n,Icon:s,type:a,form:c,isLoading:d=!1,disabled:u=!1,onClick:h,sx:x={},iconSize:m=16,iconFill:g,variant:p="primary",...j}=e;return(0,i.jsx)(r.zx,{ref:t,sx:{...x,display:"flex",alignItems:"center",justifyContent:"center",gap:"8px",...d?{cursor:"wait !important"}:{}},type:a,form:c,disabled:u||d,onClick:d?void 0:h,variant:p,...j,children:d?(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(r.$j,{size:m,color:o(p),"data-testid":l(j["data-testid"],"spinner")}),s&&n]}):(0,i.jsxs)(i.Fragment,{children:[s&&(0,i.jsx)(s,{size:m,fill:g,"data-testid":l(j["data-testid"],"icon")}),n]})})})},21151:function(e,t,n){"use strict";var i=n(52322),s=n(75289);t.Z=function(e){let{elems:t,renderElem:n,defineElementKey:r,gridTemplateMinPx:l="320px",gridGap:o="16px",sx:a}=e;return(0,i.jsx)(s.xu,{as:"section",sx:{display:"grid",gridTemplateColumns:"repeat(auto-fill, minmax(".concat(l,", 1fr))"),gridGap:o,pt:2,...a},children:t.map((e,t)=>e?(0,i.jsx)("span",{children:n(e,t)},"".concat(r(e),"-").concat(t+1)):null)})}},45031:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return ej}});var i=n(52322),s=n(56803),r=n(97729),l=n.n(r),o=n(5632),a=n(2784),c=n(88932),d=n(65077),u=n(94160),h=n(43388),x=n(72641);function m(e){let{isPostPush:t,documentsListEndpoint:n}=e,r=t?p:g;return(0,i.jsxs)(x.R$,{style:{alignSelf:"center",marginTop:s.t.space[72]},children:[(0,i.jsx)(x.u2,{children:(0,i.jsx)(s.a_,{src:r.img,sizing:"cover"})}),(0,i.jsxs)(x.T9,{children:[(0,i.jsx)(x._T,{children:r.title}),(0,i.jsx)(x.nf,{children:r.description}),t&&(0,i.jsx)(x.Qj,{children:(0,i.jsx)(s.E,{onClick:()=>{u.Xe.track({event:"post-push:empty-state-cta-clicked"}),window.open(n,"_blank")},size:"large",children:"Create content in the Page Builder"})})]})]})}let g={img:"/blank-slate-changes-uptodate.png",title:"Everything is up-to-date",description:"No changes are staged. Saved updates will appear here, ready to be pushed to the Page Builder."},p={img:"/blank-slate-push-success.png",title:"Success! Your changes have been pushed to the Page Builder.",description:"Add content to your website to bring it to life!"};var j=n(17378),f=n(99251),b=n(83758),v=n(45276);let y=e=>(0,i.jsx)(j.S,{renderError:S,children:(0,i.jsx)(a.Suspense,{fallback:(0,i.jsx)(D,{}),children:(0,i.jsx)(C,{...e})})}),C=e=>(0,b.M)().eligible?(0,i.jsx)(w,{...e}):(0,i.jsx)(k,{...e}),w=e=>{let{linkedGitRepos:t}=(0,v.G)();if(!(t.length>0))return(0,i.jsx)(k,{...e});{let e=f.Q[t[0].provider];return(0,i.jsx)(s.c3,{content:"This project uses the Git workflow. Update Prismic by pushing your changes to ".concat(e.name,"."),side:"bottom",children:(0,i.jsx)(k,{disabled:!0})})}},k=(0,a.forwardRef)((e,t)=>(0,i.jsx)(s.E,{...e,ref:t,startIcon:"upload",children:"Push"}));function S(){return(0,i.jsx)(s.c3,{content:"An error occurred while fetching the list of connected Git repositories.",side:"bottom",children:(0,i.jsx)(k,{disabled:!0})})}let D=()=>(0,i.jsx)(s.bx,{height:32,width:71.32});var L=n(98250),_=n(98033),T=n(68968),R=n(13434),B=n(19468),I=n(978),N=n(30613),O=n(51384),H=n(93671),E=n(54597);let F=e=>{let{authStatus:t}=e,{openLoginModal:n}=(0,E.Z)();return(0,i.jsxs)(s.D,{flexDirection:"column",height:"100%",alignItems:"center",justifyContent:"center",gap:8,children:[t===H.t.FORBIDDEN?(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(s.bL,{variant:"h3",align:"center",children:"It seems like you are logged out"}),(0,i.jsx)(s.bL,{align:"center",children:"Log in to connect to your repository."})]}):(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(s.bL,{variant:"h3",align:"center",children:"It seems like you don't have access to this repository"}),(0,i.jsx)(s.bL,{align:"center",children:"Check that the repository name is correct, then contact your repository administrator."})]}),(0,i.jsxs)(s.bL,{align:"center",children:["If that doesn't work, it's possible that Slice Machine is having trouble accessing Prismic's servers."," ",(0,i.jsx)(s.bL,{href:"https://community.prismic.io/",children:"Contact our support team"}),"."]}),t===H.t.FORBIDDEN&&(0,i.jsx)(s.E,{onClick:()=>n(),children:"Log in to Prismic"})]})};var P=n(91914),A=n(75289);let z=()=>(0,i.jsx)(A.kC,{sx:{justifyContent:"center",alignItems:"center",flex:1},children:(0,i.jsxs)(A.kC,{sx:{flexDirection:"column",alignItems:"center",transform:"translateY(-50%)"},children:[(0,i.jsx)(P.wQ1,{size:48}),(0,i.jsx)(A.xv,{sx:{fontWeight:600,fontSize:"24px",lineHeight:"32px",mb:"8px",mt:"2px",textAlign:"center"},children:"No internet connection"}),(0,i.jsx)(A.xv,{sx:{fontSize:"13px",lineHeight:"24px",textAlign:"center"},children:"Connect to the internet to sync your changes."})]})});var Z=n(951),G=n(63908),M=n(63470),W=n(51507),U=n(21442);let X=e=>{let{children:t}=e;return(0,i.jsx)(A.kC,{sx:{alignItems:"center",justifyContent:"space-between",mt:"8px",bg:"grey02",borderRadius:4,padding:"12px 16px",width:"100%"},children:t})};var Q=n(39097),Y=n.n(Q),V=n(99195),J=n(59294),$=n(16442);let q=e=>{let{ct:t,status:n,authStatus:s,isOnline:r}=e;return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(A.xu,{as:"td",style:{width:"40%"},children:(0,i.jsx)(A.xv,{sx:{fontWeight:500},children:t.label})}),(0,i.jsx)(A.xu,{as:"td",style:{width:"40%"},children:t.id}),(0,i.jsx)(A.xu,{as:"td",style:{width:"20%"},children:(0,i.jsx)(V.O,{authStatus:s,isOnline:r,modelStatus:n,modelType:"CustomType"})})]})},K=e=>{let{customTypes:t,modelsStatuses:n,authStatus:s,isOnline:r}=e;return(0,i.jsxs)(A.xu,{as:"table","data-legacy-component":!0,children:[(0,i.jsx)("thead",{children:(0,i.jsxs)("tr",{className:"transparent small",children:[(0,i.jsx)(A.xu,{as:"th",sx:{width:"40%",fontWeight:600},children:"Name"}),(0,i.jsx)(A.xu,{as:"th",sx:{width:"40%",fontWeight:600},children:"API ID"}),(0,i.jsx)(A.xu,{as:"th",sx:{width:"20%",fontWeight:600},children:"Status"})]})}),(0,i.jsx)("tbody",{children:t.map(e=>(0,$.TG)(e)?(0,i.jsx)(Y(),{passHref:!0,href:J.cd[e.local.format].getBuilderPagePathname(e.local.id),legacyBehavior:!0,children:(0,i.jsx)("tr",{tabIndex:0,"data-testid":"custom-type-".concat(e.local.id),children:(0,i.jsx)(q,{ct:e.local,status:n.customTypes[e.local.id],authStatus:s,isOnline:r},e.local.id)})},e.local.id):(0,i.jsx)("tr",{tabIndex:0,className:"disabled","data-testid":"custom-type-".concat(e.remote.id),children:(0,i.jsx)(q,{ct:e.remote,status:n.customTypes[e.remote.id],authStatus:s,isOnline:r},e.remote.id)},e.remote.id))})]})};var ee=n(21151),et=n(68105),en=n(56448),ei=n(31860),es=n(96317);function er(){let e=(0,es.L)("slicemachine-dev-collaboration"),[t,n]=(0,a.useState)(!1),r=null==e?void 0:e.payload;return((0,a.useEffect)(()=>{(null==e?void 0:e.value)==="on"&&void 0!==r&&u.Xe.track({event:"dev-collab:workflow-stub-displayed"})},[e,r]),(null==e?void 0:e.value)!=="on"||void 0===r)?null:(0,i.jsxs)(i.Fragment,{children:[(0,i.jsxs)(s.D,{alignItems:"flex-start",border:{bottom:!0,left:!0,right:!0,top:!0},borderRadius:6,borderStyle:"dashed",flexDirection:"column",flexShrink:0,gap:8,padding:16,width:320,children:[(0,i.jsxs)(s.D,{flexDirection:"column",gap:2,children:[(0,i.jsx)(s.bL,{variant:"smallBold",children:r.cardTitle}),(0,i.jsx)(s.bL,{color:"grey11",variant:"small",children:r.cardDescription})]}),(0,i.jsx)(s.E,{color:"grey",onClick:()=>{u.Xe.track({event:"dev-collab:set-up-workflow-opened"}),n(!0)},children:r.cardButtonLabel})]}),(0,i.jsxs)(s.ae,{onOpenChange:e=>{e||n(!1)},open:t,size:{height:"auto",width:448},children:[(0,i.jsx)(s.al,{title:r.dialogTitle}),(0,i.jsx)(s.aj,{children:(0,i.jsxs)(s.D,{flexDirection:"column",children:[(0,i.jsx)(s.D,{flexDirection:"column",padding:16,children:(0,i.jsx)(s.bL,{children:r.dialogDescription})}),(0,i.jsxs)(s.ah,{children:[(0,i.jsx)(s.ai,{size:"medium"}),(0,i.jsx)(s.af,{size:"medium",onClick:()=>{u.Xe.track({event:"dev-collab:join-beta-clicked"}),window.open(r.dialogButtonLink,"_blank"),n(!1)},children:r.dialogButtonLabel})]})]})})]})]})}let el=e=>{let{unSyncedCustomTypes:t,unSyncedSlices:n,modelsStatuses:r,authStatus:l,isOnline:o}=e,{modalPayload:c,onOpenModal:d}=(0,U.H)(),u=(0,M.k)(),{sliceFilterFn:h,defaultVariationSelector:x}=c,m=n.filter(e=>r.slices[e.model.id]!==en.GJ.Deleted);return(0,i.jsx)(i.Fragment,{children:(0,i.jsxs)(s.D,{gap:16,alignItems:"flex-start",children:[(0,i.jsxs)(s.D,{flexDirection:"column",flexGrow:1,children:[t.length>0&&(0,i.jsxs)(s.D,{flexDirection:"column",children:[(0,i.jsx)(X,{children:(0,i.jsxs)(s.D,{children:[(0,i.jsx)(s.bL,{variant:"h5",children:"Types"}),(0,i.jsx)(s.bL,{variant:"h5",sx:{marginLeft:8},children:t.length})]})}),(0,i.jsx)(K,{customTypes:t,modelsStatuses:r,authStatus:l,isOnline:o})]}),n.length>0&&(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(s.D,{padding:{bottom:8},children:(0,i.jsxs)(X,{children:[(0,i.jsxs)(s.D,{children:[(0,i.jsx)(s.bL,{variant:"h5",children:(0,ei._)((0,ei.f)(u.value))}),(0,i.jsx)(s.bL,{variant:"h5",sx:{marginLeft:8},children:n.length})]}),(0,i.jsxs)(s.D,{children:[n.some(e=>(0,G.cx)(e)>0&&r.slices[e.model.id]!==en.GJ.Deleted)&&(0,i.jsxs)(s.bL,{color:"amber11",sx:{marginRight:8,alignSelf:"center"},children:[(0,i.jsx)(Z.sQg,{size:16,style:{marginRight:"4px",position:"relative",top:"3px"}}),"Missing Screenshots"]}),(0,i.jsx)(s.E,{color:"dark",startIcon:"photoCamera",onClick:()=>d({sliceFilterFn:e=>e}),children:"Update all screenshots"})]})]})}),(0,i.jsx)(ee.Z,{gridGap:"32px 16px",elems:n,gridTemplateMinPx:"305px",defineElementKey:e=>e.model.name,renderElem:e=>{let t=r.slices[e.model.id];return(0,i.jsx)(W.b,{action:{type:"status",authStatus:l,isOnline:o,modelStatus:t},isDeleted:t===en.GJ.Deleted,mode:"navigation",onUpdateScreenshot:()=>{d({sliceFilterFn:t=>t.filter(t=>t.model.id===e.model.id)})},slice:e,variant:"solid"})}}),(0,i.jsx)(et.Z,{slices:h(m),defaultVariationSelector:x})]})]}),(0,i.jsx)(j.S,{children:(0,i.jsx)(a.Suspense,{children:(0,i.jsx)(er,{})})})]})})};var eo=n(56580),ea=n(33986),ec=n(79797),ed=n(30527);let eu=e=>{let{isOpen:t,title:n,footer:s,explanations:r,onClose:l}=e;return(0,i.jsx)(ec.Z,{placement:"right",open:t,level:null,onClose:l,width:496,children:(0,i.jsx)(ed.Z,{radius:"0px",bodySx:{bg:"white",padding:24,flex:1,display:"flex",flexDirection:"column",overflow:"scroll"},footerSx:{p:0},sx:{flexDirection:"column",display:"flex",height:"100%",border:"none"},borderFooter:!0,Header:(0,i.jsxs)(A.kC,{sx:{p:"16px",alignItems:"center",justifyContent:"space-between",borderBottom:e=>{var t;return"1px solid ".concat(String(null===(t=e.colors)||void 0===t?void 0:t.borders))}},children:[(0,i.jsx)(A.kC,{sx:{alignItems:"center"},children:(0,i.jsx)(A.X6,{sx:{fontSize:"14px",fontWeight:"bold",ml:1},children:n})}),(0,i.jsx)(A.x8,{type:"button",onClick:()=>l()})]}),Footer:()=>(0,i.jsx)(A.kC,{sx:{flexDirection:"column",justifyContent:"center",alignItems:"center",paddingRight:16,borderTop:e=>{var t;return"1px solid ".concat(String(null===(t=e.colors)||void 0===t?void 0:t.darkBorders))},backgroundColor:"white",padding:20},children:s}),children:r})})};var eh=n(78254);n(98564);let ex=e=>{let{ctName:t,numberOfDocuments:n,link:s,isOverLimit:r=!1}=e;return(0,i.jsxs)(A.Zb,{sx:{mb:12},variant:"drawerCard","data-testid":"AssociatedDocumentsCard-".concat(t),children:[(0,i.jsxs)(A.kC,{sx:{flexDirection:"column"},children:[(0,i.jsx)(A.xv,{children:t}),(0,i.jsxs)(A.xv,{sx:{color:"textClear",fontSize:"12px",lineHeight:"16px"},children:[n," documents"]})]}),(0,i.jsx)(A.rU,{href:s,target:"_blank",variant:"cardSmall",sx:{color:r?"danger":"purple08"},children:"View documents"})]})},em=e=>{let{pushChanges:t,modalData:n,onClose:s}=e,{remoteOnlyCustomTypes:r}=(0,eo.v9)(e=>({remoteOnlyCustomTypes:(0,eh.Ch)(e).filter($.yp)}));if((null==n?void 0:n.type)!=="HARD")return null;let l=n.details.customTypes.map(e=>{var t;let n=r.find(t=>(0,$.n5)(t)===e.id);return void 0===n?null:(0,i.jsx)(ex,{isOverLimit:!0,ctName:null!==(t=n.remote.label)&&void 0!==t?t:n.remote.id,link:e.url,numberOfDocuments:e.numberOfDocuments},e.id)});return(0,i.jsx)(eu,{isOpen:"HARD"===n.type,title:"Manual action required",onClose:s,footer:(0,i.jsx)(ea.z,{label:"Try again",variant:"primary",onClick:()=>{t(!1)},sx:{fontWeight:"bold",color:"white",borderRadius:6,width:"100%"}}),explanations:(0,i.jsxs)(i.Fragment,{children:[(0,i.jsxs)(A.xv,{sx:{fontWeight:"bold",mb:1,lineHeight:"24px"},children:["Your type",n.details.customTypes.length>1&&"s"," cannot be deleted."]}),(0,i.jsxs)(A.xv,{sx:{mb:24},children:[n.details.customTypes.length>1?"These types have":"This type has"," ","too many associated Documents. Archive and delete these Documents manually and then try deleting the types again."]}),l]})})},eg=e=>{let{onToggle:t,isConfirmed:n,sx:s}=e;return(0,i.jsxs)(A.kC,{sx:{borderRadius:6,flexDirection:"column",backgroundColor:"grey03",padding:12,width:"100%",...s},children:[(0,i.jsx)(A.xv,{sx:{fontWeight:"bold",mb:2},children:"Are you sure to proceed?"}),(0,i.jsxs)(A.__,{sx:{mt:"4px",py:1},variant:"large",children:[(0,i.jsx)(A.XZ,{defaultChecked:n,onChange:t,variant:"forms.checkbox.dark"}),"Delete these Documents"]})]})},ep=e=>{let{pushChanges:t,modalData:n,onClose:s}=e,[r,l]=(0,a.useState)(!1),{remoteOnlyCustomTypes:o}=(0,eo.v9)(e=>({remoteOnlyCustomTypes:(0,eh.Ch)(e).filter($.yp)}));if((null==n?void 0:n.type)!=="SOFT")return null;let c=n.details.customTypes.map(e=>{var t;let n=o.find(t=>(0,$.n5)(t)===e.id);return void 0===n?null:(0,i.jsx)(ex,{isOverLimit:!0,ctName:null!==(t=n.remote.label)&&void 0!==t?t:n.remote.id,link:e.url,numberOfDocuments:e.numberOfDocuments},e.id)});return(0,i.jsx)(eu,{isOpen:"SOFT"===n.type,title:"Confirm deletion",onClose:s,footer:(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(eg,{onToggle:()=>{l(!r)},isConfirmed:r,sx:{mb:10}}),(0,i.jsx)(ea.z,{label:"Push changes",variant:"primary",onClick:()=>{t(r)},disabled:!r,sx:{fontWeight:"bold",color:"white",borderRadius:6,width:"100%"}})]}),explanations:(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(A.xv,{sx:{fontWeight:"bold",mb:1,lineHeight:"24px"},children:"This action will also delete Documents."}),(0,i.jsxs)(A.xv,{sx:{mb:24},children:[n.details.customTypes.length>1?"These types have":"This type has"," ","associated Documents, which will also be deleted. This might create broken links in your repository."]}),c]})})};var ej=()=>{let{unSyncedSlices:e,unSyncedCustomTypes:t,changedCustomTypes:n,changedSlices:r,modelsStatuses:x}=(0,R.X)(),g=(0,I.L)(),p=(0,B.n)(),{pushChangesSuccess:j,refreshState:f}=(0,E.Z)(),[b,v]=(0,a.useState)(!1),[C,w]=(0,a.useState)(void 0),{autoSyncStatus:k}=(0,T.g)(),S=(0,o.useRouter)(),[D,P]=(0,a.useState)(!1),[A,Z]=(0,a.useState)(!1),{repositoryUrl:G}=(0,N.U)(),{completeStep:M}=(0,L.k)(),W=e.length+t.length;(0,a.useEffect)(()=>{("synced"===k||"failed"===k||"syncing"===k)&&S.push("/")},[k,S]);let U=async e=>{try{v(!0),w(void 0);let t=await (0,_.t)({confirmDeleteDocuments:e,changedCustomTypes:n,changedSlices:r});if(void 0!==t)w(t);else{let e=await (0,u.y0)();f(e),j(),P(!0),Z(!0),M("reviewAndPush")}}catch(e){console.error("Something went wrong when manually pushing your changes",e),c.Am.error("Something went wrong when pushing your changes. Check your terminal logs.")}v(!1)},X=(0,a.useMemo)(()=>g?p===H.t.UNAUTHORIZED||p===H.t.FORBIDDEN?(0,i.jsx)(F,{authStatus:p}):0===W?(0,i.jsx)(m,{isPostPush:D,documentsListEndpoint:G}):(0,i.jsx)(el,{unSyncedSlices:e,unSyncedCustomTypes:t,modelsStatuses:x,authStatus:p,isOnline:g}):(0,i.jsx)(z,{}),[g,p,W,e,t,x,D,G]);return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(l(),{children:(0,i.jsx)("title",{children:"Changes - Slice Machine"})}),(0,i.jsxs)(O.LN,{children:[(0,i.jsxs)(O.wd,{children:[(0,i.jsx)(O.Cx,{children:(0,i.jsx)(h.g,{children:"Changes"})}),(0,i.jsxs)(O.K2,{children:[(0,i.jsx)(y,{disabled:0===W||!g||p===H.t.UNAUTHORIZED||p===H.t.FORBIDDEN||b,loading:b,onClick:()=>{U(!1)}}),(0,i.jsx)(s.bQ,{anchor:(0,i.jsx)(s.D,{position:"fixed",top:32,right:32,width:322}),open:A,variant:"card",seconds:20,title:"Success! \uD83C\uDF89",subtitle:"Your changes have been pushed.",action:{title:"Create content in the Page Builder",onClick:()=>{u.Xe.track({event:"post-push:toast-cta-clicked"}),window.open(G,"_blank")}},cancel:{onClick:()=>Z(!1)},onOpenChange:Z})]})]}),(0,i.jsx)(O.RN,{children:(0,i.jsxs)(d.xR,{sx:{display:"flex",flexDirection:"column"},children:[X,(0,i.jsx)(ep,{pushChanges:e=>void U(e),modalData:C,onClose:()=>w(void 0)}),(0,i.jsx)(em,{pushChanges:e=>void U(e),modalData:C,onClose:()=>w(void 0)})]})})]})]})}},83478:function(e){e.exports={column:"BlankSlate_column__genEe",root:"BlankSlate_root__CmSqW BlankSlate_column__genEe",fadeIn:"BlankSlate_fadeIn__mAfi5",withBackground:"BlankSlate_withBackground__mLYij",image:"BlankSlate_image__Jn90S BlankSlate_column__genEe",content:"BlankSlate_content__0Yt2d BlankSlate_column__genEe",desc:"BlankSlate_desc___Dl7e",actions:"BlankSlate_actions__OYRj4"}}},function(e){e.O(0,[898,789,123,918,34,658,888,774,179],function(){return e(e.s=21985)}),_N_E=e.O()}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[274],{41535:function(e,n,i){(window.__NEXT_P=window.__NEXT_P||[]).push(["/labs",function(){return i(69560)}])},43776:function(e,n,i){"use strict";i.d(n,{E:function(){return a}});var r=i(31470);function a(e){var n,i;let[a,t]=(0,r.f)(),l=async n=>{let i={...a,labs:{...a.labs}};n?i.labs[e]=n:e in i.labs&&delete i.labs[e],0===Object.keys(i.labs).length&&delete i.labs,await t(i)};return[{enabled:null!==(i=null==a?void 0:null===(n=a.labs)||void 0===n?void 0:n[e])&&void 0!==i&&i},l]}},31470:function(e,n,i){"use strict";i.d(n,{f:function(){return t}});var r=i(18566),a=i(80148);function t(){return[(0,r.QT)(l,[]),async e=>{await a.managerClient.project.writeSliceMachineConfig({config:e}),(0,r.VA)(l,[],e)}]}async function l(){return a.managerClient.project.getSliceMachineConfig()}},69560:function(e,n,i){"use strict";i.r(n),i.d(n,{default:function(){return g}});var r=i(52322),a=i(56803),t=i(97729),l=i.n(t),s=i(2784),c=i(43388),o=i(17378),d=i(51384),u=i(88932);let h=e=>{let{title:n,enabled:i,onToggle:t,children:l}=e;return(0,r.jsx)(a.G,{variant:"outlined",children:(0,r.jsxs)(a.D,{gap:8,padding:16,children:[(0,r.jsx)(a.D,{padding:{top:6},children:(0,r.jsx)(a.aX,{name:"viewDay",size:"medium",color:"grey11"})}),(0,r.jsxs)(a.D,{flexDirection:"column",flexGrow:1,children:[(0,r.jsx)(a.bL,{variant:"h3",children:n}),(0,r.jsx)(a.bL,{variant:"normal",children:l})]}),(0,r.jsx)(a.D,{width:128,justifyContent:"end",children:(0,r.jsx)(a.bC,{size:"medium",checked:i,onCheckedChange:e=>t(e)})})]})})};var b=i(43776);let f=()=>{let[e,n]=function(e,n){let[i,r]=(0,b.E)(e);return[i,async e=>{try{await r(e),u.Am.success(e?"Labs: enabled ".concat(n):"Labs: disabled ".concat(n))}catch(i){console.error(i),u.Am.error(e?"Labs: failed to enable ".concat(n):"Labs: failed to disable ".concat(n))}}]}("legacySliceUpgrader","Legacy Slice Upgrader");return(0,r.jsxs)(a.D,{flexDirection:"column",gap:32,children:[(0,r.jsx)("header",{children:(0,r.jsx)(a.bL,{variant:"normal",children:"Slice Machine Labs gives you early access to new features before they're widely released. Experimental features are works-in-progress and potentially unstable, so you may find some bugs and breaking changes along the way."})}),(0,r.jsx)(a.D,{flexDirection:"column",gap:16,children:(0,r.jsxs)(h,{title:"Legacy Slice Upgrader",enabled:e.enabled,onToggle:e=>void n(e),children:["The Legacy Slice Upgrader allows you to convert old slices (legacy and composite slices) to slices managed by Slice Machine (shared slices). This feature is experimental, and we strongly recommend that you test it with a"," ",(0,r.jsx)("a",{href:"https://prismic.io/docs/environments",target:"_blank",children:"Prismic environment"})," ","or you'll be at risk of losing past content."]})})]})},g=()=>(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(l(),{children:(0,r.jsx)("title",{children:"Labs - Slice Machine"})}),(0,r.jsx)(o.S,{renderError:()=>(0,r.jsx)(x,{children:(0,r.jsx)(a.D,{alignItems:"center",justifyContent:"center",children:(0,r.jsx)(a.ax,{title:"Request failed",description:"An error occurred while fetching your labs configuration."})})}),children:(0,r.jsx)(s.Suspense,{fallback:(0,r.jsx)(x,{withHeader:!0,children:(0,r.jsx)(a.bg,{})}),children:(0,r.jsx)(x,{withHeader:!0,children:(0,r.jsx)(f,{})})})})]}),x=e=>{let{children:n,withHeader:i=!1}=e;return(0,r.jsxs)(d.LN,{children:[i?(0,r.jsx)(d.wd,{children:(0,r.jsx)(d.Cx,{children:(0,r.jsx)(c.g,{children:"Labs"})})}):null,(0,r.jsx)(d.RN,{children:n})]})}}},function(e){e.O(0,[888,774,179],function(){return e(e.s=41535)}),_N_E=e.O()}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[662],{24994:function(e,t,n){(window.__NEXT_P=window.__NEXT_P||[]).push(["/settings",function(){return n(62578)}])},99251:function(e,t,n){"use strict";n.d(t,{Q:function(){return l}});let i={GitHub:"gitHub"};var r=n(52322),o=n(80148);let l={gitHub:{connect:async()=>await s("gitHub"),Icon:e=>(0,r.jsx)("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,r.jsx)("path",{d:"M12 4C7.57486 4 4 7.57486 4 12C4 15.5246 6.30057 18.5257 9.47429 19.6C9.87429 19.6754 10.0251 19.4251 10.0251 19.2251V17.8754C7.8 18.3497 7.32457 16.8 7.32457 16.8C6.94971 15.8743 6.42514 15.6251 6.42514 15.6251C5.70057 15.1246 6.47543 15.1497 6.47543 15.1497C7.27543 15.2 7.69943 15.9749 7.69943 15.9749C8.42514 17.2 9.57486 16.8503 10.0251 16.6491C10.1006 16.1246 10.2994 15.7749 10.5246 15.5749C8.74971 15.3749 6.87543 14.6754 6.87543 11.6251C6.87543 10.7497 7.17486 10.0503 7.69943 9.47543C7.62514 9.27543 7.34971 8.45029 7.77486 7.34971C7.77486 7.34971 8.44914 7.12457 9.97486 8.17486C10.6266 7.99627 11.2991 7.90405 11.9749 7.90057C12.6491 7.90057 13.3497 8 13.9749 8.17486C15.5006 7.14971 16.1749 7.34971 16.1749 7.34971C16.6 8.45029 16.3246 9.27543 16.2503 9.47543C16.776 10.024 17.0754 10.7497 17.0754 11.624C17.0754 14.6994 15.2 15.3749 13.4251 15.5749C13.6994 15.8251 13.9749 16.2994 13.9749 17.0491V19.2503C13.9749 19.4754 14.1246 19.7246 14.5246 19.6251C17.7006 18.5246 20 15.5246 20 12C20 7.57486 16.4251 4 12 4Z",fill:"currentColor"})}),name:"GitHub",supported:c("gitHub")},bitbucket:{connect:async()=>await s("bitbucket"),Icon:e=>(0,r.jsx)("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,r.jsx)("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M4.77596 5.47599C4.84147 5.44648 4.91265 5.43167 4.9845 5.4326L19.3525 5.43506C19.4243 5.43413 19.4955 5.44894 19.561 5.47845C19.6265 5.50796 19.6848 5.55146 19.7317 5.60588C19.7786 5.6603 19.8131 5.72433 19.8326 5.79348C19.8521 5.86262 19.8563 5.93521 19.8448 6.00614L19.1802 10.0751H9.71803L10.5722 14.6018H11.1162L11.1162 14.6018H13.7846L14.56 10.0751H19.1803L17.7575 18.8357C17.7387 18.9522 17.6786 19.058 17.5882 19.1339C17.4979 19.2098 17.3832 19.2507 17.2652 19.2492H7.23692C7.2134 19.249 7.19001 19.2476 7.16682 19.2449C7.03392 19.2298 6.90803 19.175 6.80603 19.0868C6.68704 18.9851 6.60772 18.8448 6.58203 18.6904L4.49219 6.00367C4.48069 5.93275 4.48485 5.86016 4.50438 5.79102C4.52392 5.72187 4.55835 5.65784 4.60527 5.60342C4.65218 5.54899 4.71044 5.5055 4.77596 5.47599Z",fill:"currentColor"})}),name:"Bitbucket",supported:c("bitbucket")},gitLab:{connect:async()=>await s("gitLab"),Icon:e=>(0,r.jsx)("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,r.jsx)("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M14.7881 10.5954L16.5431 5.20756C16.6328 4.93081 17.0594 4.93081 17.1492 5.20756L18.9076 10.5954H14.7881ZM6.6192 5.20756L4.86353 10.5954H8.97968L7.22468 5.20756C7.1349 4.93081 6.70898 4.93081 6.6192 5.20756ZM4.0299 13.2981L4.86352 10.5954H4.86353H8.979H14.7881H18.9076L19.7392 13.2981C19.7796 13.4207 19.7802 13.553 19.7408 13.676C19.7014 13.799 19.624 13.9063 19.5198 13.9826L11.893 19.5257L11.8879 19.5319L11.8923 19.5378L11.8865 19.5336L11.8835 19.5371L11.8852 19.5326L4.24927 13.9826C4.0299 13.8246 3.95092 13.5458 4.0299 13.2981Z",fill:"currentColor"})}),name:"GitLab",supported:c("gitLab")}};async function s(e){if(!c(e))throw Error("Not implemented.");let t=await o.managerClient.git.getProviderAppInstallURL({provider:e});window.open(t,"git-provider-app-installation")}function c(e){return!!Object.values(i).includes(e)}},45276:function(e,t,n){"use strict";n.d(t,{G:function(){return l}});var i=n(18566),r=n(31470),o=n(80148);function l(){let[e]=(0,r.f)();return{linkedGitRepos:(0,i.QT)(s,[e.repositoryName]),linkRepo:async t=>{await o.managerClient.git.linkRepo({prismic:{domain:e.repositoryName},git:t}),await (0,i.gw)(s,[e.repositoryName])},unlinkRepo:async t=>{await o.managerClient.git.unlinkRepo({prismic:{domain:e.repositoryName},git:t}),await (0,i.gw)(s,[e.repositoryName])}}}async function s(e){return await o.managerClient.git.fetchLinkedRepos({prismic:{domain:e}})}},31470:function(e,t,n){"use strict";n.d(t,{f:function(){return o}});var i=n(18566),r=n(80148);function o(){return[(0,i.QT)(l,[]),async e=>{await r.managerClient.project.writeSliceMachineConfig({config:e}),(0,i.VA)(l,[],e)}]}async function l(){return r.managerClient.project.getSliceMachineConfig()}},62578:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return er}});var i=n(52322),r=n(56803),o=n(97729),l=n.n(o),s=n(5632),c=n(2784),a=n(43388),d=n(37792),u=n(35050),x=n.n(u);let h=e=>(0,i.jsx)("div",{...e,className:x().root}),g=e=>{let{children:t,...n}=e;return(0,i.jsx)("div",{...n,className:x().legend,children:(0,i.jsx)(r.bL,{color:"grey11",component:"span",noWrap:!0,variant:"smallBold",children:t})})},m=e=>(0,i.jsx)("div",{...e,className:x().header}),j=e=>(0,i.jsx)("div",{...e,className:x().content}),p=e=>(0,i.jsx)("ul",{...e,className:x().list}),_=e=>{let{action:t,children:n,...o}=e;return(0,i.jsxs)("li",{...o,className:x().listItem,children:[(0,i.jsx)(r.bL,{component:"span",noWrap:!0,variant:"bold",sx:{flexGrow:1},children:n}),t]})},f=e=>{let{action:t,children:n,...o}=e;return(0,i.jsxs)("div",{...o,className:x().footer,children:[(0,i.jsx)(r.bL,{color:"grey11",component:"span",noWrap:!0,variant:"small",sx:{flexGrow:1},children:n}),t]})};var w=n(17378);let C=e=>{let{title:t,description:n,action:o}=e;return(0,i.jsxs)(r.D,{flexDirection:"column",padding:{block:72,inline:100},children:[(0,i.jsx)(r.bL,{align:"center",variant:"emphasized",children:t}),(0,i.jsx)(r.bL,{align:"center",color:"grey11",children:n}),o?(0,i.jsx)(r.F,{sx:{alignSelf:"center",marginTop:8},children:o}):void 0]})};var b=n(98863),v=n(88932),y=n(99251);let S=()=>(0,i.jsx)(r.F,{children:(0,b.XP)(y.Q).map(e=>(0,i.jsx)(k,{provider:e,sx:{flexBasis:0,flexGrow:1}},e))}),k=e=>{let{provider:t,sx:n}=e,{connect:o,Icon:l,name:s,supported:a}=y.Q[t],[d,u]=(0,c.useState)(!1);return(0,i.jsxs)(r.E,{color:"grey",disabled:!a,loading:d,onClick:()=>{(async()=>{u(!0);try{await o()}catch(t){let e="Could not connect to ".concat(s);console.error(e,t),v.Am.error(e),u(!1)}})()},renderStartIcon:()=>(0,i.jsx)(l,{color:r.t.color.grey11}),sx:n,children:[s,a?void 0:(0,i.jsx)(r.bL,{color:"inherit",variant:"small",children:" (soon)"})]})},L=e=>{let{date:t,...n}=e;return(0,i.jsx)(r.bL,{...n,color:"inherit",variant:"inherit",children:function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new Date;return F.format(Math.round((+I(e)-+I(t))/864e5),"day")}(t)})},F=new Intl.RelativeTimeFormat("en",{numeric:"auto",style:"narrow"});function I(e){let t=new Date(e);return t.setHours(0,0,0,0),t}var Z=n(63397),R=n(31470),N=n(80148),D=n(30613);let H=e=>{let{linkRepo:t,repo:n,trigger:o}=e,l=y.Q[n.provider],{updateToken:s}=function(e){let[t]=(0,R.f)();return{updateToken:async n=>{await N.managerClient.git.updateWriteAPIToken({prismic:{domain:t.repositoryName},git:e.git,token:n})}}}({git:n}),{repositoryUrl:c}=(0,D.U)();return(0,i.jsxs)(r.ae,{size:{width:448,height:"auto"},trigger:o,children:[(0,i.jsx)(r.al,{title:"Prismic Write API token required"}),(0,i.jsx)(r.aj,{children:(0,i.jsx)(Z.J9,{initialValues:{writeAPIToken:""},validate:e=>{if(0===e.writeAPIToken.length)return{writeAPIToken:"Cannot be empty"}},onSubmit:async e=>{try{await t(n),await s(e.writeAPIToken)}catch(t){let e="Could not connect to ".concat(n.name);console.error(e,t),v.Am.error(e)}},children:e=>(0,i.jsxs)("form",{onSubmit:e.handleSubmit,children:[(0,i.jsxs)(r.D,{flexDirection:"column",gap:4,padding:16,children:[(0,i.jsx)(r.aM,{disabled:e.isSubmitting,error:"string"==typeof e.errors.writeAPIToken,label:"Paste your Write API token",onValueChange:t=>{e.setFieldValue("writeAPIToken",t)},placeholder:"Write API token",value:e.values.writeAPIToken}),(0,i.jsxs)(r.bL,{color:"grey11",children:["Required to sync models from ",l.name," to Prismic."]})]}),(0,i.jsxs)(r.ah,{children:[(0,i.jsx)(r.ag,{href:new URL("/settings/apps",c).href,children:"Create a Prismic Write API token"}),(0,i.jsx)(r.ai,{size:"medium"}),(0,i.jsx)(r.af,{disabled:!e.isValid,loading:e.isSubmitting,onClick:()=>void e.submitForm(),size:"medium",children:"Save Token"})]})]})})})]})},T=e=>{let{repo:t,trigger:n,unlinkRepo:o}=e,[l,s]=(0,c.useState)(!1);return(0,i.jsxs)(r.ae,{size:{width:448,height:"auto"},trigger:n,children:[(0,i.jsx)(r.al,{title:"Remove Git Connection"}),(0,i.jsx)(r.aj,{children:(0,i.jsx)(r.D,{flexDirection:"column",padding:16,children:(0,i.jsx)(r.bL,{children:"You will not be able to push your code alongside your models anymore. Note that you can reconnect your Git repository at any time. Are you sure you want to continue?"})})}),(0,i.jsxs)(r.ah,{children:[(0,i.jsx)(r.ai,{size:"medium"}),(0,i.jsx)(r.af,{size:"medium",color:"tomato",loading:l,onClick:()=>{(async()=>{s(!0);try{await o(t)}catch(n){let e="Could not disconnect from ".concat(t.name);console.error(e,n),v.Am.error(e)}s(!1)})()},children:"Disconnect"})]})]})};var A=n(45276);let P=e=>{let{mode:t,repos:n}=e,{linkRepo:o,unlinkRepo:l}=(0,A.G)();return(0,i.jsx)(p,{children:"link"===t?n.map(e=>(0,i.jsxs)(_,{action:(0,i.jsx)(H,{linkRepo:o,repo:e,trigger:(0,i.jsx)(r.E,{color:"grey",children:"Connect"})}),children:[e.name,(0,i.jsxs)(r.bL,{color:"grey11",children:[" • ",(0,i.jsx)(L,{date:e.pushedAt})]})]},"".concat(e.provider,"@").concat(e.id))):n.map(e=>(0,i.jsx)(_,{action:(0,i.jsx)(T,{repo:e,trigger:(0,i.jsx)(r.E,{color:"grey",children:"Disconnect"}),unlinkRepo:l}),children:e.name},"".concat(e.provider,"@").concat(e.owner,"/").concat(e.name)))})},W=()=>(0,i.jsx)(p,{children:[...[,,,,].keys()].map(e=>(0,i.jsx)(_,{action:(0,i.jsx)(r.bx,{height:32,width:67.59}),children:(0,i.jsx)(r.bx,{height:24,sx:{verticalAlign:"middle"},width:129.92})},e))}),G=e=>{let{disabled:t,owners:n=[],selectedOwner:o,onSelectedOwnerChange:l,sx:s}=e;return(0,i.jsx)(r.bq,{color:"grey",constrainContentWidth:!0,disabled:t,flexContent:!0,onValueChange:e=>{let[t,i]=e.split("@"),r=n.find(e=>e.provider===t&&e.id===i);r&&(null==l||l(r))},placeholder:"Owner",renderStartIcon:()=>(0,i.jsx)(M,{owner:o}),size:"large",sx:s,value:o?E(o):void 0,children:n.map(e=>(0,i.jsx)(r.bt,{renderStartIcon:()=>(0,i.jsx)(M,{owner:e}),size:"large",value:E(e),children:e.name},E(e)))})},M=e=>{var t;let{owner:n}=e,{Icon:o}=y.Q[null!==(t=null==n?void 0:n.provider)&&void 0!==t?t:"gitHub"];return(0,i.jsx)(o,{color:r.t.color.grey11})};function E(e){return"".concat(e.provider,"@").concat(e.id)}var V=n(18566);async function B(e,t,n,i){return await N.managerClient.git.fetchRepos({provider:e,owner:t,query:n,page:i})}let z=e=>{let{owners:t}=e,[n,r]=(0,c.useState)(t[0]);return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(m,{children:(0,i.jsx)(G,{owners:t,selectedOwner:n,onSelectedOwnerChange:r,sx:{width:"calc(50% - 8px)"}})}),(0,i.jsx)(c.Suspense,{fallback:(0,i.jsx)(Q,{gitOwnerSelect:!1}),children:(0,i.jsx)(O,{owner:n})})]})},O=e=>{var t;let{owner:n}=e,r=(t={provider:n.provider,owner:n.name},(0,V.QT)(B,[t.provider,t.owner,t.query,t.page]));return r.length>0?(0,i.jsx)(P,{mode:"link",repos:r}):(0,i.jsx)(j,{children:(0,i.jsx)(C,{title:"No Results Found",description:"Try selecting a different Git account or organization on the top left."})})},Q=e=>{let{gitOwnerSelect:t}=e;return(0,i.jsxs)(i.Fragment,{children:[t?(0,i.jsx)(m,{children:(0,i.jsx)(G,{disabled:!0,sx:{width:"calc(50% - 8px)"}})}):void 0,(0,i.jsx)(W,{})]})};async function q(){return await N.managerClient.git.fetchOwners()}var K=n(54597);let U=()=>(0,i.jsxs)(h,{children:[(0,i.jsx)(g,{children:"Connected Git Repository"}),(0,i.jsx)(w.S,{renderError:J,children:(0,i.jsx)(c.Suspense,{fallback:(0,i.jsx)(Q,{gitOwnerSelect:!0}),children:(0,i.jsx)(Y,{})})}),(0,i.jsx)(f,{action:(0,i.jsx)(r.c3,{content:"Documentation is coming soon.",side:"bottom",children:(0,i.jsx)(r.aZ,{disabled:!0,icon:"openInNew"})}),children:"Learn more about Prismic for Git"})]}),Y=()=>{let{linkedGitRepos:e}=(0,A.G)();return e.length>0?(0,i.jsx)(P,{mode:"unlink",repos:e}):(0,i.jsx)(X,{})},X=()=>{let e=(0,V.QT)(q,[]);return e.length>0?(0,i.jsx)(z,{owners:e}):(0,i.jsx)(j,{children:(0,i.jsx)(S,{})})};function J(e,t){return(0,d.ff)(e)?(0,i.jsx)($,{}):(0,d.TW)(e)?(0,i.jsx)(ee,{}):(0,i.jsx)(et,{reset:t})}let $=()=>{let{openLoginModal:e}=(0,K.Z)();return(0,i.jsx)(j,{children:(0,i.jsx)(C,{title:"It seems like you are logged out",description:"Log in to connect a Git repository.",action:(0,i.jsx)(r.E,{onClick:e,children:"Log in to Prismic"})})})},ee=()=>(0,i.jsx)(j,{children:(0,i.jsx)(C,{title:"It seems like you do not have permission",description:"An owner or admin is required to connect a Git repository."})}),et=e=>{let{reset:t}=e;return(0,i.jsx)(j,{children:(0,i.jsx)(C,{title:"Unable to fetch data",description:"An error occurred while fetching the list of connected Git repositories.",action:(0,i.jsx)(r.E,{color:"grey",onClick:t,children:"Retry"})})})};var en=n(83758),ei=n(51384);let er=()=>{let e=(0,en.M)(),t=(0,s.useRouter)();return((0,c.useEffect)(()=>{e.eligible||t.replace("/")},[e.eligible,t]),e.eligible)?(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(l(),{children:(0,i.jsx)("title",{children:"Settings - Slice Machine"})}),(0,i.jsxs)(ei.LN,{children:[(0,i.jsx)(ei.wd,{children:(0,i.jsx)(ei.Cx,{children:(0,i.jsx)(a.g,{children:"Settings"})})}),(0,i.jsx)(ei.RN,{children:(0,i.jsx)(r.D,{flexDirection:"column",maxWidth:600,children:(0,i.jsx)(U,{})})})]})]}):null}},35050:function(e){e.exports={flex:"FieldSet_flex__r2Zbg",column:"FieldSet_column__esHjW FieldSet_flex__r2Zbg",root:"FieldSet_root__MYqY8 FieldSet_column__esHjW FieldSet_flex__r2Zbg",row:"FieldSet_row__DZZjD FieldSet_flex__r2Zbg",borderBottom:"FieldSet_borderBottom__WVCMK",legend:"FieldSet_legend__4k9_l FieldSet_row__DZZjD FieldSet_flex__r2Zbg FieldSet_borderBottom__WVCMK",header:"FieldSet_header__cR_f3 FieldSet_row__DZZjD FieldSet_flex__r2Zbg FieldSet_borderBottom__WVCMK",content:"FieldSet_content__WzxRs FieldSet_column__esHjW FieldSet_flex__r2Zbg",list:"FieldSet_list__mILoo FieldSet_column__esHjW FieldSet_flex__r2Zbg",listItem:"FieldSet_listItem__QOhSB FieldSet_row__DZZjD FieldSet_flex__r2Zbg FieldSet_borderBottom__WVCMK",borderTop:"FieldSet_borderTop__KfoL_",footer:"FieldSet_footer__1VWxY FieldSet_row__DZZjD FieldSet_flex__r2Zbg FieldSet_borderTop__KfoL_"}}},function(e){e.O(0,[397,888,774,179],function(){return e(e.s=24994)}),_N_E=e.O()}]);
|
package/out/_next/static/chunks/pages/slices/[lib]/[sliceName]/[variation]-bd5e45632c419567.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[136],{31314:function(e,t,n){(window.__NEXT_P=window.__NEXT_P||[]).push(["/slices/[lib]/[sliceName]/[variation]",function(){return n(92578)}])},50477:function(e,t,n){"use strict";n.d(t,{NG:function(){return s},xU:function(){return a}});var i=n(18566),r=n(2784),o=n(80148);function a(e){let t=(0,r.useCallback)(t=>(0,i.VA)(l,[e],t),[e]);return{customTypes:(0,i.QT)(l,[e]),updateCustomTypes:t}}async function l(e){let{errors:t,models:n}=await o.managerClient.customTypes.readAllCustomTypes(e?{format:e}:void 0);if(t.length>0)throw t;return n.map(e=>{let{model:t}=e;return t})}function s(e){(0,i.gw)(l,[]),(0,i.gw)(l,[e])}},44309:function(e,t,n){"use strict";n.d(t,{Z:function(){return l}});var i=n(5632),r=n(56580),o=n(7723);let a=(e,t,n)=>{var i;let r=null===(i=(0,o.Sd)(e))||void 0===i?void 0:i.find(e=>e.name.replace(/\//g,"--")===t);return null==r?void 0:r.components.find(e=>e.model.name===n)};var l=()=>{let e=(0,i.useRouter)(),{slice:t}=(0,r.v9)(t=>({slice:a(t,e.query.lib,e.query.sliceName)}));if(!t)return{};let n=t.model.variations.find(t=>t.id===e.query.variation);return n?{slice:t,variation:n}:{}}},92578:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return eN}});var i=n(52322),r=n(97729),o=n.n(r),a=n(5632),l=n(74217),s=n(2784),d=n(94160),c=n(68968),u=n(23710),m=n(54597);let h=(0,s.createContext)(void 0);function p(e){let{children:t,initialSlice:n}=e,r=(0,a.useRouter)(),[o,p]=(0,s.useState)(n),{actionQueueStatus:f,setNextAction:v}=(0,u.c)({errorMessage:"Failed to save slice. Check your browser's console for more information."}),{saveSliceSuccess:x}=(0,m.Z)(),y=(0,l.R9)(x),{syncChanges:g}=(0,c.g)(),j=(0,s.useMemo)(()=>{let e=r.query.variation,t=o.model.variations.find(t=>t.id===e);if(t)return t;throw Error("Variation not found")},[o,r]),b=(0,s.useCallback)((e,t)=>{p(e),v(async()=>{let{errors:n}=await (0,d.Ve)(e);if(n.length>0)throw n;let{errors:i,mocks:r}=await (0,d.pL)({libraryID:e.from,sliceID:e.model.id});if(i.length>0)throw i;y({...e,mocks:r}),g(),null==t||t()})},[v,y,g]),w=(0,s.useMemo)(()=>({actionQueueStatus:f,slice:o,setSlice:b,variation:j}),[f,o,b,j]);return(0,i.jsx)(h.Provider,{value:w,children:"function"==typeof t?t(w):t})}function f(){let e=(0,s.useContext)(h);if(!e)throw Error("SliceBuilderProvider not found");return e}var v=n(44309),x=n(56803),y=n(43388),g=n(23094),j=n(63470),b=n(17378),w=n(18566),C=n(80148);async function I(e){let{errors:t,model:n}=await C.managerClient.customTypes.readCustomType({id:e});if(t.length>0)throw t;return n}var S=n(59294),k=n(14101),D=n(81229);let T=e=>(0,i.jsxs)("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e,children:[(0,i.jsx)("path",{d:"M9.5 12L6 9.5L9.5 7V9.5V12Z",fill:"currentColor"}),(0,i.jsx)("path",{d:"M6 9.5H11C14.3 9.5 17 12.2 17 15.5V17.5M6 9.5L9.5 12V9.5V7L6 9.5Z",stroke:"currentColor",strokeLinecap:"round"})]}),E=()=>{let{source:e}=(0,k.l)(),t=function(e){let t=(0,S.Ag)(e.query);return void 0!==t&&(0,S.ne)(e.asPath,t)?t:void 0}(e);return void 0!==t?(0,i.jsx)(b.S,{children:(0,i.jsx)(s.Suspense,{children:(0,i.jsx)(x.D,{bottom:32,justifyContent:"center",position:"fixed",right:0,width:"100vw",children:(0,i.jsx)(A,{sourceCustomTypeId:t})})})}):null},A=e=>{let{sourceCustomTypeId:t}=e,n=(0,w.QT)(I,[t]),[r,o]=(0,s.useState)(!0),l=(0,a.useRouter)();if(void 0===n||!r)return null;{let{format:e,id:t}=n,r=S.cd[e].getBuilderPagePathname(t);return(0,i.jsxs)(x.F,{density:"compact",color:"dark",children:[(0,i.jsxs)(x.E,{onClick:()=>{l.push(r)},renderStartIcon:()=>(0,i.jsx)(T,{}),children:["Return to ",n.label]}),(0,i.jsx)(x.E,{onClick:()=>{o(!1)},renderStartIcon:()=>(0,i.jsx)(D.T,{})})]})}};var R=n(51384),L=n(56580),_=n(33710),F=n(67557),O=n(39180),N=n(7974),V=n(79384);let M=e=>{let{children:t,open:n,onClose:r}=e;return(0,i.jsxs)(F.zs,{open:n,trigger:t,onClose:r,children:[(0,i.jsx)(F.Ev,{children:"Simulate your slices"}),(0,i.jsx)(F.LB,{component:"video",cloudName:"dmtf1daqp",loop:!1,autoPlay:!1,publicId:N.Sn,poster:"/simulator-video-thumbnail.png",controls:!0,onPlay:()=>{d.Xe.track({event:"open-video-tutorials",video:N.Sn})}}),(0,i.jsx)(F.OJ,{children:"Minimize context-switching by previewing your Slice components in the simulator."}),(0,i.jsx)(F.Rp,{children:"Got it"})]})};var z=e=>{let{disabled:t}=e,n=(0,a.useRouter)(),r=(0,s.useRef)(null),{setSeenSimulatorToolTip:o}=(0,m.Z)(),{hasSeenSimulatorTooltip:l}=(0,L.v9)(e=>({hasSeenSimulatorTooltip:(0,V.bv)(e)}));(0,s.useEffect)(()=>{let e=r.current;e&&!l&&setTimeout(()=>_.Z.show(e),5e3)},[l]);let d=()=>{if(o(),r.current){let{current:e}=r;_.Z.hide(e)}};return(0,i.jsx)("span",{"data-tip":!0,"data-tip-disable":!1,"data-for":"simulator-button-tooltip",ref:r,children:(0,i.jsx)(M,{open:!l,onClose:d,children:(0,i.jsx)(x.E,{"data-tip":!0,"data-testid":"simulator-open-button",onClick:()=>{d(),window.open("".concat(n.asPath,"/simulator"),N.pq)},disabled:t,renderStartIcon:()=>(0,i.jsx)(O.z,{color:x.t.color.grey1,height:"24px",style:{transform:"scale(calc(4 / 3))"},width:"24px"}),children:"Simulate"})})})},P=n(31860),Z=n(88866),K=n(28316),H=n(88932),q=n(35289),B=n(63908),W=n(34166),X=n(3285),G=n(40141),U=n(49219),Q=n(26109),Y=n(45440),J=n(16086),$=n(358),ee=n(5495),et=n(39302);let en=[Y.C.Image,Y.C.Text,Y.C.StructuredText,Y.C.Link,Y.C.Select,Y.C.Boolean,Y.C.Number,Y.C.Color,Y.C.Date,Y.C.Table,Y.C.Embed,Y.C.Timestamp,Y.C.GeoPoint,Y.C.ContentRelationship,Y.C.LinkToMedia];var ei=()=>{let{slice:e,setSlice:t,variation:n}=f(),[r,o]=(0,s.useState)(!1),a=[Y.C.Group,...en],l=!!(n.items&&Object.keys(n.items).length>0),d=i=>r=>{if(i===Q.Rt.Items&&n.items&&Object.keys(n.items).length<=1){o(!0);return}t((0,B.AK)({slice:e,variationId:n.id,widgetArea:i,fieldId:r}))},c=(i,r)=>{let{apiId:o,newKey:a,value:l,inGroupFieldAction:s}=r;t((0,B.L4)({slice:e,variationId:n.id,widgetArea:i,previousFieldId:o,newFieldId:a,newField:l}),()=>{"add"===s&&H.Am.success("Field added")}),s||(0,et.Z)({previousId:o,id:a,field:l})},u=(i,r)=>{let{apiId:o,value:l}=r,{type:s}=l,d=a.find(e=>e.CUSTOM_NAME===s||e.TYPE_NAME===s);if(!d)throw Error("Unsupported Field Type: ".concat(s));try{d.schema.validateSync(l,{stripUnknown:!1})}catch(e){throw Error('Model is invalid for widget "'.concat(l.type,'".'))}t((0,B.xS)({slice:e,variationId:n.id,widgetArea:i,newFieldId:o,newField:l.type===Z.GroupFieldType?U.Fl.fromSM(l):l}),()=>{H.Am.success("".concat("Group"===s?"Group":"Field"," added"))}),(0,ee.V)({id:o,field:l})},m=e=>t=>""===t.apiId?u(e,{...t,apiId:t.newKey}):c(e,t),h=i=>r=>{if((0,J.uS)(r))return;let{source:o,destination:a}=r;if(!a)return;let l=(0,B.gR)({slice:e,variationId:n.id,widgetArea:i,sourceIndex:o.index,destinationIndex:a.index});(0,K.flushSync)(()=>t(l))};return(0,i.jsxs)(x.D,{flexDirection:"column",gap:18,children:[(0,i.jsxs)(q.aV,{children:[(0,i.jsx)(G.Z,{zoneType:"slice",zoneTypeFormat:void 0,tabId:void 0,title:"Fields",dataTip:" The non-repeatable zone\n is for fields<br/> that should appear once, like a<br/>\n section title.\n",fields:n.primary,EditModal:X.Z,widgetsArray:a,onDeleteItem:d(Q.Rt.Primary),onSave:m(Q.Rt.Primary),onDragEnd:h(Q.Rt.Primary),poolOfFieldsToCheck:n.primary||[],renderHintBase:e=>{let{item:t}=e;return"slice.primary".concat((0,$.Ti)(t.key))},renderFieldAccessor:e=>"slice.primary".concat((0,$.Ti)(e)),testId:"static-zone-content",isRepeatableCustomType:void 0,emptyStateHeading:void 0}),l?(0,i.jsx)(G.Z,{zoneType:"slice",zoneTypeFormat:void 0,tabId:void 0,isRepeatable:!0,title:"Repeatable Zone",dataTip:"The repeatable zone is for a group<br/>\n of fields that you want to be able to repeat an<br/>\n indeterminate number of times, like FAQs",widgetsArray:en,fields:n.items,EditModal:X.Z,onDeleteItem:d(Q.Rt.Items),onSave:m(Q.Rt.Items),onDragEnd:h(Q.Rt.Items),poolOfFieldsToCheck:n.items||[],renderHintBase:e=>{let{item:t}=e;return"item".concat((0,$.Ti)(t.key))},renderFieldAccessor:e=>"slice.items[i]".concat((0,$.Ti)(e)),testId:"slice-repeatable-zone",isRepeatableCustomType:void 0,emptyStateHeading:"No fields"}):null,(0,i.jsxs)(x.ae,{size:"small",open:r,onOpenChange:e=>o(e),children:[(0,i.jsx)(x.al,{icon:"delete",title:"Delete field"}),(0,i.jsxs)(x.aj,{children:[(0,i.jsx)(x.D,{padding:24,gap:12,flexDirection:"column",children:e.model.variations.length>1?(0,i.jsxs)(i.Fragment,{children:[(0,i.jsxs)("strong",{children:["This action will permanently remove the repeatable zone from the ",e.model.name," slice ",n.name," variation."]}),(0,i.jsx)("div",{children:"Other variations will be left untouched. To reimplement repeatable fields later, use a group field instead of the repeatable zone."})]}):(0,i.jsxs)(i.Fragment,{children:[(0,i.jsxs)("strong",{children:["This action will permanently remove the repeatable zone from the ",e.model.name,"."]}),(0,i.jsx)("div",{children:"To reimplement repeatable fields later, use a group field instead of the repeatable zone."})]})}),(0,i.jsxs)(x.ah,{children:[(0,i.jsx)(x.ai,{}),(0,i.jsx)(x.af,{color:"tomato",onClick:()=>{t((0,B.Oh)({slice:e,variationId:n.id})),o(!1)},children:"Delete"})]})]})]})]}),(0,i.jsx)(W.rT,{type:"model",library:e.from,sliceId:e.model.id,variationId:n.id})]})},er=n(6277),eo=n(34887),ea=n.n(eo);let el=e=>{let{variant:t="dashed",color:n="currentColor",className:r}=e;return(0,i.jsx)("hr",{className:(0,er.W)(ea()["variant-".concat(t)],r),style:{color:x.t.color[n]}})};var es=n(51507),ed=n(27763),ec=n(21442);async function eu(e){try{let{errors:t}=await (0,d.Ve)(e.component);if(t.length>0)throw t;let{errors:n}=await (0,d.Xi)({libraryID:e.component.from,sliceID:e.component.model.id,variationID:e.variation.id});if(n.length>0)throw n;(0,W.tB)({type:"model",library:e.component.from,sliceId:e.component.model.id,variationId:e.variation.id});let{slice:i,errors:r}=await (0,d.X$)(e.component.from,e.component.model.id);if(r.length>0)throw r;if(!i)throw Error("Could not read variation `".concat(e.variation.name,"`"));let{mocks:o}=await (0,d.pL)({libraryID:e.component.from,sliceID:e.component.model.id}),a=ed.Y.getBuilderPagePathname({libraryName:e.component.href,sliceName:i.name,variationId:i.variations[0].id});await e.router.replace(a);let l={...e.component,model:i,mocks:o};return e.saveSliceSuccess(l),l}catch(n){let t="Could not delete variation `".concat(e.variation.name,"`");throw console.error(t,n),H.Am.error(t),n}}let em=e=>{let{isOpen:t,onClose:n,slice:r,variation:o}=e,l=(0,a.useRouter)(),[d,c]=(0,s.useState)(!1),{saveSliceSuccess:u}=(0,m.Z)(),{setSlice:h}=f();return(0,i.jsxs)(x.ae,{open:t,onOpenChange:e=>!e&&n(),size:{width:448,height:"auto"},children:[(0,i.jsx)(x.al,{icon:"delete",title:"Delete variation"}),(0,i.jsx)(x.aj,{children:(0,i.jsxs)(x.D,{flexDirection:"column",children:[(0,i.jsxs)(x.bL,{color:"grey11",sx:{marginBlock:16,marginInline:16},children:["This action will remove the variation from the slice model and delete associated files. When you push your changes, the variation will disappear from your repository. This update will"," ",(0,i.jsx)(eh,{children:"not"})," affect your documents until you ",(0,i.jsx)(eh,{children:"edit"})," ","them manually."]}),(0,i.jsxs)(x.ah,{children:[(0,i.jsx)(x.ai,{size:"medium"}),(0,i.jsx)(x.af,{size:"medium",color:"tomato",onClick:()=>{o&&(async()=>{c(!0);try{let e=await eu({component:r,router:l,saveSliceSuccess:u,variation:o});h(e)}catch(e){}c(!1),n()})()},loading:d,children:"Delete"})]})]})})]})},eh=e=>(0,i.jsx)(x.bL,{...e,color:"inherit",component:"span",variant:"bold"});var ep=n(30195);async function ef(e){try{let{errors:t}=await (0,d.Ve)(e.component);if(t.length>0)throw t;let{errors:n}=await (0,d.eH)(e.component,{...e.variation,name:e.variationName});if(n.length>0)throw n;let{slice:i,errors:r}=await (0,d.X$)(e.component.from,e.component.model.id);if(r.length>0)throw r;if(!i)throw Error("Could not read variation `".concat(e.variation.name,"`"));let{mocks:o}=await (0,d.pL)({libraryID:e.component.from,sliceID:e.component.model.id}),a={...e.component,model:i,mocks:o};return e.saveSliceSuccess(a),a}catch(n){let t="Could not rename variation `".concat(e.variation.name,"`");throw console.error(t,n),H.Am.error(t),n}}let ev=e=>{let{isOpen:t,onClose:n,slice:r,variation:o}=e,[a,d]=(0,s.useState)(!1),[c,u]=(0,s.useState)(""),[h,p]=(0,s.useState)(),{setSlice:v}=f(),{saveSliceSuccess:y}=(0,m.Z)();return(0,l.pQ)(t,()=>{if(t&&(null==o?void 0:o.name)!==c){var e;u(null!==(e=null==o?void 0:o.name)&&void 0!==e?e:""),p(void 0)}}),(0,i.jsx)(i.Fragment,{children:(0,i.jsxs)(x.ae,{open:t,onOpenChange:e=>!e&&n(),size:{width:448,height:"auto"},children:[(0,i.jsx)(x.al,{icon:"edit",title:"Rename variation"}),(0,i.jsx)(x.aj,{children:(0,i.jsxs)(x.aJ,{onSubmit:function(){if(!h&&o){d(!0);try{ef({component:r,saveSliceSuccess:y,variation:o,variationName:c.trim()}).then(e=>{v(e)})}catch(e){}d(!1),n()}},children:[(0,i.jsxs)(x.D,{flexDirection:"column",gap:8,padding:16,children:[(0,i.jsx)(x.bL,{variant:"normal",color:"grey11",children:"This action will rename the variation in the slice model. When you push your changes, the variation will be renamed in your repository."}),(0,i.jsx)(x.D,{flexDirection:"column",gap:4,children:(0,i.jsx)(x.aM,{type:"text",label:"Variation name *",placeholder:"Variation name",error:h,value:c,onValueChange:function(e){u(e),p(function(e){let t=ex.safeParse(e,{errorMap:ey});if(t.error)return t.error.errors[0].message}(e))}})})]}),(0,i.jsxs)(x.ah,{children:[(0,i.jsx)(x.ai,{size:"medium"}),(0,i.jsx)(x.af,{type:"submit",size:"medium",loading:a,disabled:!!h,children:"Rename"})]})]})})]})})},ex=ep.z.string().min(1),ey=e=>e.code===ep.z.ZodIssueCode.too_small?{message:"This field is required"}:{message:"Invalid value"};var eg=n(68105),ej=n(63397),eb=n(96009),ew=n.n(eb),eC=n(36131),eI=n(75289),eS=n(30527);function ek(e){let{children:t}=e,n=(0,eS.W)();return(0,i.jsx)(eI.kC,{sx:{p:3,pl:4,bg:"headSection",alignItems:"center",justifyContent:"space-between",borderTopLeftRadius:n,borderTopRightRadius:n,borderBottom:e=>{var t;return"1px solid ".concat(null===(t=e.colors)||void 0===t?void 0:t.borders)}},children:t})}var eD=e=>{let{children:t,FooterContent:n,HeaderContent:r,close:o,sx:a={}}=e;return(0,i.jsx)(eS.Z,{borderFooter:!0,footerSx:{p:0},bodySx:{pt:2,pb:4,px:4},sx:{border:"none",...a},Header:(0,i.jsxs)(ek,{children:[r,o?(0,i.jsx)(eI.x8,{onClick:o,type:"button"}):null]}),Footer:n?(0,i.jsxs)(eI.kC,{sx:{alignItems:"space-between",bg:"headSection",p:3},children:[(0,i.jsx)(eI.xu,{sx:{ml:"auto"}}),n]}):null,children:t})},eT=n(55862);let eE=e=>{let{msg:t}=e;return(0,i.jsx)(eI.xv,{as:"span",sx:{fontSize:12,color:"error",mt:"5px",ml:2},children:t||"Error!"})};var eA=e=>{let{isOpen:t,onClose:n,onSubmit:r,initialVariation:o,variations:a}=e,[l,d]=(0,s.useState)({}),[c,u]=(0,s.useState)(""),[m,h]=(0,s.useState)(!0),[p,f]=(0,s.useState)(""),[v,y]=(0,s.useState)({value:o.id,label:o.name}),[g,j]=(0,s.useState)(!1);function b(){w(),n()}function w(){u(""),f(""),d({}),h(!0),y({value:o.id,label:o.name})}async function C(){let e=function(e){let{id:t,name:n,origin:i}=e,r=t&&t.length?null:{id:"Required!"},o=a.find(e=>e.id===t)?{id:"This id already exists!"}:null,l=n&&n.length?null:{name:"Required!"},s=i.value.length&&a.find(e=>e.id===i.value)?null:{id:"You must select an existing variation!"},d=t&&t.length&&!/^[A-Za-z0-9]+([A-Za-z0-9]+)*$/.exec(t)&&{id:"No special characters allowed"};return{...r,...o,...l,...s,...d}}({id:c,name:p,origin:v});if(Object.keys(e).length)d(e);else{let e=a.find(e=>e.id===v.value);e&&(j(!0),await r(c,p,e),j(!1),b())}}return(0,s.useEffect)(()=>{w()},[o,t]),(0,i.jsx)(eT.Z,{isOpen:t,shouldCloseOnOverlayClick:!0,onRequestClose:()=>b(),contentLabel:"Widget Form Modal",style:{content:{maxWidth:"700px"}},children:(0,i.jsx)(ej.J9,{initialValues:{id:c,name:p,origin:v},onSubmit:C,children:(0,i.jsx)(ej.l0,{id:"variation-add",onKeyDown:e=>{"Enter"===e.key&&(e.preventDefault(),C())},children:(0,i.jsx)(x.D,{children:(0,i.jsxs)(eD,{sx:{textAlign:"left"},HeaderContent:(0,i.jsx)(eI.xv,{as:"h2",children:"Add new Variation"}),FooterContent:(0,i.jsxs)(x.D,{gap:16,alignItems:"center",children:[(0,i.jsx)(x.E,{onClick:b,color:"grey",children:"Cancel"}),(0,i.jsx)(x.E,{type:"submit",loading:g,children:"Submit"})]}),close:b,children:[(0,i.jsxs)(x.D,{flexDirection:"column",padding:{block:16},children:[(0,i.jsxs)(eI.__,{htmlFor:"name",sx:{mb:1},children:["Variation name*",l.name?(0,i.jsx)(eE,{msg:l.name}):""]}),(0,i.jsx)(ej.gN,{autoComplete:"off",id:"name",name:"name",placeholder:"e.g. Grid - With Icon",as:eI.II,maxLength:30,value:p,onChange:e=>{var t;f(t=e.currentTarget.value),m&&u(ew()(t))}}),(0,i.jsx)(eI.xv,{children:"It will appear here in Slice Machine, and in the page editor in Prismic"})]}),(0,i.jsxs)(x.D,{flexDirection:"column",padding:{bottom:16},children:[(0,i.jsxs)(eI.__,{htmlFor:"id",sx:{mb:1},children:["Variation ID*",l.id?(0,i.jsx)(eE,{msg:l.id}):""]}),(0,i.jsx)(ej.gN,{autoComplete:"off",id:"id",name:"id",placeholder:"e.g. gridWithIcon",as:eI.II,maxLength:30,value:c,onChange:e=>{var t;return t=e.currentTarget.value,void(h(!1),u(ew()(t)))}}),(0,i.jsx)(eI.xv,{children:"It's generated automatically based on the variation name and will appear in the API responses."})]}),(0,i.jsxs)(x.D,{flexDirection:"column",padding:{bottom:8},children:[(0,i.jsx)(eI.__,{htmlFor:"origin",sx:{mb:1},children:"Duplicate from"}),(0,i.jsx)(eC.ZP,{name:"origin",options:a.map(e=>({value:e.id,label:e.name})),onChange:e=>{e&&y(e)},defaultValue:v,maxMenuHeight:150,theme:e=>({...e,colors:{...e.colors,text:"text",primary:"background"}})})]})]})})})})})},eR=n(20136),eL=n.n(eR);let e_=e=>{let{horizontalScroll:t=!1}=e,{slice:n,variation:r,setSlice:o}=f(),[l,c]=(0,s.useState)(),u=(0,ec.H)(),{sliceFilterFn:h,defaultVariationSelector:p,onUploadSuccess:v}=u.modalPayload,y=(0,a.useRouter)(),{saveSliceSuccess:g}=(0,m.Z)(),j=n.model.variations.length;return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(x.D,{flexDirection:"column",gap:16,children:t?(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(el,{variant:"edgeFaded",color:"grey6"}),(0,i.jsxs)(x.D,{justifyContent:"space-between",children:[(0,i.jsxs)(x.bL,{color:"grey11",children:[j," variation",1!==j&&"s"]}),(0,i.jsx)(x.E,{onClick:()=>{c({type:"ADD_VARIATION"})},startIcon:"add",color:"grey",children:"Add a variation"})]}),(0,i.jsx)("div",{className:eL().hideScrollbar,style:{height:"240px",position:"relative",marginRight:"-32px",overflowX:"scroll",scrollSnapType:"x mandatory"},children:(0,i.jsx)("div",{style:{position:"absolute",paddingRight:"32px"},children:(0,i.jsx)(x.D,{flexDirection:"row",gap:16,children:(0,i.jsx)(eF,{screenshotChangesModal:u,setDialog:c,width:320})})})})]}):(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(eF,{screenshotChangesModal:u,setDialog:c}),(0,i.jsx)("div",{style:{bottom:x.t.space[0],marginBottom:"-".concat(x.t.space[16]),position:"sticky"},children:(0,i.jsxs)(x.D,{backgroundColor:"grey2",flexDirection:"column",padding:{bottom:40,inline:24},children:[(0,i.jsx)(x.aS,{sx:{left:0,position:"absolute",right:0}}),(0,i.jsx)(x.E,{color:"grey",onClick:()=>{c({type:"ADD_VARIATION"})},startIcon:"add",sx:{position:"relative"},children:"Add a variation"})]})})]})}),(0,i.jsx)(eg.Z,{slices:h([n]),defaultVariationSelector:p,onUploadSuccess:v}),(0,i.jsx)(ev,{isOpen:(null==l?void 0:l.type)==="RENAME_VARIATION",onClose:()=>{c(void 0)},slice:n,variation:null==l?void 0:l.variation}),(0,i.jsx)(em,{isOpen:(null==l?void 0:l.type)==="DELETE_VARIATION",onClose:()=>{c(void 0)},slice:n,variation:null==l?void 0:l.variation}),(0,i.jsx)(eA,{initialVariation:r,isOpen:(null==l?void 0:l.type)==="ADD_VARIATION",onClose:()=>{c(void 0)},onSubmit:async(e,t,i)=>{try{let{slice:r,variation:a}=(0,B.Kp)({slice:n,id:e,name:t,copiedVariation:i});await (0,d.Ve)(r),g(r),o(r);let l=ed.Y.getBuilderPagePathname({libraryName:r.href,sliceName:r.model.name,variationId:a.id});y.replace(l)}catch(n){let e="Could not add variation `".concat(t,"`");console.error(e,n),H.Am.error(e)}},variations:n.model.variations})]})},eF=e=>{let{screenshotChangesModal:t,setDialog:n,width:r}=e,{slice:o,variation:a,setSlice:l}=f(),s={scrollSnapAlign:"start"};return(0,i.jsx)(i.Fragment,{children:o.model.variations.map(e=>(0,i.jsx)("div",{style:void 0!==r?{...s,width:r}:s,children:(0,i.jsx)(es.b,{action:{type:"menu",onRename:()=>{n({type:"RENAME_VARIATION",variation:e})},onRemove:()=>{n({type:"DELETE_VARIATION",variation:e})},removeDisabled:o.model.variations.length<=1},mode:"navigation",onUpdateScreenshot:()=>{t.onOpenModal({sliceFilterFn:e=>e,defaultVariationSelector:{sliceID:o.model.id,variationID:e.id},onUploadSuccess:e=>{l(e)}})},replace:!0,selected:e.id===a.id,slice:o,variant:"outlined",variationId:e.id},e.id)},e.id))})};var eO=()=>{let{slice:e,actionQueueStatus:t}=f(),n=(0,x.cj)({max:"large"}),r=(0,j.k)();return(0,i.jsxs)(R.LN,{children:[(0,i.jsxs)(R.wd,{children:[(0,i.jsx)(R.Xq,{url:"/slices"}),(0,i.jsxs)(R.Cx,{children:[(0,i.jsx)(y.g,{children:(0,P._)((0,P.f)(r.value))}),(0,i.jsx)(y.g,{active:!0,children:e.model.name})]}),(0,i.jsxs)(R.K2,{children:[(0,i.jsx)(g.X,{status:t}),(0,i.jsx)(z,{disabled:"done"!==t})]})]}),(0,i.jsxs)(R.RN,{children:[(0,i.jsxs)(x.D,{display:"grid",alignItems:"flex-start",gap:16,...n?{gridTemplateRows:"304px 1fr"}:{gridTemplateColumns:"320px 1fr"},children:[(0,i.jsx)(e_,{horizontalScroll:n}),(0,i.jsx)(ei,{})]}),(0,i.jsx)(E,{})]})]})};function eN(){let e=(0,a.useRouter)(),{slice:t,variation:n}=(0,v.Z)();return void 0===t||void 0===n?(e.replace("/"),null):(0,i.jsx)(p,{initialSlice:t,children:e=>{let{slice:t}=e;return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(o(),{children:(0,i.jsxs)("title",{children:[t.model.name," - Slice Machine"]})}),(0,i.jsx)(eO,{})]})}})}},34887:function(e){e.exports={base:"Divider_base__4eT6E","variant-dashed":"Divider_variant-dashed__4Lvrj Divider_base__4eT6E","variant-edgeFaded":"Divider_variant-edgeFaded__049V2 Divider_base__4eT6E"}},20136:function(e){e.exports={hideScrollbar:"VariationsList_hideScrollbar__cHCIS"}},76473:function(e,t,n){"use strict";n.d(t,{y1:function(){return j}});var i=n(2784);function r(){return(r=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e}).apply(this,arguments)}n(52322);var o=["shift","alt","meta","mod","ctrl"],a={esc:"escape",return:"enter",".":"period",",":"comma","-":"slash"," ":"space","`":"backquote","#":"backslash","+":"bracketright",ShiftLeft:"shift",ShiftRight:"shift",AltLeft:"alt",AltRight:"alt",MetaLeft:"meta",MetaRight:"meta",OSLeft:"meta",OSRight:"meta",ControlLeft:"ctrl",ControlRight:"ctrl"};function l(e){return(a[e]||e).trim().toLowerCase().replace(/key|digit|numpad|arrow/,"")}function s(e,t){return void 0===t&&(t=","),e.split(t)}function d(e,t,n){void 0===t&&(t="+");var i=e.toLocaleLowerCase().split(t).map(function(e){return l(e)}),a={alt:i.includes("alt"),ctrl:i.includes("ctrl")||i.includes("control"),shift:i.includes("shift"),meta:i.includes("meta"),mod:i.includes("mod")},s=i.filter(function(e){return!o.includes(e)});return r({},a,{keys:s,description:n})}"undefined"!=typeof document&&(document.addEventListener("keydown",function(e){void 0!==e.key&&m([l(e.key),l(e.code)])}),document.addEventListener("keyup",function(e){void 0!==e.key&&h([l(e.key),l(e.code)])})),"undefined"!=typeof window&&window.addEventListener("blur",function(){c.clear()});var c=new Set;function u(e){return Array.isArray(e)}function m(e){var t=Array.isArray(e)?e:[e];c.has("meta")&&c.forEach(function(e){return!o.includes(e)&&c.delete(e.toLowerCase())}),t.forEach(function(e){return c.add(e.toLowerCase())})}function h(e){var t=Array.isArray(e)?e:[e];"meta"===e?c.clear():t.forEach(function(e){return c.delete(e.toLowerCase())})}function p(e,t){var n=e.target;void 0===t&&(t=!1);var i=n&&n.tagName;return u(t)?!!(i&&t&&t.some(function(e){return e.toLowerCase()===i.toLowerCase()})):!!(i&&t&&!0===t)}var f=function(e,t,n){void 0===n&&(n=!1);var i,r=t.alt,o=t.meta,a=t.mod,s=t.shift,d=t.ctrl,m=t.keys,h=e.key,p=e.code,f=e.ctrlKey,v=e.metaKey,x=e.shiftKey,y=e.altKey,g=l(p),j=h.toLowerCase();if(!n){if(!y===r&&"alt"!==j||!x===s&&"shift"!==j)return!1;if(a){if(!v&&!f)return!1}else if(!v===o&&"meta"!==j&&"os"!==j||!f===d&&"ctrl"!==j&&"control"!==j)return!1}return!!(m&&1===m.length&&(m.includes(j)||m.includes(g)))||(m?(void 0===i&&(i=","),(u(m)?m:m.split(i)).every(function(e){return c.has(e.trim().toLowerCase())})):!m)},v=(0,i.createContext)(void 0),x=(0,i.createContext)({hotkeys:[],enabledScopes:[],toggleScope:function(){},enableScope:function(){},disableScope:function(){}}),y=function(e){e.stopPropagation(),e.preventDefault(),e.stopImmediatePropagation()},g="undefined"!=typeof window?i.useLayoutEffect:i.useEffect;function j(e,t,n,r){var o,a=(0,i.useRef)(null),c=(0,i.useRef)(!1),j=n instanceof Array?r instanceof Array?void 0:r:n,b=u(e)?e.join(null==j?void 0:j.splitKey):e,w=n instanceof Array?n:r instanceof Array?r:void 0,C=(0,i.useCallback)(t,null!=w?w:[]),I=(0,i.useRef)(C);w?I.current=C:I.current=t;var S=(!function e(t,n){return t&&n&&"object"==typeof t&&"object"==typeof n?Object.keys(t).length===Object.keys(n).length&&Object.keys(t).reduce(function(i,r){return i&&e(t[r],n[r])},!0):t===n}((o=(0,i.useRef)(void 0)).current,j)&&(o.current=j),o.current),k=(0,i.useContext)(x).enabledScopes,D=(0,i.useContext)(v);return g(function(){if((null==S?void 0:S.enabled)!==!1&&(e=null==S?void 0:S.scopes,0===k.length&&e?(console.warn('A hotkey has the "scopes" option set, however no active scopes were found. If you want to use the global scopes feature, you need to wrap your app in a <HotkeysProvider>'),!0):!!(!e||k.some(function(t){return e.includes(t)})||k.includes("*")))){var e,t=function(e,t){var n;if(void 0===t&&(t=!1),!(p(e,["input","textarea","select"])&&!p(e,null==S?void 0:S.enableOnFormTags)||null!=S&&null!=S.ignoreEventWhen&&S.ignoreEventWhen(e))){if(null!==a.current&&document.activeElement!==a.current&&!a.current.contains(document.activeElement)){y(e);return}(null==(n=e.target)||!n.isContentEditable||null!=S&&S.enableOnContentEditable)&&s(b,null==S?void 0:S.splitKey).forEach(function(n){var i,r,o,a=d(n,null==S?void 0:S.combinationKey);if(f(e,a,null==S?void 0:S.ignoreModifiers)||null!=(o=a.keys)&&o.includes("*")){if(t&&c.current)return;if(("function"==typeof(i=null==S?void 0:S.preventDefault)&&i(e,a)||!0===i)&&e.preventDefault(),"function"==typeof(r=null==S?void 0:S.enabled)?!r(e,a):!0!==r&&void 0!==r){y(e);return}I.current(e,a),t||(c.current=!0)}})}},n=function(e){void 0!==e.key&&(m(l(e.code)),((null==S?void 0:S.keydown)===void 0&&(null==S?void 0:S.keyup)!==!0||null!=S&&S.keydown)&&t(e))},i=function(e){void 0!==e.key&&(h(l(e.code)),c.current=!1,null!=S&&S.keyup&&t(e,!0))},r=a.current||(null==j?void 0:j.document)||document;return r.addEventListener("keyup",i),r.addEventListener("keydown",n),D&&s(b,null==S?void 0:S.splitKey).forEach(function(e){return D.addHotkey(d(e,null==S?void 0:S.combinationKey,null==S?void 0:S.description))}),function(){r.removeEventListener("keyup",i),r.removeEventListener("keydown",n),D&&s(b,null==S?void 0:S.splitKey).forEach(function(e){return D.removeHotkey(d(e,null==S?void 0:S.combinationKey,null==S?void 0:S.description))})}}},[b,S,k]),a}}},function(e){e.O(0,[898,789,917,525,461,139,397,183,44,349,34,630,658,888,774,179],function(){return e(e.s=31314)}),_N_E=e.O()}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[436],{74600:function(e,t,n){var i=n(34311),o=n(23779),r=i(function(e,t,n){return e+(n?" ":"")+o(t)});e.exports=r},26688:function(e,t,n){(window.__NEXT_P=window.__NEXT_P||[]).push(["/slices",function(){return n(31562)}])},34166:function(e,t,n){"use strict";n.d(t,{nZ:function(){return d},rT:function(){return f},tB:function(){return u}});var i=n(52322),o=n(56803),r=n(2784),l=n(30195),s=n(94160),a=n(76611),c=n(5683);function d(e){let{type:t,library:n,sliceId:i,variationId:o,langSmithUrl:r}=e,l=(0,c.i)({type:t,library:n,sliceId:i,variationId:o}),s=JSON.stringify({langSmithUrl:r});localStorage.setItem(l,s)}function u(e){let{type:t,library:n,sliceId:i,variationId:o}=e,r=(0,c.i)({type:t,library:n,sliceId:i,variationId:o});localStorage.removeItem(r)}function f(e){let{type:t,library:n,sliceId:d,variationId:u}=e,{key:f,value:m,done:x}=function(e){let{type:t,library:n,sliceId:i,variationId:o}=e,r=(0,c.i)({type:t,library:n,sliceId:i,variationId:o}),[s,d]=(0,a.V)(r,void 0,{schema:l.z.object({langSmithUrl:l.z.string().url().optional()})});return{key:r,value:s,done:()=>d(void 0)}}({type:t,library:n,sliceId:d,variationId:u}),[h,p]=(0,r.useState)(),v=e=>()=>{m&&(p(f),s.Xe.track({event:"slice-generation-feedback",type:t,sliceId:d,variationId:u,feedback:e,langSmithUrl:m.langSmithUrl}),x())};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(o.be,{children:(0,i.jsx)(o.bQ,{anchor:(0,i.jsx)(o.D,{width:"100%",justifyContent:"center",position:"absolute",bottom:64}),icon:"check",title:"Thanks for your feedback!",seconds:2,open:!!h,onOpenChange:e=>{e||p(void 0)}},h)}),(0,i.jsx)(o.i,{children:m&&(0,i.jsxs)(o.D,{flexDirection:"row",justifyContent:"end",gap:8,alignItems:"center",children:[(0,i.jsx)(o.bL,{color:"grey11",children:"Did the AI get it right?"}),(0,i.jsxs)(o.D,{flexDirection:"row",gap:4,children:[(0,i.jsx)(o.c3,{side:"bottom",sideOffset:4,variant:"text",content:"Looks good",children:(0,i.jsx)(o.aZ,{variant:"solid",size:"small",icon:"thumbUp",onClick:v("up")})}),(0,i.jsx)(o.c3,{side:"bottom",sideOffset:4,variant:"text",content:"Needs improvement",children:(0,i.jsx)(o.aZ,{variant:"solid",size:"small",icon:"thumbDown",onClick:v("down")})})]})]})})]})}},76611:function(e,t,n){"use strict";n.d(t,{V:function(){return o}});var i=n(2784);function o(e,t,n){let{schema:o}=null!=n?n:{},r=()=>{try{let n=localStorage.getItem(e);if(null==n)return t;if(!o)return JSON.parse(n);return o.parse(JSON.parse(n))}catch(e){return t}},[l,s]=(0,i.useState)(r),[a,c]=(0,i.useState)(e);return a!==e&&(c(e),s(r())),[l,(0,i.useCallback)(n=>{s(i=>{let o;if(void 0===(o="function"==typeof n?n(i):n)){try{localStorage.removeItem(e)}catch(e){return i}return t}try{localStorage.setItem(e,JSON.stringify(o))}catch(e){return i}return o})},[e,t])]}},33986:function(e,t,n){"use strict";n.d(t,{z:function(){return a}});var i=n(52322),o=n(2784),r=n(75289);let l=(e,t)=>e?"".concat(e,"-").concat(t):"",s=e=>{switch(e){case"white":case"secondaryMedium":case"secondarySmall":case"secondary":return"#1A1523";default:return"grey01"}},a=(0,o.forwardRef)((e,t)=>{let{label:n,Icon:o,type:a,form:c,isLoading:d=!1,disabled:u=!1,onClick:f,sx:m={},iconSize:x=16,iconFill:h,variant:p="primary",...v}=e;return(0,i.jsx)(r.zx,{ref:t,sx:{...m,display:"flex",alignItems:"center",justifyContent:"center",gap:"8px",...d?{cursor:"wait !important"}:{}},type:a,form:c,disabled:u||d,onClick:d?void 0:f,variant:p,...v,children:d?(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(r.$j,{size:x,color:s(p),"data-testid":l(v["data-testid"],"spinner")}),o&&n]}):(0,i.jsxs)(i.Fragment,{children:[o&&(0,i.jsx)(o,{size:x,fill:h,"data-testid":l(v["data-testid"],"icon")}),n]})})})},46999:function(e,t,n){"use strict";n.d(t,{W:function(){return l}});var i=n(52322),o=n(63397);n(2784);var r=n(75289);let l=e=>{let{name:t,label:n,placeholder:l,error:s,testId:a,onChange:c}=e;return(0,i.jsxs)(r.xu,{mb:3,children:[(0,i.jsx)(r.__,{htmlFor:t,mb:2,children:n}),(0,i.jsx)(o.gN,{name:t,type:"text",placeholder:l,as:r.II,autoComplete:"off",...c?{onChange:c}:null,...a?{"data-testid":a}:null}),s?(0,i.jsx)(r.xv,{"data-testid":a?"".concat(a,"-error"):"input-error",sx:{color:"error",mt:1},children:s}):null]})}},59532:function(e,t,n){"use strict";var i=n(52322),o=n(63397),r=n(37149),l=n.n(r),s=n(75289),a=n(33986),c=n(55862),d=n(30527);function u(e){let{children:t}=e,n=(0,d.W)();return(0,i.jsx)(s.kC,{sx:{position:"sticky",top:0,zIndex:1,p:"16px",pl:4,bg:"headSection",alignItems:"center",justifyContent:"space-between",borderTopLeftRadius:n,borderTopRightRadius:n,borderBottom:e=>{var t;return"1px solid ".concat(null===(t=e.colors)||void 0===t?void 0:t.borders)}},children:t})}t.Z=function(e){let{children:t,close:n,isOpen:r,formId:f,validate:m,onSubmit:x,widthInPx:h,initialValues:p,content:{title:v},cardProps:y,omitFooter:g=!1,isLoading:b=!1,buttonLabel:j="Save",testId:k,actionMessage:S}=e;return l().setAppElement("#__next"),(0,i.jsx)(c.Z,{isOpen:r,shouldCloseOnOverlayClick:!0,onRequestClose:n,contentLabel:v,style:{content:{width:null!=h?h:"900px"}},children:(0,i.jsx)(o.J9,{initialValues:p,validate:e=>m?m(e):void 0,onSubmit:e=>{x(e)},children:e=>{let{isValid:r,isSubmitting:l,values:c,errors:m,touched:x,setFieldValue:h,setValues:p}=e;return(0,i.jsx)(o.l0,{id:f,...null!=k?{"data-testid":k}:null,children:(0,i.jsx)(d.Z,{borderFooter:!0,footerSx:{p:3,position:"sticky",bottom:0,background:"gray"},bodySx:{px:4,py:4},sx:{border:"none"},...y,Header:(0,i.jsxs)(u,{children:[(0,i.jsx)(s.X6,{sx:{fontSize:"20px"},children:v}),(0,i.jsx)(s.x8,{type:"button",onClick:n})]}),Footer:g?null:(0,i.jsxs)(s.kC,{sx:{alignItems:"space-between"},children:[(0,i.jsx)(s.kC,{sx:{fontSize:"14px",alignItems:"center"},children:"function"==typeof S?S(e):S}),(0,i.jsxs)(s.kC,{sx:{ml:"auto"},children:[(0,i.jsx)(s.zx,{mr:2,type:"button",onClick:n,variant:"secondary",disabled:l||b,children:"Cancel"}),(0,i.jsx)(a.z,{label:j,form:f,type:"submit",disabled:!r||l||b,isLoading:l||b,sx:{fontWeight:"400",paddingBlock:"8px",paddingInline:"16px",fontSize:"14px",borderRadius:"4px"}})]})]}),children:t({isValid:r,isSubmitting:l,values:c,errors:m,touched:x,setFieldValue:h,setValues:p})})})}})})}},31562:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return Q}});var i=n(52322),o=n(56803),r=n(97729),l=n.n(r),s=n(5632),a=n(2784),c=n(56580),d=n(88932),u=n(65077),f=n(75289),m=n(43388),x=n(22654),h=n(63470),p=n(91589),v=n(27213),y=n(51507),g=n(27763),b=n(21442),j=n(51384),k=n(65186),S=n(59326),w=n(34166),C=n(80148);async function I(e){let{sliceName:t,sliceID:n,libraryID:i,sliceVariationIds:o,onSuccess:r}=e;try{let{errors:e}=await C.managerClient.slices.deleteSlice({libraryID:i,sliceID:n});if(e.length>0)throw e;o.forEach(e=>{(0,w.tB)({type:"model",library:i,sliceId:n,variationId:e})}),r(),d.Am.success("Successfully deleted slice “".concat(t,"”"))}catch(n){let e="An unexpected error happened while deleting slice “".concat(t,"”.");console.error(e,n),d.Am.error(e)}}var L=n(68968),E=n(33986),O=n(30527),R=n(55862),A=n(54597);let N=e=>{var t;let{isOpen:n,libName:o,sliceId:r,sliceName:l,sliceVariationIds:s,onClose:c}=e,[d,u]=(0,a.useState)(!1),{deleteSliceSuccess:m}=(0,A.Z)(),{syncChanges:x}=(0,L.g)(),{theme:h}=(0,S.B7)(),p=async()=>{u(!0),await I({libraryID:o,sliceID:r,sliceName:l,sliceVariationIds:s,onSuccess:()=>{m(r,o),x()}}),c(),u(!1)};return(0,i.jsx)(R.Z,{isOpen:n,shouldCloseOnOverlayClick:!0,style:{content:{maxWidth:612}},onRequestClose:c,children:(0,i.jsx)(O.Z,{bodySx:{p:0,bg:"white",position:"relative",height:"100%",padding:16},footerSx:{position:"sticky",bottom:0,p:0},sx:{border:"none"},borderFooter:!0,Header:(0,i.jsxs)(f.kC,{sx:{position:"sticky",background:"gray",top:0,zIndex:1,p:"16px",alignItems:"center",justifyContent:"space-between",borderBottom:e=>{var t;return"1px solid ".concat(String(null===(t=e.colors)||void 0===t?void 0:t.borders))}},children:[(0,i.jsxs)(f.kC,{sx:{alignItems:"center"},children:[(0,i.jsx)(k.$vK,{size:20,color:null===(t=h.colors)||void 0===t?void 0:t.greyIcon}),(0,i.jsx)(f.X6,{sx:{fontSize:"14px",fontWeight:"bold",ml:1},children:"Delete Slice"})]}),(0,i.jsx)(f.x8,{type:"button",onClick:c})]}),Footer:()=>(0,i.jsxs)(f.kC,{sx:{justifyContent:"flex-end",height:64,alignItems:"center",paddingRight:16,borderTop:e=>{var t;return"1px solid ".concat(String(null===(t=e.colors)||void 0===t?void 0:t.darkBorders))},backgroundColor:"gray"},children:[(0,i.jsx)(E.z,{label:"Cancel",variant:"secondary",onClick:c,sx:{mr:"10px",fontWeight:"bold",color:"grey12",borderRadius:6}}),(0,i.jsx)(E.z,{label:"Delete",variant:"danger",isLoading:d,sx:{minHeight:39,minWidth:78},onClick:()=>{p()}})]}),children:(0,i.jsxs)(f.nv,{children:["This action will immediately make the following changes:",(0,i.jsxs)("ul",{children:[(0,i.jsxs)("li",{children:["Delete the"," ",(0,i.jsxs)(f.xv,{sx:{fontWeight:"bold"},children:[o,"/",l,"/"]})," ","directory."]}),(0,i.jsx)("li",{children:"Remove the Slice from all Slice Zones that use it."})]}),"The next time you push your changes to Prismic, the following change will happen:",(0,i.jsx)("ul",{children:(0,i.jsx)("li",{children:"Remove the Slice from the list of available Slices to use in the Page Builder."})}),"You will need to manually remove the Slice from any Pages that currently use it."]})})})};var z=n(36887),D=n(94160),_=e=>{let{title:t,onCreateNew:n,buttonText:o,documentationComponent:r,videoPublicIdUrl:l,...s}=e;return(0,i.jsxs)(f.xu,{sx:{display:"flex",width:"80%",flexWrap:"wrap",justifyContent:"center"},...s,children:[(0,i.jsx)(f.xu,{sx:e=>{var t;return{display:"flex",flex:1,alignItems:"center",minWidth:"400px",maxWidth:"70%",border:"1px solid ".concat(null===(t=e.colors)||void 0===t?void 0:t.grey02)}},children:(0,i.jsx)(z.nk,{cloudName:"dmtf1daqp",controls:!0,loop:!0,style:{maxWidth:"100%",objectFit:"contain"},publicId:l,onPlay:()=>{D.Xe.track({event:"open-video-tutorials",video:l})}})}),(0,i.jsxs)(f.xu,{sx:e=>{var t;return{bg:"white",display:"flex",flexDirection:"column",border:"1px solid ".concat(null===(t=e.colors)||void 0===t?void 0:t.grey02),flex:1,minWidth:"400px",maxWidth:"70%"}},children:[(0,i.jsxs)(f.xu,{sx:e=>{var t;return{display:"flex",flexDirection:"column",p:4,borderBottom:"1px solid ".concat(null===(t=e.colors)||void 0===t?void 0:t.grey02)}},children:[(0,i.jsx)(f.X6,{as:"h3",variant:"heading",sx:{fontSize:"16px",lineHeight:"24px",mb:2},children:t}),(0,i.jsx)(f.xv,{variant:"xs",sx:{lineHeight:"24px",fontSize:"13px"},children:r})]}),(0,i.jsxs)(f.xu,{sx:{display:"flex",p:4,alignItems:"center"},children:[(0,i.jsx)(f.zx,{onClick:n,"data-testid":"empty-state-main-button",sx:{display:"flex",justifyContent:"center",alignItems:"center",flexShrink:0,mr:4},children:o}),(0,i.jsx)(f.xv,{sx:{fontSize:"12px",color:"grey04",maxWidth:"280px"},children:"It will be stored locally and you will be able to push it to your repository"})]})]})]})},W=n(6256),P=n(63908),F=n(26109);async function Z(e){let{slice:t,newSliceName:n,onSuccess:i}=e;try{let e=(0,P.PQ)(t,n),{errors:o}=await C.managerClient.slices.renameSlice({libraryID:t.from,model:F.id.fromSM(e.model)});if(o.length>0)throw o;i(e),d.Am.success("Slice name updated")}catch(n){let e="An unexpected error happened while renaming “".concat(t.model.name,"”.");console.error(e,n),d.Am.error(e)}}var T=n(7723),B=n(59532),K=n(46999),H=n(63019);let X=e=>{var t,n;let{slice:o,isOpen:r,onClose:l}=e,{renameSliceSuccess:s}=(0,A.Z)(),{syncChanges:a}=(0,L.g)(),{localLibs:d,remoteLibs:u}=(0,c.v9)(e=>({localLibs:(0,T.Sd)(e),remoteLibs:(0,T.sT)(e)})),m=null!==(t=null==o?void 0:o.model.name)&&void 0!==t?t:"",x=async e=>{o&&(await Z({slice:o,newSliceName:e.sliceName,onSuccess:e=>{s(e.from,e.model),a()}}),l())};return(0,i.jsx)(B.Z,{testId:"rename-slice-modal",isOpen:r,widthInPx:"530px",formId:"rename-slice-modal-".concat(null!==(n=null==o?void 0:o.model.id)&&void 0!==n?n:""),close:l,buttonLabel:"Rename",onSubmit:e=>void x(e),initialValues:{sliceName:m},content:{title:"Rename a slice"},validate:e=>(0,H.h)(e,d,u),children:e=>{let{touched:t,errors:n}=e;return(0,i.jsx)(f.xu,{children:(0,i.jsx)(K.W,{name:"sliceName",label:"Slice Name","data-testid":"slice-name-input",placeholder:"Pascalised Slice API ID (e.g. TextBlock)",error:t.sliceName?n.sliceName:void 0,testId:"slice-name-input"})})}})};var U=n(21151),M=n(68105),V=n(39204),J=n(7974),q=n(31860),Q=()=>{var e,t,n,r;let k=(0,x.l)(),S=(0,s.useRouter)(),{modalPayload:w,onOpenModal:I}=(0,b.H)(),{openLoginModal:L}=(0,A.Z)(),E=(0,h.k)(),O=(0,v.F)({menuType:"Dropdown",sectionsNamingExperiment:E}),{sliceFilterFn:R,defaultVariationSelector:z}=w,{remoteSlices:D,libraries:P}=(0,c.v9)(e=>({remoteSlices:(0,T.sT)(e),libraries:(0,T.Sd)(e)})),[F,Z]=(0,a.useState)(!1),[B,K]=(0,a.useState)(!1),[H,Q]=(0,a.useState)(!1),[Y,G]=(0,a.useState)(!1),$=P.filter(e=>e.isLocal),ee=P.map(e=>(e.components=[...e.components].sort((e,t)=>e.model.name.localeCompare(t.model.name)),e)),et=(P||[]).map(e=>e.components).flat(),en=et.length,[ei,eo]=(0,a.useState)(),er=()=>{K(!0)},el=()=>{Q(!0)},es=async()=>{await C.managerClient.user.checkIsLoggedIn()?G(!0):L()},ea=()=>{G(!1)};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(l(),{children:(0,i.jsxs)("title",{children:[(0,q._)((0,q.f)(E.value))," - Slice Machine"]})}),(0,i.jsxs)(j.LN,{children:[(0,i.jsxs)(j.wd,{children:[(0,i.jsx)(j.Cx,{children:(0,i.jsx)(m.g,{children:(0,q._)((0,q.f)(E.value))})}),(null==$?void 0:$.length)!==0&&0!==en?(0,i.jsxs)(o.ar,{children:[(0,i.jsx)(o.av,{children:(0,i.jsx)(o.E,{color:"purple",startIcon:"add","data-testid":"add-new-slice-dropdown",children:"Add"})}),(0,i.jsxs)(o.as,{align:"end",children:[k.eligible&&(0,i.jsx)(o.at,{renderStartIcon:()=>O.fromImage.BackgroundIcon,onSelect:()=>void es(),description:O.fromImage.description,children:O.fromImage.title}),(0,i.jsx)(o.at,{renderStartIcon:()=>O.fromScratch.BackgroundIcon,onSelect:()=>Z(!0),description:O.fromScratch.description,children:O.fromScratch.title})]})]}):void 0]}),(0,i.jsxs)(j.RN,{children:[(0,i.jsx)(u.xR,{sx:{display:"flex",flexDirection:"column"},children:ee.length>0?(0,i.jsx)(f.kC,{sx:{flex:1,flexDirection:"column"},children:0===en?(0,i.jsx)(f.kC,{sx:{flex:1,justifyContent:"center",alignItems:"center"},children:(0,i.jsx)(_,{title:"What are ".concat((0,q._)(E.value),"?"),onCreateNew:()=>{Z(!0)},buttonText:"Create one",videoPublicIdUrl:J.rd,documentationComponent:(0,i.jsxs)(i.Fragment,{children:[(0,q._)((0,q.f)(E.value))," ",'are sections of your website. Prismic documents contain a dynamic "',(0,q.f)(E.value)," ",'Zone" that allows content creators to add, edit, and rearrange ',(0,q._)(E.value)," ","to compose dynamic layouts for any page design."," ",(0,i.jsx)(f.rU,{target:"_blank",href:"https://prismic.io/docs/core-concepts/slices",sx:e=>{var t;return{color:null==e?void 0:null===(t=e.colors)||void 0===t?void 0:t.primary}},children:"Learn more"}),"."]}),"data-testid":"slices-table-blank-slate"})}):ee.map(e=>{let{name:t,isLocal:n,components:o}=e;return(0,i.jsxs)(f.kC,{sx:{flexDirection:"column","&:not(:last-of-type)":{mb:4}},children:[(0,i.jsxs)(f.kC,{sx:{alignItems:"center",justifyContent:"space-between"},children:[(0,i.jsx)(f.kC,{sx:{alignItems:"center",fontSize:3,lineHeight:"48px",fontWeight:"heading",mb:1},children:(0,i.jsx)(f.xv,{children:E.eligible&&1===ee.length?"Your ".concat((0,q._)(E.value)):t})}),!n&&(0,i.jsx)("p",{children:"⚠️ External libraries are read-only"})]}),(0,i.jsx)(U.Z,{elems:o,defineElementKey:e=>e.model.name,renderElem:e=>(0,i.jsx)(y.b,{action:{type:"menu",onRemove:()=>{eo(e),er()},onRename:()=>{eo(e),el()}},mode:"navigation",onUpdateScreenshot:()=>{I({sliceFilterFn:t=>t.filter(t=>t.model.id===e.model.id)})},slice:e,variant:"solid"}),gridGap:"32px 16px"})]},t)})}):void 0}),(null==$?void 0:$.length)>0&&(0,i.jsx)(M.Z,{slices:R(et),defaultVariationSelector:z}),(null==$?void 0:$.length)>0&&F&&(0,i.jsx)(W.c,{localLibraries:$,location:"slices",remoteSlices:D,onSuccess:(e,t)=>{let n=e.variations[0].id,i=g.Y.getBuilderPagePathname({libraryName:t,sliceName:e.name,variationId:n});S.push(i),d.Am.success((0,V.kQ)({sectionsNamingExperiment:E,path:"".concat(t,"/").concat(e.name,"/model.json")}))},onClose:()=>{Z(!1)}}),(0,i.jsx)(X,{isOpen:H,slice:ei,onClose:()=>{Q(!1)},"data-testid":"rename-slice-modal"}),(0,i.jsx)(N,{isOpen:B,libName:null!==(e=null==ei?void 0:ei.from)&&void 0!==e?e:"",sliceId:null!==(t=null==ei?void 0:ei.model.id)&&void 0!==t?t:"",sliceName:null!==(n=null==ei?void 0:ei.model.name)&&void 0!==n?n:"",sliceVariationIds:(null!==(r=null==ei?void 0:ei.model.variations)&&void 0!==r?r:[]).map(e=>e.id),onClose:()=>{K(!1)}}),(0,i.jsx)(p.S,{open:Y,location:"slices",onSuccess:e=>{let{library:t}=e;d.Am.success((0,i.jsx)(V.GX,{message:"".concat((0,q.f)(E.value),"(s) added to ").concat(E.value," zone and created at: "),path:t})),ea()},onClose:ea})]})]})]})}},5683:function(e,t,n){"use strict";n.d(t,{i:function(){return r},v:function(){return o}});let i=e=>"slice-machine_".concat(e),o=i("staticFieldsInfoDialogDismissed");function r(e){let{type:t,library:n,sliceId:o,variationId:r}=e;return i(["ai-feedback",t,n,o,r].join("#"))}},76473:function(e,t,n){"use strict";n.d(t,{y1:function(){return b}});var i=n(2784);function o(){return(o=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e}).apply(this,arguments)}n(52322);var r=["shift","alt","meta","mod","ctrl"],l={esc:"escape",return:"enter",".":"period",",":"comma","-":"slash"," ":"space","`":"backquote","#":"backslash","+":"bracketright",ShiftLeft:"shift",ShiftRight:"shift",AltLeft:"alt",AltRight:"alt",MetaLeft:"meta",MetaRight:"meta",OSLeft:"meta",OSRight:"meta",ControlLeft:"ctrl",ControlRight:"ctrl"};function s(e){return(l[e]||e).trim().toLowerCase().replace(/key|digit|numpad|arrow/,"")}function a(e,t){return void 0===t&&(t=","),e.split(t)}function c(e,t,n){void 0===t&&(t="+");var i=e.toLocaleLowerCase().split(t).map(function(e){return s(e)}),l={alt:i.includes("alt"),ctrl:i.includes("ctrl")||i.includes("control"),shift:i.includes("shift"),meta:i.includes("meta"),mod:i.includes("mod")},a=i.filter(function(e){return!r.includes(e)});return o({},l,{keys:a,description:n})}"undefined"!=typeof document&&(document.addEventListener("keydown",function(e){void 0!==e.key&&f([s(e.key),s(e.code)])}),document.addEventListener("keyup",function(e){void 0!==e.key&&m([s(e.key),s(e.code)])})),"undefined"!=typeof window&&window.addEventListener("blur",function(){d.clear()});var d=new Set;function u(e){return Array.isArray(e)}function f(e){var t=Array.isArray(e)?e:[e];d.has("meta")&&d.forEach(function(e){return!r.includes(e)&&d.delete(e.toLowerCase())}),t.forEach(function(e){return d.add(e.toLowerCase())})}function m(e){var t=Array.isArray(e)?e:[e];"meta"===e?d.clear():t.forEach(function(e){return d.delete(e.toLowerCase())})}function x(e,t){var n=e.target;void 0===t&&(t=!1);var i=n&&n.tagName;return u(t)?!!(i&&t&&t.some(function(e){return e.toLowerCase()===i.toLowerCase()})):!!(i&&t&&!0===t)}var h=function(e,t,n){void 0===n&&(n=!1);var i,o=t.alt,r=t.meta,l=t.mod,a=t.shift,c=t.ctrl,f=t.keys,m=e.key,x=e.code,h=e.ctrlKey,p=e.metaKey,v=e.shiftKey,y=e.altKey,g=s(x),b=m.toLowerCase();if(!n){if(!y===o&&"alt"!==b||!v===a&&"shift"!==b)return!1;if(l){if(!p&&!h)return!1}else if(!p===r&&"meta"!==b&&"os"!==b||!h===c&&"ctrl"!==b&&"control"!==b)return!1}return!!(f&&1===f.length&&(f.includes(b)||f.includes(g)))||(f?(void 0===i&&(i=","),(u(f)?f:f.split(i)).every(function(e){return d.has(e.trim().toLowerCase())})):!f)},p=(0,i.createContext)(void 0),v=(0,i.createContext)({hotkeys:[],enabledScopes:[],toggleScope:function(){},enableScope:function(){},disableScope:function(){}}),y=function(e){e.stopPropagation(),e.preventDefault(),e.stopImmediatePropagation()},g="undefined"!=typeof window?i.useLayoutEffect:i.useEffect;function b(e,t,n,o){var r,l=(0,i.useRef)(null),d=(0,i.useRef)(!1),b=n instanceof Array?o instanceof Array?void 0:o:n,j=u(e)?e.join(null==b?void 0:b.splitKey):e,k=n instanceof Array?n:o instanceof Array?o:void 0,S=(0,i.useCallback)(t,null!=k?k:[]),w=(0,i.useRef)(S);k?w.current=S:w.current=t;var C=(!function e(t,n){return t&&n&&"object"==typeof t&&"object"==typeof n?Object.keys(t).length===Object.keys(n).length&&Object.keys(t).reduce(function(i,o){return i&&e(t[o],n[o])},!0):t===n}((r=(0,i.useRef)(void 0)).current,b)&&(r.current=b),r.current),I=(0,i.useContext)(v).enabledScopes,L=(0,i.useContext)(p);return g(function(){if((null==C?void 0:C.enabled)!==!1&&(e=null==C?void 0:C.scopes,0===I.length&&e?(console.warn('A hotkey has the "scopes" option set, however no active scopes were found. If you want to use the global scopes feature, you need to wrap your app in a <HotkeysProvider>'),!0):!!(!e||I.some(function(t){return e.includes(t)})||I.includes("*")))){var e,t=function(e,t){var n;if(void 0===t&&(t=!1),!(x(e,["input","textarea","select"])&&!x(e,null==C?void 0:C.enableOnFormTags)||null!=C&&null!=C.ignoreEventWhen&&C.ignoreEventWhen(e))){if(null!==l.current&&document.activeElement!==l.current&&!l.current.contains(document.activeElement)){y(e);return}(null==(n=e.target)||!n.isContentEditable||null!=C&&C.enableOnContentEditable)&&a(j,null==C?void 0:C.splitKey).forEach(function(n){var i,o,r,l=c(n,null==C?void 0:C.combinationKey);if(h(e,l,null==C?void 0:C.ignoreModifiers)||null!=(r=l.keys)&&r.includes("*")){if(t&&d.current)return;if(("function"==typeof(i=null==C?void 0:C.preventDefault)&&i(e,l)||!0===i)&&e.preventDefault(),"function"==typeof(o=null==C?void 0:C.enabled)?!o(e,l):!0!==o&&void 0!==o){y(e);return}w.current(e,l),t||(d.current=!0)}})}},n=function(e){void 0!==e.key&&(f(s(e.code)),((null==C?void 0:C.keydown)===void 0&&(null==C?void 0:C.keyup)!==!0||null!=C&&C.keydown)&&t(e))},i=function(e){void 0!==e.key&&(m(s(e.code)),d.current=!1,null!=C&&C.keyup&&t(e,!0))},o=l.current||(null==b?void 0:b.document)||document;return o.addEventListener("keyup",i),o.addEventListener("keydown",n),L&&a(j,null==C?void 0:C.splitKey).forEach(function(e){return L.addHotkey(c(e,null==C?void 0:C.combinationKey,null==C?void 0:C.description))}),function(){o.removeEventListener("keyup",i),o.removeEventListener("keydown",n),L&&a(j,null==C?void 0:C.splitKey).forEach(function(e){return L.removeHotkey(c(e,null==C?void 0:C.combinationKey,null==C?void 0:C.description))})}}},[j,C,I]),l}}},function(e){e.O(0,[898,789,397,44,34,658,268,888,774,179],function(){return e(e.s=26688)}),_N_E=e.O()}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
.FieldSet_flex__r2Zbg{all:unset;display:flex}.FieldSet_column__esHjW{flex-direction:column}.FieldSet_root__MYqY8{border-color:var(--grey6);border-radius:6px;border-style:solid;border-width:1px;box-shadow:var(--box-shadow-1);overflow-x:hidden}.FieldSet_row__DZZjD{align-items:center;flex-direction:row;gap:8px;padding-inline:16px}.FieldSet_borderBottom__WVCMK{box-sizing:border-box}.FieldSet_borderBottom__WVCMK:not(:last-child){border-bottom:1px solid var(--grey6)}.FieldSet_legend__4k9_l{background-color:var(--grey2);height:48px;order:0}.FieldSet_header__cR_f3{background-color:var(--grey2);height:72px;order:1}.FieldSet_content__WzxRs{background-color:var(--grey1);order:2;padding:16px}.FieldSet_list__mILoo{max-height:256px;order:2;overflow-y:auto}.FieldSet_listItem__QOhSB{background-color:var(--grey1);flex-shrink:0;height:64px}.FieldSet_borderTop__KfoL_:not(:first-child){box-shadow:0 -1px 0 0 var(--grey6)}.FieldSet_footer__1VWxY{background-color:var(--grey1);height:48px;order:3;padding-right:8px}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
self.__BUILD_MANIFEST=function(s,c,e,a,t,i,b,n,u,d,f,h,l,k,j,p,g,o,r,m){return{__rewrites:{afterFiles:[],beforeFiles:[],fallback:[]},"/":[s,a,p,g,"static/chunks/pages/index-0d8cb369de720a35.js"],"/_error":["static/chunks/pages/_error-fedd2c6ebd3d27b9.js"],"/changelog":[c,t,"static/chunks/870-a72b74312773efea.js","static/chunks/pages/changelog-063c5e11dfc8fd55.js"],"/changes":[c,i,"static/chunks/8eec4907-b712959d9f984b68.js","static/chunks/918-fa4f2563cb5fd014.js",e,n,"static/css/d98ebc475f8423a3.css","static/chunks/pages/changes-564336edb0ed18b0.js"],"/custom-types":[s,a,p,g,"static/chunks/pages/custom-types-5acd56959b60346f.js"],"/custom-types/[customTypeId]":[c,u,d,f,h,s,t,b,l,o,e,a,k,j,r,m,"static/chunks/pages/custom-types/[customTypeId]-a408f5a660e096a6.js"],"/labs":["static/chunks/pages/labs-9630bfb1005be02b.js"],"/page-types/[pageTypeId]":[c,u,d,f,h,s,t,b,l,o,e,a,k,j,r,m,"static/chunks/pages/page-types/[pageTypeId]-f5e851ebe35049a8.js"],"/settings":[s,"static/css/e5f781f20e24a5ea.css","static/chunks/pages/settings-01f4aeb9112a1f87.js"],"/slices":[c,i,s,b,e,n,j,"static/css/efa5152b7c0f35c0.css","static/chunks/pages/slices-4a60cd5f2c71327e.js"],"/slices/[lib]/[sliceName]/[variation]":[c,i,u,d,f,h,s,t,b,l,e,k,n,"static/css/cdee5b195444f185.css","static/chunks/pages/slices/[lib]/[sliceName]/[variation]-bd5e45632c419567.js"],"/slices/[lib]/[sliceName]/[variation]/simulator":[i,"static/chunks/72585f70-28b4d7d5384b3703.js","static/chunks/157-54b8336d20b41933.js","static/chunks/pages/slices/[lib]/[sliceName]/[variation]/simulator-5008e29008aa04f4.js"],sortedPages:["/","/_app","/_error","/changelog","/changes","/custom-types","/custom-types/[customTypeId]","/labs","/page-types/[pageTypeId]","/settings","/slices","/slices/[lib]/[sliceName]/[variation]","/slices/[lib]/[sliceName]/[variation]/simulator"]}}("static/chunks/397-e6c340070a3bcb41.js","static/chunks/59b4e022-ef680789f7cc9b11.js","static/chunks/34-e684c5fd75cc9dd0.js","static/chunks/647-7b9b5aa9468f9e4b.js","static/chunks/183-4ea255b867ff171b.js","static/chunks/c8eae200-966ce352f7b5d2b9.js","static/chunks/44-a2056f993381ad0f.js","static/chunks/658-8231c0b729e0124a.js","static/chunks/f36c6662-1f3a854183168b10.js","static/chunks/4c744e84-480e426e4b1cfef3.js","static/chunks/065a3ddb-9a38ca0d60f0bf2f.js","static/chunks/1cc2734a-09fb3b997ad1eb70.js","static/chunks/349-7118116b93278f73.js","static/chunks/630-29c729ad2a291ef6.js","static/chunks/268-6a9214b97195af9c.js","static/chunks/248-03446cd9e9f13730.js","static/css/4e475d945cf8a890.css","static/chunks/385-b949173dfa03dd3e.js","static/chunks/882-151468121d542ed6.js","static/css/56f2a6684a524374.css"),self.__BUILD_MANIFEST_CB&&self.__BUILD_MANIFEST_CB();
|
package/out/settings.html
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
<!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta name="next-head-count" content="2"/><link rel="preload" href="/_next/static/css/cc9b10286400c2b9.css" as="style"/><link rel="stylesheet" href="/_next/static/css/cc9b10286400c2b9.css" data-n-g=""/><link rel="preload" href="/_next/static/css/e5f781f20e24a5ea.css" as="style"/><link rel="stylesheet" href="/_next/static/css/e5f781f20e24a5ea.css" data-n-p=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/_next/static/chunks/polyfills-42372ed130431b0a.js"></script><script src="/_next/static/chunks/webpack-b3522fdebabf510a.js" defer=""></script><script src="/_next/static/chunks/framework-ab7ddb551c23d05a.js" defer=""></script><script src="/_next/static/chunks/main-c46f4dcf6e3174bd.js" defer=""></script><script src="/_next/static/chunks/pages/_app-83cf3b3fa23f9705.js" defer=""></script><script src="/_next/static/chunks/397-e6c340070a3bcb41.js" defer=""></script><script src="/_next/static/chunks/pages/settings-01f4aeb9112a1f87.js" defer=""></script><script src="/_next/static/ho9gRBtPlj9hhfjQcLKuh/_buildManifest.js" defer=""></script><script src="/_next/static/ho9gRBtPlj9hhfjQcLKuh/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/settings","query":{},"buildId":"ho9gRBtPlj9hhfjQcLKuh","runtimeConfig":{"sentryEnvironment":"beta"},"nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
|
package/out/videoHighlights.png
DELETED
|
Binary file
|
|
Binary file
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
import { Box } from "@prismicio/editor-ui";
|
|
2
|
-
import Head from "next/head";
|
|
3
|
-
import { useRouter } from "next/router";
|
|
4
|
-
import { type FC, useEffect } from "react";
|
|
5
|
-
|
|
6
|
-
import { BreadcrumbItem } from "@/components/Breadcrumb";
|
|
7
|
-
import { ConnectGitRepository } from "@/features/settings/git/ConnectGitRepository";
|
|
8
|
-
import { useGitIntegrationExperiment } from "@/features/settings/git/useGitIntegrationExperiment";
|
|
9
|
-
import {
|
|
10
|
-
AppLayout,
|
|
11
|
-
AppLayoutBreadcrumb,
|
|
12
|
-
AppLayoutContent,
|
|
13
|
-
AppLayoutHeader,
|
|
14
|
-
} from "@/legacy/components/AppLayout";
|
|
15
|
-
|
|
16
|
-
export const SettingsPage: FC = () => {
|
|
17
|
-
const gitIntegrationExperiment = useGitIntegrationExperiment();
|
|
18
|
-
const router = useRouter();
|
|
19
|
-
|
|
20
|
-
// TODO(DT-1801): implement a 404 page.
|
|
21
|
-
useEffect(() => {
|
|
22
|
-
if (!gitIntegrationExperiment.eligible) {
|
|
23
|
-
void router.replace("/");
|
|
24
|
-
}
|
|
25
|
-
}, [gitIntegrationExperiment.eligible, router]);
|
|
26
|
-
|
|
27
|
-
if (!gitIntegrationExperiment.eligible) {
|
|
28
|
-
return null;
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
return (
|
|
32
|
-
<>
|
|
33
|
-
<Head>
|
|
34
|
-
<title>Settings - Slice Machine</title>
|
|
35
|
-
</Head>
|
|
36
|
-
<AppLayout>
|
|
37
|
-
<AppLayoutHeader>
|
|
38
|
-
<AppLayoutBreadcrumb>
|
|
39
|
-
<BreadcrumbItem>Settings</BreadcrumbItem>
|
|
40
|
-
</AppLayoutBreadcrumb>
|
|
41
|
-
</AppLayoutHeader>
|
|
42
|
-
<AppLayoutContent>
|
|
43
|
-
<Box flexDirection="column" maxWidth={600}>
|
|
44
|
-
<ConnectGitRepository />
|
|
45
|
-
</Box>
|
|
46
|
-
</AppLayoutContent>
|
|
47
|
-
</AppLayout>
|
|
48
|
-
</>
|
|
49
|
-
);
|
|
50
|
-
};
|
|
@@ -1,112 +0,0 @@
|
|
|
1
|
-
import { Button, IconButton, Tooltip } from "@prismicio/editor-ui";
|
|
2
|
-
import {
|
|
3
|
-
isUnauthenticatedError,
|
|
4
|
-
isUnauthorizedError,
|
|
5
|
-
} from "@slicemachine/manager/client";
|
|
6
|
-
import { type FC, type ReactNode, Suspense } from "react";
|
|
7
|
-
|
|
8
|
-
import {
|
|
9
|
-
FieldSet,
|
|
10
|
-
FieldSetContent,
|
|
11
|
-
FieldSetFooter,
|
|
12
|
-
FieldSetLegend,
|
|
13
|
-
} from "@/components/FieldSet";
|
|
14
|
-
import { ErrorBoundary } from "@/ErrorBoundary";
|
|
15
|
-
import { ConnectGitRepositoryBlankSlate } from "@/features/settings/git/ConnectGitRepositoryBlankSlate";
|
|
16
|
-
import { GitProviderConnectButtons } from "@/features/settings/git/GitProviderConnectButtons";
|
|
17
|
-
import { GitRepositoriesList } from "@/features/settings/git/GitRepositoriesList";
|
|
18
|
-
import {
|
|
19
|
-
GitRepositoriesSearch,
|
|
20
|
-
GitRepositoriesSearchSkeleton,
|
|
21
|
-
} from "@/features/settings/git/GitRepositoriesSearch";
|
|
22
|
-
import { useGitOwners } from "@/features/settings/git/useGitOwners";
|
|
23
|
-
import { useLinkedGitRepos } from "@/features/settings/git/useLinkedGitRepos";
|
|
24
|
-
import useSliceMachineActions from "@/modules/useSliceMachineActions";
|
|
25
|
-
|
|
26
|
-
export const ConnectGitRepository: FC = () => (
|
|
27
|
-
<FieldSet>
|
|
28
|
-
<FieldSetLegend>Connected Git Repository</FieldSetLegend>
|
|
29
|
-
<ErrorBoundary renderError={renderError}>
|
|
30
|
-
<Suspense fallback={<GitRepositoriesSearchSkeleton gitOwnerSelect />}>
|
|
31
|
-
<Content />
|
|
32
|
-
</Suspense>
|
|
33
|
-
</ErrorBoundary>
|
|
34
|
-
<FieldSetFooter
|
|
35
|
-
action={
|
|
36
|
-
<Tooltip content="Documentation is coming soon." side="bottom">
|
|
37
|
-
<IconButton disabled icon="openInNew" />
|
|
38
|
-
</Tooltip>
|
|
39
|
-
}
|
|
40
|
-
>
|
|
41
|
-
Learn more about Prismic for Git
|
|
42
|
-
</FieldSetFooter>
|
|
43
|
-
</FieldSet>
|
|
44
|
-
);
|
|
45
|
-
|
|
46
|
-
const Content: FC = () => {
|
|
47
|
-
const { linkedGitRepos } = useLinkedGitRepos();
|
|
48
|
-
return linkedGitRepos.length > 0 ? (
|
|
49
|
-
<GitRepositoriesList mode="unlink" repos={linkedGitRepos} />
|
|
50
|
-
) : (
|
|
51
|
-
<UnlinkedRepositoryContent />
|
|
52
|
-
);
|
|
53
|
-
};
|
|
54
|
-
|
|
55
|
-
const UnlinkedRepositoryContent: FC = () => {
|
|
56
|
-
const owners = useGitOwners();
|
|
57
|
-
return owners.length > 0 ? (
|
|
58
|
-
<GitRepositoriesSearch owners={owners} />
|
|
59
|
-
) : (
|
|
60
|
-
<FieldSetContent>
|
|
61
|
-
<GitProviderConnectButtons />
|
|
62
|
-
</FieldSetContent>
|
|
63
|
-
);
|
|
64
|
-
};
|
|
65
|
-
|
|
66
|
-
function renderError(error: unknown, reset: () => void): ReactNode {
|
|
67
|
-
if (isUnauthenticatedError(error)) {
|
|
68
|
-
return <UnauthenticatedErrorContent />;
|
|
69
|
-
} else if (isUnauthorizedError(error)) {
|
|
70
|
-
return <UnauthorizedErrorContent />;
|
|
71
|
-
} else {
|
|
72
|
-
return <UnknownErrorContent reset={reset} />;
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
const UnauthenticatedErrorContent: FC = () => {
|
|
77
|
-
const { openLoginModal } = useSliceMachineActions();
|
|
78
|
-
return (
|
|
79
|
-
<FieldSetContent>
|
|
80
|
-
<ConnectGitRepositoryBlankSlate
|
|
81
|
-
title="It seems like you are logged out"
|
|
82
|
-
description="Log in to connect a Git repository."
|
|
83
|
-
action={<Button onClick={openLoginModal}>Log in to Prismic</Button>}
|
|
84
|
-
/>
|
|
85
|
-
</FieldSetContent>
|
|
86
|
-
);
|
|
87
|
-
};
|
|
88
|
-
|
|
89
|
-
const UnauthorizedErrorContent: FC = () => (
|
|
90
|
-
<FieldSetContent>
|
|
91
|
-
<ConnectGitRepositoryBlankSlate
|
|
92
|
-
title="It seems like you do not have permission"
|
|
93
|
-
description="An owner or admin is required to connect a Git repository."
|
|
94
|
-
/>
|
|
95
|
-
</FieldSetContent>
|
|
96
|
-
);
|
|
97
|
-
|
|
98
|
-
type UnknownErrorContentProps = { reset: () => void };
|
|
99
|
-
|
|
100
|
-
const UnknownErrorContent: FC<UnknownErrorContentProps> = ({ reset }) => (
|
|
101
|
-
<FieldSetContent>
|
|
102
|
-
<ConnectGitRepositoryBlankSlate
|
|
103
|
-
title="Unable to fetch data"
|
|
104
|
-
description="An error occurred while fetching the list of connected Git repositories."
|
|
105
|
-
action={
|
|
106
|
-
<Button color="grey" onClick={reset}>
|
|
107
|
-
Retry
|
|
108
|
-
</Button>
|
|
109
|
-
}
|
|
110
|
-
/>
|
|
111
|
-
</FieldSetContent>
|
|
112
|
-
);
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import { Box, ButtonGroup, Text } from "@prismicio/editor-ui";
|
|
2
|
-
import type { FC, ReactNode } from "react";
|
|
3
|
-
|
|
4
|
-
type ConnectGitRepositoryBlankSlateProps = {
|
|
5
|
-
title: string;
|
|
6
|
-
description: string;
|
|
7
|
-
action?: ReactNode;
|
|
8
|
-
};
|
|
9
|
-
|
|
10
|
-
export const ConnectGitRepositoryBlankSlate: FC<
|
|
11
|
-
ConnectGitRepositoryBlankSlateProps
|
|
12
|
-
> = ({ title, description, action }) => (
|
|
13
|
-
<Box
|
|
14
|
-
flexDirection="column"
|
|
15
|
-
/*
|
|
16
|
-
* TODO: these `padding` values actually don't match Figma, but they are the
|
|
17
|
-
* closest allowed by the `Box` component.
|
|
18
|
-
*/
|
|
19
|
-
padding={{ block: 72, inline: 100 }}
|
|
20
|
-
>
|
|
21
|
-
<Text align="center" variant="emphasized">
|
|
22
|
-
{title}
|
|
23
|
-
</Text>
|
|
24
|
-
<Text align="center" color="grey11">
|
|
25
|
-
{description}
|
|
26
|
-
</Text>
|
|
27
|
-
{Boolean(action) ? (
|
|
28
|
-
<ButtonGroup sx={{ alignSelf: "center", marginTop: 8 }}>
|
|
29
|
-
{action}
|
|
30
|
-
</ButtonGroup>
|
|
31
|
-
) : undefined}
|
|
32
|
-
</Box>
|
|
33
|
-
);
|
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
import { Select, SelectItem, theme } from "@prismicio/editor-ui";
|
|
2
|
-
import type { GitOwner } from "@slicemachine/manager";
|
|
3
|
-
import type { ComponentPropsWithoutRef, FC } from "react";
|
|
4
|
-
|
|
5
|
-
import { gitProviderToConfig } from "@/features/settings/git/GitProvider";
|
|
6
|
-
|
|
7
|
-
type GitOwnerSelectProps = {
|
|
8
|
-
disabled?: boolean;
|
|
9
|
-
owners?: GitOwner[];
|
|
10
|
-
selectedOwner?: GitOwner;
|
|
11
|
-
onSelectedOwnerChange?: (selectedOwner: GitOwner) => void;
|
|
12
|
-
sx?: SX;
|
|
13
|
-
};
|
|
14
|
-
|
|
15
|
-
export const GitOwnerSelect: FC<GitOwnerSelectProps> = ({
|
|
16
|
-
disabled,
|
|
17
|
-
owners = [],
|
|
18
|
-
selectedOwner,
|
|
19
|
-
onSelectedOwnerChange,
|
|
20
|
-
sx,
|
|
21
|
-
}) => (
|
|
22
|
-
<Select
|
|
23
|
-
color="grey"
|
|
24
|
-
constrainContentWidth
|
|
25
|
-
disabled={disabled}
|
|
26
|
-
flexContent
|
|
27
|
-
onValueChange={(value) => {
|
|
28
|
-
const [provider, id] = parseGitOwnerKey(value);
|
|
29
|
-
const selectedOwner = owners.find(
|
|
30
|
-
(owner) => owner.provider === provider && owner.id === id,
|
|
31
|
-
);
|
|
32
|
-
if (selectedOwner) {
|
|
33
|
-
onSelectedOwnerChange?.(selectedOwner);
|
|
34
|
-
}
|
|
35
|
-
}}
|
|
36
|
-
placeholder="Owner"
|
|
37
|
-
renderStartIcon={() => <GitOwnerIcon owner={selectedOwner} />}
|
|
38
|
-
size="large"
|
|
39
|
-
sx={sx}
|
|
40
|
-
value={selectedOwner ? formatGitOwnerKey(selectedOwner) : undefined}
|
|
41
|
-
>
|
|
42
|
-
{owners.map((owner) => (
|
|
43
|
-
<SelectItem
|
|
44
|
-
key={formatGitOwnerKey(owner)}
|
|
45
|
-
renderStartIcon={() => <GitOwnerIcon owner={owner} />}
|
|
46
|
-
size="large"
|
|
47
|
-
value={formatGitOwnerKey(owner)}
|
|
48
|
-
>
|
|
49
|
-
{owner.name}
|
|
50
|
-
</SelectItem>
|
|
51
|
-
))}
|
|
52
|
-
</Select>
|
|
53
|
-
);
|
|
54
|
-
|
|
55
|
-
type GitOwnerIconProps = { owner: GitOwner | undefined };
|
|
56
|
-
|
|
57
|
-
const GitOwnerIcon: FC<GitOwnerIconProps> = ({ owner }) => {
|
|
58
|
-
const { Icon } = gitProviderToConfig[owner?.provider ?? "gitHub"];
|
|
59
|
-
return <Icon color={theme.color.grey11} />;
|
|
60
|
-
};
|
|
61
|
-
|
|
62
|
-
function formatGitOwnerKey(owner: GitOwner): string {
|
|
63
|
-
return `${owner.provider}@${owner.id}`;
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
function parseGitOwnerKey(key: string): string[] {
|
|
67
|
-
return key.split("@");
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
// TODO(DT-1928): export the `SX` type from `@prismicio/editor-ui`.
|
|
71
|
-
type SX = ComponentPropsWithoutRef<typeof Select>["sx"];
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
import { GIT_PROVIDER, GitProvider } from "@slicemachine/manager/client";
|
|
2
|
-
|
|
3
|
-
import { BitbucketIcon } from "@/icons/BitbucketIcon";
|
|
4
|
-
import { GitHubIcon } from "@/icons/GitHubIcon";
|
|
5
|
-
import { GitLabIcon } from "@/icons/GitLabIcon";
|
|
6
|
-
import { managerClient } from "@/managerClient";
|
|
7
|
-
|
|
8
|
-
export const gitProviderToConfig = {
|
|
9
|
-
gitHub: {
|
|
10
|
-
connect: async () => await openInstallationWindow("gitHub"),
|
|
11
|
-
Icon: GitHubIcon,
|
|
12
|
-
name: "GitHub",
|
|
13
|
-
supported: isSupported("gitHub"),
|
|
14
|
-
},
|
|
15
|
-
bitbucket: {
|
|
16
|
-
connect: async () => await openInstallationWindow("bitbucket"),
|
|
17
|
-
Icon: BitbucketIcon,
|
|
18
|
-
name: "Bitbucket",
|
|
19
|
-
supported: isSupported("bitbucket"),
|
|
20
|
-
},
|
|
21
|
-
gitLab: {
|
|
22
|
-
connect: async () => await openInstallationWindow("gitLab"),
|
|
23
|
-
Icon: GitLabIcon,
|
|
24
|
-
name: "GitLab",
|
|
25
|
-
supported: isSupported("gitLab"),
|
|
26
|
-
},
|
|
27
|
-
};
|
|
28
|
-
|
|
29
|
-
async function openInstallationWindow(provider: string) {
|
|
30
|
-
if (!isSupported(provider)) {
|
|
31
|
-
throw new Error("Not implemented.");
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
const url = await managerClient.git.getProviderAppInstallURL({ provider });
|
|
35
|
-
window.open(url, "git-provider-app-installation");
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
function isSupported(provider: string): provider is GitProvider {
|
|
39
|
-
return Boolean(Object.values<string>(GIT_PROVIDER).includes(provider));
|
|
40
|
-
}
|