slice-machine-ui 1.20.1-dev-next-release.2 → 1.20.1-dev-next-release.3
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/components/Navigation/index.tsx +13 -17
- package/components/ReviewModal/ReviewForm.tsx +2 -2
- package/components/ReviewModal/ReviewModal.tsx +7 -0
- package/out/404.html +1 -1
- package/out/_next/static/BIxidu02_xbgjO9EV7tg4/_buildManifest.js +1 -0
- package/out/_next/static/chunks/{18539003-371d86ea83e7293b.js → 18539003-5d8b6a04053638af.js} +2 -2
- package/out/_next/static/chunks/{482-39cef3a713901788.js → 482-30c0f114c7213fa3.js} +1 -1
- package/out/_next/static/chunks/{125-f0e2eb84ee39757a.js → 505-fa47e200ac3a012d.js} +1 -1
- package/out/_next/static/chunks/{550-e72c08c598051224.js → 550-abf97d3008006056.js} +1 -1
- package/out/_next/static/chunks/{80-821a0b5d4ad61185.js → 80-72d903b2a0bd5dc3.js} +1 -1
- package/out/_next/static/chunks/{840-884e41a48b92e5d3.js → 840-8cec2bbd104111f2.js} +1 -1
- package/out/_next/static/chunks/{904-69cc3c4be2bff626.js → 904-cb627b6d7b8068f9.js} +1 -1
- package/out/_next/static/chunks/958-8f814daf5896ff97.js +1 -0
- package/out/_next/static/chunks/pages/{_app-29fdd91c10c9d0b3.js → _app-2d01c2c528624eaf.js} +44 -44
- package/out/_next/static/chunks/pages/{changes-e388be4457a43c3a.js → changes-494c71511b2e8989.js} +1 -1
- package/out/_next/static/chunks/pages/index-d8e3a2c0d712904f.js +1 -0
- package/out/_next/static/chunks/pages/slices/[lib]/[sliceName]/[variation]/{simulator-79a62d775e64898c.js → simulator-7b17cb59d0db03b5.js} +1 -1
- package/out/_next/static/chunks/pages/slices/[lib]/[sliceName]/{[variation]-481c9b569db5ca0e.js → [variation]-763cc8c12e977b4a.js} +1 -1
- package/out/_next/static/css/31841735992dea23.css +1 -0
- package/out/_next/static/css/58a89606d9ca9093.css +1 -0
- package/out/_next/static/css/5d18ccf403d4649a.css +1 -0
- package/out/_next/static/css/{51597cd1f01c4889.css → 78250665d395ea50.css} +1 -1
- package/out/_next/static/css/{16b41648cd1de03b.css → b0be58d878c0fac3.css} +1 -1
- package/out/_next/static/css/e48f99beffa085f5.css +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 +7 -7
- package/pages/_app.tsx +35 -28
- package/src/components/Counter/Counter.css.ts +26 -0
- package/src/components/Counter/Counter.stories.tsx +17 -0
- package/src/components/Counter/Counter.tsx +16 -0
- package/src/components/Counter/index.ts +1 -0
- package/src/features/inAppGuide/InAppGuideContext.tsx +47 -0
- package/src/features/inAppGuide/InAppGuideDialog.tsx +97 -0
- package/src/features/inAppGuide/inAppGuideContent.tsx +65 -0
- package/src/hooks/usePersistedState.ts +34 -0
- package/src/hooks/useRepositoryInformation.ts +24 -0
- package/src/icons/FlowerBackgroundIcon.tsx +17 -0
- package/src/icons/HelpIcon.tsx +19 -0
- package/out/_next/static/4sJdks5802_WcTjcqeA7c/_buildManifest.js +0 -1
- package/out/_next/static/chunks/958-c90d60818f1c468a.js +0 -1
- package/out/_next/static/chunks/pages/index-941b44c74dd339e4.js +0 -1
- package/out/_next/static/css/3e88bd24e38f18d0.css +0 -1
- package/out/_next/static/css/412af4286eb0b283.css +0 -1
- package/out/_next/static/css/6e4843007ff41825.css +0 -1
- package/out/_next/static/css/867d8d7ab4a75762.css +0 -1
- /package/out/_next/static/{4sJdks5802_WcTjcqeA7c → BIxidu02_xbgjO9EV7tg4}/_ssgManifest.js +0 -0
package/out/changelog.html
CHANGED
|
@@ -1 +1 @@
|
|
|
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/
|
|
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/e48f99beffa085f5.css" as="style"/><link rel="stylesheet" href="/_next/static/css/e48f99beffa085f5.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/_next/static/chunks/polyfills-c67a75d1b6f99dc8.js"></script><script src="/_next/static/chunks/webpack-2f903acb0cccbf9e.js" defer=""></script><script src="/_next/static/chunks/framework-cdccea7a52cc6e81.js" defer=""></script><script src="/_next/static/chunks/main-5e6780279ca21cb9.js" defer=""></script><script src="/_next/static/chunks/pages/_app-2d01c2c528624eaf.js" defer=""></script><script src="/_next/static/chunks/870-0c7a8a9622de78b7.js" defer=""></script><script src="/_next/static/chunks/pages/changelog-fa36b9995c26e1d7.js" defer=""></script><script src="/_next/static/BIxidu02_xbgjO9EV7tg4/_buildManifest.js" defer=""></script><script src="/_next/static/BIxidu02_xbgjO9EV7tg4/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/changelog","query":{},"buildId":"BIxidu02_xbgjO9EV7tg4","runtimeConfig":{"sentryEnvironment":"alpha"},"nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
|
package/out/changes.html
CHANGED
|
@@ -1 +1 @@
|
|
|
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/
|
|
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/e48f99beffa085f5.css" as="style"/><link rel="stylesheet" href="/_next/static/css/e48f99beffa085f5.css" data-n-g=""/><link rel="preload" href="/_next/static/css/78250665d395ea50.css" as="style"/><link rel="stylesheet" href="/_next/static/css/78250665d395ea50.css" data-n-p=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/_next/static/chunks/polyfills-c67a75d1b6f99dc8.js"></script><script src="/_next/static/chunks/webpack-2f903acb0cccbf9e.js" defer=""></script><script src="/_next/static/chunks/framework-cdccea7a52cc6e81.js" defer=""></script><script src="/_next/static/chunks/main-5e6780279ca21cb9.js" defer=""></script><script src="/_next/static/chunks/pages/_app-2d01c2c528624eaf.js" defer=""></script><script src="/_next/static/chunks/c8eae200-966ce352f7b5d2b9.js" defer=""></script><script src="/_next/static/chunks/8eec4907-b712959d9f984b68.js" defer=""></script><script src="/_next/static/chunks/918-38d08f1e885b222d.js" defer=""></script><script src="/_next/static/chunks/958-8f814daf5896ff97.js" defer=""></script><script src="/_next/static/chunks/80-72d903b2a0bd5dc3.js" defer=""></script><script src="/_next/static/chunks/pages/changes-494c71511b2e8989.js" defer=""></script><script src="/_next/static/BIxidu02_xbgjO9EV7tg4/_buildManifest.js" defer=""></script><script src="/_next/static/BIxidu02_xbgjO9EV7tg4/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/changes","query":{},"buildId":"BIxidu02_xbgjO9EV7tg4","runtimeConfig":{"sentryEnvironment":"alpha"},"nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
|
|
@@ -1 +1 @@
|
|
|
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/
|
|
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/e48f99beffa085f5.css" as="style"/><link rel="stylesheet" href="/_next/static/css/e48f99beffa085f5.css" data-n-g=""/><link rel="preload" href="/_next/static/css/5d18ccf403d4649a.css" as="style"/><link rel="stylesheet" href="/_next/static/css/5d18ccf403d4649a.css" data-n-p=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/_next/static/chunks/polyfills-c67a75d1b6f99dc8.js"></script><script src="/_next/static/chunks/webpack-2f903acb0cccbf9e.js" defer=""></script><script src="/_next/static/chunks/framework-cdccea7a52cc6e81.js" defer=""></script><script src="/_next/static/chunks/main-5e6780279ca21cb9.js" defer=""></script><script src="/_next/static/chunks/pages/_app-2d01c2c528624eaf.js" defer=""></script><script src="/_next/static/chunks/474-2393e400314474be.js" defer=""></script><script src="/_next/static/chunks/958-8f814daf5896ff97.js" defer=""></script><script src="/_next/static/chunks/550-abf97d3008006056.js" defer=""></script><script src="/_next/static/chunks/482-30c0f114c7213fa3.js" defer=""></script><script src="/_next/static/chunks/904-cb627b6d7b8068f9.js" defer=""></script><script src="/_next/static/chunks/pages/custom-types/%5BcustomTypeId%5D-3a37eb3373bb8823.js" defer=""></script><script src="/_next/static/BIxidu02_xbgjO9EV7tg4/_buildManifest.js" defer=""></script><script src="/_next/static/BIxidu02_xbgjO9EV7tg4/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/custom-types/[customTypeId]","query":{},"buildId":"BIxidu02_xbgjO9EV7tg4","runtimeConfig":{"sentryEnvironment":"alpha"},"nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
|
package/out/custom-types.html
CHANGED
|
@@ -1 +1 @@
|
|
|
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/
|
|
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/e48f99beffa085f5.css" as="style"/><link rel="stylesheet" href="/_next/static/css/e48f99beffa085f5.css" data-n-g=""/><link rel="preload" href="/_next/static/css/b0be58d878c0fac3.css" as="style"/><link rel="stylesheet" href="/_next/static/css/b0be58d878c0fac3.css" data-n-p=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/_next/static/chunks/polyfills-c67a75d1b6f99dc8.js"></script><script src="/_next/static/chunks/webpack-2f903acb0cccbf9e.js" defer=""></script><script src="/_next/static/chunks/framework-cdccea7a52cc6e81.js" defer=""></script><script src="/_next/static/chunks/main-5e6780279ca21cb9.js" defer=""></script><script src="/_next/static/chunks/pages/_app-2d01c2c528624eaf.js" defer=""></script><script src="/_next/static/chunks/550-abf97d3008006056.js" defer=""></script><script src="/_next/static/chunks/840-8cec2bbd104111f2.js" defer=""></script><script src="/_next/static/chunks/pages/custom-types-2f5664d9492b13fb.js" defer=""></script><script src="/_next/static/BIxidu02_xbgjO9EV7tg4/_buildManifest.js" defer=""></script><script src="/_next/static/BIxidu02_xbgjO9EV7tg4/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/custom-types","query":{},"buildId":"BIxidu02_xbgjO9EV7tg4","runtimeConfig":{"sentryEnvironment":"alpha"},"nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
|
package/out/index.html
CHANGED
|
@@ -1 +1 @@
|
|
|
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/
|
|
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/e48f99beffa085f5.css" as="style"/><link rel="stylesheet" href="/_next/static/css/e48f99beffa085f5.css" data-n-g=""/><link rel="preload" href="/_next/static/css/b0be58d878c0fac3.css" as="style"/><link rel="stylesheet" href="/_next/static/css/b0be58d878c0fac3.css" data-n-p=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/_next/static/chunks/polyfills-c67a75d1b6f99dc8.js"></script><script src="/_next/static/chunks/webpack-2f903acb0cccbf9e.js" defer=""></script><script src="/_next/static/chunks/framework-cdccea7a52cc6e81.js" defer=""></script><script src="/_next/static/chunks/main-5e6780279ca21cb9.js" defer=""></script><script src="/_next/static/chunks/pages/_app-2d01c2c528624eaf.js" defer=""></script><script src="/_next/static/chunks/550-abf97d3008006056.js" defer=""></script><script src="/_next/static/chunks/840-8cec2bbd104111f2.js" defer=""></script><script src="/_next/static/chunks/pages/index-d8e3a2c0d712904f.js" defer=""></script><script src="/_next/static/BIxidu02_xbgjO9EV7tg4/_buildManifest.js" defer=""></script><script src="/_next/static/BIxidu02_xbgjO9EV7tg4/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/","query":{},"buildId":"BIxidu02_xbgjO9EV7tg4","runtimeConfig":{"sentryEnvironment":"alpha"},"nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
|
package/out/labs.html
CHANGED
|
@@ -1 +1 @@
|
|
|
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/
|
|
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/e48f99beffa085f5.css" as="style"/><link rel="stylesheet" href="/_next/static/css/e48f99beffa085f5.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/_next/static/chunks/polyfills-c67a75d1b6f99dc8.js"></script><script src="/_next/static/chunks/webpack-2f903acb0cccbf9e.js" defer=""></script><script src="/_next/static/chunks/framework-cdccea7a52cc6e81.js" defer=""></script><script src="/_next/static/chunks/main-5e6780279ca21cb9.js" defer=""></script><script src="/_next/static/chunks/pages/_app-2d01c2c528624eaf.js" defer=""></script><script src="/_next/static/chunks/pages/labs-ebce03a4e7a95a4e.js" defer=""></script><script src="/_next/static/BIxidu02_xbgjO9EV7tg4/_buildManifest.js" defer=""></script><script src="/_next/static/BIxidu02_xbgjO9EV7tg4/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/labs","query":{},"buildId":"BIxidu02_xbgjO9EV7tg4","runtimeConfig":{"sentryEnvironment":"alpha"},"nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
|
|
@@ -1 +1 @@
|
|
|
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/
|
|
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/e48f99beffa085f5.css" as="style"/><link rel="stylesheet" href="/_next/static/css/e48f99beffa085f5.css" data-n-g=""/><link rel="preload" href="/_next/static/css/5d18ccf403d4649a.css" as="style"/><link rel="stylesheet" href="/_next/static/css/5d18ccf403d4649a.css" data-n-p=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/_next/static/chunks/polyfills-c67a75d1b6f99dc8.js"></script><script src="/_next/static/chunks/webpack-2f903acb0cccbf9e.js" defer=""></script><script src="/_next/static/chunks/framework-cdccea7a52cc6e81.js" defer=""></script><script src="/_next/static/chunks/main-5e6780279ca21cb9.js" defer=""></script><script src="/_next/static/chunks/pages/_app-2d01c2c528624eaf.js" defer=""></script><script src="/_next/static/chunks/474-2393e400314474be.js" defer=""></script><script src="/_next/static/chunks/958-8f814daf5896ff97.js" defer=""></script><script src="/_next/static/chunks/550-abf97d3008006056.js" defer=""></script><script src="/_next/static/chunks/482-30c0f114c7213fa3.js" defer=""></script><script src="/_next/static/chunks/904-cb627b6d7b8068f9.js" defer=""></script><script src="/_next/static/chunks/pages/page-types/%5BpageTypeId%5D-733f3890c0466a05.js" defer=""></script><script src="/_next/static/BIxidu02_xbgjO9EV7tg4/_buildManifest.js" defer=""></script><script src="/_next/static/BIxidu02_xbgjO9EV7tg4/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/page-types/[pageTypeId]","query":{},"buildId":"BIxidu02_xbgjO9EV7tg4","runtimeConfig":{"sentryEnvironment":"alpha"},"nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
|
|
@@ -1 +1 @@
|
|
|
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/
|
|
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/e48f99beffa085f5.css" as="style"/><link rel="stylesheet" href="/_next/static/css/e48f99beffa085f5.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/_next/static/chunks/polyfills-c67a75d1b6f99dc8.js"></script><script src="/_next/static/chunks/webpack-2f903acb0cccbf9e.js" defer=""></script><script src="/_next/static/chunks/framework-cdccea7a52cc6e81.js" defer=""></script><script src="/_next/static/chunks/main-5e6780279ca21cb9.js" defer=""></script><script src="/_next/static/chunks/pages/_app-2d01c2c528624eaf.js" defer=""></script><script src="/_next/static/chunks/c8eae200-966ce352f7b5d2b9.js" defer=""></script><script src="/_next/static/chunks/72585f70-28b4d7d5384b3703.js" defer=""></script><script src="/_next/static/chunks/18539003-5d8b6a04053638af.js" defer=""></script><script src="/_next/static/chunks/505-fa47e200ac3a012d.js" defer=""></script><script src="/_next/static/chunks/pages/slices/%5Blib%5D/%5BsliceName%5D/%5Bvariation%5D/simulator-7b17cb59d0db03b5.js" defer=""></script><script src="/_next/static/BIxidu02_xbgjO9EV7tg4/_buildManifest.js" defer=""></script><script src="/_next/static/BIxidu02_xbgjO9EV7tg4/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/slices/[lib]/[sliceName]/[variation]/simulator","query":{},"buildId":"BIxidu02_xbgjO9EV7tg4","runtimeConfig":{"sentryEnvironment":"alpha"},"nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
|
|
@@ -1 +1 @@
|
|
|
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/
|
|
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/e48f99beffa085f5.css" as="style"/><link rel="stylesheet" href="/_next/static/css/e48f99beffa085f5.css" data-n-g=""/><link rel="preload" href="/_next/static/css/31841735992dea23.css" as="style"/><link rel="stylesheet" href="/_next/static/css/31841735992dea23.css" data-n-p=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/_next/static/chunks/polyfills-c67a75d1b6f99dc8.js"></script><script src="/_next/static/chunks/webpack-2f903acb0cccbf9e.js" defer=""></script><script src="/_next/static/chunks/framework-cdccea7a52cc6e81.js" defer=""></script><script src="/_next/static/chunks/main-5e6780279ca21cb9.js" defer=""></script><script src="/_next/static/chunks/pages/_app-2d01c2c528624eaf.js" defer=""></script><script src="/_next/static/chunks/c8eae200-966ce352f7b5d2b9.js" defer=""></script><script src="/_next/static/chunks/958-8f814daf5896ff97.js" defer=""></script><script src="/_next/static/chunks/80-72d903b2a0bd5dc3.js" defer=""></script><script src="/_next/static/chunks/482-30c0f114c7213fa3.js" defer=""></script><script src="/_next/static/chunks/pages/slices/%5Blib%5D/%5BsliceName%5D/%5Bvariation%5D-763cc8c12e977b4a.js" defer=""></script><script src="/_next/static/BIxidu02_xbgjO9EV7tg4/_buildManifest.js" defer=""></script><script src="/_next/static/BIxidu02_xbgjO9EV7tg4/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/slices/[lib]/[sliceName]/[variation]","query":{},"buildId":"BIxidu02_xbgjO9EV7tg4","runtimeConfig":{"sentryEnvironment":"alpha"},"nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
|
package/out/slices.html
CHANGED
|
@@ -1 +1 @@
|
|
|
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/
|
|
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/e48f99beffa085f5.css" as="style"/><link rel="stylesheet" href="/_next/static/css/e48f99beffa085f5.css" data-n-g=""/><link rel="preload" href="/_next/static/css/58a89606d9ca9093.css" as="style"/><link rel="stylesheet" href="/_next/static/css/58a89606d9ca9093.css" data-n-p=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/_next/static/chunks/polyfills-c67a75d1b6f99dc8.js"></script><script src="/_next/static/chunks/webpack-2f903acb0cccbf9e.js" defer=""></script><script src="/_next/static/chunks/framework-cdccea7a52cc6e81.js" defer=""></script><script src="/_next/static/chunks/main-5e6780279ca21cb9.js" defer=""></script><script src="/_next/static/chunks/pages/_app-2d01c2c528624eaf.js" defer=""></script><script src="/_next/static/chunks/c8eae200-966ce352f7b5d2b9.js" defer=""></script><script src="/_next/static/chunks/958-8f814daf5896ff97.js" defer=""></script><script src="/_next/static/chunks/80-72d903b2a0bd5dc3.js" defer=""></script><script src="/_next/static/chunks/pages/slices-22db04643850c1d8.js" defer=""></script><script src="/_next/static/BIxidu02_xbgjO9EV7tg4/_buildManifest.js" defer=""></script><script src="/_next/static/BIxidu02_xbgjO9EV7tg4/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/slices","query":{},"buildId":"BIxidu02_xbgjO9EV7tg4","runtimeConfig":{"sentryEnvironment":"alpha"},"nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "slice-machine-ui",
|
|
3
|
-
"version": "1.20.1-dev-next-release.
|
|
3
|
+
"version": "1.20.1-dev-next-release.3",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"description": "A visual builder for your Slice Models with all the tools you need to generate data models and mock CMS content locally.",
|
|
6
6
|
"repository": {
|
|
@@ -31,15 +31,15 @@
|
|
|
31
31
|
"start-slicemachine": "./bin/start-slicemachine.cjs"
|
|
32
32
|
},
|
|
33
33
|
"dependencies": {
|
|
34
|
-
"@slicemachine/manager": "^0.16.1-dev-next-release.
|
|
35
|
-
"start-slicemachine": "^0.12.6-dev-next-release.
|
|
34
|
+
"@slicemachine/manager": "^0.16.1-dev-next-release.3",
|
|
35
|
+
"start-slicemachine": "^0.12.6-dev-next-release.3"
|
|
36
36
|
},
|
|
37
37
|
"devDependencies": {
|
|
38
38
|
"@emotion/react": "11.11.1",
|
|
39
39
|
"@extractus/oembed-extractor": "3.1.8",
|
|
40
|
-
"@prismicio/editor-fields": "0.4.
|
|
41
|
-
"@prismicio/editor-support": "0.4.
|
|
42
|
-
"@prismicio/editor-ui": "0.4.
|
|
40
|
+
"@prismicio/editor-fields": "0.4.16",
|
|
41
|
+
"@prismicio/editor-support": "0.4.16",
|
|
42
|
+
"@prismicio/editor-ui": "0.4.16",
|
|
43
43
|
"@prismicio/mocks": "2.0.0-alpha.2",
|
|
44
44
|
"@prismicio/simulator": "0.1.4",
|
|
45
45
|
"@prismicio/types-internal": "2.2.0",
|
|
@@ -130,5 +130,5 @@
|
|
|
130
130
|
"vitest": "0.32.0",
|
|
131
131
|
"yup": "0.32.11"
|
|
132
132
|
},
|
|
133
|
-
"gitHead": "
|
|
133
|
+
"gitHead": "31f84c8560e91d356c375c0e304d4e020eb0009b"
|
|
134
134
|
}
|
package/pages/_app.tsx
CHANGED
|
@@ -35,6 +35,8 @@ import { PersistGate } from "redux-persist/integration/react";
|
|
|
35
35
|
import { ThemeProvider as ThemeUIThemeProvider, useThemeUI } from "theme-ui";
|
|
36
36
|
|
|
37
37
|
import { AppLayout, AppLayoutContent } from "@components/AppLayout";
|
|
38
|
+
import { InAppGuideProvider } from "@src/features/inAppGuide/InAppGuideContext";
|
|
39
|
+
import { InAppGuideDialog } from "@src/features/inAppGuide/InAppGuideDialog";
|
|
38
40
|
|
|
39
41
|
import SliceMachineApp from "../components/App";
|
|
40
42
|
import LoadingPage from "../components/LoadingPage";
|
|
@@ -130,35 +132,40 @@ function App({
|
|
|
130
132
|
<Provider store={smStore.store}>
|
|
131
133
|
<ConnectedRouter Router={Router}>
|
|
132
134
|
<PersistGate loading={null} persistor={smStore.persistor}>
|
|
133
|
-
<
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
<
|
|
140
|
-
<
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
>
|
|
155
|
-
<
|
|
156
|
-
<
|
|
157
|
-
<
|
|
158
|
-
|
|
135
|
+
<ErrorBoundary
|
|
136
|
+
renderError={(error) => {
|
|
137
|
+
console.error(error);
|
|
138
|
+
|
|
139
|
+
return (
|
|
140
|
+
<AppLayout>
|
|
141
|
+
<AppLayoutContent>
|
|
142
|
+
<Box
|
|
143
|
+
alignItems="center"
|
|
144
|
+
justifyContent="center"
|
|
145
|
+
>
|
|
146
|
+
<DefaultErrorMessage
|
|
147
|
+
title="Error"
|
|
148
|
+
description="An error occurred while rendering the app."
|
|
149
|
+
/>
|
|
150
|
+
</Box>
|
|
151
|
+
</AppLayoutContent>
|
|
152
|
+
</AppLayout>
|
|
153
|
+
);
|
|
154
|
+
}}
|
|
155
|
+
>
|
|
156
|
+
<InAppGuideProvider>
|
|
157
|
+
<RouteChangeProvider>
|
|
158
|
+
<Suspense fallback={<LoadingPage />}>
|
|
159
|
+
<ComponentLayout>
|
|
160
|
+
<Component {...pageProps} />
|
|
161
|
+
</ComponentLayout>
|
|
162
|
+
</Suspense>
|
|
163
|
+
</RouteChangeProvider>
|
|
164
|
+
<Suspense>
|
|
165
|
+
<InAppGuideDialog />
|
|
159
166
|
</Suspense>
|
|
160
|
-
</
|
|
161
|
-
</
|
|
167
|
+
</InAppGuideProvider>
|
|
168
|
+
</ErrorBoundary>
|
|
162
169
|
</PersistGate>
|
|
163
170
|
</ConnectedRouter>
|
|
164
171
|
<ToastContainer />
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { colors, sprinkles } from "@prismicio/editor-ui";
|
|
2
|
+
import { style } from "@vanilla-extract/css";
|
|
3
|
+
|
|
4
|
+
export const root = sprinkles({
|
|
5
|
+
all: "unset",
|
|
6
|
+
display: "inline-flex",
|
|
7
|
+
alignItems: "center",
|
|
8
|
+
position: "relative",
|
|
9
|
+
});
|
|
10
|
+
|
|
11
|
+
export const count = style([
|
|
12
|
+
sprinkles({
|
|
13
|
+
all: "unset",
|
|
14
|
+
display: "revert",
|
|
15
|
+
color: colors.grey1,
|
|
16
|
+
fontFamily: "body",
|
|
17
|
+
position: "absolute",
|
|
18
|
+
}),
|
|
19
|
+
{
|
|
20
|
+
fontSize: "9px",
|
|
21
|
+
fontWeight: 500,
|
|
22
|
+
left: "50%",
|
|
23
|
+
top: "50%",
|
|
24
|
+
transform: "translate(-50%, -50%)",
|
|
25
|
+
},
|
|
26
|
+
]);
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { Meta, StoryObj } from "@storybook/react";
|
|
2
|
+
|
|
3
|
+
import { Counter } from "./Counter";
|
|
4
|
+
|
|
5
|
+
type Story = StoryObj<typeof meta>;
|
|
6
|
+
|
|
7
|
+
const meta = {
|
|
8
|
+
component: Counter,
|
|
9
|
+
} satisfies Meta<typeof Counter>;
|
|
10
|
+
|
|
11
|
+
export default meta;
|
|
12
|
+
|
|
13
|
+
export const Default = {
|
|
14
|
+
args: {
|
|
15
|
+
children: "1",
|
|
16
|
+
},
|
|
17
|
+
} satisfies Story;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { FC, PropsWithChildren } from "react";
|
|
2
|
+
|
|
3
|
+
import { FlowerBackgroundIcon } from "@src/icons/FlowerBackgroundIcon";
|
|
4
|
+
|
|
5
|
+
import * as styles from "./Counter.css";
|
|
6
|
+
|
|
7
|
+
export const Counter: FC<PropsWithChildren> = (props) => {
|
|
8
|
+
const { children } = props;
|
|
9
|
+
|
|
10
|
+
return (
|
|
11
|
+
<div className={styles.root}>
|
|
12
|
+
<FlowerBackgroundIcon />
|
|
13
|
+
<span className={styles.count}>{children}</span>
|
|
14
|
+
</div>
|
|
15
|
+
);
|
|
16
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { Counter } from "./Counter";
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import {
|
|
2
|
+
Dispatch,
|
|
3
|
+
FC,
|
|
4
|
+
PropsWithChildren,
|
|
5
|
+
SetStateAction,
|
|
6
|
+
createContext,
|
|
7
|
+
useContext,
|
|
8
|
+
useMemo,
|
|
9
|
+
} from "react";
|
|
10
|
+
|
|
11
|
+
import { usePersistedState } from "@src/hooks/usePersistedState";
|
|
12
|
+
|
|
13
|
+
type InAppGuideContextValue = {
|
|
14
|
+
isInAppGuideOpen: boolean;
|
|
15
|
+
setIsInAppGuideOpen: Dispatch<SetStateAction<boolean>>;
|
|
16
|
+
};
|
|
17
|
+
|
|
18
|
+
export const InAppGuideContext = createContext<
|
|
19
|
+
InAppGuideContextValue | undefined
|
|
20
|
+
>(undefined);
|
|
21
|
+
|
|
22
|
+
export const InAppGuideProvider: FC<PropsWithChildren> = (props) => {
|
|
23
|
+
const { children } = props;
|
|
24
|
+
const [isInAppGuideOpen, setIsInAppGuideOpen] = usePersistedState(
|
|
25
|
+
"isInAppGuideOpen",
|
|
26
|
+
true,
|
|
27
|
+
);
|
|
28
|
+
|
|
29
|
+
const memoizedValue = useMemo(
|
|
30
|
+
() => ({ isInAppGuideOpen, setIsInAppGuideOpen }),
|
|
31
|
+
[isInAppGuideOpen, setIsInAppGuideOpen],
|
|
32
|
+
);
|
|
33
|
+
|
|
34
|
+
return (
|
|
35
|
+
<InAppGuideContext.Provider value={memoizedValue}>
|
|
36
|
+
{children}
|
|
37
|
+
</InAppGuideContext.Provider>
|
|
38
|
+
);
|
|
39
|
+
};
|
|
40
|
+
|
|
41
|
+
export const useInAppGuide = () => {
|
|
42
|
+
const context = useContext(InAppGuideContext);
|
|
43
|
+
if (context === undefined) {
|
|
44
|
+
throw new Error("useInAppGuide must be used within an InAppGuideProvider");
|
|
45
|
+
}
|
|
46
|
+
return context;
|
|
47
|
+
};
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import { FC } from "react";
|
|
2
|
+
import {
|
|
3
|
+
Box,
|
|
4
|
+
Dialog,
|
|
5
|
+
DialogContent,
|
|
6
|
+
DialogHeader,
|
|
7
|
+
IconButton,
|
|
8
|
+
ScrollArea,
|
|
9
|
+
Separator,
|
|
10
|
+
Text,
|
|
11
|
+
Video,
|
|
12
|
+
} from "@prismicio/editor-ui";
|
|
13
|
+
|
|
14
|
+
import { Counter } from "@src/components/Counter";
|
|
15
|
+
import { HelpIcon } from "@src/icons/HelpIcon";
|
|
16
|
+
import { useIsEmptyProject } from "@src/hooks/useIsEmptyProject";
|
|
17
|
+
|
|
18
|
+
import { useInAppGuideContent } from "./inAppGuideContent";
|
|
19
|
+
import { useInAppGuide } from "./InAppGuideContext";
|
|
20
|
+
|
|
21
|
+
export const InAppGuideDialog: FC = () => {
|
|
22
|
+
const isEmptyProject = useIsEmptyProject();
|
|
23
|
+
const { isInAppGuideOpen, setIsInAppGuideOpen } = useInAppGuide();
|
|
24
|
+
const inAppGuideContent = useInAppGuideContent();
|
|
25
|
+
|
|
26
|
+
const trigger =
|
|
27
|
+
isEmptyProject === false ? (
|
|
28
|
+
<Box position="fixed" right={16} bottom={16}>
|
|
29
|
+
<IconButton
|
|
30
|
+
color="purple"
|
|
31
|
+
icon={<HelpIcon />}
|
|
32
|
+
onClick={() => {
|
|
33
|
+
setIsInAppGuideOpen(!isInAppGuideOpen);
|
|
34
|
+
}}
|
|
35
|
+
radius="full"
|
|
36
|
+
variant="solid"
|
|
37
|
+
/>
|
|
38
|
+
</Box>
|
|
39
|
+
) : undefined;
|
|
40
|
+
|
|
41
|
+
return (
|
|
42
|
+
<Dialog
|
|
43
|
+
trigger={trigger}
|
|
44
|
+
modal={false}
|
|
45
|
+
open={isInAppGuideOpen && isEmptyProject === false}
|
|
46
|
+
onOpenChange={(open) => {
|
|
47
|
+
setIsInAppGuideOpen(open);
|
|
48
|
+
}}
|
|
49
|
+
position="bottomRight"
|
|
50
|
+
size={{
|
|
51
|
+
width: 360,
|
|
52
|
+
height: 456,
|
|
53
|
+
}}
|
|
54
|
+
>
|
|
55
|
+
<DialogHeader title={inAppGuideContent.title} />
|
|
56
|
+
<DialogContent>
|
|
57
|
+
<ScrollArea>
|
|
58
|
+
<Box flexDirection="column" padding={{ inline: 16, block: 8 }}>
|
|
59
|
+
<Text>{inAppGuideContent.description}</Text>
|
|
60
|
+
</Box>
|
|
61
|
+
|
|
62
|
+
<Box>
|
|
63
|
+
<Separator />
|
|
64
|
+
</Box>
|
|
65
|
+
|
|
66
|
+
{inAppGuideContent.steps.map((content, index) => (
|
|
67
|
+
<Box key={index} flexDirection="column">
|
|
68
|
+
<Box flexDirection="column" padding={16} gap={8}>
|
|
69
|
+
<Box alignItems="center" gap={8}>
|
|
70
|
+
<Counter>{index + 1}</Counter>
|
|
71
|
+
<Text component="h3" variant="bold">
|
|
72
|
+
{content.title}
|
|
73
|
+
</Text>
|
|
74
|
+
</Box>
|
|
75
|
+
<Video
|
|
76
|
+
src={content.videoUrl}
|
|
77
|
+
sizing="contain"
|
|
78
|
+
autoPlay
|
|
79
|
+
controls
|
|
80
|
+
loop
|
|
81
|
+
/>
|
|
82
|
+
<Text>{content.description}</Text>
|
|
83
|
+
</Box>
|
|
84
|
+
|
|
85
|
+
<Separator />
|
|
86
|
+
</Box>
|
|
87
|
+
))}
|
|
88
|
+
|
|
89
|
+
<Box flexDirection="column" padding={16} gap={4}>
|
|
90
|
+
<Text variant="bold">{inAppGuideContent.successTitle}</Text>
|
|
91
|
+
<Text>{inAppGuideContent.successDescription}</Text>
|
|
92
|
+
</Box>
|
|
93
|
+
</ScrollArea>
|
|
94
|
+
</DialogContent>
|
|
95
|
+
</Dialog>
|
|
96
|
+
);
|
|
97
|
+
};
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { TextLink, Text } from "@prismicio/editor-ui";
|
|
2
|
+
|
|
3
|
+
import { useRepositoryInformation } from "@src/hooks/useRepositoryInformation";
|
|
4
|
+
|
|
5
|
+
export function useInAppGuideContent() {
|
|
6
|
+
const { repositoryUrl } = useRepositoryInformation();
|
|
7
|
+
|
|
8
|
+
return {
|
|
9
|
+
title: "Build a page in 5 minutes",
|
|
10
|
+
description:
|
|
11
|
+
"Great, now that you have a page type, let's make it a live page!",
|
|
12
|
+
steps: [
|
|
13
|
+
{
|
|
14
|
+
title: "Add slices to your page type",
|
|
15
|
+
videoUrl:
|
|
16
|
+
"https://res.cloudinary.com/dmtf1daqp/video/upload/v1700213517/IN-APP-GUIDE-SM/ADD_SLICE.mp4",
|
|
17
|
+
description: "Use slice templates and add them to your page type.",
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
title: "Code your page",
|
|
21
|
+
videoUrl:
|
|
22
|
+
"https://res.cloudinary.com/dmtf1daqp/video/upload/v1700213517/IN-APP-GUIDE-SM/CODE_SNIP.mp4",
|
|
23
|
+
description:
|
|
24
|
+
"If you don't already have a page component, copy-paste the page snippets provided in your page type to create one.",
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
title: "Push to your Page Builder",
|
|
28
|
+
videoUrl:
|
|
29
|
+
"https://res.cloudinary.com/dmtf1daqp/video/upload/v1700213517/IN-APP-GUIDE-SM/PUSH.mp4",
|
|
30
|
+
description:
|
|
31
|
+
"You have just created some models, but you can't use them yet. First, you must push them to the Page Builder. The Page Builder is where you create content. Go head — push your models.",
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
title: "Create content",
|
|
35
|
+
videoUrl:
|
|
36
|
+
"https://res.cloudinary.com/dmtf1daqp/video/upload/v1700213517/IN-APP-GUIDE-SM/WRITE.mp4",
|
|
37
|
+
description: (
|
|
38
|
+
<>
|
|
39
|
+
Open your{" "}
|
|
40
|
+
<TextLink href={repositoryUrl} underline>
|
|
41
|
+
Page Builder
|
|
42
|
+
</TextLink>
|
|
43
|
+
, create a page, add slices, save, and publish. Then, come back
|
|
44
|
+
here.
|
|
45
|
+
</>
|
|
46
|
+
),
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
title: "Render your page",
|
|
50
|
+
videoUrl:
|
|
51
|
+
"https://res.cloudinary.com/dmtf1daqp/video/upload/v1700213517/IN-APP-GUIDE-SM/PREVIEW.mp4",
|
|
52
|
+
description: (
|
|
53
|
+
<>
|
|
54
|
+
To render the page, run your project in your terminal and visit the
|
|
55
|
+
page on localhost (e.g.{" "}
|
|
56
|
+
<Text component="code">localhost:3000/example-page</Text>).
|
|
57
|
+
</>
|
|
58
|
+
),
|
|
59
|
+
},
|
|
60
|
+
],
|
|
61
|
+
successTitle: "Next",
|
|
62
|
+
successDescription:
|
|
63
|
+
"Create more slices and then go back to the Page Builder to build out your website.",
|
|
64
|
+
};
|
|
65
|
+
}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { Dispatch, SetStateAction, useEffect, useState } from "react";
|
|
2
|
+
|
|
3
|
+
type PersistedState<T> = [T, Dispatch<SetStateAction<T>>];
|
|
4
|
+
|
|
5
|
+
const SLICE_MACHINE_STORAGE_PREFIX = "slice-machine";
|
|
6
|
+
|
|
7
|
+
export function usePersistedState<T>(
|
|
8
|
+
key: string,
|
|
9
|
+
defaultValue: T,
|
|
10
|
+
): PersistedState<T> {
|
|
11
|
+
const computedKey = `${SLICE_MACHINE_STORAGE_PREFIX}_${key}`;
|
|
12
|
+
|
|
13
|
+
const [value, setValue] = useState<T>(() => {
|
|
14
|
+
try {
|
|
15
|
+
const value = localStorage.getItem(computedKey);
|
|
16
|
+
|
|
17
|
+
return value !== null ? (JSON.parse(value) as T) : defaultValue;
|
|
18
|
+
} catch (error) {
|
|
19
|
+
console.warn(`Error reading localStorage key “${computedKey}”:`, error);
|
|
20
|
+
|
|
21
|
+
return defaultValue;
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
|
|
25
|
+
useEffect(() => {
|
|
26
|
+
try {
|
|
27
|
+
localStorage.setItem(computedKey, JSON.stringify(value));
|
|
28
|
+
} catch (error) {
|
|
29
|
+
console.warn(`Error setting localStorage key “${computedKey}”:`, error);
|
|
30
|
+
}
|
|
31
|
+
}, [computedKey, value]);
|
|
32
|
+
|
|
33
|
+
return [value, setValue];
|
|
34
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { useSelector } from "react-redux";
|
|
2
|
+
|
|
3
|
+
import { SliceMachineStoreType } from "@src/redux/type";
|
|
4
|
+
import { getApiEndpoint, getRepoName } from "@src/modules/environment";
|
|
5
|
+
|
|
6
|
+
// TODO: This hook should be extracted to a new manager endpoint
|
|
7
|
+
export function useRepositoryInformation() {
|
|
8
|
+
const { repositoryName, apiEndpoint } = useSelector(
|
|
9
|
+
(store: SliceMachineStoreType) => ({
|
|
10
|
+
repositoryName: getRepoName(store),
|
|
11
|
+
apiEndpoint: getApiEndpoint(store),
|
|
12
|
+
}),
|
|
13
|
+
);
|
|
14
|
+
const repositoryDomain = new URL(apiEndpoint).hostname.replace(".cdn", "");
|
|
15
|
+
const repositoryUrl = apiEndpoint
|
|
16
|
+
.replace(".cdn.", ".")
|
|
17
|
+
.replace("/api/v2", "");
|
|
18
|
+
|
|
19
|
+
return {
|
|
20
|
+
repositoryName,
|
|
21
|
+
repositoryDomain,
|
|
22
|
+
repositoryUrl,
|
|
23
|
+
};
|
|
24
|
+
}
|