@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,181 +0,0 @@
1
- // Files loadded at config time:
2
-
3
- export { loadConfigFile, loadImportedFile, loadValueFile }
4
- export type { ConfigFile, ImportedFilesLoaded }
5
-
6
- import pc from "@brillout/picocolors"
7
- import { getConfigFileExport } from "../../../../plugins/importUserCode/getConfigFileExport.js"
8
- import {
9
- assert,
10
- assertIsNotProductionRuntime,
11
- assertUsage,
12
- hasProp,
13
- } from "../../../../plugins/utils.js"
14
- import { FilePathResolved } from "../../../../types/interfaces/file.js"
15
- import { assertPlusFileExport } from "../../../gaurds/assertions/assertPlusFileExport.js"
16
- import type { InterfaceValueFile } from "./index.js"
17
- import { resolvePointerImport } from "./resolvePointerImport.js"
18
- import {
19
- type PointerImportData,
20
- parsePointerImportData,
21
- } from "./transformPointerImports.js"
22
- import { transpileAndExecuteFile } from "./transpileAndExecuteFile.js"
23
-
24
- assertIsNotProductionRuntime()
25
-
26
- type ImportedFilesLoaded = Record<string, Promise<Record<string, unknown>>>
27
- type ConfigFile = {
28
- fileExports: Record<string, unknown>
29
- filePath: FilePathResolved
30
- extendsFilePaths: string[]
31
- }
32
-
33
- // Load pointer import
34
- async function loadImportedFile(
35
- import_: FilePathResolved & { fileExportName: string },
36
- userRootDir: string,
37
- importedFilesLoaded: ImportedFilesLoaded
38
- ): Promise<unknown> {
39
- const f = import_.filePathAbsoluteFilesystem
40
- if (!importedFilesLoaded[f]) {
41
- importedFilesLoaded[f] = transpileAndExecuteFile(
42
- import_,
43
- userRootDir,
44
- false
45
- ).then((r) => r.fileExports)
46
- }
47
- const fileExports = await importedFilesLoaded[f]!
48
- const fileExport = fileExports[import_.fileExportName]
49
- return fileExport
50
- }
51
-
52
- // Load +{configName}.js
53
- async function loadValueFile(
54
- interfaceValueFile: InterfaceValueFile,
55
- configName: string,
56
- userRootDir: string
57
- ) {
58
- const { fileExports } = await transpileAndExecuteFile(
59
- interfaceValueFile.filePath,
60
- userRootDir,
61
- false
62
- )
63
- const { filePathToShowToUser } = interfaceValueFile.filePath
64
- assertPlusFileExport(fileExports, filePathToShowToUser, configName)
65
- Object.entries(fileExports).forEach(([exportName, configValue]) => {
66
- const configName_ = exportName === "default" ? configName : exportName
67
- interfaceValueFile.fileExportsByConfigName[configName_] = { configValue }
68
- })
69
- }
70
-
71
- // Load +config.js, including all its extends pointer imports
72
- async function loadConfigFile(
73
- configFilePath: FilePathResolved,
74
- userRootDir: string,
75
- visited: string[],
76
- isExtensionConfig: boolean
77
- ): Promise<{ configFile: ConfigFile; extendsConfigs: ConfigFile[] }> {
78
- const { filePathAbsoluteFilesystem } = configFilePath
79
- assertNoInfiniteLoop(visited, filePathAbsoluteFilesystem)
80
- const { fileExports } = await transpileAndExecuteFile(
81
- configFilePath,
82
- userRootDir,
83
- isExtensionConfig ? "is-extension-config" : true
84
- )
85
- const { extendsConfigs, extendsFilePaths } = await loadExtendsConfigs(
86
- fileExports,
87
- configFilePath,
88
- userRootDir,
89
- [...visited, filePathAbsoluteFilesystem]
90
- )
91
-
92
- const configFile: ConfigFile = {
93
- fileExports,
94
- filePath: configFilePath,
95
- extendsFilePaths,
96
- }
97
- return { configFile, extendsConfigs }
98
- }
99
- function assertNoInfiniteLoop(
100
- visited: string[],
101
- filePathAbsoluteFilesystem: string
102
- ) {
103
- const idx = visited.indexOf(filePathAbsoluteFilesystem)
104
- if (idx === -1) return
105
- const loop = visited.slice(idx)
106
- assert(loop[0] === filePathAbsoluteFilesystem)
107
- assertUsage(
108
- idx === -1,
109
- `Infinite extends loop ${[...loop, filePathAbsoluteFilesystem].join(">")}`
110
- )
111
- }
112
- async function loadExtendsConfigs(
113
- configFileExports: Record<string, unknown>,
114
- configFilePath: FilePathResolved,
115
- userRootDir: string,
116
- visited: string[]
117
- ) {
118
- const extendsPointerImportData = getExtendsPointerImportData(
119
- configFileExports,
120
- configFilePath
121
- )
122
- const extendsConfigFiles: FilePathResolved[] = []
123
- extendsPointerImportData.map((pointerImportData) => {
124
- const filePath = resolvePointerImport(
125
- pointerImportData,
126
- configFilePath,
127
- userRootDir
128
- )
129
- assert(filePath.filePathAbsoluteFilesystem)
130
- extendsConfigFiles.push(filePath)
131
- })
132
-
133
- const extendsConfigs: ConfigFile[] = []
134
- await Promise.allSettled(
135
- extendsConfigFiles.map(async (configFilePath) => {
136
- const result = await loadConfigFile(
137
- configFilePath,
138
- userRootDir,
139
- visited,
140
- true
141
- )
142
- extendsConfigs.push(result.configFile)
143
- extendsConfigs.push(...result.extendsConfigs)
144
- })
145
- )
146
-
147
- const extendsFilePaths = extendsConfigFiles.map(
148
- (f) => f.filePathAbsoluteFilesystem
149
- )
150
-
151
- return { extendsConfigs, extendsFilePaths }
152
- }
153
- function getExtendsPointerImportData(
154
- configFileExports: Record<string, unknown>,
155
- configFilePath: FilePathResolved
156
- ): PointerImportData[] {
157
- const { filePathToShowToUser } = configFilePath
158
- const configFileExport = getConfigFileExport(
159
- configFileExports,
160
- filePathToShowToUser
161
- )
162
- const wrongUsage = `${filePathToShowToUser} sets the config ${pc.cyan(
163
- "extends"
164
- )} to an invalid value, see https://reveal.dev/extends`
165
- let extendList: string[]
166
- if (!("extends" in configFileExport)) {
167
- return []
168
- } else if (hasProp(configFileExport, "extends", "string")) {
169
- extendList = [configFileExport.extends]
170
- } else if (hasProp(configFileExport, "extends", "string[]")) {
171
- extendList = configFileExport.extends
172
- } else {
173
- assertUsage(false, wrongUsage)
174
- }
175
- const extendsPointerImportData = extendList.map((importString) => {
176
- const pointerImportData = parsePointerImportData(importString)
177
- assertUsage(pointerImportData, wrongUsage)
178
- return pointerImportData
179
- })
180
- return extendsPointerImportData
181
- }
@@ -1,240 +0,0 @@
1
- export { clearFilesEnvMap, resolvePointerImport, resolvePointerImportOfConfig }
2
-
3
- import pc from "@brillout/picocolors"
4
- import path from "path"
5
- import {
6
- assertIsNpmPackageImport,
7
- assertPosixPath,
8
- deepEqual,
9
- isFilePathAbsolute,
10
- requireResolve,
11
- } from "../../../../plugins/utils.js"
12
- import {
13
- FilePath,
14
- FilePathResolved,
15
- } from "../../../../types/interfaces/file.js"
16
- import {
17
- ConfigEnvInternal,
18
- DefinedAtFilePath,
19
- } from "../../../../types/interfaces/page.js"
20
- import { assert } from "../../../gaurds/assertions/assert/index.js"
21
- import { assertUsage } from "../../../gaurds/assertions/assertUsage/index.js"
22
- import {
23
- getFilePathAbsoluteUserRootDir,
24
- getFilePathResolved,
25
- getFilePathUnresolved,
26
- } from "../getFilePath.js"
27
- import {
28
- type PointerImportData,
29
- parsePointerImportData,
30
- } from "./transformPointerImports.js"
31
-
32
- const filesEnvMap: Map<
33
- string,
34
- { configEnv: ConfigEnvInternal; configName: string }[]
35
- > = new Map()
36
-
37
- type PointerImportResolved = DefinedAtFilePath & { fileExportName: string }
38
-
39
- function resolvePointerImportOfConfig(
40
- configValue: unknown,
41
- importerFilePath: FilePathResolved,
42
- userRootDir: string,
43
- configEnv: ConfigEnvInternal,
44
- configName: string
45
- ): null | PointerImportResolved {
46
- if (typeof configValue !== "string") return null
47
- const pointerImportData = parsePointerImportData(configValue)
48
- if (!pointerImportData) return null
49
- const { importPath, exportName } = pointerImportData
50
-
51
- const filePath = resolvePointerImport(
52
- pointerImportData,
53
- importerFilePath,
54
- userRootDir
55
- )
56
- const fileExportPathToShowToUser =
57
- exportName === "default" || exportName === configName ? [] : [exportName]
58
-
59
- assertUsageFileEnv(
60
- filePath.filePathAbsoluteFilesystem,
61
- importPath,
62
- configEnv,
63
- configName
64
- )
65
-
66
- return {
67
- ...filePath,
68
- fileExportName: exportName,
69
- fileExportPathToShowToUser,
70
- }
71
- }
72
-
73
- function resolvePointerImport(
74
- pointerImportData: PointerImportData,
75
- importerFilePath: FilePathResolved,
76
- userRootDir: string
77
- ): FilePath {
78
- // `importPath` should be one of the following:
79
- // - A relative import path
80
- // - A filesystem absolute path
81
- // - An npm package import
82
- const { importPath } = pointerImportData
83
- const filePathAbsoluteFilesystem = resolveImportPathWithNode(
84
- pointerImportData,
85
- importerFilePath
86
- )
87
-
88
- let filePath: FilePath
89
- assertPosixPath(importPath)
90
- if (importPath.startsWith(".") || isFilePathAbsolute(importPath)) {
91
- if (importPath.startsWith(".")) {
92
- assertUsage(
93
- importPath.startsWith("./") || importPath.startsWith("../"),
94
- `Invalid relative import path ${pc.code(importPath)} defined by ${
95
- importerFilePath.filePathToShowToUser
96
- } because it should start with ${pc.code("./")} or ${pc.code("../")}, or use an npm package import instead.`
97
- )
98
- }
99
-
100
- // Pointer imports are included in virtual files, thus relative imports need to be resolved. (Virtual modules cannot contain relative imports.)
101
- assertUsageResolutionSuccess(
102
- filePathAbsoluteFilesystem,
103
- pointerImportData,
104
- importerFilePath
105
- )
106
-
107
- // Pointer imports are included in virtual files, and we need filePathAbsoluteUserRootDir because we didn't find a way to have filesystem absolute import paths in virtual files: https://gist.github.com/brillout/2315231c9a8164f950c64b4b4a7bbd39
108
- const errSuffix = `outside of the ${userRootDir} directory which is forbidden: make sure your import paths resolve inside the ${userRootDir} directory, or import from an npm package.`
109
- const filePathAbsoluteUserRootDir = getFilePathAbsoluteUserRootDir({
110
- filePathAbsoluteFilesystem,
111
- userRootDir,
112
- })
113
- if (importPath.startsWith(".")) {
114
- assertUsage(
115
- filePathAbsoluteUserRootDir,
116
- `The relative import ${pc.cyan(importPath)} defined by ${
117
- importerFilePath.filePathToShowToUser
118
- } resolves to ${filePathAbsoluteFilesystem} ${errSuffix}`
119
- )
120
- } else {
121
- assert(isFilePathAbsolute(importPath))
122
- assertUsage(
123
- filePathAbsoluteUserRootDir,
124
- `The import path ${importPath} defined by ${importerFilePath.filePathToShowToUser} is ${errSuffix}`
125
- )
126
- }
127
- // Forbid node_modules/ because it's brittle: if node_modules/ lives outside of userRootDir then it crashes.
128
- assertUsage(
129
- !filePathAbsoluteUserRootDir.includes("/node_modules/"),
130
- `The import path ${importPath} defined by ${importerFilePath.filePathToShowToUser} resolves to ${filePathAbsoluteFilesystem} inside of node_modules/ which is forbbiden: use an npm package import instead.`
131
- )
132
-
133
- filePath = getFilePathResolved({
134
- filePathAbsoluteUserRootDir,
135
- userRootDir,
136
- })
137
- } else {
138
- const importPathAbsolute = importPath
139
- if (filePathAbsoluteFilesystem) {
140
- filePath = getFilePathResolved({
141
- userRootDir,
142
- filePathAbsoluteFilesystem,
143
- importPathAbsolute,
144
- })
145
- } else {
146
- filePath = getFilePathUnresolved({
147
- importPathAbsolute,
148
- })
149
- }
150
- }
151
-
152
- return filePath
153
- }
154
-
155
- function resolveImportPathWithNode(
156
- pointerImportData: PointerImportData,
157
- importerFilePath: FilePathResolved
158
- ): string | null {
159
- const importerFilePathAbsolute = importerFilePath.filePathAbsoluteFilesystem
160
- assertPosixPath(importerFilePathAbsolute)
161
- const cwd = path.posix.dirname(importerFilePathAbsolute)
162
- // We can't use import.meta.resolve() as of Junary 2023 (and probably for a lot longer)
163
- // https://stackoverflow.com/questions/54977743/do-require-resolve-for-es-modules#comment137174954_62272600:~:text=But%20the%20argument%20parent%20(aka%20cwd)%20still%20requires%20a%20flag
164
- // filePathAbsoluteFilesystem is expected to be null when pointerImportData.importPath is a Vite path alias
165
- const filePathAbsoluteFilesystem = requireResolve(
166
- pointerImportData.importPath,
167
- cwd
168
- )
169
- return filePathAbsoluteFilesystem
170
- }
171
-
172
- function assertUsageResolutionSuccess(
173
- filePathAbsoluteFilesystem: string | null,
174
- pointerImportData: PointerImportData,
175
- importerFilePath: FilePathResolved
176
- ): asserts filePathAbsoluteFilesystem is string {
177
- const {
178
- importPath: importPath,
179
- importStringWasGenerated,
180
- importString,
181
- } = pointerImportData
182
- const { filePathToShowToUser } = importerFilePath
183
-
184
- if (!filePathAbsoluteFilesystem) {
185
- const importPathString = pc.code(`${importPath}`)
186
- const errIntro = importStringWasGenerated
187
- ? (`The import path ${importPathString} in ${filePathToShowToUser}` as const)
188
- : (`The import ${pc.code(importString)} defined by ${filePathToShowToUser}` as const)
189
- const errIntro2 =
190
- `${errIntro} couldn't be resolved: does ${importPathString}` as const
191
- if (importPath.startsWith(".")) {
192
- assert(importPath.startsWith("./") || importPath.startsWith("../"))
193
- assertUsage(false, `${errIntro2} point to an existing file?`)
194
- } else {
195
- assertUsage(false, `${errIntro2} exist?`)
196
- }
197
- }
198
- }
199
-
200
- function assertUsageFileEnv(
201
- filePathAbsoluteFilesystem: string | null,
202
- importPath: string,
203
- configEnv: ConfigEnvInternal,
204
- configName: string
205
- ) {
206
- let key: string
207
- if (filePathAbsoluteFilesystem) {
208
- key = filePathAbsoluteFilesystem
209
- } else {
210
- assertIsNpmPackageImport(importPath)
211
- key = importPath
212
- }
213
- assertPosixPath(key)
214
- if (!filesEnvMap.has(key)) {
215
- filesEnvMap.set(key, [])
216
- }
217
- const fileEnv = filesEnvMap.get(key)!
218
- fileEnv.push({ configEnv, configName })
219
- const configDifferentEnv = fileEnv.filter(
220
- (c) => !deepEqual(c.configEnv, configEnv)
221
- )[0]
222
- if (configDifferentEnv) {
223
- assertUsage(
224
- false,
225
- [
226
- `${key} defines the value of configs living in different environments:`,
227
- ...[configDifferentEnv, { configName, configEnv }].map(
228
- (c) =>
229
- ` - config ${pc.code(c.configName)} which value lives in environment ${pc.code(
230
- JSON.stringify(c.configEnv)
231
- )}`
232
- ),
233
- "Defining config values in the same file is allowed only if they live in the same environment, see https://reveal.dev/config#pointer-imports",
234
- ].join("\n")
235
- )
236
- }
237
- }
238
- function clearFilesEnvMap() {
239
- filesEnvMap.clear()
240
- }
@@ -1,30 +0,0 @@
1
- import { expect, describe, it } from "vitest";
2
- import { transformPointerImports } from "./transformPointerImports.js";
3
-
4
- function t(code: string) {
5
- return transformPointerImports(code, "/fake-file.js", "all", true);
6
- }
7
-
8
- describe("transformPointerImports()", () => {
9
- it("basics", () => {
10
- expect(t("bla")).toMatchInlineSnapshot(`null`);
11
- expect(t("import { something } from './bla.js'")).toMatchInlineSnapshot(
12
- `"const something = '​import:./bla.js:something';"`,
13
- );
14
- expect(t("import def from './bla.js'")).toMatchInlineSnapshot(
15
- `"const def = '​import:./bla.js:default';"`,
16
- );
17
- });
18
- it("removes unused imports", () => {
19
- expect(t("import './style.css'")).toMatchInlineSnapshot(`""`);
20
- expect(t("import './script.js'")).toMatchInlineSnapshot(`""`);
21
- });
22
- it("import as", () => {
23
- expect(t("import { bla as blu } from './bla.js'")).toMatchInlineSnapshot(
24
- `"const blu = '​import:./bla.js:bla';"`,
25
- );
26
- expect(t("import * as blo from './bla.js'")).toMatchInlineSnapshot(
27
- `"const blo = '​import:./bla.js:*';"`,
28
- );
29
- });
30
- });
@@ -1,244 +0,0 @@
1
- export { isPointerImportData, parsePointerImportData, transformPointerImports }
2
- export type { PointerImportData }
3
-
4
- // Playground: https://github.com/brillout/acorn-playground
5
-
6
- // Notes about `with { type: 'pointer' }`
7
- // - It works well with TypeScript: it doesn't complain upon `with { type: 'unknown-to-typescript' }` and go-to-definition & types are preserved: https://www.typescriptlang.org/docs/handbook/release-notes/typescript-5-3.html#import-attributes
8
- // - Acorn support for import attributes: https://github.com/acornjs/acorn/issues/983
9
- // - Acorn plugin: https://github.com/acornjs/acorn/issues/983
10
- // - Isn't stage 4 yet: https://github.com/tc39/proposal-import-attributes
11
- // - Using a import path suffix such as `import { Layout } from './Layout?real` breaks TypeScript, and TypeScript isn't working on supporting query params: https://github.com/microsoft/TypeScript/issues/10988#issuecomment-867135453
12
- // - Node.js >=21 supports import attribtues: https://nodejs.org/api/esm.html#import-attributes
13
- // - Esbuid supports
14
- // - Blocker: https://github.com/evanw/esbuild/issues/3646
15
- // - Ugly hack to make it work: https://github.com/brillout/esbuild-playground/tree/experiment/import-attribute
16
- // - Discussion with esbuild maintainer: https://github.com/evanw/esbuild/issues/3384
17
- // - Using a magic comment `// @reveal-real-import` is probably a bad idea:
18
- // - Esbuild removes comments: https://github.com/evanw/esbuild/issues/1439#issuecomment-877656182
19
- // - Using source maps to track these magic comments is brittle (source maps can easily break)
20
-
21
- import pc from "@brillout/picocolors"
22
- import { parse } from "acorn"
23
- import type { Identifier, ImportDeclaration, Program } from "estree"
24
- import {
25
- assert,
26
- assertUsage,
27
- assertWarning,
28
- styleFileRE,
29
- } from "../../../../plugins/utils.js"
30
-
31
- function transformPointerImports(
32
- code: string,
33
- filePathToShowToUser2: string,
34
- pointerImports:
35
- | Record<string, boolean>
36
- // Used by ./transformPointerImports.spec.ts
37
- | "all",
38
- // For ./transformPointerImports.spec.ts
39
- skipWarnings?: true
40
- ): string | null {
41
- const spliceOperations: SpliceOperation[] = []
42
-
43
- // Performance trick
44
- if (!code.includes("import")) return null
45
-
46
- const imports = getImports(code)
47
- if (imports.length === 0) return null
48
-
49
- imports.forEach((node) => {
50
- if (node.type !== "ImportDeclaration") return
51
-
52
- const importPath = node.source.value
53
- assert(typeof importPath === "string")
54
-
55
- if (pointerImports !== "all") {
56
- assert(importPath in pointerImports)
57
- const isPointerImport = pointerImports[importPath]
58
- assert(isPointerImport === true || isPointerImport === false)
59
- if (!isPointerImport) return
60
- }
61
-
62
- const { start, end } = node
63
- const importStatementCode = code.slice(start, end)
64
-
65
- /* Pointer import without importing any value => doesn't make sense and doesn't have any effect.
66
- ```js
67
- // Useless
68
- import './some.css'
69
- // Useless
70
- import './Layout.jsx'
71
- ``` */
72
- if (node.specifiers.length === 0) {
73
- const isWarning = !styleFileRE.test(importPath)
74
- let quote = indent(importStatementCode)
75
- if (isWarning) {
76
- quote = pc.cyan(quote)
77
- } else {
78
- quote = pc.bold(pc.red(quote))
79
- }
80
- const errMsg = [
81
- `The following import in ${filePathToShowToUser2} has no effect:`,
82
- quote,
83
- "See https://reveal.dev/config#pointer-imports",
84
- ].join("\n")
85
- if (!skipWarnings) {
86
- if (!isWarning) {
87
- assertUsage(false, errMsg)
88
- }
89
- assertWarning(false, errMsg, { onlyOnce: true })
90
- }
91
- }
92
-
93
- let replacement = ""
94
- node.specifiers.forEach((specifier) => {
95
- assert(
96
- specifier.type === "ImportSpecifier" ||
97
- specifier.type === "ImportDefaultSpecifier" ||
98
- specifier.type === "ImportNamespaceSpecifier"
99
- )
100
- const importLocalName = specifier.local.name
101
- const exportName = (() => {
102
- if (specifier.type === "ImportDefaultSpecifier") return "default"
103
- if (specifier.type === "ImportNamespaceSpecifier") return "*"
104
- {
105
- const imported = (specifier as any).imported as Identifier | undefined
106
- if (imported) return imported.name
107
- }
108
- return importLocalName
109
- })()
110
- const importString = serializePointerImportData({
111
- importPath,
112
- exportName,
113
- importStringWasGenerated: true,
114
- })
115
- replacement += `const ${importLocalName} = '${importString}';`
116
- })
117
-
118
- spliceOperations.push({
119
- start,
120
- end,
121
- replacement,
122
- })
123
- })
124
-
125
- const codeMod = spliceMany(code, spliceOperations)
126
- return codeMod
127
- }
128
- function getImports(code: string): ImportDeclaration[] {
129
- const { body } = parse(code, {
130
- ecmaVersion: "latest",
131
- sourceType: "module",
132
- // https://github.com/acornjs/acorn/issues/1136
133
- }) as any as Program
134
- const imports: ImportDeclaration[] = []
135
- body.forEach((node) => {
136
- if (node.type === "ImportDeclaration") imports.push(node)
137
- })
138
- return imports
139
- }
140
-
141
- const import_ = "import"
142
- const SEP = ":"
143
- const zeroWidthSpace = "\u200b"
144
- /**
145
- * Data Structure for [pointer imports](https://reveal.dev/config#pointer-imports):
146
- * `import { someExport as someImport } from './some-file'`
147
- * <=>
148
- * `pointerImportData === {`
149
- * `importPath: './some-file',`
150
- * `exportName: 'someExport',`
151
- * `importString: 'import:./some-file:someExport',`
152
- * `importStringWasGenerated: true,`
153
- * `}`
154
- * We discard the import name `someImport` because we don't need it.
155
- */
156
- type PointerImportData = {
157
- importPath: string
158
- exportName: string
159
- importString: string
160
- importStringWasGenerated: boolean
161
- }
162
- function serializePointerImportData({
163
- importPath,
164
- exportName,
165
- importStringWasGenerated,
166
- }: Omit<PointerImportData, "importString">): string {
167
- const tag = importStringWasGenerated ? zeroWidthSpace : ""
168
- ;`import:${importPath}:${importPath}`
169
- return `${tag}${import_}${SEP}${importPath}${SEP}${exportName}`
170
- }
171
- function isPointerImportData(str: string): boolean {
172
- return (
173
- str.startsWith(import_ + SEP) ||
174
- str.startsWith(zeroWidthSpace + import_ + SEP)
175
- )
176
- }
177
- function parsePointerImportData(
178
- importString: string
179
- ): null | PointerImportData {
180
- if (!isPointerImportData(importString)) {
181
- return null
182
- }
183
-
184
- let importStringWasGenerated = false
185
- if (importString.startsWith(zeroWidthSpace)) {
186
- importStringWasGenerated = true
187
- assert(zeroWidthSpace.length === 1)
188
- importString = importString.slice(1)
189
- }
190
-
191
- const parts = importString.split(SEP).slice(1)
192
- if (!importStringWasGenerated && parts.length === 1) {
193
- const exportName = "default"
194
- const importPath = parts[0]!
195
- return { importPath, exportName, importStringWasGenerated, importString }
196
- }
197
- assert(parts.length >= 2)
198
- const exportName = parts[parts.length - 1]!
199
- const importPath = parts.slice(0, -1).join(SEP)
200
- return { importPath, exportName, importStringWasGenerated, importString }
201
- }
202
-
203
- // https://github.com/acornjs/acorn/issues/1136#issuecomment-1203671368
204
- declare module "estree" {
205
- interface BaseNodeWithoutComments {
206
- start: number
207
- end: number
208
- }
209
- }
210
-
211
- type SpliceOperation = {
212
- start: number
213
- end: number
214
- replacement: string
215
- }
216
- function spliceMany(str: string, operations: SpliceOperation[]): string {
217
- let strMod = ""
218
- let endPrev: number | undefined
219
- operations.forEach(({ start, end, replacement }) => {
220
- if (endPrev !== undefined) {
221
- assert(endPrev < start)
222
- } else {
223
- endPrev = 0
224
- }
225
- const replaced = str.slice(start, end)
226
- strMod +=
227
- str.slice(endPrev, start) +
228
- replacement +
229
- // Preserve number of lines for source map
230
- Array(replaced.split("\n").length - replacement.split("\n").length)
231
- .fill("\n")
232
- .join("")
233
- endPrev = end
234
- })
235
- strMod += str.slice(endPrev, str.length)
236
- return strMod
237
- }
238
-
239
- function indent(str: string) {
240
- return str
241
- .split("\n")
242
- .map((s) => ` ${s}`)
243
- .join("\n")
244
- }