slice-machine-ui 1.23.2-beta.9 → 1.24.0

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.
Files changed (130) hide show
  1. package/.depcheckrc +3 -0
  2. package/components/ChangesEmptyState/OfflinePage.tsx +1 -1
  3. package/components/ChangesItems/ChangesItems.tsx +6 -2
  4. package/components/CustomTypeTable/changesPage.tsx +12 -7
  5. package/components/DeleteSliceModal/index.tsx +3 -0
  6. package/components/DeleteVariationModal/index.tsx +1 -0
  7. package/components/Forms/CreateCustomTypeModal/CreateCustomTypeModal.tsx +4 -0
  8. package/components/Forms/CreateSliceModal/CreateSliceModal.tsx +3 -1
  9. package/components/Forms/RenameCustomTypeModal/RenameCustomTypeModal.tsx +6 -1
  10. package/components/Forms/RenameSliceModal/RenameSliceModal.tsx +3 -0
  11. package/components/Forms/RenameVariationModal/RenameVariationModal.tsx +0 -1
  12. package/components/LoginModal/index.tsx +40 -2
  13. package/components/ModalFormCard/index.tsx +0 -1
  14. package/components/Navigation/ChangesItem.tsx +117 -0
  15. package/components/Navigation/Environment.tsx +51 -4
  16. package/components/Navigation/index.css.ts +1 -2
  17. package/components/Navigation/index.test.tsx +5 -85
  18. package/components/Navigation/index.tsx +32 -20
  19. package/components/ReviewModal/ReviewForm.tsx +0 -1
  20. package/lib/builders/SliceBuilder/index.tsx +3 -3
  21. package/lib/builders/common/EditModal/Form.jsx +0 -1
  22. package/lib/builders/common/Zone/Card/components/NewField.tsx +0 -1
  23. package/lib/models/common/ModelStatus/index.ts +25 -0
  24. package/out/404.html +1 -1
  25. package/out/_next/static/chunks/18539003-5f78714a35fde4a1.js +97 -0
  26. package/out/_next/static/chunks/25-3aa4d4b24167d340.js +1 -0
  27. package/out/_next/static/chunks/318-19dbcae10cdb6408.js +1 -0
  28. package/out/_next/static/chunks/727-de03055e40815a3a.js +1 -0
  29. package/out/_next/static/chunks/777-8c5507e3b119b5dc.js +8 -0
  30. package/out/_next/static/chunks/799-0af1215eb2b3c17e.js +1 -0
  31. package/out/_next/static/chunks/904-40686b0426716111.js +1 -0
  32. package/out/_next/static/chunks/pages/_app-bca191df4ac7078e.js +434 -0
  33. package/out/_next/static/chunks/pages/{changelog-afd18276fe018b24.js → changelog-cb1df3a70b20f1b8.js} +1 -1
  34. package/out/_next/static/chunks/pages/changes-ccfd715c2bdc4f83.js +1 -0
  35. package/out/_next/static/chunks/pages/{labs-ee206005948f8e87.js → labs-2adfb5127f9c4081.js} +1 -1
  36. package/out/_next/static/chunks/pages/settings-94bcd7422e8b237d.js +1 -0
  37. package/out/_next/static/chunks/pages/slices/[lib]/[sliceName]/[variation]/{simulator-52c3e1f9d14160b8.js → simulator-aaf65fbec8f5839c.js} +1 -1
  38. package/out/_next/static/chunks/pages/slices/[lib]/[sliceName]/[variation]-90bb2ea76d2abf42.js +1 -0
  39. package/out/_next/static/chunks/pages/slices-e0ce615c38e8338d.js +1 -0
  40. package/out/_next/static/css/39e089aad1742a3a.css +1 -0
  41. package/out/_next/static/css/{37153180c3b0dd66.css → 838fd8bb5a7c32b0.css} +1 -1
  42. package/out/_next/static/css/ca32882a5d2d8d88.css +1 -0
  43. package/out/_next/static/eNujlD43QIdmra7ggcNtK/_buildManifest.js +1 -0
  44. package/out/changelog.html +1 -1
  45. package/out/changes.html +1 -1
  46. package/out/custom-types/[customTypeId].html +1 -1
  47. package/out/custom-types.html +1 -1
  48. package/out/index.html +1 -1
  49. package/out/labs.html +1 -1
  50. package/out/page-types/[pageTypeId].html +1 -1
  51. package/out/settings.html +1 -0
  52. package/out/slices/[lib]/[sliceName]/[variation]/simulator.html +1 -1
  53. package/out/slices/[lib]/[sliceName]/[variation].html +1 -1
  54. package/out/slices.html +1 -1
  55. package/package.json +10 -8
  56. package/pages/_app.tsx +34 -32
  57. package/pages/changes.tsx +27 -41
  58. package/pages/settings.tsx +1 -0
  59. package/postcss.config.js +10 -0
  60. package/src/components/FieldSet/FieldSet.stories.tsx +20 -11
  61. package/src/components/RelativeTime/RelativeTime.stories.tsx +25 -0
  62. package/src/components/RelativeTime/RelativeTime.tsx +40 -0
  63. package/src/components/RelativeTime/index.ts +1 -0
  64. package/src/components/SideNav/SideNav.css.ts +1 -1
  65. package/src/components/SideNav/SideNav.tsx +9 -5
  66. package/src/components/SideNav/SideNavEnvironmentSelector.tsx +31 -11
  67. package/src/features/autoSave/AutoSaveStatusIndicator.tsx +4 -4
  68. package/src/features/customTypes/customTypesBuilder/CustomTypeProvider.tsx +11 -10
  69. package/src/features/customTypes/customTypesBuilder/CustomTypesBuilderPage.tsx +3 -3
  70. package/src/features/environments/actions/setEnvironment.ts +4 -4
  71. package/src/features/settings/SettingsPage.tsx +47 -0
  72. package/src/features/settings/git/ConnectGitRepository.tsx +126 -0
  73. package/src/features/settings/git/ConnectGitRepositoryBlankSlate.tsx +33 -0
  74. package/src/features/settings/git/GitOwnerSelect.tsx +71 -0
  75. package/src/features/settings/git/GitProvider.ts +40 -0
  76. package/src/features/settings/git/GitProviderConnectButtons.tsx +63 -0
  77. package/src/features/settings/git/GitRepositoriesList.tsx +76 -0
  78. package/src/features/settings/git/GitRepositoriesSearch.tsx +69 -0
  79. package/src/features/settings/git/GitRepositoryConnectDialog.tsx +85 -0
  80. package/src/features/settings/git/GitRepositoryDisconnectDialog.tsx +60 -0
  81. package/src/features/settings/git/useGitIntegrationExperiment.ts +8 -0
  82. package/src/features/settings/git/useGitOwners.ts +12 -0
  83. package/src/features/settings/git/useGitRepos.ts +24 -0
  84. package/src/features/settings/git/useLinkedGitRepos.ts +41 -0
  85. package/src/features/settings/git/useWriteAPIToken.ts +23 -0
  86. package/src/features/slices/convertLegacySlice/ConvertLegacySliceAsNewSliceDialog.tsx +0 -1
  87. package/src/features/slices/convertLegacySlice/ConvertLegacySliceAsNewVariationDialog.tsx +0 -1
  88. package/src/features/slices/convertLegacySlice/ConvertLegacySliceMergeWithIdenticalDialog.tsx +0 -1
  89. package/src/features/slices/sliceBuilder/SliceBuilderProvider.tsx +12 -10
  90. package/src/features/sync/AutoSyncProvider.tsx +252 -0
  91. package/src/features/sync/components/AutoSyncStatusIndicator.module.css +17 -0
  92. package/src/features/sync/components/AutoSyncStatusIndicator.module.css.d.ts +5 -0
  93. package/src/features/sync/components/AutoSyncStatusIndicator.tsx +58 -0
  94. package/src/features/sync/fetchUnSyncChanges.ts +40 -0
  95. package/src/features/sync/getUnSyncChanges.ts +144 -0
  96. package/src/features/sync/useUnSyncChanges.ts +32 -0
  97. package/src/hooks/useActionQueue.tsx +177 -0
  98. package/src/hooks/useAuthStatus.ts +12 -0
  99. package/src/hooks/useUser.ts +14 -0
  100. package/src/icons/SettingsIcon.tsx +19 -0
  101. package/src/icons/SyncFailed.tsx +30 -0
  102. package/src/icons/Synced.tsx +19 -0
  103. package/src/icons/Syncing.tsx +23 -0
  104. package/test/__testutils__/index.tsx +8 -5
  105. package/test/src/modules/__fixtures__/serverState.ts +1 -2
  106. package/components/Navigation/ChangesListItem.tsx +0 -74
  107. package/components/Navigation/ChangesRightElement.tsx +0 -33
  108. package/out/_next/static/chunks/18539003-5cc559566b738915.js +0 -97
  109. package/out/_next/static/chunks/25-01f422cea8066349.js +0 -1
  110. package/out/_next/static/chunks/318-387e3f23d717c53d.js +0 -1
  111. package/out/_next/static/chunks/376-7e784d6069e01654.js +0 -8
  112. package/out/_next/static/chunks/727-358d7fae68a880b3.js +0 -1
  113. package/out/_next/static/chunks/799-9928a9413d9f0730.js +0 -1
  114. package/out/_next/static/chunks/904-1ff7519adece2b55.js +0 -1
  115. package/out/_next/static/chunks/pages/_app-9448839a9d20924d.js +0 -432
  116. package/out/_next/static/chunks/pages/changes-92c84f6cac0285fd.js +0 -1
  117. package/out/_next/static/chunks/pages/slices/[lib]/[sliceName]/[variation]-fecb771f91e70853.js +0 -1
  118. package/out/_next/static/chunks/pages/slices-b0b58192a87df822.js +0 -1
  119. package/out/_next/static/css/200244e3e0463c39.css +0 -1
  120. package/out/_next/static/sysU54bHKiGDh8pmVpi41/_buildManifest.js +0 -1
  121. package/src/features/autoSave/useAutoSave.tsx +0 -177
  122. package/src/features/legacyState/actions/getLegacySliceMachineState.ts +0 -53
  123. package/src/features/legacyState/useLegacySliceMachineState.ts +0 -7
  124. package/src/hooks/useModelStatus.ts +0 -78
  125. package/src/hooks/useUnSyncChanges.ts +0 -88
  126. package/test/components/LoginModal.test.tsx +0 -67
  127. package/test/src/hooks/useModelStatus.test.ts +0 -115
  128. /package/out/_next/static/{sysU54bHKiGDh8pmVpi41 → eNujlD43QIdmra7ggcNtK}/_ssgManifest.js +0 -0
  129. /package/src/features/{changes → sync}/actions/pushChanges.ts +0 -0
  130. /package/src/features/{changes → sync}/actions/trackPushChangesSuccess.ts +0 -0
