diff --git a/package.json b/package.json index 4d6ae0ce..fc906107 100644 --- a/package.json +++ b/package.json @@ -12,7 +12,7 @@ "node": "vercel uses this value to select which node version to use. string must match vercel options exactly to silence warnings." }, "dependencies": { - "bs-platform": "9.0.2", + "bs-platform": "^9.0.2", "next": "^11.0.0", "react": "^17.0.2", "react-dom": "^17.0.2" @@ -33,11 +33,13 @@ "scripts": { "next:debug": "NODE_OPTIONS='--inspect' next dev", "watch": "concurrently --raw \"bsb -make-world -w\" \"next dev\" ", - "build": "bsb -clean-world -make-world && next build && yarn total-dependencies-check", + "build": "bsb -clean-world -make-world && next build && yarn total-dependencies-check && yarn missing-interface-check", "start-test-server": "next start", - "total-dependencies-check": "(test $(grep '^[a-zA-Z@].*:$' yarn.lock | wc -l) -lt 500 && echo ok) || (echo too many deps && exit 1) " + "total-dependencies-check": "(test $(grep '^[a-zA-Z@].*:$' yarn.lock | wc -l) -lt 500 && echo ok) || (echo too many deps && exit 1) ", + "missing-interface-check": "(find pages/ src/ -name *.res | grep -v 'src/Import.res' | xargs -I % ls %i 1>/dev/null) || (echo 'missing interface file(s)' && exit 1)" }, "scriptsDescription": { + "missing-interface-check": "Check that every ReScript module (except Import.res) has an accompanying interface file.", "total-dependencies-check": "Test, approximately, whether the current transitiive dependencies has grown significantly." }, "postcss": { diff --git a/pages/storybook.resi b/pages/storybook.resi new file mode 100644 index 00000000..b7f6cda4 --- /dev/null +++ b/pages/storybook.resi @@ -0,0 +1,4 @@ +@react.component +let make: unit => React.element + +let default: {.} => React.element diff --git a/src/Icons.resi b/src/Icons.resi new file mode 100644 index 00000000..fe968c1b --- /dev/null +++ b/src/Icons.resi @@ -0,0 +1,23 @@ +let camel: React.element + +let industry: React.element + +let academic: React.element + +let success: React.element + +let language: React.element + +let packages: React.element + +let applications: React.element + +let bestPractices: React.element + +let opportunities: React.element + +let news: React.element + +let web: React.element + +let archive: React.element diff --git a/yarn.lock b/yarn.lock index c39a3e64..2e707322 100644 --- a/yarn.lock +++ b/yarn.lock @@ -396,7 +396,7 @@ browserslist@4.16.6, browserslist@^4.16.6: escalade "^3.1.1" node-releases "^1.1.71" -bs-platform@9.0.2: +bs-platform@^9.0.2: version "9.0.2" resolved "https://registry.yarnpkg.com/bs-platform/-/bs-platform-9.0.2.tgz#a6eac70eb8924a322556dacaccbfbc9b2a0d3a37" integrity sha512-Ye9JqJ4Oa7mcjjoOVRYI8Uc2Cf8N7jQLWDcdUplY7996d/YErSR7WitmV7XnSwr4EvdrbwjEsg1NxNjUQv3ChA==