@revealui/core 0.0.1-pre.0 → 0.0.1-pre.2

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 (712) hide show
  1. package/NOTICE +34 -0
  2. package/dist/exports/RenderErrorPage.js +2 -2
  3. package/dist/exports/bin-entry.js +3 -1
  4. package/dist/node/cli/index.js +3 -0
  5. package/dist/shared/RenderErrorPage.d.ts +3 -0
  6. package/dist/shared/RenderErrorPage.js +3 -0
  7. package/dist/shared/abort.js +3 -0
  8. package/dist/shared/route/routing.js +3 -0
  9. package/package.json +2 -2
  10. package/dist/core/__internal/index.ts +0 -63
  11. package/dist/core/__tests__/assertNoInfiniteHttpRedirect.spec.ts +0 -76
  12. package/dist/core/__tests__/deduceRouteStringFromFilesystemPath.spec.ts +0 -88
  13. package/dist/core/__tests__/freezePartial.spec.ts +0 -40
  14. package/dist/core/__tests__/getValuePrintable.spec.ts +0 -15
  15. package/dist/core/__tests__/injectHtmlTags.spec.ts +0 -101
  16. package/dist/core/__tests__/isHtml.spec.ts +0 -23
  17. package/dist/core/__tests__/isNpmPackage.spec.ts +0 -93
  18. package/dist/core/__tests__/normalizeHeaders.spec.ts +0 -142
  19. package/dist/core/__tests__/parseUrl-extras.spec.ts +0 -60
  20. package/dist/core/__tests__/parseUrl.spec.ts +0 -1339
  21. package/dist/core/__tests__/resolvePrecedence/resolvePrecedence_overall.spec.ts +0 -106
  22. package/dist/core/__tests__/resolvePrecedence/resolvePrecedence_route-strings.spec.ts +0 -99
  23. package/dist/core/__tests__/resolveRedirects.spec.ts +0 -132
  24. package/dist/core/__tests__/resolveRouteString.spec.ts +0 -211
  25. package/dist/core/__tests__/resolveUrlPathname.spec.ts +0 -22
  26. package/dist/core/__tests__/trimWithAnsi.spec.ts +0 -40
  27. package/dist/core/api/ssr.ts +0 -63
  28. package/dist/core/assets/extractAssetsQuery.ts +0 -29
  29. package/dist/core/assets/index.ts +0 -173
  30. package/dist/core/assets/inferHtmlTags.ts +0 -61
  31. package/dist/core/assets/injectHtmlTags.ts +0 -236
  32. package/dist/core/assets/mergeScriptTags.ts +0 -77
  33. package/dist/core/assets/sanitizeJson.ts +0 -8
  34. package/dist/core/cli/bin.ts +0 -161
  35. package/dist/core/cli/commands/add.ts +0 -158
  36. package/dist/core/cli/commands/check.ts +0 -47
  37. package/dist/core/cli/commands/doctor/checks/build.ts +0 -83
  38. package/dist/core/cli/commands/doctor/checks/config.ts +0 -130
  39. package/dist/core/cli/commands/doctor/checks/dependencies.ts +0 -144
  40. package/dist/core/cli/commands/doctor/checks/practices.ts +0 -156
  41. package/dist/core/cli/commands/doctor/checks/structure.ts +0 -127
  42. package/dist/core/cli/commands/doctor/fixes/index.ts +0 -136
  43. package/dist/core/cli/commands/doctor/index.ts +0 -47
  44. package/dist/core/cli/commands/doctor/print.ts +0 -44
  45. package/dist/core/cli/commands/doctor/types.ts +0 -16
  46. package/dist/core/cli/commands/fix.ts +0 -161
  47. package/dist/core/cli/commands/init.ts +0 -145
  48. package/dist/core/cli/commands/upgrade.ts +0 -115
  49. package/dist/core/cli/onLoad.ts +0 -7
  50. package/dist/core/cli/utils.ts +0 -6
  51. package/dist/core/components/Config/Config-client.ts +0 -14
  52. package/dist/core/components/Config/Config-server.ts +0 -16
  53. package/dist/core/components/Head/Head-client.ts +0 -4
  54. package/dist/core/components/Head/Head-server.ts +0 -16
  55. package/dist/core/components/Loading.tsx +0 -23
  56. package/dist/core/config/findPageConfig.ts +0 -14
  57. package/dist/core/config/loadConfigValues.ts +0 -28
  58. package/dist/core/constants/UnifiedConstants.ts +0 -348
  59. package/dist/core/dom/applyHeadSettings.tsx +0 -13
  60. package/dist/core/dom/onPageVisibilityChange.ts +0 -17
  61. package/dist/core/dom/updateDocumentHead.ts +0 -15
  62. package/dist/core/errors/ErrorHandler.ts +0 -480
  63. package/dist/core/files/file-system/filesystemPath.ts +0 -27
  64. package/dist/core/files/file-system/findFile.ts +0 -35
  65. package/dist/core/files/file-system/findPackageJson.ts +0 -19
  66. package/dist/core/files/file-system/findPageFiles.ts +0 -40
  67. package/dist/core/files/file-system/pathShim.ts +0 -16
  68. package/dist/core/files/file-system/prependEntriesDir.ts +0 -13
  69. package/dist/core/files/file-system/removeFileExtention.ts +0 -3
  70. package/dist/core/files/file-system/requireResolve.ts +0 -59
  71. package/dist/core/files/file-system/scanCodebase.ts +0 -64
  72. package/dist/core/files/virtual-files/index.ts +0 -31
  73. package/dist/core/files/virtual-files/virtualFileImportUserCode.ts +0 -34
  74. package/dist/core/files/virtual-files/virtualFilePageConfigValuesAll.ts +0 -49
  75. package/dist/core/gaurds/assertions/assert/base.ts +0 -6
  76. package/dist/core/gaurds/assertions/assert/index.ts +0 -2
  77. package/dist/core/gaurds/assertions/assert/log.ts +0 -42
  78. package/dist/core/gaurds/assertions/assertArguments.ts +0 -83
  79. package/dist/core/gaurds/assertions/assertCast.ts +0 -9
  80. package/dist/core/gaurds/assertions/assertCommonJS/base.ts +0 -9
  81. package/dist/core/gaurds/assertions/assertCommonJS/common.ts +0 -30
  82. package/dist/core/gaurds/assertions/assertCommonJS/index.ts +0 -2
  83. package/dist/core/gaurds/assertions/assertExtensions/base.ts +0 -187
  84. package/dist/core/gaurds/assertions/assertExtensions/index.ts +0 -1
  85. package/dist/core/gaurds/assertions/assertHookReturnedObject.ts +0 -30
  86. package/dist/core/gaurds/assertions/assertInfo/base.ts +0 -14
  87. package/dist/core/gaurds/assertions/assertInfo/index.ts +0 -2
  88. package/dist/core/gaurds/assertions/assertInfo/log.ts +0 -28
  89. package/dist/core/gaurds/assertions/assertIs404.ts +0 -12
  90. package/dist/core/gaurds/assertions/assertIsBrowser/base.ts +0 -8
  91. package/dist/core/gaurds/assertions/assertIsBrowser/index.ts +0 -1
  92. package/dist/core/gaurds/assertions/assertIsNotBrowser/base.ts +0 -9
  93. package/dist/core/gaurds/assertions/assertIsNotBrowser/index.ts +0 -1
  94. package/dist/core/gaurds/assertions/assertIsNotProductionRuntime/base.ts +0 -71
  95. package/dist/core/gaurds/assertions/assertIsNotProductionRuntime/index.ts +0 -1
  96. package/dist/core/gaurds/assertions/assertKeys/base.ts +0 -31
  97. package/dist/core/gaurds/assertions/assertKeys/index.ts +0 -1
  98. package/dist/core/gaurds/assertions/assertNoInfiniteHttpRedirect.ts +0 -55
  99. package/dist/core/gaurds/assertions/assertNodeEnv/base.ts +0 -120
  100. package/dist/core/gaurds/assertions/assertNodeEnv/index.ts +0 -1
  101. package/dist/core/gaurds/assertions/assertNodeVersion/base.ts +0 -11
  102. package/dist/core/gaurds/assertions/assertNodeVersion/index.ts +0 -1
  103. package/dist/core/gaurds/assertions/assertOnBeforeRenderHookReturn.ts +0 -37
  104. package/dist/core/gaurds/assertions/assertPageContextProvidedByUser.ts +0 -60
  105. package/dist/core/gaurds/assertions/assertPluginManifest.ts +0 -41
  106. package/dist/core/gaurds/assertions/assertPlusFileExport.ts +0 -66
  107. package/dist/core/gaurds/assertions/assertRoutingType/base.ts +0 -41
  108. package/dist/core/gaurds/assertions/assertRoutingType/index.ts +0 -1
  109. package/dist/core/gaurds/assertions/assertRuntimeManifest.ts +0 -34
  110. package/dist/core/gaurds/assertions/assertSingleInstance/index.ts +0 -142
  111. package/dist/core/gaurds/assertions/assertSingleInstance/onAssertModuleLoad.ts +0 -0
  112. package/dist/core/gaurds/assertions/assertSingleInstance/onClientEntryClientRouting.ts +0 -0
  113. package/dist/core/gaurds/assertions/assertSingleInstance/onClientEntryServerRouting.ts +0 -0
  114. package/dist/core/gaurds/assertions/assertType.ts +0 -12
  115. package/dist/core/gaurds/assertions/assertUsage/base.ts +0 -43
  116. package/dist/core/gaurds/assertions/assertUsage/index.ts +0 -3
  117. package/dist/core/gaurds/assertions/assertUsage/log.ts +0 -29
  118. package/dist/core/gaurds/assertions/assertUsage/node.ts +0 -16
  119. package/dist/core/gaurds/assertions/assertV1Design.ts +0 -29
  120. package/dist/core/gaurds/assertions/assertVersion/base.ts +0 -55
  121. package/dist/core/gaurds/assertions/assertVersion/index.ts +0 -1
  122. package/dist/core/gaurds/assertions/assertWarning/base.ts +0 -43
  123. package/dist/core/gaurds/assertions/assertWarning/index.ts +0 -2
  124. package/dist/core/gaurds/assertions/assertWarning/log.ts +0 -43
  125. package/dist/core/gaurds/assertions/checkType.ts +0 -2
  126. package/dist/core/gaurds/debugger/createDebugger.ts +0 -196
  127. package/dist/core/gaurds/debugger/debugPageFiles.ts +0 -121
  128. package/dist/core/gaurds/debugger/index.ts +0 -2
  129. package/dist/core/gaurds/errors/createErrorWithCleanStackTrace.ts +0 -56
  130. package/dist/core/gaurds/errors/removeErrMsg.ts +0 -8
  131. package/dist/core/gaurds/logger/addOnBeforeLogHook/index.ts +0 -7
  132. package/dist/core/gaurds/logger/formatHintLog.ts +0 -17
  133. package/dist/core/gaurds/logger/log404/index.spec.ts +0 -78
  134. package/dist/core/gaurds/logger/log404/index.ts +0 -208
  135. package/dist/core/gaurds/logger/logErrorHint/errors.ts +0 -17
  136. package/dist/core/gaurds/logger/logErrorHint/getErrorHint.spec.ts +0 -1057
  137. package/dist/core/gaurds/logger/logErrorHint.ts +0 -196
  138. package/dist/core/gaurds/logger/loggerNotProd/errorWithCodeSnippet/fixture-errors/errBabelReact.ts +0 -16
  139. package/dist/core/gaurds/logger/loggerNotProd/errorWithCodeSnippet/fixture-errors/errBabelSolid.ts +0 -16
  140. package/dist/core/gaurds/logger/loggerNotProd/errorWithCodeSnippet/fixture-errors/errEsbuild.ts +0 -39
  141. package/dist/core/gaurds/logger/loggerNotProd/errorWithCodeSnippet/fixture-errors/errMdx1.ts +0 -24
  142. package/dist/core/gaurds/logger/loggerNotProd/errorWithCodeSnippet/fixture-errors/errMdx2.ts +0 -83
  143. package/dist/core/gaurds/logger/loggerNotProd/errorWithCodeSnippet/fixture-errors/errPostcss.ts +0 -33
  144. package/dist/core/gaurds/logger/loggerNotProd/errorWithCodeSnippet/fixture-errors/errSwc.ts +0 -20
  145. package/dist/core/gaurds/logger/loggerNotProd/errorWithCodeSnippet/fixture-errors/errSwcBig.ts +0 -19
  146. package/dist/core/gaurds/logger/loggerNotProd/errorWithCodeSnippet/fixture-errors/errVueCss.ts +0 -36
  147. package/dist/core/gaurds/logger/loggerNotProd/errorWithCodeSnippet/fixture-errors/errVueHtml.ts +0 -17
  148. package/dist/core/gaurds/logger/loggerNotProd/errorWithCodeSnippet/fixture-errors/errVueJavascript.ts +0 -16
  149. package/dist/core/gaurds/logger/loggerNotProd/errorWithCodeSnippet/getPrettyErrMessage.spec.ts +0 -101
  150. package/dist/core/gaurds/logger/loggerNotProd/errorWithCodeSnippet/getPrettyErrorWithCodeSnippet.spec.ts +0 -232
  151. package/dist/core/gaurds/logger/loggerNotProd/errorWithCodeSnippet.ts +0 -212
  152. package/dist/core/gaurds/logger/loggerNotProd/log.ts +0 -124
  153. package/dist/core/gaurds/logger/loggerNotProd.ts +0 -271
  154. package/dist/core/gaurds/logger/loggerProd.ts +0 -37
  155. package/dist/core/gaurds/logger/loggerRuntime.ts +0 -46
  156. package/dist/core/gaurds/logger/loggerVite/removeSuperfluousViteLog.ts +0 -30
  157. package/dist/core/gaurds/logger/loggerVite.ts +0 -65
  158. package/dist/core/gaurds/logger/overwriteAssertProductionLogger/index.ts +0 -9
  159. package/dist/core/gaurds/logger/trackLogs.ts +0 -35
  160. package/dist/core/gaurds/logger/warnIfErrorIsNotObject.ts +0 -31
  161. package/dist/core/gaurds/normalization/freezePartial.ts +0 -39
  162. package/dist/core/gaurds/normalization/normalizeHeaders.ts +0 -20
  163. package/dist/core/gaurds/normalization/normalizeLink.tsx +0 -14
  164. package/dist/core/gaurds/normalization/normalizeUrlArgument.ts +0 -22
  165. package/dist/core/gaurds/validators/hasProp.ts +0 -116
  166. package/dist/core/gaurds/validators/isArray.ts +0 -4
  167. package/dist/core/gaurds/validators/isArrayOfStrings.ts +0 -7
  168. package/dist/core/gaurds/validators/isAsset.ts +0 -43
  169. package/dist/core/gaurds/validators/isBrowser.ts +0 -5
  170. package/dist/core/gaurds/validators/isBug.ts +0 -5
  171. package/dist/core/gaurds/validators/isCallable.ts +0 -11
  172. package/dist/core/gaurds/validators/isClientSideRoutable.ts +0 -19
  173. package/dist/core/gaurds/validators/isConfigInvalid.ts +0 -10
  174. package/dist/core/gaurds/validators/isDev.ts +0 -56
  175. package/dist/core/gaurds/validators/isErrorDebug.ts +0 -7
  176. package/dist/core/gaurds/validators/isErrorPage.ts +0 -16
  177. package/dist/core/gaurds/validators/isFilePathAbsoluteFilesystem.ts +0 -55
  178. package/dist/core/gaurds/validators/isHtml.ts +0 -9
  179. package/dist/core/gaurds/validators/isNewError.ts +0 -29
  180. package/dist/core/gaurds/validators/isNodeJS.ts +0 -10
  181. package/dist/core/gaurds/validators/isNotFalse.ts +0 -3
  182. package/dist/core/gaurds/validators/isNotNullish.ts +0 -2
  183. package/dist/core/gaurds/validators/isNpmPackage.ts +0 -127
  184. package/dist/core/gaurds/validators/isObject.ts +0 -3
  185. package/dist/core/gaurds/validators/isObjectOfStrings.ts +0 -9
  186. package/dist/core/gaurds/validators/isObjectWithKeys.ts +0 -18
  187. package/dist/core/gaurds/validators/isPlainObject.ts +0 -21
  188. package/dist/core/gaurds/validators/isPromise.ts +0 -9
  189. package/dist/core/gaurds/validators/isPropertyGetter.ts +0 -4
  190. package/dist/core/gaurds/validators/isReact.ts +0 -24
  191. package/dist/core/gaurds/validators/isReactElement.ts +0 -21
  192. package/dist/core/gaurds/validators/isRevealApp.ts +0 -4
  193. package/dist/core/gaurds/validators/isSameErrorMessage.ts +0 -8
  194. package/dist/core/gaurds/validators/isScriptFile.ts +0 -75
  195. package/dist/core/gaurds/validators/isServerSideError.ts +0 -1
  196. package/dist/core/gaurds/validators/isViteCliCall.ts +0 -93
  197. package/dist/core/gaurds/validators/isVitest.ts +0 -7
  198. package/dist/core/gaurds/validators/rollupIsEsm.ts +0 -14
  199. package/dist/core/gaurds/validators/viteIsSSR.ts +0 -23
  200. package/dist/core/globals/contexts/globalContext/getPageFilesExports.ts +0 -28
  201. package/dist/core/globals/contexts/globalContext/index.ts +0 -374
  202. package/dist/core/globals/contexts/globalContext/loadImportBuild.ts +0 -44
  203. package/dist/core/globals/contexts/globalContext/setup.ts +0 -4
  204. package/dist/core/globals/contexts/index.ts +0 -1
  205. package/dist/core/globals/logger/index.ts +0 -1
  206. package/dist/core/globals/logger/numberOfStackTraceLinesToRemove.ts +0 -3
  207. package/dist/core/globals/objects/index.ts +0 -1
  208. package/dist/core/globals/objects/log.ts +0 -24
  209. package/dist/core/globals/patterns/styleFileRE.ts +0 -3
  210. package/dist/core/globals/tags/addPrefixAssertType.ts +0 -11
  211. package/dist/core/globals/tags/addPrefixProjectName.ts +0 -9
  212. package/dist/core/globals/tags/projectTag.ts +0 -3
  213. package/dist/core/globals/tags/projectTagWithVersion.ts +0 -5
  214. package/dist/core/globals/versions/PROJECT_VERSION.ts +0 -2
  215. package/dist/core/globals/versions/projectInfo.ts +0 -5
  216. package/dist/core/handlers/handleErrorWithoutErrorPage.ts +0 -70
  217. package/dist/core/handlers/handlePageContext.ts +0 -15
  218. package/dist/core/handlers/handlePageContextRequestUrl.ts +0 -56
  219. package/dist/core/handlers/openFacebook.ts +0 -20
  220. package/dist/core/hocs/clientOnly.tsx +0 -130
  221. package/dist/core/hooks/callCumulativeHooks.ts +0 -22
  222. package/dist/core/hooks/executeHook.ts +0 -118
  223. package/dist/core/hooks/useConfig/configsCumulative.ts +0 -6
  224. package/dist/core/hooks/useConfig/useConfig-client.ts +0 -82
  225. package/dist/core/hooks/useConfig/useConfig-server.ts +0 -152
  226. package/dist/core/hydration/progressive.ts +0 -252
  227. package/dist/core/index.ts +0 -60
  228. package/dist/core/islands/index.tsx +0 -198
  229. package/dist/core/logging/UnifiedLoggerV2.ts +0 -555
  230. package/dist/core/logging/index.ts +0 -80
  231. package/dist/core/logging/plugins/FilePlugin.ts +0 -132
  232. package/dist/core/logging/plugins/PayloadCMSPlugin.ts +0 -71
  233. package/dist/core/logging/plugins/RemotePlugin.ts +0 -110
  234. package/dist/core/logging/plugins/index.ts +0 -11
  235. package/dist/core/naming/UnifiedNaming.ts +0 -424
  236. package/dist/core/observability/logger.ts +0 -195
  237. package/dist/core/observability/metrics.ts +0 -156
  238. package/dist/core/processing/getters/getAssertErrMsg.ts +0 -49
  239. package/dist/core/processing/getters/getAssetsDir.ts +0 -11
  240. package/dist/core/processing/getters/getBaseServer.ts +0 -16
  241. package/dist/core/processing/getters/getCacheControl.ts +0 -26
  242. package/dist/core/processing/getters/getConfigDefinedAt.ts +0 -73
  243. package/dist/core/processing/getters/getConfigReveal.ts +0 -14
  244. package/dist/core/processing/getters/getConfigValue.ts +0 -68
  245. package/dist/core/processing/getters/getConfigValueBuildTime.ts +0 -92
  246. package/dist/core/processing/getters/getConfigValueFilePathToShowToUser.ts +0 -17
  247. package/dist/core/processing/getters/getCurrentUrl.ts +0 -42
  248. package/dist/core/processing/getters/getEarlyHints.ts +0 -58
  249. package/dist/core/processing/getters/getEnv.ts +0 -33
  250. package/dist/core/processing/getters/getErrorPageId.ts +0 -23
  251. package/dist/core/processing/getters/getExportPath.spec.ts +0 -34
  252. package/dist/core/processing/getters/getExportPath.ts +0 -33
  253. package/dist/core/processing/getters/getFileExtension.ts +0 -19
  254. package/dist/core/processing/getters/getFilePath.ts +0 -269
  255. package/dist/core/processing/getters/getGlobalObject.ts +0 -53
  256. package/dist/core/processing/getters/getHeadSetting.tsx +0 -36
  257. package/dist/core/processing/getters/getHook.ts +0 -222
  258. package/dist/core/processing/getters/getHookFilePathToShowToUser.ts +0 -12
  259. package/dist/core/processing/getters/getHtmlTags.ts +0 -341
  260. package/dist/core/processing/getters/getHttpRequestAsyncStore.ts +0 -122
  261. package/dist/core/processing/getters/getHttpResponseBody.ts +0 -177
  262. package/dist/core/processing/getters/getMostSimilar.ts +0 -72
  263. package/dist/core/processing/getters/getOutDirs.ts +0 -160
  264. package/dist/core/processing/getters/getPageAssets/getManifestEntry.ts +0 -164
  265. package/dist/core/processing/getters/getPageAssets/retrieveAssetsDev.ts +0 -96
  266. package/dist/core/processing/getters/getPageAssets/retrieveAssetsProd.ts +0 -86
  267. package/dist/core/processing/getters/getPageAssets/sortPageAssetsForEarlyHintsHeader.ts +0 -40
  268. package/dist/core/processing/getters/getPageAssets.ts +0 -140
  269. package/dist/core/processing/getters/getPageConfig.ts +0 -14
  270. package/dist/core/processing/getters/getPageContext.ts +0 -64
  271. package/dist/core/processing/getters/getPageContextCurrent.ts +0 -19
  272. package/dist/core/processing/getters/getPageContextFromHooks.ts +0 -335
  273. package/dist/core/processing/getters/getPageContextProxyForUser.ts +0 -97
  274. package/dist/core/processing/getters/getPageContextRequestUrl.ts +0 -22
  275. package/dist/core/processing/getters/getPageContextSerializedInHtml.ts +0 -32
  276. package/dist/core/processing/getters/getPageContextUrlComputed.ts +0 -410
  277. package/dist/core/processing/getters/getPageElement.tsx +0 -148
  278. package/dist/core/processing/getters/getPageFiles/analyzeClientSide.ts +0 -50
  279. package/dist/core/processing/getters/getPageFiles/analyzePageServerSide.ts +0 -32
  280. package/dist/core/processing/getters/getPageFiles/getExportNames.ts +0 -16
  281. package/dist/core/processing/getters/getPageFiles/getExports.ts +0 -193
  282. package/dist/core/processing/getters/getPageFiles/index.ts +0 -9
  283. package/dist/core/processing/getters/getPageFiles/parseGlobResults.ts +0 -167
  284. package/dist/core/processing/getters/getPageFiles/setPageFiles.ts +0 -76
  285. package/dist/core/processing/getters/getPrefetchSettingResolved.ts.ts +0 -87
  286. package/dist/core/processing/getters/getProjectError.ts +0 -18
  287. package/dist/core/processing/getters/getPropAccessNotation.ts +0 -10
  288. package/dist/core/processing/getters/getRandomId.ts +0 -15
  289. package/dist/core/processing/getters/getRevalidationKey.ts +0 -5
  290. package/dist/core/processing/getters/getRevealClientEntry.ts +0 -7
  291. package/dist/core/processing/getters/getRevealConfig/configDefinitionsBuiltIn.ts +0 -711
  292. package/dist/core/processing/getters/getRevealConfig/crawlPlusFiles.ts +0 -409
  293. package/dist/core/processing/getters/getRevealConfig/filesystemRouting.spec.ts +0 -40
  294. package/dist/core/processing/getters/getRevealConfig/filesystemRouting.ts +0 -286
  295. package/dist/core/processing/getters/getRevealConfig/index.ts +0 -1641
  296. package/dist/core/processing/getters/getRevealConfig/loadFileAtConfigTime.ts +0 -181
  297. package/dist/core/processing/getters/getRevealConfig/resolvePointerImport.ts +0 -240
  298. package/dist/core/processing/getters/getRevealConfig/transformPointerImports.spec.ts +0 -30
  299. package/dist/core/processing/getters/getRevealConfig/transformPointerImports.ts +0 -244
  300. package/dist/core/processing/getters/getRevealConfig/transpileAndExecuteFile.ts +0 -490
  301. package/dist/core/processing/getters/getTagAttributesString.ts +0 -27
  302. package/dist/core/processing/getters/getTerminWidth.ts +0 -9
  303. package/dist/core/processing/getters/getValuePrintable.ts +0 -6
  304. package/dist/core/processing/getters/getViteDevScript.ts +0 -47
  305. package/dist/core/processing/iterators/analyzePage.ts +0 -65
  306. package/dist/core/processing/iterators/includes.ts +0 -10
  307. package/dist/core/processing/iterators/index.ts +0 -2
  308. package/dist/core/processing/iterators/objectKeys.ts +0 -6
  309. package/dist/core/processing/parsers/parseEsModule.ts +0 -43
  310. package/dist/core/processing/parsers/parseTransform.ts +0 -36
  311. package/dist/core/processing/serializers/notSerializable.ts +0 -2
  312. package/dist/core/processing/serializers/replaceWithParserPath.ts +0 -30
  313. package/dist/core/processing/serializers/serializePage/PageConfigSerialized.ts +0 -45
  314. package/dist/core/processing/serializers/serializePage/parsePageConfigs.ts +0 -223
  315. package/dist/core/processing/serializers/serializePage/serializeConfigValues.ts +0 -336
  316. package/dist/core/processing/serializers/serializePageContextClientSide.ts +0 -179
  317. package/dist/core/processing/serializers/stringify.ts +0 -188
  318. package/dist/core/processing/serializers/stringifyTypes.ts +0 -103
  319. package/dist/core/processing/setters/addIs404ToPageProps.ts +0 -27
  320. package/dist/core/processing/setters/setAlwaysShowStackTrace.ts +0 -7
  321. package/dist/core/processing/transformers/augmentType.ts +0 -10
  322. package/dist/core/processing/transformers/rollupSourceMap.ts +0 -23
  323. package/dist/core/processing/transformers/slice.ts +0 -52
  324. package/dist/core/renderer/page/executeOnBeforeRenderAndDataHooks.ts +0 -53
  325. package/dist/core/renderer/page/executeOnRenderHtmlHook.ts +0 -261
  326. package/dist/core/renderer/page/index.ts +0 -804
  327. package/dist/core/renderer/page/inferMediaType.ts +0 -128
  328. package/dist/core/renderer/page/loadUserFilesServerSide.ts +0 -154
  329. package/dist/core/renderer/page/preparePageContextForUserConsumption.ts +0 -55
  330. package/dist/core/renderer/page/preparePageContextForUserConsumptionServerSide.ts +0 -38
  331. package/dist/core/renderer/page/renderPageAlreadyRouted.ts +0 -373
  332. package/dist/core/renderer/page/resolveRedirects.ts +0 -75
  333. package/dist/core/renderer/prerender/index.ts +0 -1
  334. package/dist/core/renderer/prerender/runPrerender.ts +0 -1141
  335. package/dist/core/renderer/prerender/utils.ts +0 -22
  336. package/dist/core/renderer/stream/html.ts +0 -408
  337. package/dist/core/renderer/stream/index.ts +0 -1001
  338. package/dist/core/renderer/stream/onLoad.ts +0 -14
  339. package/dist/core/renderer/stream/react-streaming.ts +0 -69
  340. package/dist/core/renderer/stream/utils.ts +0 -66
  341. package/dist/core/resilience/circuit-breaker.ts +0 -212
  342. package/dist/core/resilience/retry.ts +0 -172
  343. package/dist/core/result/adapters.ts +0 -254
  344. package/dist/core/result.ts +0 -332
  345. package/dist/core/router/abort.ts +0 -339
  346. package/dist/core/router/apiRoutes.ts +0 -94
  347. package/dist/core/router/debug.ts +0 -19
  348. package/dist/core/router/deduceRouteStringFromFilesystemPath.ts +0 -75
  349. package/dist/core/router/dynamicApiRoutes.ts +0 -18
  350. package/dist/core/router/dynamicPageRoutes.ts +0 -18
  351. package/dist/core/router/executeGuardHook.ts +0 -45
  352. package/dist/core/router/executeOnBeforeRouteHook.ts +0 -161
  353. package/dist/core/router/index.ts +0 -230
  354. package/dist/core/router/loadPageRoutes.ts +0 -155
  355. package/dist/core/router/noRouteMatch.ts +0 -1
  356. package/dist/core/router/pageRoutes.ts +0 -159
  357. package/dist/core/router/resolvePrecedence.ts +0 -128
  358. package/dist/core/router/resolveRoute.ts +0 -29
  359. package/dist/core/router/resolveRouteFunction.ts +0 -193
  360. package/dist/core/router/resolveRouteString.ts +0 -204
  361. package/dist/core/router/resolveRouteUtils.ts +0 -77
  362. package/dist/core/router/resolveUrlPathname.ts +0 -67
  363. package/dist/core/router/routeInternal.ts +0 -97
  364. package/dist/core/router/utils.ts +0 -30
  365. package/dist/core/services/BaseService.ts +0 -403
  366. package/dist/core/targets/client/abort.ts +0 -11
  367. package/dist/core/targets/client/createPageContext.ts +0 -48
  368. package/dist/core/targets/client/entry.ts +0 -15
  369. package/dist/core/targets/client/executeOnRenderClientHook.ts +0 -94
  370. package/dist/core/targets/client/history.ts +0 -142
  371. package/dist/core/targets/client/index.ts +0 -9
  372. package/dist/core/targets/client/initClientRouter.ts +0 -48
  373. package/dist/core/targets/client/initOnLinkClick.ts +0 -54
  374. package/dist/core/targets/client/loadUserFilesClientSide.ts +0 -92
  375. package/dist/core/targets/client/navigate.ts +0 -45
  376. package/dist/core/targets/client/onBrowserHistoryNavigation.ts +0 -85
  377. package/dist/core/targets/client/onLoad.ts +0 -10
  378. package/dist/core/targets/client/pageContextInitIsPassedToClient.ts +0 -2
  379. package/dist/core/targets/client/pageFiles.ts +0 -4
  380. package/dist/core/targets/client/prefetch.ts +0 -399
  381. package/dist/core/targets/client/preparePageContextForUserConsumptionClientSide.ts +0 -48
  382. package/dist/core/targets/client/removeBuiltInOverrides.ts +0 -37
  383. package/dist/core/targets/client/removeFoucBuster.ts +0 -70
  384. package/dist/core/targets/client/renderPageClientSide.ts +0 -1817
  385. package/dist/core/targets/client/router.ts +0 -15
  386. package/dist/core/targets/client/scrollRestoration.ts +0 -37
  387. package/dist/core/targets/client/setScrollPosition.ts +0 -87
  388. package/dist/core/targets/client/skipLink.ts +0 -63
  389. package/dist/core/targets/client/utils.ts +0 -34
  390. package/dist/core/targets/http/createHttpResponse.ts +0 -254
  391. package/dist/core/targets/http/fetchBanner.ts +0 -25
  392. package/dist/core/targets/http/fetchCard.ts +0 -25
  393. package/dist/core/targets/http/fetchEvents.ts +0 -25
  394. package/dist/core/targets/http/fetchHero.ts +0 -25
  395. package/dist/core/targets/http/fetchMainInfos.ts +0 -25
  396. package/dist/core/targets/http/fetchPage.ts +0 -78
  397. package/dist/core/targets/http/fetchPages.ts +0 -70
  398. package/dist/core/targets/http/fetchVideos.ts +0 -26
  399. package/dist/core/targets/http/fetchYouTube.ts +0 -90
  400. package/dist/core/targets/server/entry.ts +0 -43
  401. package/dist/core/targets/server/middleware/addSsrMiddleware.ts +0 -52
  402. package/dist/core/targets/server/onLoad.ts +0 -7
  403. package/dist/core/targets/server/pageFiles.ts +0 -4
  404. package/dist/core/targets/server/root.ts +0 -10
  405. package/dist/core/targets/server/utils.ts +0 -20
  406. package/dist/core/targets/url/index.ts +0 -439
  407. package/dist/core/targets/url/modifyUrl.ts +0 -45
  408. package/dist/core/targets/url/parseUrl.ts +0 -440
  409. package/dist/core/targets/url/parseUrlExtras.ts +0 -193
  410. package/dist/core/targets/url/redirectHard.ts +0 -3
  411. package/dist/core/targets/url/updateCurrentPath.ts +0 -52
  412. package/dist/core/targets/url/urlToFile.ts +0 -47
  413. package/dist/core/types/UnifiedTypes.ts +0 -493
  414. package/dist/core/types/contracts.ts +0 -61
  415. package/dist/core/types/generator.ts +0 -316
  416. package/dist/core/utils/array/includes.ts +0 -10
  417. package/dist/core/utils/array/slice.ts +0 -52
  418. package/dist/core/utils/array/sorter.ts +0 -130
  419. package/dist/core/utils/array/stringifyStringArray.ts +0 -7
  420. package/dist/core/utils/array/unique.ts +0 -5
  421. package/dist/core/utils/async/genPromise.ts +0 -8
  422. package/dist/core/utils/async/pLimit.ts +0 -157
  423. package/dist/core/utils/async/sleep.ts +0 -3
  424. package/dist/core/utils/async/throttle.ts +0 -14
  425. package/dist/core/utils/index.ts +0 -31
  426. package/dist/core/utils/object/changeEnumerable.ts +0 -9
  427. package/dist/core/utils/object/deepEqual.ts +0 -10
  428. package/dist/core/utils/object/objectAssign.ts +0 -16
  429. package/dist/core/utils/object/objectDefineProperty.ts +0 -15
  430. package/dist/core/utils/object/objectEntries.ts +0 -7
  431. package/dist/core/utils/object/objectEntriesForEach.ts +0 -7
  432. package/dist/core/utils/object/objectFromEntries.ts +0 -6
  433. package/dist/core/utils/string/addWhitespace.ts +0 -9
  434. package/dist/core/utils/string/capitalizeFirstLetter.ts +0 -8
  435. package/dist/core/utils/string/compareString.ts +0 -7
  436. package/dist/core/utils/string/escapeHtml.ts +0 -10
  437. package/dist/core/utils/string/escapeRegex.ts +0 -4
  438. package/dist/core/utils/string/joinEnglish.ts +0 -18
  439. package/dist/core/utils/string/removeEmptyLines.ts +0 -6
  440. package/dist/core/utils/string/stripAnsi.ts +0 -24
  441. package/dist/core/utils/string/trimWithAnsi.ts +0 -40
  442. package/dist/core/utils/string/truncateString.ts +0 -19
  443. package/dist/core/utils/time/humanizeTime.ts +0 -24
  444. package/dist/integration/hydration.ts +0 -52
  445. package/dist/integration/onRenderClient.tsx +0 -377
  446. package/dist/integration/onRenderHtml.tsx +0 -761
  447. package/dist/integration/ssrEffect.ts +0 -31
  448. package/dist/plugins/baseUrls.ts +0 -54
  449. package/dist/plugins/buildConfig/index.ts +0 -701
  450. package/dist/plugins/buildConfig/injectRollupInputs.ts +0 -36
  451. package/dist/plugins/commonConfig.ts +0 -112
  452. package/dist/plugins/config/assertResolveAlias.ts +0 -99
  453. package/dist/plugins/config/assertRevealConfig.ts +0 -116
  454. package/dist/plugins/config/fixServerAssets.ts +0 -213
  455. package/dist/plugins/config/index.ts +0 -227
  456. package/dist/plugins/config/pickFirst.ts +0 -3
  457. package/dist/plugins/config/resolveBase.ts +0 -78
  458. package/dist/plugins/devConfig/determineFsAllowList.ts +0 -34
  459. package/dist/plugins/devConfig/determineOptimizeDeps.ts +0 -129
  460. package/dist/plugins/devConfig/index.ts +0 -222
  461. package/dist/plugins/distFileNames.ts +0 -341
  462. package/dist/plugins/envVars.ts +0 -150
  463. package/dist/plugins/extractAssetsPlugin.ts +0 -318
  464. package/dist/plugins/extractExportNamesPlugin.ts +0 -154
  465. package/dist/plugins/fileEnv.ts +0 -374
  466. package/dist/plugins/importBuild/getRevealManifest.ts +0 -20
  467. package/dist/plugins/importBuild/index.ts +0 -120
  468. package/dist/plugins/importUserCode/addImportStatement.ts +0 -32
  469. package/dist/plugins/importUserCode/debug.ts +0 -2
  470. package/dist/plugins/importUserCode/getConfigFileExport.ts +0 -24
  471. package/dist/plugins/importUserCode/getVirtualFilePageConfigValuesAll.ts +0 -95
  472. package/dist/plugins/importUserCode/getVirtualFilePageConfigs.ts +0 -150
  473. package/dist/plugins/importUserCode/index.ts +0 -375
  474. package/dist/plugins/importUserCode/isRuntimeEnvMatch.ts +0 -31
  475. package/dist/plugins/index.ts +0 -233
  476. package/dist/plugins/onLoad.ts +0 -12
  477. package/dist/plugins/packageJsonFile.ts +0 -62
  478. package/dist/plugins/payload/index.ts +0 -62
  479. package/dist/plugins/previewConfig.ts +0 -95
  480. package/dist/plugins/react/index.ts +0 -72
  481. package/dist/plugins/removeRequireHookPlugin.ts +0 -27
  482. package/dist/plugins/resolveClientEntriesDev.ts +0 -87
  483. package/dist/plugins/reveal/index.ts +0 -39
  484. package/dist/plugins/reveal/remove-use-client-server.ts +0 -52
  485. package/dist/plugins/setGlobalContext.ts +0 -53
  486. package/dist/plugins/suppressRollupWarning.ts +0 -94
  487. package/dist/plugins/utils.ts +0 -33
  488. package/dist/plugins/vercel/+config.ts +0 -18
  489. package/dist/plugins/vercel/functions/assert.ts +0 -13
  490. package/dist/plugins/vercel/functions/build.ts +0 -484
  491. package/dist/plugins/vercel/functions/config.ts +0 -147
  492. package/dist/plugins/vercel/functions/helpers.ts +0 -70
  493. package/dist/plugins/vercel/functions/prerender.ts +0 -140
  494. package/dist/plugins/vercel/functions/route-regex.ts +0 -37
  495. package/dist/plugins/vercel/functions/utils.ts +0 -33
  496. package/dist/plugins/vercel/functions/vike.ts +0 -754
  497. package/dist/plugins/vercel/index.ts +0 -186
  498. package/dist/plugins/vercel/plugin.ts +0 -45
  499. package/dist/plugins/vercel/schemas/config/prerender-config.ts +0 -20
  500. package/dist/plugins/vercel/schemas/config/vc-config.ts +0 -45
  501. package/dist/plugins/vercel/schemas/config/vercel.ts +0 -130
  502. package/dist/plugins/vercel/schemas/exports.ts +0 -12
  503. package/dist/plugins/vercel/templates/edge-helpers.ts +0 -72
  504. package/dist/plugins/vercel/templates/node-helpers.ts +0 -60
  505. package/dist/plugins/vercel/templates/ssr_.template.ts +0 -25
  506. package/dist/plugins/vercel/templates/ssr_edge_.template.ts +0 -20
  507. package/dist/plugins/vercel/templates/utils.ts +0 -31
  508. package/dist/plugins/workaroundCssModuleHmr.ts +0 -23
  509. package/dist/types/index.ts +0 -50
  510. package/dist/types/interfaces/app.ts +0 -700
  511. package/dist/types/interfaces/client.ts +0 -10
  512. package/dist/types/interfaces/config.ts +0 -481
  513. package/dist/types/interfaces/context.ts +0 -677
  514. package/dist/types/interfaces/error.ts +0 -6
  515. package/dist/types/interfaces/file.ts +0 -98
  516. package/dist/types/interfaces/host.ts +0 -209
  517. package/dist/types/interfaces/log.ts +0 -3
  518. package/dist/types/interfaces/logic.ts +0 -46
  519. package/dist/types/interfaces/manifest.ts +0 -15
  520. package/dist/types/interfaces/node.ts +0 -8
  521. package/dist/types/interfaces/page.ts +0 -154
  522. package/dist/types/interfaces/reveal.ts +0 -118
  523. package/dist/types/interfaces/tag.ts +0 -3
  524. package/dist/types/modules/assets.d.ts +0 -57
  525. package/dist/types/modules/env.d.ts +0 -34
  526. package/dist/types/modules/global.d.ts +0 -10
  527. package/dist/types/modules/index.d.ts +0 -1
  528. package/dist/types/modules/node.d.ts +0 -2
  529. package/dist/types/modules/payload.d.ts +0 -2
  530. package/dist/types/modules/reveal-vercel.d.ts +0 -19
  531. package/dist/types/modules/reveal.d.ts +0 -1
  532. package/dist/types/modules/stripe.d.ts +0 -41
  533. package/dist/types/modules/supabase.d.ts +0 -19
  534. package/dist/types/modules/tailwindcss.d.ts +0 -49
  535. package/dist/types/modules/vite.d.ts +0 -7
  536. package/dist/types/namespaces/Config.ts +0 -291
  537. package/dist/types/namespaces/PageContext.ts +0 -23
  538. package/dist/types/namespaces/RevealNamespace.ts +0 -51
  539. package/dist/types/namespaces/index.ts +0 -3
  540. package/dist/ui/accents/DiagonalGrid.tsx +0 -36
  541. package/dist/ui/accents/Glass.tsx +0 -33
  542. package/dist/ui/accents/Parallax.tsx +0 -78
  543. package/dist/ui/accents/Shadow.tsx +0 -28
  544. package/dist/ui/accents/index.tsx +0 -4
  545. package/dist/ui/accessibility/index.ts +0 -168
  546. package/dist/ui/ai/ChatGPTAssistant.tsx +0 -113
  547. package/dist/ui/ai/index.ts +0 -3
  548. package/dist/ui/animations/container.ts +0 -7
  549. package/dist/ui/animations/content.ts +0 -16
  550. package/dist/ui/animations/fade.ts +0 -16
  551. package/dist/ui/animations/index.ts +0 -6
  552. package/dist/ui/animations/slide.ts +0 -23
  553. package/dist/ui/animations/text.ts +0 -14
  554. package/dist/ui/animations/transition.ts +0 -1
  555. package/dist/ui/audio/AudioTrack.tsx +0 -26
  556. package/dist/ui/audio/index.tsx +0 -1
  557. package/dist/ui/backgrounds/Diagonal.tsx +0 -46
  558. package/dist/ui/backgrounds/GradientConic.tsx +0 -21
  559. package/dist/ui/backgrounds/GradientConicRev.tsx +0 -50
  560. package/dist/ui/backgrounds/GradientGlass.tsx +0 -28
  561. package/dist/ui/backgrounds/GradientRadial.tsx +0 -37
  562. package/dist/ui/backgrounds/GradientRadialLeft.tsx +0 -33
  563. package/dist/ui/backgrounds/GradientToBottom.tsx +0 -59
  564. package/dist/ui/backgrounds/GradientToTop.tsx +0 -60
  565. package/dist/ui/backgrounds/Solid.tsx +0 -50
  566. package/dist/ui/backgrounds/Straight.tsx +0 -55
  567. package/dist/ui/backgrounds/TopRight.tsx +0 -15
  568. package/dist/ui/backgrounds/Wrapper.tsx +0 -33
  569. package/dist/ui/backgrounds/index.tsx +0 -12
  570. package/dist/ui/buttons/Button.tsx +0 -54
  571. package/dist/ui/buttons/DisclosureButton.tsx +0 -35
  572. package/dist/ui/buttons/GradientButton.tsx +0 -51
  573. package/dist/ui/buttons/IconButton.tsx +0 -24
  574. package/dist/ui/buttons/LikeButton.tsx +0 -221
  575. package/dist/ui/buttons/MobileMenuButton.tsx +0 -63
  576. package/dist/ui/buttons/MusicButton.tsx +0 -53
  577. package/dist/ui/buttons/SignUpButton.tsx +0 -18
  578. package/dist/ui/buttons/index.tsx +0 -8
  579. package/dist/ui/cards/Card.tsx +0 -255
  580. package/dist/ui/cards/ProductCard.tsx +0 -291
  581. package/dist/ui/cards/VideoCard.tsx +0 -201
  582. package/dist/ui/cards/index.tsx +0 -3
  583. package/dist/ui/contexts/DisclosureContext.tsx +0 -44
  584. package/dist/ui/contexts/GlobalContext.tsx +0 -67
  585. package/dist/ui/contexts/MenuContext.tsx +0 -8
  586. package/dist/ui/contexts/PageContext.tsx +0 -28
  587. package/dist/ui/contexts/ThemeContext.tsx +0 -195
  588. package/dist/ui/controls/MusicHeader.tsx +0 -484
  589. package/dist/ui/controls/MusicPlayer.tsx +0 -76
  590. package/dist/ui/controls/MusicSidebar.tsx +0 -118
  591. package/dist/ui/controls/MusicSlider.tsx +0 -25
  592. package/dist/ui/controls/MusicUpload.tsx +0 -296
  593. package/dist/ui/controls/PlayPause.tsx +0 -64
  594. package/dist/ui/controls/PlayerContent.tsx +0 -205
  595. package/dist/ui/controls/SearchContent.tsx +0 -58
  596. package/dist/ui/controls/SearchInput.tsx +0 -118
  597. package/dist/ui/controls/Searchbar.tsx +0 -53
  598. package/dist/ui/controls/SidebarItem.tsx +0 -57
  599. package/dist/ui/controls/SongItem.tsx +0 -45
  600. package/dist/ui/controls/VideoPlayer.tsx +0 -36
  601. package/dist/ui/controls/index.tsx +0 -13
  602. package/dist/ui/dividers/Horizontal.tsx +0 -18
  603. package/dist/ui/dividers/Transparent.tsx +0 -7
  604. package/dist/ui/dividers/index.tsx +0 -2
  605. package/dist/ui/error/ErrorBoundary.tsx +0 -150
  606. package/dist/ui/error/index.tsx +0 -1
  607. package/dist/ui/forms/Input.tsx +0 -38
  608. package/dist/ui/forms/MediaItem.tsx +0 -105
  609. package/dist/ui/forms/index.tsx +0 -2
  610. package/dist/ui/game/Enemy.tsx +0 -52
  611. package/dist/ui/game/Fighters.tsx +0 -38
  612. package/dist/ui/game/GameControls.tsx +0 -37
  613. package/dist/ui/game/HealthBar.tsx +0 -18
  614. package/dist/ui/game/Player.tsx +0 -70
  615. package/dist/ui/game/index.tsx +0 -5
  616. package/dist/ui/hooks/useApiData.ts +0 -57
  617. package/dist/ui/hooks/useAuthModal.ts +0 -18
  618. package/dist/ui/hooks/useCart.ts +0 -21
  619. package/dist/ui/hooks/useChatGPT.ts +0 -94
  620. package/dist/ui/hooks/useCustomProps.ts +0 -31
  621. package/dist/ui/hooks/useData.ts +0 -10
  622. package/dist/ui/hooks/useDebounce.ts +0 -52
  623. package/dist/ui/hooks/useDisclosure.ts +0 -8
  624. package/dist/ui/hooks/useGame.ts +0 -1147
  625. package/dist/ui/hooks/useLayoutClasses.ts +0 -70
  626. package/dist/ui/hooks/useLazyLoad.ts +0 -78
  627. package/dist/ui/hooks/useLikeSong.ts +0 -22
  628. package/dist/ui/hooks/useLivePreview.ts +0 -60
  629. package/dist/ui/hooks/useMenu.ts +0 -6
  630. package/dist/ui/hooks/useOnPlay.ts +0 -23
  631. package/dist/ui/hooks/usePageContext.ts +0 -174
  632. package/dist/ui/hooks/useParallax.ts +0 -161
  633. package/dist/ui/hooks/usePreviewModal.ts +0 -25
  634. package/dist/ui/hooks/useScreenSize.ts +0 -56
  635. package/dist/ui/hooks/useTheme.ts +0 -6
  636. package/dist/ui/images/Carousel.tsx +0 -326
  637. package/dist/ui/images/Circle.tsx +0 -9
  638. package/dist/ui/images/Defs.tsx +0 -7
  639. package/dist/ui/images/Image.tsx +0 -127
  640. package/dist/ui/images/ImageGrid.tsx +0 -73
  641. package/dist/ui/images/Logo.tsx +0 -22
  642. package/dist/ui/images/Path.tsx +0 -27
  643. package/dist/ui/images/Pattern.tsx +0 -70
  644. package/dist/ui/images/PromoBanner.tsx +0 -25
  645. package/dist/ui/images/Rect.tsx +0 -10
  646. package/dist/ui/images/SVG.tsx +0 -58
  647. package/dist/ui/images/Stop.tsx +0 -15
  648. package/dist/ui/images/index.tsx +0 -12
  649. package/dist/ui/layouts/classNames.ts +0 -8
  650. package/dist/ui/layouts/container.ts +0 -20
  651. package/dist/ui/layouts/flex.ts +0 -13
  652. package/dist/ui/layouts/grid.ts +0 -11
  653. package/dist/ui/layouts/main.ts +0 -31
  654. package/dist/ui/layouts/responsive.ts +0 -28
  655. package/dist/ui/layouts/stack.ts +0 -24
  656. package/dist/ui/lists/DescriptionList.tsx +0 -41
  657. package/dist/ui/lists/DisclosurePanel.tsx +0 -20
  658. package/dist/ui/lists/JobOpeningsList.tsx +0 -54
  659. package/dist/ui/lists/List.tsx +0 -18
  660. package/dist/ui/lists/ListElements.tsx +0 -43
  661. package/dist/ui/lists/ListItem.tsx +0 -63
  662. package/dist/ui/lists/ProductList.tsx +0 -37
  663. package/dist/ui/lists/StatsList.tsx +0 -64
  664. package/dist/ui/lists/UList.tsx +0 -54
  665. package/dist/ui/lists/index.ts +0 -9
  666. package/dist/ui/navigation/DesktopMenu.tsx +0 -14
  667. package/dist/ui/navigation/Footer.tsx +0 -128
  668. package/dist/ui/navigation/Link.tsx +0 -225
  669. package/dist/ui/navigation/MobileMenu.tsx +0 -26
  670. package/dist/ui/navigation/NavigationLinks.tsx +0 -244
  671. package/dist/ui/navigation/NotFound.tsx +0 -12
  672. package/dist/ui/navigation/Route.tsx +0 -120
  673. package/dist/ui/navigation/Transition.tsx +0 -40
  674. package/dist/ui/navigation/index.tsx +0 -8
  675. package/dist/ui/notifications/Banner.tsx +0 -69
  676. package/dist/ui/notifications/Error.tsx +0 -12
  677. package/dist/ui/notifications/Loader.tsx +0 -14
  678. package/dist/ui/notifications/NoResults.tsx +0 -11
  679. package/dist/ui/notifications/index.tsx +0 -4
  680. package/dist/ui/providers/AppProvider.tsx +0 -115
  681. package/dist/ui/providers/DisclosureProvider.tsx +0 -21
  682. package/dist/ui/providers/MenuProvider.tsx +0 -40
  683. package/dist/ui/providers/PageContextProvider.tsx +0 -176
  684. package/dist/ui/providers/ThemeProvider.tsx +0 -196
  685. package/dist/ui/shells/App.tsx +0 -57
  686. package/dist/ui/shells/Container.tsx +0 -74
  687. package/dist/ui/shells/Disclosure.tsx +0 -72
  688. package/dist/ui/shells/Field.tsx +0 -21
  689. package/dist/ui/shells/Flex.tsx +0 -193
  690. package/dist/ui/shells/Grid.tsx +0 -118
  691. package/dist/ui/shells/Header.tsx +0 -123
  692. package/dist/ui/shells/Main.tsx +0 -96
  693. package/dist/ui/shells/Nav.tsx +0 -138
  694. package/dist/ui/shells/Section.tsx +0 -94
  695. package/dist/ui/shells/Skeleton.tsx +0 -24
  696. package/dist/ui/shells/index.ts +0 -11
  697. package/dist/ui/text/Article.tsx +0 -141
  698. package/dist/ui/text/Currency.tsx +0 -29
  699. package/dist/ui/text/Heading.tsx +0 -29
  700. package/dist/ui/text/Label.tsx +0 -24
  701. package/dist/ui/text/Motto.tsx +0 -40
  702. package/dist/ui/text/Paragraph.tsx +0 -20
  703. package/dist/ui/text/Span.tsx +0 -20
  704. package/dist/ui/text/TagLine.tsx +0 -20
  705. package/dist/ui/text/Time.tsx +0 -36
  706. package/dist/ui/text/WelcomeHeading.tsx +0 -40
  707. package/dist/ui/text/index.ts +0 -10
  708. package/dist/ui/video/VideoComponent.tsx +0 -23
  709. package/dist/ui/video/VideoDetail.tsx +0 -33
  710. package/dist/ui/video/VideoItem.tsx +0 -51
  711. package/dist/ui/video/VideoList.tsx +0 -155
  712. package/dist/ui/video/index.ts +0 -4