@@ -1 +1 @@
1
- .Kbd_root__nBos2{background-color:var(--grey2);border-color:var(--grey6);border-radius:3px;border-style:solid;border-width:1px;color:var(--grey11);padding-inline:4px}.kedahr2{height:240px}.kedahr3{height:320px}.kedahr6:focus-visible{box-shadow:0 0 0 4px rgba(123,101,220,.1)}.kedahr6[data-disabled]{opacity:var(--_7j49md3z)}.kedahr6:not([data-disabled]){cursor:var(--_7j49md3n)}.kedahr7{order:0}.kedahr4>.kedahr7{padding:calc(var(--_7j49md55) - var(--_7j49mdh))}.kedahr5>.kedahr7{background-color:var(--_7j49md1a);margin-inline:calc(var(--_7j49md53) - var(--_7j49mdh));margin-top:calc(var(--_7j49md53) - var(--_7j49mdh));padding:var(--_7j49md53)}.kedahr9:not([src]){visibility:hidden}.kedahra:before{content:"";background-color:var(--_7j49md1j);inset:var(--_7j49md4v);opacity:var(--_7j49md3x);position:absolute}.kedahr6:focus-visible .kedahra,.kedahr6:not([data-disabled]) .kedahr7:hover>.kedahra{visibility:visible}.kedahr6:not([data-disabled]) .kedahra:has(:focus-visible){visibility:visible}.kedahr4>.kedahrb{background-color:var(--_7j49md18)}.kedahr4>.kedahrb:not(:first-child){border-top-color:var(--_7j49md1d);border-top-style:inherit;border-top-width:inherit}.kedahrc{order:1}.kedahr4>.kedahrc{padding-left:calc(var(--_7j49md52) - var(--_7j49mdh));padding-right:calc(var(--_7j49md50) - var(--_7j49mdh))}.kedahr5>.kedahrc{padding-inline:calc(var(--_7j49md53) - var(--_7j49mdh))}.kedahrd{order:2}.kedahr4>.kedahrd{padding-inline:calc(var(--_7j49md52) - var(--_7j49mdh))}.kedahr5>.kedahrd{padding-inline:calc(var(--_7j49md53) - var(--_7j49mdh))}.kedahre{margin-bottom:calc((1.5rem - 1rem) / 2)}.kedahrf{background-color:#ebe7fe;color:#5746af}._18bjhbz0{max-width:498px;min-height:400px;background-color:var(--_7j49md18)}._18bjhbz1{background-size:cover;background-color:transparent;border-radius:var(--_7j49md3);border-style:var(--_7j49mdd);height:100%;max-width:100%}._18bjhbz1 ._18bjhbz3{padding:64px}._18bjhbz4{font-size:18px;font-weight:600;line-height:32px}._18bjhbz5{font-weight:400;line-height:24px}._18bjhbz1 ._18bjhbz5{max-width:464px;align-self:center}._18bjhbz1 ._18bjhbz6{justify-content:center}.ovkapw0:focus-visible{outline:none;-webkit-text-decoration-line:underline;text-decoration-line:underline}.ovkapw1{font-size:1.2rem;width:18px;height:18px}.ovkapw2{font-size:1rem;width:16px;height:16px}.ovkapw3{font-size:inherit;width:inherit;height:inherit}
1
+ .Kbd_root__nBos2{background-color:var(--grey2);border-color:var(--grey6);border-radius:3px;border-style:solid;border-width:1px;color:var(--grey11);padding-inline:4px}.kedahr2{height:240px}.kedahr3{height:320px}.kedahr6:focus-visible{box-shadow:0 0 0 4px rgba(123,101,220,.1)}.kedahr6[data-disabled]{opacity:var(--_7j49md3z)}.kedahr6:not([data-disabled]){cursor:var(--_7j49md3n)}.kedahr7{order:0}.kedahr4>.kedahr7{padding:calc(var(--_7j49md55) - var(--_7j49mdh))}.kedahr5>.kedahr7{background-color:var(--_7j49md1a);margin-inline:calc(var(--_7j49md53) - var(--_7j49mdh));margin-top:calc(var(--_7j49md53) - var(--_7j49mdh));padding:var(--_7j49md53)}.kedahr9:not([src]){visibility:hidden}.kedahra:before{content:"";background-color:var(--_7j49md1j);inset:var(--_7j49md4v);opacity:var(--_7j49md3x);position:absolute}.kedahr6:focus-visible .kedahra,.kedahr6:not([data-disabled]) .kedahr7:hover>.kedahra{visibility:visible}.kedahr6:not([data-disabled]) .kedahra:has(:focus-visible){visibility:visible}.kedahr4>.kedahrb{background-color:var(--_7j49md18)}.kedahr4>.kedahrb:not(:first-child){border-top-color:var(--_7j49md1d);border-top-style:inherit;border-top-width:inherit}.kedahrc{order:1}.kedahr4>.kedahrc{padding-left:calc(var(--_7j49md52) - var(--_7j49mdh));padding-right:calc(var(--_7j49md50) - var(--_7j49mdh))}.kedahr5>.kedahrc{padding-inline:calc(var(--_7j49md53) - var(--_7j49mdh))}.kedahrd{order:2}.kedahr4>.kedahrd{padding-inline:calc(var(--_7j49md52) - var(--_7j49mdh))}.kedahr5>.kedahrd{padding-inline:calc(var(--_7j49md53) - var(--_7j49mdh))}.kedahre{margin-bottom:calc((1.5rem - 1rem) / 2)}.kedahrf{background-color:#ebe7fe;color:#5746af}._18bjhbz0{max-width:498px;min-height:400px;background-color:var(--_7j49md18)}._18bjhbz1{background-size:cover;background-color:transparent;border-radius:var(--_7j49md3);border-style:var(--_7j49mdd);height:100%;max-width:100%}._18bjhbz1 ._18bjhbz3{padding:64px}._18bjhbz4{font-size:18px;font-weight:600;line-height:32px}._18bjhbz5{font-weight:400;line-height:24px}._18bjhbz1 ._18bjhbz5{max-width:464px;align-self:center}._18bjhbz1 ._18bjhbz6{justify-content:center}.ovkapw0:focus-visible{outline:none;text-decoration-line:underline}.ovkapw1{font-size:1.2rem;width:18px;height:18px}.ovkapw2{font-size:1rem;width:16px;height:16px}.ovkapw3{font-size:inherit;width:inherit;height:inherit}
@@ -0,0 +1 @@
1
+ .FieldSet_flex__qy2tm{all:unset;display:flex}.FieldSet_column__NS4qQ{flex-direction:column}.FieldSet_root__XVbMv{border-color:var(--grey6);border-radius:6px;border-style:solid;border-width:1px;box-shadow:var(--box-shadow-1);overflow-x:hidden}.FieldSet_row__END9k{align-items:center;flex-direction:row;gap:8px;padding-inline:16px}.FieldSet_borderBottom__L01vK{box-sizing:border-box}.FieldSet_borderBottom__L01vK:not(:last-child){border-bottom:1px solid var(--grey6)}.FieldSet_legend__JjRCM{background-color:var(--grey2);height:48px;order:0}.FieldSet_header__0Q7YD{background-color:var(--grey2);height:72px;order:1}.FieldSet_content__PDj3t{background-color:var(--grey1);order:2;padding:16px}.FieldSet_list__HoMpl{max-height:256px;order:2;overflow-y:auto}.FieldSet_listItem__P0SKW{background-color:var(--grey1);flex-shrink:0;height:64px}.FieldSet_listItemText__J0_Fr{flex-grow:1}.FieldSet_borderTop__qyC9U:not(:first-child){box-shadow:0 -1px 0 0 var(--grey6)}.FieldSet_footer__thBWh{background-color:var(--grey1);height:48px;order:3;padding-right:8px}.FieldSet_footerText__mKIv2{flex-grow:1}
@@ -0,0 +1 @@
1
+ self.__BUILD_MANIFEST=function(s,c,a,e,t,i,b,n,f,u,d,h,l,k,j,p,g,o,r){return{__rewrites:{beforeFiles:[],afterFiles:[],fallback:[]},"/":[a,j,p,"static/chunks/pages/index-cf93d16e9c63b6db.js"],"/_error":["static/chunks/pages/_error-69b4f498bafdd188.js"],"/changelog":[s,e,"static/chunks/870-0c7a8a9622de78b7.js","static/chunks/pages/changelog-cb1df3a70b20f1b8.js"],"/changes":[s,t,"static/chunks/8eec4907-b712959d9f984b68.js",i,"static/chunks/918-5bb55fb464e34768.js",c,n,"static/css/838fd8bb5a7c32b0.css","static/chunks/pages/changes-ccfd715c2bdc4f83.js"],"/custom-types":[a,j,p,"static/chunks/pages/custom-types-3c8e721ec6802127.js"],"/custom-types/[customTypeId]":[s,f,u,d,h,e,b,i,l,g,c,a,k,o,r,"static/chunks/pages/custom-types/[customTypeId]-97ab3b90b85d645d.js"],"/labs":["static/chunks/pages/labs-2adfb5127f9c4081.js"],"/page-types/[pageTypeId]":[s,f,u,d,h,e,b,i,l,g,c,a,k,o,r,"static/chunks/pages/page-types/[pageTypeId]-84a22c5e480d3fa9.js"],"/settings":["static/css/ca32882a5d2d8d88.css","static/chunks/pages/settings-94bcd7422e8b237d.js"],"/slices":[s,t,b,c,n,"static/css/f8eb526e10bc2441.css","static/chunks/pages/slices-e0ce615c38e8338d.js"],"/slices/[lib]/[sliceName]/[variation]":[s,t,f,u,d,h,e,b,i,l,c,k,n,"static/css/b22c0750c14cc089.css","static/chunks/pages/slices/[lib]/[sliceName]/[variation]-90bb2ea76d2abf42.js"],"/slices/[lib]/[sliceName]/[variation]/simulator":[t,"static/chunks/72585f70-28b4d7d5384b3703.js","static/chunks/18539003-5f78714a35fde4a1.js","static/chunks/777-8c5507e3b119b5dc.js","static/chunks/pages/slices/[lib]/[sliceName]/[variation]/simulator-aaf65fbec8f5839c.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/59b4e022-7a3b5554b806349f.js","static/chunks/25-3aa4d4b24167d340.js","static/chunks/799-0af1215eb2b3c17e.js","static/chunks/183-4feb6bb3eddbc768.js","static/chunks/c8eae200-966ce352f7b5d2b9.js","static/chunks/543-f8766685f7f451e2.js","static/chunks/50-cfc2514205b86001.js","static/chunks/286-ed90373e9a469944.js","static/chunks/f36c6662-03bb5e9d9aa0b0aa.js","static/chunks/4c744e84-e3161d754618373f.js","static/chunks/065a3ddb-9a38ca0d60f0bf2f.js","static/chunks/1cc2734a-2c5b6c0367fcde86.js","static/chunks/696-b12edad30a3617e5.js","static/chunks/318-19dbcae10cdb6408.js","static/chunks/727-de03055e40815a3a.js","static/css/be1f49e49a5aa7eb.css","static/chunks/474-5a072e6fac61f703.js","static/chunks/904-40686b0426716111.js","static/css/72465cc1225f28a2.css"),self.__BUILD_MANIFEST_CB&&self.__BUILD_MANIFEST_CB();
@@ -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/200244e3e0463c39.css" as="style"/><link rel="stylesheet" href="/_next/static/css/200244e3e0463c39.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-9448839a9d20924d.js" defer=""></script><script src="/_next/static/chunks/59b4e022-7a3b5554b806349f.js" defer=""></script><script src="/_next/static/chunks/183-4feb6bb3eddbc768.js" defer=""></script><script src="/_next/static/chunks/870-0c7a8a9622de78b7.js" defer=""></script><script src="/_next/static/chunks/pages/changelog-afd18276fe018b24.js" defer=""></script><script src="/_next/static/sysU54bHKiGDh8pmVpi41/_buildManifest.js" defer=""></script><script src="/_next/static/sysU54bHKiGDh8pmVpi41/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/changelog","query":{},"buildId":"sysU54bHKiGDh8pmVpi41","runtimeConfig":{"sentryEnvironment":"beta"},"nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
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/39e089aad1742a3a.css" as="style"/><link rel="stylesheet" href="/_next/static/css/39e089aad1742a3a.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-bca191df4ac7078e.js" defer=""></script><script src="/_next/static/chunks/59b4e022-7a3b5554b806349f.js" defer=""></script><script src="/_next/static/chunks/183-4feb6bb3eddbc768.js" defer=""></script><script src="/_next/static/chunks/870-0c7a8a9622de78b7.js" defer=""></script><script src="/_next/static/chunks/pages/changelog-cb1df3a70b20f1b8.js" defer=""></script><script src="/_next/static/eNujlD43QIdmra7ggcNtK/_buildManifest.js" defer=""></script><script src="/_next/static/eNujlD43QIdmra7ggcNtK/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/changelog","query":{},"buildId":"eNujlD43QIdmra7ggcNtK","runtimeConfig":{"sentryEnvironment":"production"},"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/200244e3e0463c39.css" as="style"/><link rel="stylesheet" href="/_next/static/css/200244e3e0463c39.css" data-n-g=""/><link rel="preload" href="/_next/static/css/37153180c3b0dd66.css" as="style"/><link rel="stylesheet" href="/_next/static/css/37153180c3b0dd66.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-9448839a9d20924d.js" defer=""></script><script src="/_next/static/chunks/59b4e022-7a3b5554b806349f.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/543-f8766685f7f451e2.js" defer=""></script><script src="/_next/static/chunks/918-5bb55fb464e34768.js" defer=""></script><script src="/_next/static/chunks/25-01f422cea8066349.js" defer=""></script><script src="/_next/static/chunks/286-ed90373e9a469944.js" defer=""></script><script src="/_next/static/chunks/pages/changes-92c84f6cac0285fd.js" defer=""></script><script src="/_next/static/sysU54bHKiGDh8pmVpi41/_buildManifest.js" defer=""></script><script src="/_next/static/sysU54bHKiGDh8pmVpi41/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/changes","query":{},"buildId":"sysU54bHKiGDh8pmVpi41","runtimeConfig":{"sentryEnvironment":"beta"},"nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
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/39e089aad1742a3a.css" as="style"/><link rel="stylesheet" href="/_next/static/css/39e089aad1742a3a.css" data-n-g=""/><link rel="preload" href="/_next/static/css/838fd8bb5a7c32b0.css" as="style"/><link rel="stylesheet" href="/_next/static/css/838fd8bb5a7c32b0.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-bca191df4ac7078e.js" defer=""></script><script src="/_next/static/chunks/59b4e022-7a3b5554b806349f.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/543-f8766685f7f451e2.js" defer=""></script><script src="/_next/static/chunks/918-5bb55fb464e34768.js" defer=""></script><script src="/_next/static/chunks/25-3aa4d4b24167d340.js" defer=""></script><script src="/_next/static/chunks/286-ed90373e9a469944.js" defer=""></script><script src="/_next/static/chunks/pages/changes-ccfd715c2bdc4f83.js" defer=""></script><script src="/_next/static/eNujlD43QIdmra7ggcNtK/_buildManifest.js" defer=""></script><script src="/_next/static/eNujlD43QIdmra7ggcNtK/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/changes","query":{},"buildId":"eNujlD43QIdmra7ggcNtK","runtimeConfig":{"sentryEnvironment":"production"},"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/200244e3e0463c39.css" as="style"/><link rel="stylesheet" href="/_next/static/css/200244e3e0463c39.css" data-n-g=""/><link rel="preload" href="/_next/static/css/72465cc1225f28a2.css" as="style"/><link rel="stylesheet" href="/_next/static/css/72465cc1225f28a2.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-9448839a9d20924d.js" defer=""></script><script src="/_next/static/chunks/59b4e022-7a3b5554b806349f.js" defer=""></script><script src="/_next/static/chunks/f36c6662-03bb5e9d9aa0b0aa.js" defer=""></script><script src="/_next/static/chunks/4c744e84-e3161d754618373f.js" defer=""></script><script src="/_next/static/chunks/065a3ddb-9a38ca0d60f0bf2f.js" defer=""></script><script src="/_next/static/chunks/1cc2734a-2c5b6c0367fcde86.js" defer=""></script><script src="/_next/static/chunks/183-4feb6bb3eddbc768.js" defer=""></script><script src="/_next/static/chunks/50-cfc2514205b86001.js" defer=""></script><script src="/_next/static/chunks/543-f8766685f7f451e2.js" defer=""></script><script src="/_next/static/chunks/696-b12edad30a3617e5.js" defer=""></script><script src="/_next/static/chunks/474-5a072e6fac61f703.js" defer=""></script><script src="/_next/static/chunks/25-01f422cea8066349.js" defer=""></script><script src="/_next/static/chunks/799-9928a9413d9f0730.js" defer=""></script><script src="/_next/static/chunks/318-387e3f23d717c53d.js" defer=""></script><script src="/_next/static/chunks/904-1ff7519adece2b55.js" defer=""></script><script src="/_next/static/chunks/pages/custom-types/%5BcustomTypeId%5D-97ab3b90b85d645d.js" defer=""></script><script src="/_next/static/sysU54bHKiGDh8pmVpi41/_buildManifest.js" defer=""></script><script src="/_next/static/sysU54bHKiGDh8pmVpi41/_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":"sysU54bHKiGDh8pmVpi41","runtimeConfig":{"sentryEnvironment":"beta"},"nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
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/39e089aad1742a3a.css" as="style"/><link rel="stylesheet" href="/_next/static/css/39e089aad1742a3a.css" data-n-g=""/><link rel="preload" href="/_next/static/css/72465cc1225f28a2.css" as="style"/><link rel="stylesheet" href="/_next/static/css/72465cc1225f28a2.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-bca191df4ac7078e.js" defer=""></script><script src="/_next/static/chunks/59b4e022-7a3b5554b806349f.js" defer=""></script><script src="/_next/static/chunks/f36c6662-03bb5e9d9aa0b0aa.js" defer=""></script><script src="/_next/static/chunks/4c744e84-e3161d754618373f.js" defer=""></script><script src="/_next/static/chunks/065a3ddb-9a38ca0d60f0bf2f.js" defer=""></script><script src="/_next/static/chunks/1cc2734a-2c5b6c0367fcde86.js" defer=""></script><script src="/_next/static/chunks/183-4feb6bb3eddbc768.js" defer=""></script><script src="/_next/static/chunks/50-cfc2514205b86001.js" defer=""></script><script src="/_next/static/chunks/543-f8766685f7f451e2.js" defer=""></script><script src="/_next/static/chunks/696-b12edad30a3617e5.js" defer=""></script><script src="/_next/static/chunks/474-5a072e6fac61f703.js" defer=""></script><script src="/_next/static/chunks/25-3aa4d4b24167d340.js" defer=""></script><script src="/_next/static/chunks/799-0af1215eb2b3c17e.js" defer=""></script><script src="/_next/static/chunks/318-19dbcae10cdb6408.js" defer=""></script><script src="/_next/static/chunks/904-40686b0426716111.js" defer=""></script><script src="/_next/static/chunks/pages/custom-types/%5BcustomTypeId%5D-97ab3b90b85d645d.js" defer=""></script><script src="/_next/static/eNujlD43QIdmra7ggcNtK/_buildManifest.js" defer=""></script><script src="/_next/static/eNujlD43QIdmra7ggcNtK/_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":"eNujlD43QIdmra7ggcNtK","runtimeConfig":{"sentryEnvironment":"production"},"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/200244e3e0463c39.css" as="style"/><link rel="stylesheet" href="/_next/static/css/200244e3e0463c39.css" data-n-g=""/><link rel="preload" href="/_next/static/css/be1f49e49a5aa7eb.css" as="style"/><link rel="stylesheet" href="/_next/static/css/be1f49e49a5aa7eb.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-9448839a9d20924d.js" defer=""></script><script src="/_next/static/chunks/799-9928a9413d9f0730.js" defer=""></script><script src="/_next/static/chunks/727-358d7fae68a880b3.js" defer=""></script><script src="/_next/static/chunks/pages/custom-types-3c8e721ec6802127.js" defer=""></script><script src="/_next/static/sysU54bHKiGDh8pmVpi41/_buildManifest.js" defer=""></script><script src="/_next/static/sysU54bHKiGDh8pmVpi41/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/custom-types","query":{},"buildId":"sysU54bHKiGDh8pmVpi41","runtimeConfig":{"sentryEnvironment":"beta"},"nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
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/39e089aad1742a3a.css" as="style"/><link rel="stylesheet" href="/_next/static/css/39e089aad1742a3a.css" data-n-g=""/><link rel="preload" href="/_next/static/css/be1f49e49a5aa7eb.css" as="style"/><link rel="stylesheet" href="/_next/static/css/be1f49e49a5aa7eb.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-bca191df4ac7078e.js" defer=""></script><script src="/_next/static/chunks/799-0af1215eb2b3c17e.js" defer=""></script><script src="/_next/static/chunks/727-de03055e40815a3a.js" defer=""></script><script src="/_next/static/chunks/pages/custom-types-3c8e721ec6802127.js" defer=""></script><script src="/_next/static/eNujlD43QIdmra7ggcNtK/_buildManifest.js" defer=""></script><script src="/_next/static/eNujlD43QIdmra7ggcNtK/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/custom-types","query":{},"buildId":"eNujlD43QIdmra7ggcNtK","runtimeConfig":{"sentryEnvironment":"production"},"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/200244e3e0463c39.css" as="style"/><link rel="stylesheet" href="/_next/static/css/200244e3e0463c39.css" data-n-g=""/><link rel="preload" href="/_next/static/css/be1f49e49a5aa7eb.css" as="style"/><link rel="stylesheet" href="/_next/static/css/be1f49e49a5aa7eb.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-9448839a9d20924d.js" defer=""></script><script src="/_next/static/chunks/799-9928a9413d9f0730.js" defer=""></script><script src="/_next/static/chunks/727-358d7fae68a880b3.js" defer=""></script><script src="/_next/static/chunks/pages/index-cf93d16e9c63b6db.js" defer=""></script><script src="/_next/static/sysU54bHKiGDh8pmVpi41/_buildManifest.js" defer=""></script><script src="/_next/static/sysU54bHKiGDh8pmVpi41/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/","query":{},"buildId":"sysU54bHKiGDh8pmVpi41","runtimeConfig":{"sentryEnvironment":"beta"},"nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
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/39e089aad1742a3a.css" as="style"/><link rel="stylesheet" href="/_next/static/css/39e089aad1742a3a.css" data-n-g=""/><link rel="preload" href="/_next/static/css/be1f49e49a5aa7eb.css" as="style"/><link rel="stylesheet" href="/_next/static/css/be1f49e49a5aa7eb.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-bca191df4ac7078e.js" defer=""></script><script src="/_next/static/chunks/799-0af1215eb2b3c17e.js" defer=""></script><script src="/_next/static/chunks/727-de03055e40815a3a.js" defer=""></script><script src="/_next/static/chunks/pages/index-cf93d16e9c63b6db.js" defer=""></script><script src="/_next/static/eNujlD43QIdmra7ggcNtK/_buildManifest.js" defer=""></script><script src="/_next/static/eNujlD43QIdmra7ggcNtK/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/","query":{},"buildId":"eNujlD43QIdmra7ggcNtK","runtimeConfig":{"sentryEnvironment":"production"},"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/200244e3e0463c39.css" as="style"/><link rel="stylesheet" href="/_next/static/css/200244e3e0463c39.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-9448839a9d20924d.js" defer=""></script><script src="/_next/static/chunks/pages/labs-ee206005948f8e87.js" defer=""></script><script src="/_next/static/sysU54bHKiGDh8pmVpi41/_buildManifest.js" defer=""></script><script src="/_next/static/sysU54bHKiGDh8pmVpi41/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/labs","query":{},"buildId":"sysU54bHKiGDh8pmVpi41","runtimeConfig":{"sentryEnvironment":"beta"},"nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
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/39e089aad1742a3a.css" as="style"/><link rel="stylesheet" href="/_next/static/css/39e089aad1742a3a.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-bca191df4ac7078e.js" defer=""></script><script src="/_next/static/chunks/pages/labs-2adfb5127f9c4081.js" defer=""></script><script src="/_next/static/eNujlD43QIdmra7ggcNtK/_buildManifest.js" defer=""></script><script src="/_next/static/eNujlD43QIdmra7ggcNtK/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/labs","query":{},"buildId":"eNujlD43QIdmra7ggcNtK","runtimeConfig":{"sentryEnvironment":"production"},"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/200244e3e0463c39.css" as="style"/><link rel="stylesheet" href="/_next/static/css/200244e3e0463c39.css" data-n-g=""/><link rel="preload" href="/_next/static/css/72465cc1225f28a2.css" as="style"/><link rel="stylesheet" href="/_next/static/css/72465cc1225f28a2.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-9448839a9d20924d.js" defer=""></script><script src="/_next/static/chunks/59b4e022-7a3b5554b806349f.js" defer=""></script><script src="/_next/static/chunks/f36c6662-03bb5e9d9aa0b0aa.js" defer=""></script><script src="/_next/static/chunks/4c744e84-e3161d754618373f.js" defer=""></script><script src="/_next/static/chunks/065a3ddb-9a38ca0d60f0bf2f.js" defer=""></script><script src="/_next/static/chunks/1cc2734a-2c5b6c0367fcde86.js" defer=""></script><script src="/_next/static/chunks/183-4feb6bb3eddbc768.js" defer=""></script><script src="/_next/static/chunks/50-cfc2514205b86001.js" defer=""></script><script src="/_next/static/chunks/543-f8766685f7f451e2.js" defer=""></script><script src="/_next/static/chunks/696-b12edad30a3617e5.js" defer=""></script><script src="/_next/static/chunks/474-5a072e6fac61f703.js" defer=""></script><script src="/_next/static/chunks/25-01f422cea8066349.js" defer=""></script><script src="/_next/static/chunks/799-9928a9413d9f0730.js" defer=""></script><script src="/_next/static/chunks/318-387e3f23d717c53d.js" defer=""></script><script src="/_next/static/chunks/904-1ff7519adece2b55.js" defer=""></script><script src="/_next/static/chunks/pages/page-types/%5BpageTypeId%5D-84a22c5e480d3fa9.js" defer=""></script><script src="/_next/static/sysU54bHKiGDh8pmVpi41/_buildManifest.js" defer=""></script><script src="/_next/static/sysU54bHKiGDh8pmVpi41/_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":"sysU54bHKiGDh8pmVpi41","runtimeConfig":{"sentryEnvironment":"beta"},"nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
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/39e089aad1742a3a.css" as="style"/><link rel="stylesheet" href="/_next/static/css/39e089aad1742a3a.css" data-n-g=""/><link rel="preload" href="/_next/static/css/72465cc1225f28a2.css" as="style"/><link rel="stylesheet" href="/_next/static/css/72465cc1225f28a2.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-bca191df4ac7078e.js" defer=""></script><script src="/_next/static/chunks/59b4e022-7a3b5554b806349f.js" defer=""></script><script src="/_next/static/chunks/f36c6662-03bb5e9d9aa0b0aa.js" defer=""></script><script src="/_next/static/chunks/4c744e84-e3161d754618373f.js" defer=""></script><script src="/_next/static/chunks/065a3ddb-9a38ca0d60f0bf2f.js" defer=""></script><script src="/_next/static/chunks/1cc2734a-2c5b6c0367fcde86.js" defer=""></script><script src="/_next/static/chunks/183-4feb6bb3eddbc768.js" defer=""></script><script src="/_next/static/chunks/50-cfc2514205b86001.js" defer=""></script><script src="/_next/static/chunks/543-f8766685f7f451e2.js" defer=""></script><script src="/_next/static/chunks/696-b12edad30a3617e5.js" defer=""></script><script src="/_next/static/chunks/474-5a072e6fac61f703.js" defer=""></script><script src="/_next/static/chunks/25-3aa4d4b24167d340.js" defer=""></script><script src="/_next/static/chunks/799-0af1215eb2b3c17e.js" defer=""></script><script src="/_next/static/chunks/318-19dbcae10cdb6408.js" defer=""></script><script src="/_next/static/chunks/904-40686b0426716111.js" defer=""></script><script src="/_next/static/chunks/pages/page-types/%5BpageTypeId%5D-84a22c5e480d3fa9.js" defer=""></script><script src="/_next/static/eNujlD43QIdmra7ggcNtK/_buildManifest.js" defer=""></script><script src="/_next/static/eNujlD43QIdmra7ggcNtK/_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":"eNujlD43QIdmra7ggcNtK","runtimeConfig":{"sentryEnvironment":"production"},"nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
@@ -0,0 +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/39e089aad1742a3a.css" as="style"/><link rel="stylesheet" href="/_next/static/css/39e089aad1742a3a.css" data-n-g=""/><link rel="preload" href="/_next/static/css/ca32882a5d2d8d88.css" as="style"/><link rel="stylesheet" href="/_next/static/css/ca32882a5d2d8d88.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-bca191df4ac7078e.js" defer=""></script><script src="/_next/static/chunks/pages/settings-94bcd7422e8b237d.js" defer=""></script><script src="/_next/static/eNujlD43QIdmra7ggcNtK/_buildManifest.js" defer=""></script><script src="/_next/static/eNujlD43QIdmra7ggcNtK/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/settings","query":{},"buildId":"eNujlD43QIdmra7ggcNtK","runtimeConfig":{"sentryEnvironment":"production"},"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/200244e3e0463c39.css" as="style"/><link rel="stylesheet" href="/_next/static/css/200244e3e0463c39.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-9448839a9d20924d.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-5cc559566b738915.js" defer=""></script><script src="/_next/static/chunks/376-7e784d6069e01654.js" defer=""></script><script src="/_next/static/chunks/pages/slices/%5Blib%5D/%5BsliceName%5D/%5Bvariation%5D/simulator-52c3e1f9d14160b8.js" defer=""></script><script src="/_next/static/sysU54bHKiGDh8pmVpi41/_buildManifest.js" defer=""></script><script src="/_next/static/sysU54bHKiGDh8pmVpi41/_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":"sysU54bHKiGDh8pmVpi41","runtimeConfig":{"sentryEnvironment":"beta"},"nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
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/39e089aad1742a3a.css" as="style"/><link rel="stylesheet" href="/_next/static/css/39e089aad1742a3a.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-bca191df4ac7078e.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-5f78714a35fde4a1.js" defer=""></script><script src="/_next/static/chunks/777-8c5507e3b119b5dc.js" defer=""></script><script src="/_next/static/chunks/pages/slices/%5Blib%5D/%5BsliceName%5D/%5Bvariation%5D/simulator-aaf65fbec8f5839c.js" defer=""></script><script src="/_next/static/eNujlD43QIdmra7ggcNtK/_buildManifest.js" defer=""></script><script src="/_next/static/eNujlD43QIdmra7ggcNtK/_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":"eNujlD43QIdmra7ggcNtK","runtimeConfig":{"sentryEnvironment":"production"},"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/200244e3e0463c39.css" as="style"/><link rel="stylesheet" href="/_next/static/css/200244e3e0463c39.css" data-n-g=""/><link rel="preload" href="/_next/static/css/b22c0750c14cc089.css" as="style"/><link rel="stylesheet" href="/_next/static/css/b22c0750c14cc089.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-9448839a9d20924d.js" defer=""></script><script src="/_next/static/chunks/59b4e022-7a3b5554b806349f.js" defer=""></script><script src="/_next/static/chunks/c8eae200-966ce352f7b5d2b9.js" defer=""></script><script src="/_next/static/chunks/f36c6662-03bb5e9d9aa0b0aa.js" defer=""></script><script src="/_next/static/chunks/4c744e84-e3161d754618373f.js" defer=""></script><script src="/_next/static/chunks/065a3ddb-9a38ca0d60f0bf2f.js" defer=""></script><script src="/_next/static/chunks/1cc2734a-2c5b6c0367fcde86.js" defer=""></script><script src="/_next/static/chunks/183-4feb6bb3eddbc768.js" defer=""></script><script src="/_next/static/chunks/50-cfc2514205b86001.js" defer=""></script><script src="/_next/static/chunks/543-f8766685f7f451e2.js" defer=""></script><script src="/_next/static/chunks/696-b12edad30a3617e5.js" defer=""></script><script src="/_next/static/chunks/25-01f422cea8066349.js" defer=""></script><script src="/_next/static/chunks/318-387e3f23d717c53d.js" defer=""></script><script src="/_next/static/chunks/286-ed90373e9a469944.js" defer=""></script><script src="/_next/static/chunks/pages/slices/%5Blib%5D/%5BsliceName%5D/%5Bvariation%5D-fecb771f91e70853.js" defer=""></script><script src="/_next/static/sysU54bHKiGDh8pmVpi41/_buildManifest.js" defer=""></script><script src="/_next/static/sysU54bHKiGDh8pmVpi41/_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":"sysU54bHKiGDh8pmVpi41","runtimeConfig":{"sentryEnvironment":"beta"},"nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
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/39e089aad1742a3a.css" as="style"/><link rel="stylesheet" href="/_next/static/css/39e089aad1742a3a.css" data-n-g=""/><link rel="preload" href="/_next/static/css/b22c0750c14cc089.css" as="style"/><link rel="stylesheet" href="/_next/static/css/b22c0750c14cc089.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-bca191df4ac7078e.js" defer=""></script><script src="/_next/static/chunks/59b4e022-7a3b5554b806349f.js" defer=""></script><script src="/_next/static/chunks/c8eae200-966ce352f7b5d2b9.js" defer=""></script><script src="/_next/static/chunks/f36c6662-03bb5e9d9aa0b0aa.js" defer=""></script><script src="/_next/static/chunks/4c744e84-e3161d754618373f.js" defer=""></script><script src="/_next/static/chunks/065a3ddb-9a38ca0d60f0bf2f.js" defer=""></script><script src="/_next/static/chunks/1cc2734a-2c5b6c0367fcde86.js" defer=""></script><script src="/_next/static/chunks/183-4feb6bb3eddbc768.js" defer=""></script><script src="/_next/static/chunks/50-cfc2514205b86001.js" defer=""></script><script src="/_next/static/chunks/543-f8766685f7f451e2.js" defer=""></script><script src="/_next/static/chunks/696-b12edad30a3617e5.js" defer=""></script><script src="/_next/static/chunks/25-3aa4d4b24167d340.js" defer=""></script><script src="/_next/static/chunks/318-19dbcae10cdb6408.js" defer=""></script><script src="/_next/static/chunks/286-ed90373e9a469944.js" defer=""></script><script src="/_next/static/chunks/pages/slices/%5Blib%5D/%5BsliceName%5D/%5Bvariation%5D-90bb2ea76d2abf42.js" defer=""></script><script src="/_next/static/eNujlD43QIdmra7ggcNtK/_buildManifest.js" defer=""></script><script src="/_next/static/eNujlD43QIdmra7ggcNtK/_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":"eNujlD43QIdmra7ggcNtK","runtimeConfig":{"sentryEnvironment":"production"},"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/200244e3e0463c39.css" as="style"/><link rel="stylesheet" href="/_next/static/css/200244e3e0463c39.css" data-n-g=""/><link rel="preload" href="/_next/static/css/f8eb526e10bc2441.css" as="style"/><link rel="stylesheet" href="/_next/static/css/f8eb526e10bc2441.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-9448839a9d20924d.js" defer=""></script><script src="/_next/static/chunks/59b4e022-7a3b5554b806349f.js" defer=""></script><script src="/_next/static/chunks/c8eae200-966ce352f7b5d2b9.js" defer=""></script><script src="/_next/static/chunks/50-cfc2514205b86001.js" defer=""></script><script src="/_next/static/chunks/25-01f422cea8066349.js" defer=""></script><script src="/_next/static/chunks/286-ed90373e9a469944.js" defer=""></script><script src="/_next/static/chunks/pages/slices-b0b58192a87df822.js" defer=""></script><script src="/_next/static/sysU54bHKiGDh8pmVpi41/_buildManifest.js" defer=""></script><script src="/_next/static/sysU54bHKiGDh8pmVpi41/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/slices","query":{},"buildId":"sysU54bHKiGDh8pmVpi41","runtimeConfig":{"sentryEnvironment":"beta"},"nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
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/39e089aad1742a3a.css" as="style"/><link rel="stylesheet" href="/_next/static/css/39e089aad1742a3a.css" data-n-g=""/><link rel="preload" href="/_next/static/css/f8eb526e10bc2441.css" as="style"/><link rel="stylesheet" href="/_next/static/css/f8eb526e10bc2441.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-bca191df4ac7078e.js" defer=""></script><script src="/_next/static/chunks/59b4e022-7a3b5554b806349f.js" defer=""></script><script src="/_next/static/chunks/c8eae200-966ce352f7b5d2b9.js" defer=""></script><script src="/_next/static/chunks/50-cfc2514205b86001.js" defer=""></script><script src="/_next/static/chunks/25-3aa4d4b24167d340.js" defer=""></script><script src="/_next/static/chunks/286-ed90373e9a469944.js" defer=""></script><script src="/_next/static/chunks/pages/slices-e0ce615c38e8338d.js" defer=""></script><script src="/_next/static/eNujlD43QIdmra7ggcNtK/_buildManifest.js" defer=""></script><script src="/_next/static/eNujlD43QIdmra7ggcNtK/_ssgManifest.js" defer=""></script></head><body><div id="__next"></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/slices","query":{},"buildId":"eNujlD43QIdmra7ggcNtK","runtimeConfig":{"sentryEnvironment":"production"},"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.23.2-beta.9",
3
+ "version": "1.24.0",
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": {
@@ -36,15 +36,15 @@
36
36
  },
37
37
  "dependencies": {
38
38
  "@radix-ui/react-visually-hidden": "1.0.3",
39
- "@slicemachine/manager": "0.17.9-beta.10",
40
- "start-slicemachine": "0.12.15-beta.10"
39
+ "@slicemachine/manager": "0.18.0",
40
+ "start-slicemachine": "0.12.15"
41
41
  },
42
42
  "devDependencies": {
43
43
  "@emotion/react": "11.11.1",
44
44
  "@extractus/oembed-extractor": "3.1.8",
45
- "@prismicio/editor-fields": "0.4.20",
46
- "@prismicio/editor-support": "0.4.20",
47
- "@prismicio/editor-ui": "0.4.20",
45
+ "@prismicio/editor-fields": "0.4.22",
46
+ "@prismicio/editor-support": "0.4.22",
47
+ "@prismicio/editor-ui": "0.4.22",
48
48
  "@prismicio/mocks": "2.0.0-alpha.2",
49
49
  "@prismicio/simulator": "0.1.4",
50
50
  "@prismicio/types-internal": "2.2.0",
@@ -104,6 +104,9 @@
104
104
  "next-router-mock": "0.8.0",
105
105
  "node-fetch": "3.3.1",
106
106
  "parse-multipart-data": "1.5.0",
107
+ "postcss": "8.4.21",
108
+ "postcss-flexbugs-fixes": "5.0.2",
109
+ "postcss-preset-env": "9.3.0",
107
110
  "rc-drawer": "4.4.3",
108
111
  "react": "18.2.0",
109
112
  "react-beautiful-dnd": "13.1.1",
@@ -138,6 +141,5 @@
138
141
  "vite": "4.3.9",
139
142
  "vitest": "0.32.0",
140
143
  "yup": "0.32.11"
141
- },
142
- "stableVersion": "1.23.1"
144
+ }
143
145
  }
package/pages/_app.tsx CHANGED
@@ -34,9 +34,9 @@ import type { Persistor } from "redux-persist/es/types";
34
34
  import { PersistGate } from "redux-persist/integration/react";
35
35
  import { ThemeProvider as ThemeUIThemeProvider, useThemeUI } from "theme-ui";
36
36
 
37
- import { AppLayout, AppLayoutContent } from "@components/AppLayout";
38
37
  import { InAppGuideProvider } from "@src/features/inAppGuide/InAppGuideContext";
39
38
  import { InAppGuideDialog } from "@src/features/inAppGuide/InAppGuideDialog";
39
+ import { AutoSyncProvider } from "@src/features/sync/AutoSyncProvider";
40
40
 
41
41
  import SliceMachineApp from "../components/App";
42
42
  import LoadingPage from "../components/LoadingPage";
@@ -140,39 +140,41 @@ function App({
140
140
  );
141
141
  }}
