diff --git a/.gitignore b/.gitignore index aa03fe825..4b6ddf80c 100644 --- a/.gitignore +++ b/.gitignore @@ -26,3 +26,4 @@ lib/ .vercel src/**/*.mjs +scripts/**/*.mjs diff --git a/next.config.mjs b/next.config.mjs index fc4cee98b..13b1735c7 100644 --- a/next.config.mjs +++ b/next.config.mjs @@ -7,7 +7,7 @@ import remarkFrontmatter from 'remark-frontmatter' import remarkMdxFrontmatter from "remark-mdx-frontmatter"; import { createLoader } from 'simple-functional-loader' -const bsconfig = JSON.parse(fs.readFileSync("./bsconfig.json")) +const bsconfig = JSON.parse(fs.readFileSync("./rescript.json")) const { ProvidePlugin } = webpack; diff --git a/package-lock.json b/package-lock.json index 60ae963dc..efa793c63 100644 --- a/package-lock.json +++ b/package-lock.json @@ -11,8 +11,7 @@ "dependencies": { "@headlessui/react": "^1.2.0", "@mdx-js/loader": "^2.3.0", - "@rescript/react": "^0.10.3", - "@ryyppy/rescript-promise": "2.1.0", + "@rescript/react": "^0.12.0-alpha.3", "codemirror": "^5.54.0", "docson": "^2.1.0", "eslint-config-next": "^13.1.1", @@ -47,7 +46,7 @@ "postcss": "^8.4.27", "postcss-cli": "^8.3.0", "reanalyze": "^2.16.0", - "rescript": "^10.1.4", + "rescript": "^11.0.0-rc.6", "simple-functional-loader": "^1.2.1", "tailwindcss": "^3.3.3" }, @@ -973,12 +972,12 @@ } }, "node_modules/@rescript/react": { - "version": "0.10.3", - "resolved": "https://registry.npmjs.org/@rescript/react/-/react-0.10.3.tgz", - "integrity": "sha512-Lf9rzrR3bQPKJjOK3PBRa/B3xrJ7CqQ1HYr9VHPVxJidarIJJFZBhj0Dg1uZURX+Wg/xiP0PHFxXmdj2bK8Vxw==", + "version": "0.12.0-alpha.3", + "resolved": "https://registry.npmjs.org/@rescript/react/-/react-0.12.0-alpha.3.tgz", + "integrity": "sha512-/S1uj77RPDzuLg3Ofb8KKU3Vppqy97/vF6bBdBZ+saIO9bpHVlsmmJyJG8QXjGZKE+aMynrrR3Tj4+9+5OzLdw==", "peerDependencies": { - "react": ">=16.8.1", - "react-dom": ">=16.8.1" + "react": ">=18.0.0", + "react-dom": ">=18.0.0" } }, "node_modules/@rushstack/eslint-patch": { @@ -986,11 +985,6 @@ "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.3.2.tgz", "integrity": "sha512-V+MvGwaHH03hYhY+k6Ef/xKd6RYlc4q8WBx+2ANmipHJcKuktNcI/NgEsJgdSUF6Lw32njT6OnrRsKYCdgHjYw==" }, - "node_modules/@ryyppy/rescript-promise": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@ryyppy/rescript-promise/-/rescript-promise-2.1.0.tgz", - "integrity": "sha512-+dW6msBrj2Lr2hbEMX+HoWCvN89qVjl94RwbYWJgHQuj8jm/izdPC0YzxgpGoEFdeAEW2sOozoLcYHxT6o5WXQ==" - }, "node_modules/@swc/helpers": { "version": "0.5.1", "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.1.tgz", @@ -8495,16 +8489,18 @@ } }, "node_modules/rescript": { - "version": "10.1.4", - "resolved": "https://registry.npmjs.org/rescript/-/rescript-10.1.4.tgz", - "integrity": "sha512-FFKlS9AG/XrLepWsyw7B+A9DtQBPWEPDPDKghV831Y2KGbie+eeFBOS0xtRHp0xbt7S0N2Dm6hhX+kTZQ/3Ybg==", + "version": "11.0.0-rc.6", + "resolved": "https://registry.npmjs.org/rescript/-/rescript-11.0.0-rc.6.tgz", + "integrity": "sha512-2nqdpQxLgQGNp0Rb8AFn5cM3kwRTd54zLvchqCsK3iLOe1CJwdVW5nEF7lsJbFTqihl8W6Va1y7SbFxY3FNxOQ==", "dev": true, "hasInstallScript": true, "bin": { "bsc": "bsc", - "bsrefmt": "bsrefmt", "bstracing": "lib/bstracing", "rescript": "rescript" + }, + "engines": { + "node": ">=10" } }, "node_modules/resolve": { @@ -10987,9 +10983,9 @@ } }, "@rescript/react": { - "version": "0.10.3", - "resolved": "https://registry.npmjs.org/@rescript/react/-/react-0.10.3.tgz", - "integrity": "sha512-Lf9rzrR3bQPKJjOK3PBRa/B3xrJ7CqQ1HYr9VHPVxJidarIJJFZBhj0Dg1uZURX+Wg/xiP0PHFxXmdj2bK8Vxw==", + "version": "0.12.0-alpha.3", + "resolved": "https://registry.npmjs.org/@rescript/react/-/react-0.12.0-alpha.3.tgz", + "integrity": "sha512-/S1uj77RPDzuLg3Ofb8KKU3Vppqy97/vF6bBdBZ+saIO9bpHVlsmmJyJG8QXjGZKE+aMynrrR3Tj4+9+5OzLdw==", "requires": {} }, "@rushstack/eslint-patch": { @@ -10997,11 +10993,6 @@ "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.3.2.tgz", "integrity": "sha512-V+MvGwaHH03hYhY+k6Ef/xKd6RYlc4q8WBx+2ANmipHJcKuktNcI/NgEsJgdSUF6Lw32njT6OnrRsKYCdgHjYw==" }, - "@ryyppy/rescript-promise": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@ryyppy/rescript-promise/-/rescript-promise-2.1.0.tgz", - "integrity": "sha512-+dW6msBrj2Lr2hbEMX+HoWCvN89qVjl94RwbYWJgHQuj8jm/izdPC0YzxgpGoEFdeAEW2sOozoLcYHxT6o5WXQ==" - }, "@swc/helpers": { "version": "0.5.1", "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.1.tgz", @@ -16250,9 +16241,9 @@ "dev": true }, "rescript": { - "version": "10.1.4", - "resolved": "https://registry.npmjs.org/rescript/-/rescript-10.1.4.tgz", - "integrity": "sha512-FFKlS9AG/XrLepWsyw7B+A9DtQBPWEPDPDKghV831Y2KGbie+eeFBOS0xtRHp0xbt7S0N2Dm6hhX+kTZQ/3Ybg==", + "version": "11.0.0-rc.6", + "resolved": "https://registry.npmjs.org/rescript/-/rescript-11.0.0-rc.6.tgz", + "integrity": "sha512-2nqdpQxLgQGNp0Rb8AFn5cM3kwRTd54zLvchqCsK3iLOe1CJwdVW5nEF7lsJbFTqihl8W6Va1y7SbFxY3FNxOQ==", "dev": true }, "resolve": { diff --git a/package.json b/package.json index 4a279938e..2ee5bb1f4 100644 --- a/package.json +++ b/package.json @@ -17,8 +17,7 @@ "dependencies": { "@headlessui/react": "^1.2.0", "@mdx-js/loader": "^2.3.0", - "@rescript/react": "^0.10.3", - "@ryyppy/rescript-promise": "2.1.0", + "@rescript/react": "^0.12.0-alpha.3", "codemirror": "^5.54.0", "docson": "^2.1.0", "eslint-config-next": "^13.1.1", @@ -60,7 +59,7 @@ "postcss": "^8.4.27", "postcss-cli": "^8.3.0", "reanalyze": "^2.16.0", - "rescript": "^10.1.4", + "rescript": "^11.0.0-rc.6", "simple-functional-loader": "^1.2.1", "tailwindcss": "^3.3.3" } diff --git a/pages/try.js b/pages/try.js index fe297fd6c..f9bbdf9fc 100644 --- a/pages/try.js +++ b/pages/try.js @@ -1,19 +1 @@ -import dynamic from "next/dynamic"; - -export { getStaticProps } from "src/Try.mjs"; -import Try from "src/Try.mjs"; - -const Playground = dynamic(() => import("src/Playground.mjs"), { - ssr: false, - loading: () => Loading... -}); - -function Comp(props) { - return ( - - - - ); -} - -export default Comp; +export { getStaticProps, default } from "src/Try.mjs"; diff --git a/bsconfig.json b/rescript.json similarity index 85% rename from bsconfig.json rename to rescript.json index f0243a6d6..a6495f63e 100644 --- a/bsconfig.json +++ b/rescript.json @@ -1,13 +1,13 @@ { "name": "rescript-lang.org", "namespace": false, - "reason": { - "react-jsx": 3 + "jsx": { + "version": 4 }, "bs-dependencies": [ - "@rescript/react", - "@ryyppy/rescript-promise" + "@rescript/react" ], + "uncurried": true, "ppx-flags": [], "sources": [ { diff --git a/scripts/generate_feed.mjs b/scripts/generate_feed.mjs deleted file mode 100644 index dd4845a93..000000000 --- a/scripts/generate_feed.mjs +++ /dev/null @@ -1,12 +0,0 @@ -// Generated by ReScript, PLEASE EDIT WITH CARE - -import * as BlogApi from "../src/common/BlogApi.mjs"; - -var content = BlogApi.RssFeed.toXmlString(undefined, undefined, BlogApi.RssFeed.getLatest(undefined, undefined, undefined)); - -console.log(content); - -export { - content , -} -/* content Not a pure module */ diff --git a/src/Blog.res b/src/Blog.res index 63c66cc0b..f2c0c57d2 100644 --- a/src/Blog.res +++ b/src/Blog.res @@ -101,10 +101,7 @@ module BlogCard = { }} - + { let className = "absolute top-0 h-full w-full object-cover" switch previewImg { @@ -115,7 +112,7 @@ module BlogCard = {
- +

{React.string(title)}

@@ -156,7 +153,7 @@ module FeatureCard = { ~maxHeight="25.4375rem", (), )}> - + {switch badge { | Some(badge) =>
@@ -202,7 +199,7 @@ module FeatureCard = {

{React.string(firstParagraph)}

- +
@@ -304,13 +301,13 @@ let default = (props: props): React.element => {
- +
content
-
+