@@ -1,336 +0,0 @@
1
- export { serializeConfigValues }
2
-
3
- import pc from "@brillout/picocolors"
4
- import { addImportStatement } from "../../../../plugins/importUserCode/addImportStatement.js"
5
- import type {
6
- ConfigEnvInternal,
7
- ConfigValue,
8
- ConfigValueSource,
9
- DefinedAtData,
10
- DefinedAtFile,
11
- PageConfigBuildTime,
12
- PageConfigGlobalBuildTime,
13
- } from "../../../../types/interfaces/page.js"
14
- import { assert } from "../../../gaurds/assertions/assert/index.js"
15
- import { assertIsNotProductionRuntime } from "../../../gaurds/assertions/assertIsNotProductionRuntime/index.js"
16
- import { assertUsage } from "../../../gaurds/assertions/assertUsage/index.js"
17
- import { getConfigValueFilePathToShowToUser } from "../../getters/getConfigValueFilePathToShowToUser.js"
18
- import { getPropAccessNotation } from "../../getters/getPropAccessNotation.js"
19
- import { parsePointerImportData } from "../../getters/getRevealConfig/transformPointerImports.js"
20
- import { stringify } from "../stringify.js"
21
- import type { ValueSerialized } from "./PageConfigSerialized.js"
22
- const REPLACE_ME_BEFORE = "__reveal__REPLACE_ME_BEFORE__"
23
- const REPLACE_ME_AFTER = "__reveal__REPLACE_ME_AFTER__"
24
-
25
- // This file is never loaded on the client-side but we save it under the reveal/shared/ directory in order to collocate it with parsePageConfigs()
26
- // - reveal/shared/page-configs/serialize/parsePageConfigs.ts
27
- // - parsePageConfigs() is loaded on both the client- and server-side.
28
- assertIsNotProductionRuntime()
29
-
30
- function serializeConfigValues(
31
- pageConfig:
32
- | PageConfigBuildTime
33
- | (PageConfigGlobalBuildTime & { configValuesComputed?: undefined }),
34
- importStatements: string[],
35
- isEnvMatch: (configEnv: ConfigEnvInternal) => boolean,
36
- { isEager }: { isEager: boolean },
37
- tabspace: string
38
- ): string[] {
39
- const lines: string[] = []
40
- tabspace += " "
41
-
42
- Object.entries(pageConfig.configValuesComputed ?? {}).forEach(
43
- ([configName, configValuesComputed]) => {
44
- if (!isEnvMatch(configValuesComputed.configEnv)) return
45
- // Is there a use case for overriding computed values? If yes, then configValeSources has higher precedence
46
- if (pageConfig.configValueSources[configName]) return
47
- const valueData = serializeWithJson(
48
- configValuesComputed.value,
49
- configName,
50
- null,
51
- importStatements
52
- )
53
- const configValueBase = {
54
- type: "computed",
55
- definedAtData: null,
56
- } as const
57
- serializeConfigValue(
58
- configValueBase,
59
- valueData,
60
- configName,
61
- lines,
62
- tabspace
63
- )
64
- }
65
- )
66
-
67
- Object.entries(pageConfig.configValueSources).forEach(
68
- ([configName, sources]) => {
69
- const configDef = pageConfig.configDefinitions[configName]
70
- assert(configDef)
71
- if (isEager !== !!configDef.eager) return
72
- if (!configDef.cumulative) {
73
- const configValueSource = sources[0]
74
- assert(configValueSource)
75
- assert(sources.slice(1).every((s) => s.isOverriden === true))
76
- if (!isEnvMatch(configValueSource.configEnv)) return
77
- const { valueData, definedAtFile } = serializeConfigValueSource(
78
- configValueSource,
79
- configName,
80
- importStatements
81
- )
82
- const configValueBase = {
83
- type: "standard",
84
- definedAtData: definedAtFile,
85
- } as const
86
- serializeConfigValue(
87
- configValueBase,
88
- valueData,
89
- configName,
90
- lines,
91
- tabspace
92
- )
93
- } else {
94
- const valueDataList: ValueData[] = []
95
- const definedAtData: DefinedAtFile[] = []
96
- sources
97
- .filter((s) => !s.isOverriden)
98
- .forEach((configValueSource) => {
99
- if (!isEnvMatch(configValueSource.configEnv)) return
100
- const { valueData, definedAtFile } = serializeConfigValueSource(
101
- configValueSource,
102
- configName,
103
- importStatements
104
- )
105
- valueDataList.push(valueData)
106
- definedAtData.push(definedAtFile)
107
- })
108
- if (valueDataList.length === 0) return
109
- const configValueBase = {
110
- type: "cumulative",
111
- definedAtData,
112
- } as const
113
- serializeConfigValue(
114
- configValueBase,
115
- valueDataList,
116
- configName,
117
- lines,
118
- tabspace
119
- )
120
- }
121
- }
122
- )
123
-
124
- return lines
125
- }
126
-
127
- function serializeConfigValueSource(
128
- configValueSource: ConfigValueSource,
129
- configName: string,
130
- importStatements: string[]
131
- ) {
132
- assert(configValueSource.isOverriden === false)
133
- let valueData: ValueData
134
- if ("value" in configValueSource) {
135
- valueData = serializeWithJson(
136
- configValueSource.value,
137
- configName,
138
- configValueSource.definedAtFilePath,
139
- importStatements
140
- )
141
- } else {
142
- valueData = serializeWithImport(configValueSource, importStatements)
143
- }
144
- const definedAtFile: DefinedAtFile = {
145
- filePathToShowToUser:
146
- configValueSource.definedAtFilePath.filePathToShowToUser,
147
- fileExportPathToShowToUser:
148
- configValueSource.definedAtFilePath.fileExportPathToShowToUser,
149
- }
150
- return { valueData, definedAtFile }
151
- }
152
-
153
- type ValueData = {
154
- type: ValueSerialized["type"]
155
- valueAsJsCode: string
156
- }
157
- function serializeConfigValue(
158
- configValueBase: Omit<ConfigValue, "value">,
159
- valueData: ValueData | ValueData[],
160
- configName: string,
161
- lines: string[],
162
- tabspace: string
163
- ) {
164
- lineAdd(`[${JSON.stringify(configName)}]: {`)
165
- {
166
- tab()
167
- lineAdd(`type: "${configValueBase.type}",`)
168
- lineAdd(`definedAtData: ${JSON.stringify(configValueBase.definedAtData)},`)
169
- lineAdd(`valueSerialized:`)
170
- if (!Array.isArray(valueData)) {
171
- serializeValueData(valueData)
172
- } else {
173
- lineAppend(" [")
174
- valueData.forEach(serializeValueData)
175
- lineAppend(` ],`)
176
- }
177
- untab()
178
- }
179
- lineAdd("},")
180
-
181
- return
182
-
183
- function serializeValueData(valueData: ValueData) {
184
- lineAppend(` {`)
185
- tab()
186
- lineAdd(`type: "${valueData.type}",`)
187
- const valueProp: ValueProp =
188
- valueData.type !== "plus-file" ? "value" : "exportValues"
189
- lineAdd(`${valueProp}: ${valueData.valueAsJsCode},`)
190
- untab()
191
- lineAdd(`},`)
192
- }
193
- type ValueProp = Exclude<KeysOfUnion<ValueSerialized>, "type">
194
- // https://stackoverflow.com/questions/49401866/all-possible-keys-of-an-union-type/49402091#49402091
195
- type KeysOfUnion<T> = T extends T ? keyof T : never
196
-
197
- function lineAppend(str: string) {
198
- const i = lines.length - 1
199
- lines[i] = lines[i] += str
200
- }
201
- function lineAdd(str: string) {
202
- lines.push(`${tabspace}${str}`)
203
- }
204
- function tab() {
205
- tabspace += " "
206
- }
207
- function untab() {
208
- tabspace = tabspace.slice(2)
209
- }
210
- }
211
-
212
- function serializeWithImport(
213
- configValueSource: ConfigValueSource,
214
- importStatements: string[]
215
- ): ValueData {
216
- assert(!configValueSource.valueIsFilePath)
217
-
218
- const {
219
- valueIsImportedAtRuntime,
220
- valueIsDefinedByPlusFile,
221
- definedAtFilePath,
222
- } = configValueSource
223
- assert(valueIsImportedAtRuntime)
224
- const { filePathAbsoluteVite, fileExportName } = definedAtFilePath
225
-
226
- if (valueIsDefinedByPlusFile) assert(fileExportName === undefined)
227
- const { importName } = addImportStatement(
228
- importStatements,
229
- filePathAbsoluteVite,
230
- fileExportName || "*"
231
- )
232
-
233
- return {
234
- type: valueIsDefinedByPlusFile ? "plus-file" : "pointer-import",
235
- valueAsJsCode: importName,
236
- }
237
- }
238
-
239
- function serializeWithJson(
240
- value: unknown,
241
- configName: string,
242
- definedAtData: DefinedAtData,
243
- importStatements: string[]
244
- ): ValueData {
245
- const valueAsJsCode = valueToJson(
246
- value,
247
- configName,
248
- definedAtData,
249
- importStatements
250
- )
251
- return {
252
- type: "js-serialized",
253
- valueAsJsCode,
254
- }
255
- }
256
- function valueToJson(
257
- value: unknown,
258
- configName: string,
259
- definedAtData: DefinedAtData,
260
- importStatements: string[]
261
- ): string {
262
- const valueName = `config${getPropAccessNotation(configName)}`
263
-
264
- let configValueSerialized: string
265
- try {
266
- configValueSerialized = stringify(value, {
267
- valueName,
268
- forbidReactElements: true,
269
- // Replace import strings with import variables.
270
- // - We don't need this anymore and could remove it.
271
- // - We temporarily needed it for nested document configs (`config.document.{title,description,favicon}`), but we finally decided to go for flat document configs instead (`config.{title,description,favicon}`).
272
- // - https://github.com/revealjs/reveal-react/pull/113
273
- replacer(_, value) {
274
- if (typeof value === "string") {
275
- const importData = parsePointerImportData(value)
276
- if (importData) {
277
- const { importName } = addImportStatement(
278
- importStatements,
279
- importData.importPath,
280
- importData.exportName
281
- )
282
- const replacement = [
283
- REPLACE_ME_BEFORE,
284
- importName,
285
- REPLACE_ME_AFTER,
286
- ].join("")
287
- return { replacement }
288
- }
289
- }
290
- },
291
- })
292
- } catch (err) {
293
- logJsonSerializeError(err, configName, definedAtData)
294
- assert(false)
295
- }
296
-
297
- configValueSerialized = configValueSerialized.replaceAll(
298
- `"${REPLACE_ME_BEFORE}`,
299
- ""
300
- )
301
- configValueSerialized = configValueSerialized.replaceAll(
302
- `${REPLACE_ME_AFTER}"`,
303
- ""
304
- )
305
- assert(!configValueSerialized.includes(REPLACE_ME_BEFORE))
306
- assert(!configValueSerialized.includes(REPLACE_ME_AFTER))
307
-
308
- return configValueSerialized
309
- }
310
- function logJsonSerializeError(
311
- err: unknown,
312
- configName: string,
313
- definedAtData: DefinedAtData
314
- ) {
315
- /*
316
- // import { isJsonSerializerError } from '@brillout/json-serializer/stringify'
317
- let serializationErrMsg = ''
318
- if (isJsonSerializerError(err)) {
319
- serializationErrMsg = err.messageCore
320
- } else {
321
- // When a property getter throws an error
322
- console.error('Serialization error:')
323
- console.error(err)
324
- serializationErrMsg = 'see serialization error printed above'
325
- }
326
- //*/
327
- const configValueFilePathToShowToUser =
328
- getConfigValueFilePathToShowToUser(definedAtData)
329
- assert(configValueFilePathToShowToUser)
330
- assertUsage(
331
- false,
332
- `${pc.cyan(
333
- configName
334
- )} defined by ${configValueFilePathToShowToUser} must be defined over a so-called "pointer import", see https://reveal.dev/config#pointer-imports`
335
- )
336
- }
@@ -1,179 +0,0 @@
1
- export { serializePageContextAbort, serializePageContextClientSide }
2
- export type { PageContextSerialization }
3
-
4
- import pc from "@brillout/picocolors"
5
- import type { PageConfigRuntime } from "../../../types/interfaces/page.js"
6
- import { assert } from "../../gaurds/assertions/assert/index.js"
7
- import { assertUsage } from "../../gaurds/assertions/assertUsage/index.js"
8
- import { assertWarning } from "../../gaurds/assertions/assertWarning/index.js"
9
- import { hasProp } from "../../gaurds/validators/hasProp.js"
10
- import { isErrorPage } from "../../gaurds/validators/isErrorPage.js"
11
- import { isServerSideError } from "../../gaurds/validators/isServerSideError.js"
12
- import type { UrlRedirect } from "../../router/abort.js"
13
- import { pageContextInitIsPassedToClient } from "../../targets/client/pageContextInitIsPassedToClient.js"
14
- import { unique } from "../../targets/client/utils.js"
15
- import { getPropAccessNotation } from "../getters/getPropAccessNotation.js"
16
- import { addIs404ToPageProps } from "../setters/addIs404ToPageProps.js"
17
- import { notSerializable } from "./notSerializable.js"
18
- import { isJsonSerializerError, stringify } from "./stringify.js"
19
-
20
- const PASS_TO_CLIENT: string[] = [
21
- "abortReason",
22
- "_urlRewrite",
23
- "_urlRedirect",
24
- "abortStatusCode",
25
- "_abortCall",
26
- /* Not needed on the client-side
27
- '_abortCaller',
28
- */
29
- pageContextInitIsPassedToClient,
30
- "pageId",
31
- "routeParams",
32
- "data", // for data() hook
33
- ]
34
- const PASS_TO_CLIENT_ERROR_PAGE = ["pageProps", "is404", isServerSideError]
35
-
36
- type PageContextSerialization = {
37
- pageId: string
38
- routeParams: Record<string, string>
39
- _passToClient: string[]
40
- _pageConfigs: PageConfigRuntime[]
41
- is404: null | boolean
42
- pageProps?: Record<string, unknown>
43
- _pageContextInit: Record<string, unknown>
44
- }
45
- function serializePageContextClientSide(pageContext: PageContextSerialization) {
46
- const passToClient = getPassToClient(pageContext)
47
- const pageContextClient: Record<string, unknown> = {}
48
- passToClient.forEach((prop) => {
49
- // We set non-existing props to `undefined`, in order to pass the list of passToClient values to the client-side
50
- pageContextClient[prop] = (pageContext as Record<string, unknown>)[prop]
51
- })
52
- if (
53
- Object.keys(pageContext._pageContextInit).some((p) =>
54
- passToClient.includes(p)
55
- )
56
- ) {
57
- pageContextClient[pageContextInitIsPassedToClient] = true
58
- }
59
-
60
- let pageContextSerialized: string
61
- try {
62
- pageContextSerialized = serialize(pageContextClient)
63
- } catch (err) {
64
- const h = (s: string) => pc.cyan(s)
65
- let hasWarned = false
66
- const propsNonSerializable: string[] = []
67
- passToClient.forEach((prop) => {
68
- const propName1 = getPropAccessNotation(prop)
69
- const propName2 = JSON.stringify(prop)
70
- const varName = `pageContext${propName1}`
71
- try {
72
- serialize((pageContext as Record<string, unknown>)[prop], varName)
73
- } catch (err) {
74
- hasWarned = true
75
- propsNonSerializable.push(prop)
76
-
77
- // useConfig() wrong usage
78
- if (prop === "_configFromHook") {
79
- let pathString = ""
80
- if (isJsonSerializerError(err)) {
81
- pathString = err.pathString
82
- }
83
- assertUsage(
84
- false,
85
- `Cannot serialize config ${h(
86
- pathString
87
- )} set by useConfig(), see https://reveal.dev/useConfig#serialization-error`
88
- )
89
- }
90
-
91
- // Non-serializable pageContext set by the user
92
- let msg = [
93
- `${h(varName)} can't be serialized and, therefore, can't be passed to the client side.`,
94
- `Make sure ${h(varName)} is serializable, or remove ${h(propName2)} from ${h("passToClient")}.`,
95
- ].join(" ")
96
- if (isJsonSerializerError(err)) {
97
- msg = `${msg} Serialization error: ${err.messageCore}.`
98
- } else {
99
- // When a property getter throws an error
100
- console.warn("Serialization error:")
101
- console.warn(err)
102
- msg = `${msg} The serialization failed because of the error printed above.`
103
- }
104
- // We warn (instead of throwing an error) since reveal's client runtime throws an error (with `assertUsage()`) if the user's client code tries to access the property that cannot be serialized
105
- assertWarning(false, msg, { onlyOnce: false })
106
- }
107
- })
108
- assert(hasWarned)
109
- propsNonSerializable.forEach((prop) => {
110
- pageContextClient[prop] = notSerializable
111
- })
112
- try {
113
- pageContextSerialized = serialize(pageContextClient)
114
- } catch (err) {
115
- assert(false)
116
- }
117
- }
118
-
119
- return pageContextSerialized
120
- }
121
- function serialize(value: unknown, varName?: string): string {
122
- return stringify(value, { forbidReactElements: true, valueName: varName })
123
- }
124
- function getPassToClient(pageContext: {
125
- pageId: string
126
- _passToClient: string[]
127
- _pageConfigs: PageConfigRuntime[]
128
- is404: null | boolean
129
- }): string[] {
130
- let passToClient = [...pageContext._passToClient, ...PASS_TO_CLIENT]
131
- if (isErrorPage(pageContext.pageId, pageContext._pageConfigs)) {
132
- assert(hasProp(pageContext, "is404", "boolean"))
133
- addIs404ToPageProps(pageContext)
134
- passToClient.push(...PASS_TO_CLIENT_ERROR_PAGE)
135
- }
136
- passToClient = unique(passToClient)
137
- return passToClient
138
- }
139
-
140
- function serializePageContextAbort(
141
- pageContext: Record<string, unknown> &
142
- (
143
- | { _urlRedirect: UrlRedirect }
144
- | { _urlRewrite: string }
145
- | { abortStatusCode: number }
146
- )
147
- ): string {
148
- assert(
149
- pageContext._urlRedirect ||
150
- pageContext._urlRewrite ||
151
- pageContext.abortStatusCode
152
- )
153
- assert(pageContext._abortCall)
154
- assert(pageContext._abortCaller)
155
- // Not needed on the client-side
156
- delete pageContext._abortCaller
157
- const unknownProps = Object.keys(pageContext).filter(
158
- (prop) =>
159
- ![
160
- // prettier-ignore
161
- // biome-ignore format:
162
- '_abortCall',
163
- /* Not needed on the client-side
164
- '_abortCaller',
165
- */
166
- "_urlRedirect",
167
- "_urlRewrite",
168
- "abortStatusCode",
169
- "abortReason",
170
- "is404",
171
- "pageProps",
172
- ].includes(prop)
173
- )
174
- if (!pageContext._isLegacyRenderErrorPage) {
175
- assert(unknownProps.length === 0)
176
- }
177
-
178
- return serialize(pageContext)
179
- }
@@ -1,188 +0,0 @@
1
- import { isCallable } from "../../gaurds/validators/isCallable"
2
- import { isObject } from "../../gaurds/validators/isObject"
3
- import { isReactElement } from "../../gaurds/validators/isReactElement"
4
- import { Path, replacerWithPath } from "./replaceWithParserPath"
5
- import { types } from "./stringifyTypes"
6
-
7
- export { isJsonSerializerError, stringify }
8
-
9
- function stringify(
10
- value: unknown,
11
- {
12
- forbidReactElements,
13
- space,
14
- valueName,
15
- sortObjectKeys,
16
- // Used by reveal: https://github.com/revealjs/reveal/blob/b4ba6b70e6bdc2e1f460c0d2e4c3faae5d0a733c/reveal/node/plugin/plugins/importUserCode/v1-design/getConfigValuesSerialized.ts#L78
17
- replacer: replacerUserProvided,
18
- }: {
19
- forbidReactElements?: boolean
20
- space?: number
21
- valueName?: string
22
- sortObjectKeys?: boolean
23
- replacer?: (
24
- this: Iterable<string, unknown>,
25
- key: string,
26
- value: unknown
27
- ) => void | { replacement: unknown }
28
- } = {}
29
- ): string {
30
- // The only error `JSON.stringify()` can throw is `TypeError "cyclic object value"`.
31
- // - https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/stringify#exceptions
32
- // - This means we have total of 3 possible errors while serializing:
33
- // - Cyclic references
34
- // - Functions
35
- // - React elements
36
- const serializer = (val: unknown) =>
37
- JSON.stringify(val, replacerWithPath(replacer as any), space)
38
-
39
- return serializer(value)
40
-
41
- function replacer(
42
- this: Iterable<string, unknown>,
43
- key: string,
44
- value: unknown,
45
- path: Path
46
- ) {
47
- {
48
- const ret = replacerUserProvided?.call(this, key, value)
49
- if (ret) return ret.replacement
50
- }
51
-
52
- if (forbidReactElements && isReactElement(value as any)) {
53
- throw genErr({
54
- value,
55
- valueType: "React element",
56
- path,
57
- rootValueName: valueName,
58
- })
59
- }
60
-
61
- if (isCallable(value)) {
62
- const functionName = value.name
63
- throw genErr({
64
- value,
65
- valueType: "function",
66
- path,
67
- rootValueName: valueName,
68
- problematicValueName: path.length === 0 ? functionName : undefined,
69
- })
70
- }
71
- //@ts-ignore
72
- const valueOriginal = this[key]
73
- for (const { is, serialize } of types.slice().reverse()) {
74
- if (is(valueOriginal) as any) {
75
- //@ts-ignore
76
- return serialize(valueOriginal, serializer)
77
- }
78
- }
79
-
80
- if (sortObjectKeys && isObject(value)) {
81
- const copy: Record<string, unknown> = {}
82
- Object.keys(value)
83
- .sort()
84
- .forEach((key) => {
85
- copy[key] = (value as Record<string, unknown>)[key]
86
- })
87
- value = copy
88
- }
89
-
90
- return value
91
- }
92
- }
93
-
94
- function genErr({
95
- value,
96
- valueType,
97
- path,
98
- rootValueName,
99
- problematicValueName,
100
- }: {
101
- value: unknown
102
- valueType: ValueType
103
- path: Path
104
- rootValueName?: string
105
- problematicValueName?: string
106
- }) {
107
- const subjectName = getSubjectName({
108
- path,
109
- rootValueName,
110
- problematicValueName,
111
- })
112
- const messageCore =
113
- `cannot serialize ${subjectName} because it's a ${valueType}` as const
114
- const err = new Error(
115
- `[@brillout/json-serializer](https://github.com/brillout/json-serializer) ${messageCore}.`
116
- )
117
- const pathString = getPathString(path, true)
118
- const errAddendum: ErrAddendum & { [stamp]: true } = {
119
- [stamp]: true,
120
- messageCore,
121
- value,
122
- path,
123
- pathString,
124
- subjectName,
125
- }
126
- Object.assign(err, errAddendum)
127
- return err
128
- }
129
- type ErrAddendum = {
130
- messageCore:
131
- | `cannot serialize ${string} because it's a function`
132
- | `cannot serialize ${string} because it's a React element`
133
- value: unknown
134
- path: Path
135
- pathString: string
136
- subjectName: string
137
- }
138
- const stamp = "_isJsonSerializerError"
139
- function isJsonSerializerError(thing: unknown): thing is Error & ErrAddendum {
140
- return isObject(thing) && thing[stamp] === true
141
- }
142
- type ValueType = "React element" | "function"
143
- function getSubjectName({
144
- path,
145
- rootValueName,
146
- problematicValueName,
147
- }: {
148
- path: Path
149
- rootValueName?: string
150
- problematicValueName?: string
151
- }) {
152
- const pathString = getPathString(path, !rootValueName)
153
- let subjectName: string
154
- if (!pathString) {
155
- subjectName = rootValueName || problematicValueName || "value"
156
- } else {
157
- if (problematicValueName) {
158
- subjectName = problematicValueName + " at "
159
- } else {
160
- subjectName = ""
161
- }
162
- subjectName = subjectName + (rootValueName || "") + pathString
163
- }
164
- return subjectName
165
- }
166
-
167
- function getPathString(path: Path, canBeFirstKey: boolean): string {
168
- const pathString = path
169
- .map((key, i) => {
170
- if (typeof key === "number") {
171
- return `[${key}]`
172
- }
173
- if (i === 0 && canBeFirstKey && isKeyDotNotationCompatible(key)) {
174
- return key
175
- }
176
- return getPropAccessNotation(key)
177
- })
178
- .join("")
179
- return pathString
180
- }
181
- function getPropAccessNotation(key: unknown): `.${string}` | `[${string}]` {
182
- return typeof key === "string" && isKeyDotNotationCompatible(key)
183
- ? `.${key}`
184
- : `[${JSON.stringify(key)}]`
185
- }
186
- function isKeyDotNotationCompatible(key: string): boolean {
187
- return /^[a-z0-9\$_]+$/i.test(key)
188
- }