142
142
  renderError={() => (
143
- <AppLayout>
144
- <AppLayoutContent>
145
- <Box alignItems="center" justifyContent="center">
146
- <DefaultErrorMessage
147
- title="Error"
148
- description="An error occurred while rendering the app."
149
- />
150
- </Box>
151
- </AppLayoutContent>
152
- </AppLayout>
143
+ <Box
144
+ justifyContent="center"
145
+ width="100%"
146
+ padding={80}
147
+ >
148
+ <DefaultErrorMessage
149
+ title="Error"
150
+ description="An error occurred while rendering the app."
151
+ />
152
+ </Box>
153
153
  )}
154
154
  >
155
- <InAppGuideProvider>
156
- <RouteChangeProvider>
157
- <Suspense fallback={<LoadingPage />}>
158
- <ComponentLayout>
159
- <Component {...pageProps} />
160
- </ComponentLayout>
161
- </Suspense>
162
- </RouteChangeProvider>
163
- <ErrorBoundary
164
- onError={(error) => {
165
- console.error(
166
- `An error occurred while rendering the in-app guide`,
167
- error,
168
- );
169
- }}
170
- >
171
- <Suspense>
172
- <InAppGuideDialog />
173
- </Suspense>
174
- </ErrorBoundary>
175
- </InAppGuideProvider>
155
+ <Suspense fallback={<LoadingPage />}>
156
+ <AutoSyncProvider>
157
+ <InAppGuideProvider>
158
+ <RouteChangeProvider>
159
+ <ComponentLayout>
160
+ <Component {...pageProps} />
161
+ </ComponentLayout>
162
+ </RouteChangeProvider>
163
+ <ErrorBoundary
164
+ onError={(error) => {
165
+ console.error(
166
+ `An error occurred while rendering the in-app guide`,
167
+ error,
168
+ );
169
+ }}
170
+ >
171
+ <Suspense>
172
+ <InAppGuideDialog />
173
+ </Suspense>
174
+ </ErrorBoundary>
175
+ </InAppGuideProvider>
176
+ </AutoSyncProvider>
177
+ </Suspense>
176
178
  </ErrorBoundary>
177
179
  </PersistGate>
178
180
  </ConnectedRouter>
package/pages/changes.tsx CHANGED
@@ -1,8 +1,10 @@
1
1
  import { Button } from "@prismicio/editor-ui";
2
- import React, { useMemo, useState } from "react";
2
+ import React, { useEffect, useMemo, useState } from "react";
3
3
  import { toast } from "react-toastify";
4
4
  import Head from "next/head";
5
5
  import { BaseStyles } from "theme-ui";
6
+ import { useRouter } from "next/router";
7
+
6
8
  import {
7
9
  AppLayout,
8
10
  AppLayoutActions,
@@ -12,60 +14,52 @@ import {
12
14
  } from "@components/AppLayout";
13
15
  import { ChangesItems } from "@components/ChangesItems";
14
16
  import { AuthErrorPage, OfflinePage } from "@components/ChangesEmptyState";
15
-
16
17
  import { NoChangesBlankSlate } from "@src/features/changes/BlankSlates";
17
-
18
18
  import { AuthStatus } from "@src/modules/userContext/types";
19
- import { unSyncStatuses, useUnSyncChanges } from "@src/hooks/useUnSyncChanges";
20
19
  import useSliceMachineActions from "@src/modules/useSliceMachineActions";
21
20
  import {
22
21
  SoftDeleteDocumentsDrawer,
23
22
  HardDeleteDocumentsDrawer,
24
23
  } from "@components/DeleteDocumentsDrawer";
25
- import { hasLocal } from "@lib/models/common/ModelData";
26
- import {
27
- ChangedCustomType,
28
- ChangedSlice,
29
- } from "@lib/models/common/ModelStatus";
30
24
  import { PushChangesLimit } from "@slicemachine/manager";
31
- import { pushChanges } from "@src/features/changes/actions/pushChanges";
32
25
  import { getState } from "@src/apiClient";
26
+ import { pushChanges } from "@src/features/sync/actions/pushChanges";
27
+ import { useUnSyncChanges } from "@src/features/sync/useUnSyncChanges";
28
+ import { useNetwork } from "@src/hooks/useNetwork";
29
+ import { useAuthStatus } from "@src/hooks/useAuthStatus";
30
+ import { useAutoSync } from "@src/features/sync/AutoSyncProvider";
33
31
 
34
32
  const Changes: React.FunctionComponent = () => {
35
33
  const {
36
34
  unSyncedSlices,
37
35
  unSyncedCustomTypes,
36
+ changedCustomTypes,
37
+ changedSlices,
38
38
  modelsStatuses,
39
- authStatus,
40
- isOnline,
41
39
  } = useUnSyncChanges();
42
-
43
- const { changedSlices, changedCustomTypes } = useMemo(() => {
44
- const changedSlices = unSyncedSlices
45
- .map((s) => ({
46
- slice: s,
47
- status: modelsStatuses.slices[s.model.id],
48
- }))
49
- .filter((s): s is ChangedSlice => unSyncStatuses.includes(s.status)); // TODO can we sync unSyncStatuses and ChangedSlice?
50
- const changedCustomTypes = unSyncedCustomTypes
51
- .map((model) => (hasLocal(model) ? model.local : model.remote))
52
- .map((ct) => ({
53
- customType: ct,
54
- status: modelsStatuses.customTypes[ct.id],
55
- }))
56
- .filter((c): c is ChangedCustomType => unSyncStatuses.includes(c.status));
57
-
58
- return { changedSlices, changedCustomTypes };
59
- }, [unSyncedSlices, unSyncedCustomTypes, modelsStatuses]);
60
-
40
+ const isOnline = useNetwork();
41
+ const authStatus = useAuthStatus();
61
42
  const { pushChangesSuccess, refreshState } = useSliceMachineActions();
62
43
  const [isSyncing, setIsSyncing] = useState(false);
63
44
  const [openModalData, setOpenModalData] = useState<
64
45
  PushChangesLimit | undefined
65
46
  >(undefined);
47
+ const { autoSyncStatus } = useAutoSync();
48
+ const router = useRouter();
66
49
 
67
50
  const numberOfChanges = unSyncedSlices.length + unSyncedCustomTypes.length;
68
51
 
52
+ // Changes page should not be accessible when the autoSyncStatus is syncing, synced or failed
53
+ useEffect(() => {
54
+ if (
55
+ autoSyncStatus === "synced" ||
56
+ autoSyncStatus === "failed" ||
57
+ autoSyncStatus === "syncing"
58
+ ) {
59
+ void router.push("/");
60
+ }
61
+ }, [autoSyncStatus, router]);
62
+
69
63
  const onPush = async (confirmDeleteDocuments: boolean) => {
70
64
  try {
71
65
  setIsSyncing(true);
@@ -73,23 +67,15 @@ const Changes: React.FunctionComponent = () => {
73
67
 
74
68
  const limit = await pushChanges({
75
69
  confirmDeleteDocuments,
76
- changedSlices,
77
70
  changedCustomTypes,
71
+ changedSlices,
78
72
  });
79
73
 
80
74
  if (limit !== undefined) {
81
75
  setOpenModalData(limit);
82
76
  } else {
83
- // TODO(DT-1737): Remove the use of global getState
84
77
  const serverState = await getState();
85
- refreshState({
86
- env: serverState.env,
87
- remoteCustomTypes: serverState.remoteCustomTypes,
88
- customTypes: serverState.customTypes,
89
- libraries: serverState.libraries,
90
- remoteSlices: serverState.remoteSlices,
91
- clientError: serverState.clientError,
92
- });
78
+ refreshState(serverState);
93
79
 
94
80
  // Update last sync value in local storage
95
81
  pushChangesSuccess();
@@ -0,0 +1 @@
1
+ export { SettingsPage as default } from "@src/features/settings/SettingsPage";
@@ -0,0 +1,10 @@
1
+ module.exports = {
2
+ plugins: {
3
+ "postcss-flexbugs-fixes": true,
4
+ "postcss-preset-env": {
5
+ autoprefixer: { flexbox: "no-2009" },
6
+ features: { "custom-properties": false, "nesting-rules": true },
7
+ stage: 3,
8
+ },
9
+ },
10
+ };
@@ -193,11 +193,14 @@ export const WithHeaderAndBoxContent = {
193
193
  <OwnerSelect />
194
194
  </FieldSetHeader>
195
195
  <FieldSetContent>
196
- {/*
197
- * TODO: these `padding` values actually don't match Figma, but they
198
- * are the closest allowed by the `Box` component.
199
- */}
200
- <Box flexDirection="column" padding={{ block: 72, inline: 100 }}>
196
+ <Box
197
+ flexDirection="column"
198
+ /*
199
+ * TODO: these `padding` values actually don't match Figma, but they
200
+ * are the closest allowed by the `Box` component.
201
+ */
202
+ padding={{ block: 72, inline: 100 }}
203
+ >
201
204
  <Text align="center" variant="emphasized">
202
205
  No Results Found
203
206
  </Text>
@@ -230,12 +233,18 @@ function OwnerSelect(props: OwnerSelectProps) {
230
233
  size="large"
231
234
  sx={{ width: "calc(50% - 8px)" }}
232
235
  >
233
- <SelectItem size="large" value="owner-1">
234
- Owner
235
- </SelectItem>
236
- <SelectItem size="large" value="owner-2">
237
- Owner
238
- </SelectItem>
236
+ {[...Array(2).keys()].map((index) => (
237
+ <SelectItem
238
+ key={index}
239
+ renderStartIcon={() => (
240
+ <GitHubIcon color={tokens.color.greyLight11} />
241
+ )}
242
+ size="large"
243
+ value={`owner-${index}`}
244
+ >
245
+ Owner
246
+ </SelectItem>
247
+ ))}
239
248
  </Select>
240
249
  );
241
250
  }
@@ -0,0 +1,25 @@
1
+ import type { Meta, StoryObj } from "@storybook/react";
2
+
3
+ import { RelativeTime } from "./RelativeTime";
4
+
5
+ type Story = StoryObj<typeof meta>;
6
+
7
+ const meta = {
8
+ component: RelativeTime,
9
+ argTypes: {
10
+ date: { control: "date" },
11
+ },
12
+ } satisfies Meta<typeof RelativeTime>;
13
+
14
+ export default meta;
15
+
16
+ export const Default = {
17
+ args: {
18
+ date: new Date("1 Jan 2024"),
19
+ },
20
+ render: ({ date, ...otherArgs }) => (
21
+ // The `date` control converts the `date` arg into a UNIX timestamp. That's
22
+ // why we need to convert it back into a `Date` object.
23
+ <RelativeTime {...otherArgs} date={new Date(date)} />
24
+ ),
25
+ } satisfies Story;
@@ -0,0 +1,40 @@
1
+ import { Text } from "@prismicio/editor-ui";
2
+ import type { FC } from "react";
3
+
4
+ type RelativeTimeProps = {
5
+ date: Date;
6
+ };
7
+
8
+ export const RelativeTime: FC<RelativeTimeProps> = ({
9
+ date,
10
+ ...otherProps
11
+ }) => (
12
+ <Text {...otherProps} color="inherit" variant="inherit">
13
+ {formatRelativeTime(date)}
14
+ </Text>
15
+ );
16
+
17
+ const rtf = new Intl.RelativeTimeFormat("en", {
18
+ numeric: "auto",
19
+ style: "narrow",
20
+ });
21
+
22
+ function formatRelativeTime(date: Date, now = new Date()): string {
23
+ return rtf.format(differenceInCalendarDays(date, now), "day");
24
+ }
25
+
26
+ const millisecondsInDay = 1_000 * 60 * 60 * 24;
27
+
28
+ // Adapted from: https://github.com/date-fns/date-fns/blob/6f44a167e71053999c10aa9462d7f0c52fec0faa/src/differenceInCalendarDays/index.ts.
29
+ function differenceInCalendarDays(dateLeft: Date, dateRight: Date): number {
30
+ const startOfDayLeft = startOfDay(dateLeft);
31
+ const startOfDayRight = startOfDay(dateRight);
32
+ return Math.round((+startOfDayLeft - +startOfDayRight) / millisecondsInDay);
33
+ }
34
+
35
+ // Adapted from: https://github.com/date-fns/date-fns/blob/6f44a167e71053999c10aa9462d7f0c52fec0faa/src/startOfDay/index.ts.
36
+ function startOfDay(date: Date): Date {
37
+ const newDate = new Date(date);
38
+ newDate.setHours(0, 0, 0, 0);
39
+ return newDate;
40
+ }
@@ -0,0 +1 @@
1
+ export { RelativeTime } from "./RelativeTime";