- {"Problems"->React.string}
- {if problemCounts["errors"] > 0 {
-
- {problemCounts["errors"]->React.int}
-
- } else {
- React.null
- }}
- {if problemCounts["warnings"] > 0 {
-
- {problemCounts["warnings"]->React.int}
-
- } else {
- React.null
- }}
-
+ | SetupFailed(_) | Init => {
+ "warnings": 0,
+ "errors": 0,
+ }
}
+
+ {"Problems"->React.string}
+ {if problemCounts["errors"] > 0 {
+
+ {problemCounts["errors"]->React.int}
+
+ } else {
+ React.null
+ }}
+ {if problemCounts["warnings"] > 0 {
+
+ {problemCounts["warnings"]->React.int}
+
+ } else {
+ React.null
+ }}
+
+
| Settings => "Settings"->React.string
}
@@ -2121,7 +2120,7 @@ let make = (~bundleBaseUrl: string, ~versions: array) => {
className={`flex ${layout == Column ? "flex-col" : "flex-row"}`}
ref={HtmlRef.elementRef(panelRef)}
>
- // Left Panel
+ /* Left Panel */
- // Separator
+
+ /* Separator */
) => {
{React.string("⣿")}
- // Right Panel
+
+ /* Right Panel */
{
let copy = async () => {
setState(_ => Pending)
- let result = await writeClipboard(window.location.href)
+ let result = await writeClipboard((WebAPI.DOM.window->WebAPI.Window.location).href)
setState(_ =>
switch result {
| Ok() => CopySuccess
diff --git a/packages/shared/package.json b/packages/shared/package.json
index 02291215e..cb536e563 100644
--- a/packages/shared/package.json
+++ b/packages/shared/package.json
@@ -17,8 +17,8 @@
"@codemirror/view": "^6.41.0",
"@lezer/highlight": "^1.2.3",
"@replit/codemirror-vim": "^6.3.0",
- "@rescript/react": "^0.14.2",
- "@rescript/webapi": "0.1.0-experimental-29db5f4",
+ "@rescript/react": "^0.16.0-beta.1",
+ "@rescript/webapi": "alpha",
"@tsnobip/rescript-lezer": "^0.9.0",
"highlight.js": "^11.11.1",
"react": "^19.3.0",
diff --git a/packages/shared/rescript.json b/packages/shared/rescript.json
index 40328e643..a6e880174 100644
--- a/packages/shared/rescript.json
+++ b/packages/shared/rescript.json
@@ -2,7 +2,6 @@
"name": "@rescript-lang/shared",
"namespace": false,
"dependencies": ["@rescript/react", "@rescript/webapi"],
- "compiler-flags": ["-open WebAPI.Global"],
"sources": [
{
"dir": "src",
diff --git a/packages/shared/src/Clipboard.res b/packages/shared/src/Clipboard.res
index af4355463..adf1ecfba 100644
--- a/packages/shared/src/Clipboard.res
+++ b/packages/shared/src/Clipboard.res
@@ -1,21 +1,20 @@
type error = WriteFailed
@send
-external createTextArea: (
- WebAPI.DOMAPI.document,
- @as("textarea") _,
-) => WebAPI.DOMAPI.htmlTextAreaElement = "createElement"
+external createTextArea: (WebAPI.DOM.document, @as("textarea") _) => WebAPI.HTMLTextAreaElement.t =
+ "createElement"
+
+@send external copySelection: (WebAPI.DOM.document, @as("copy") _) => bool = "execCommand"
+@send external focusElement: WebAPI.Element.t => unit = "focus"
-@send external copySelection: (WebAPI.DOMAPI.document, @as("copy") _) => bool = "execCommand"
-@send external focusElement: WebAPI.DOMAPI.element => unit = "focus"
@send
-external getSelection: WebAPI.DOMAPI.document => Null.t = "getSelection"
+external getSelection: WebAPI.DOM.document => Null.t = "getSelection"
let writeWithSelection = text => {
try {
- let textarea = createTextArea(document)
- let activeElement = document.activeElement
- let selection = getSelection(document)->Null.toOption
+ let textarea = createTextArea(WebAPI.DOM.window->WebAPI.Window.document)
+ let activeElement = WebAPI.DOM.window->WebAPI.Window.document->WebDocument.activeElement
+ let selection = getSelection(WebAPI.DOM.window->WebAPI.Window.document)->Null.toOption
let ranges =
selection->Option.mapOr([], selection =>
Array.fromInitializer(~length=selection.rangeCount, index =>
@@ -30,11 +29,13 @@ let writeWithSelection = text => {
~qualifiedName="style",
~value="position: fixed; left: -9999px; top: 0",
)
- document.body
+ WebAPI.DOM.window
+ ->WebAPI.Window.document
+ ->WebDocument.body
->WebAPI.HTMLElement.appendChild(textarea->WebAPI.HTMLTextAreaElement.asNode)
->ignore
textarea->WebAPI.HTMLTextAreaElement.select
- copySelection(document)
+ copySelection(WebAPI.DOM.window->WebAPI.Window.document)
} catch {
| _ => false
}
@@ -54,7 +55,10 @@ let writeWithSelection = text => {
let writeText = async text => {
try {
- await navigator.clipboard->WebAPI.Clipboard.writeText(text)
+ await WebAPI.DOM.window
+ ->WebAPI.Window.navigator
+ ->WebAPI.Navigator.clipboard
+ ->WebAPI.Clipboard.writeText(text)
Ok()
} catch {
| _ => writeWithSelection(text)
diff --git a/packages/shared/src/CodeMirror.res b/packages/shared/src/CodeMirror.res
index 77357b388..2fca1e362 100644
--- a/packages/shared/src/CodeMirror.res
+++ b/packages/shared/src/CodeMirror.res
@@ -12,6 +12,7 @@
module KeyMap = {
type t = Default | Vim
+
let toString = (keyMap: t) =>
switch keyMap {
| Default => "default"
@@ -43,6 +44,7 @@ module Theme = {
module Side = {
@@warning("-37")
+
type t =
| @as(-1) BeforePointer
| @as(1) AfterPointer
@@ -67,6 +69,7 @@ module HoverHint = {
line: int,
col: int,
}
+
let compareLineCol = (pos1, pos2) => {
if pos1.line < pos2.line {
Ordering.less
@@ -81,6 +84,7 @@ module HoverHint = {
Ordering.equal
}
}
+
// let \"<" = (pos1, pos2) => compareLineCol(pos1, pos2) === Ordering.less
let \"<=" = (pos1, pos2) => compareLineCol(pos1, pos2) !== Ordering.greater
// let \">" = (pos1, pos2) => compareLineCol(pos1, pos2) === Ordering.greater
@@ -130,8 +134,10 @@ module CM6 = {
module EditorSelection = {
type t
type range
+
@module("@codemirror/state") @scope("EditorSelection") @val
external single: (int, int) => t = "single"
+
@get external main: t => range = "main"
@get external anchor: range => int = "anchor"
@get external head: range => int = "head"
@@ -142,18 +148,21 @@ module CM6 = {
@module("@codemirror/state") @scope("EditorState")
external create: createConfig => editorState = "create"
+
@get external selection: editorState => EditorSelection.t = "selection"
module ReadOnly = {
@module("@codemirror/state") @scope(("EditorState", "readOnly")) @val
external of_: bool => extension = "of"
}
+
@get external doc: editorState => Text.t = "doc"
}
module Compartment = {
@module("@codemirror/state") @new
external create: unit => compartment = "Compartment"
+
@send external make: (compartment, extension) => extension = "of"
@send external reconfigure: (compartment, extension) => effect = "reconfigure"
}
@@ -161,8 +170,9 @@ module CM6 = {
module EditorView = {
module Tooltip = {
module View = {
- type t = {dom: WebAPI.DOMAPI.element, offset?: {x: int, y: int}}
+ type t = {dom: WebAPI.Element.t, offset?: {x: int, y: int}}
}
+
type t = {
pos: int,
end?: int,
@@ -174,26 +184,30 @@ module CM6 = {
}
}
- type createConfig = {state: editorState, parent: WebAPI.DOMAPI.element}
+ type createConfig = {state: editorState, parent: WebAPI.Element.t}
+
@module("@codemirror/view") @new
external create: createConfig => editorView = "EditorView"
@send external destroy: editorView => unit = "destroy"
@get external state: editorView => editorState = "state"
- @get external dom: editorView => WebAPI.DOMAPI.htmlElement = "dom"
+ @get external dom: editorView => WebAPI.HTMLElement.t = "dom"
type change = {from: int, to: int, insert: string}
type dispatchArg = {changes: change, selection?: EditorSelection.t}
+
@send
external dispatch: (editorView, dispatchArg) => unit = "dispatch"
type dispatchEffectsArg = {effects: effect}
+
@send
external dispatchEffects: (editorView, dispatchEffectsArg) => unit = "dispatch"
module ThemeOptions = {
type t = {dark?: bool}
}
+
@module("@codemirror/view") @scope("EditorView") @val
external theme: (dict>, ~options: ThemeOptions.t=?) => extension = "theme"
@@ -218,6 +232,7 @@ module CM6 = {
module HoverTooltipOptions = {
type t = {hoverTime?: int, hideOnChange?: bool}
}
+
@module("@codemirror/view")
external hoverTooltip: (
(editorView, int, Side.t) => null,
@@ -256,177 +271,263 @@ module CM6 = {
module Language = {
module HighlightStyle = {
type tag
+
module Tags = {
@@warning("-32") // Suppress "unused external" warnings
+
@module("@lezer/highlight") @scope("tags")
external comment: tag = "comment"
+
@module("@lezer/highlight") @scope("tags")
external lineComment: tag = "lineComment"
+
@module("@lezer/highlight") @scope("tags")
external blockComment: tag = "blockComment"
+
@module("@lezer/highlight") @scope("tags")
external docComment: tag = "docComment"
+
@module("@lezer/highlight") @scope("tags")
external name: tag = "name"
+
@module("@lezer/highlight") @scope("tags")
external variableName: tag = "variableName"
+
@module("@lezer/highlight") @scope("tags")
external typeName: tag = "typeName"
+
@module("@lezer/highlight") @scope("tags")
external tagName: tag = "tagName"
+
@module("@lezer/highlight") @scope("tags")
external propertyName: tag = "propertyName"
+
@module("@lezer/highlight") @scope("tags")
external attributeName: tag = "attributeName"
+
@module("@lezer/highlight") @scope("tags")
external className: tag = "className"
+
@module("@lezer/highlight") @scope("tags")
external labelName: tag = "labelName"
+
@module("@lezer/highlight") @scope("tags")
external namespace: tag = "namespace"
+
@module("@lezer/highlight") @scope("tags")
external macroName: tag = "macroName"
+
@module("@lezer/highlight") @scope("tags")
external literal: tag = "literal"
+
@module("@lezer/highlight") @scope("tags")
external string: tag = "string"
+
@module("@lezer/highlight") @scope("tags")
external docString: tag = "docString"
+
@module("@lezer/highlight") @scope("tags")
external character: tag = "character"
+
@module("@lezer/highlight") @scope("tags")
external attributeValue: tag = "attributeValue"
+
@module("@lezer/highlight") @scope("tags")
external number: tag = "number"
+
@module("@lezer/highlight") @scope("tags")
external integer: tag = "integer"
+
@module("@lezer/highlight") @scope("tags")
external float: tag = "float"
+
@module("@lezer/highlight") @scope("tags")
external bool: tag = "bool"
+
@module("@lezer/highlight") @scope("tags")
external regexp: tag = "regexp"
+
@module("@lezer/highlight") @scope("tags")
external escape: tag = "escape"
+
@module("@lezer/highlight") @scope("tags")
external color: tag = "color"
+
@module("@lezer/highlight") @scope("tags")
external url: tag = "url"
+
@module("@lezer/highlight") @scope("tags")
external keyword: tag = "keyword"
+
@module("@lezer/highlight") @scope("tags")
external self: tag = "self"
+
@module("@lezer/highlight") @scope("tags")
external null: tag = "null"
+
@module("@lezer/highlight") @scope("tags")
external atom: tag = "atom"
+
@module("@lezer/highlight") @scope("tags")
external unit: tag = "unit"
+
@module("@lezer/highlight") @scope("tags")
external modifier: tag = "modifier"
+
@module("@lezer/highlight") @scope("tags")
external operatorKeyword: tag = "operatorKeyword"
+
@module("@lezer/highlight") @scope("tags")
external controlKeyword: tag = "controlKeyword"
+
@module("@lezer/highlight") @scope("tags")
external definitionKeyword: tag = "definitionKeyword"
+
@module("@lezer/highlight") @scope("tags")
external moduleKeyword: tag = "moduleKeyword"
+
@module("@lezer/highlight") @scope("tags")
external operator: tag = "operator"
+
@module("@lezer/highlight") @scope("tags")
external derefOperator: tag = "derefOperator"
+
@module("@lezer/highlight") @scope("tags")
external arithmeticOperator: tag = "arithmeticOperator"
+
@module("@lezer/highlight") @scope("tags")
external logicOperator: tag = "logicOperator"
+
@module("@lezer/highlight") @scope("tags")
external bitwiseOperator: tag = "bitwiseOperator"
+
@module("@lezer/highlight") @scope("tags")
external compareOperator: tag = "compareOperator"
+
@module("@lezer/highlight") @scope("tags")
external updateOperator: tag = "updateOperator"
+
@module("@lezer/highlight") @scope("tags")
external definitionOperator: tag = "definitionOperator"
+
@module("@lezer/highlight") @scope("tags")
external typeOperator: tag = "typeOperator"
+
@module("@lezer/highlight") @scope("tags")
external controlOperator: tag = "controlOperator"
+
@module("@lezer/highlight") @scope("tags")
external punctuation: tag = "punctuation"
+
@module("@lezer/highlight") @scope("tags")
external separator: tag = "separator"
+
@module("@lezer/highlight") @scope("tags")
external bracket: tag = "bracket"
+
@module("@lezer/highlight") @scope("tags")
external angleBracket: tag = "angleBracket"
+
@module("@lezer/highlight") @scope("tags")
external squareBracket: tag = "squareBracket"
+
@module("@lezer/highlight") @scope("tags")
external paren: tag = "paren"
+
@module("@lezer/highlight") @scope("tags")
external brace: tag = "brace"
+
@module("@lezer/highlight") @scope("tags")
external content: tag = "content"
+
@module("@lezer/highlight") @scope("tags")
external heading: tag = "heading"
+
@module("@lezer/highlight") @scope("tags")
external heading1: tag = "heading1"
+
@module("@lezer/highlight") @scope("tags")
external heading2: tag = "heading2"
+
@module("@lezer/highlight") @scope("tags")
external heading3: tag = "heading3"
+
@module("@lezer/highlight") @scope("tags")
external heading4: tag = "heading4"
+
@module("@lezer/highlight") @scope("tags")
external heading5: tag = "heading5"
+
@module("@lezer/highlight") @scope("tags")
external heading6: tag = "heading6"
+
@module("@lezer/highlight") @scope("tags")
external contentSeparator: tag = "contentSeparator"
+
@module("@lezer/highlight") @scope("tags")
external list: tag = "list"
+
@module("@lezer/highlight") @scope("tags")
external quote: tag = "quote"
+
@module("@lezer/highlight") @scope("tags")
external emphasis: tag = "emphasis"
+
@module("@lezer/highlight") @scope("tags")
external strong: tag = "strong"
+
@module("@lezer/highlight") @scope("tags")
external link: tag = "link"
+
@module("@lezer/highlight") @scope("tags")
external monospace: tag = "monospace"
+
@module("@lezer/highlight") @scope("tags")
external strikethrough: tag = "strikethrough"
+
@module("@lezer/highlight") @scope("tags")
external inserted: tag = "inserted"
+
@module("@lezer/highlight") @scope("tags")
external deleted: tag = "deleted"
+
@module("@lezer/highlight") @scope("tags")
external changed: tag = "changed"
+
@module("@lezer/highlight") @scope("tags")
external invalid: tag = "invalid"
+
@module("@lezer/highlight") @scope("tags")
external meta: tag = "meta"
+
@module("@lezer/highlight") @scope("tags")
external documentMeta: tag = "documentMeta"
+
@module("@lezer/highlight") @scope("tags")
external annotation: tag = "annotation"
+
@module("@lezer/highlight") @scope("tags")
external processingInstruction: tag = "processingInstruction"
+
@module("@lezer/highlight") @scope("tags")
external definition: tag => tag = "definition"
+
@module("@lezer/highlight") @scope("tags")
external constant: tag => tag = "constant"
+
@module("@lezer/highlight") @scope("tags")
external function: tag => tag = "function"
+
@module("@lezer/highlight") @scope("tags")
external standard: tag => tag = "standard"
+
@module("@lezer/highlight") @scope("tags")
external local: tag => tag = "local"
+
@module("@lezer/highlight") @scope("tags")
external special: tag => tag = "special"
}
+
module TagStyle = {
type t = {
tag: array,
@@ -437,7 +538,9 @@ module CM6 = {
textDecoration?: string,
}
}
+
type t
+
@scope("HighlightStyle") @module("@codemirror/language")
external define: array => t = "define"
@@ -493,6 +596,7 @@ module CM6 = {
}
type t
+
@module("@codemirror/language")
external bracketMatching: unit => extension = "bracketMatching"
@@ -517,6 +621,7 @@ module CM6 = {
parser: LRParser.t,
languageData?: 'a. {..} as 'a,
}
+
@scope("LRLanguage") @module("@codemirror/language")
external define: spec => t = "define"
}
@@ -577,7 +682,7 @@ type editorInstance = {
}
type editorConfig = {
- parent: WebAPI.DOMAPI.element,
+ parent: WebAPI.Element.t,
initialValue: string,
mode: string,
readOnly: bool,
@@ -661,7 +766,7 @@ let createHoverHintExtension = (hoverHints: array) => {
| Some({hint, start, end}) =>
let pos = CM6.Text.line(doc, start.line).from + start.col
let end = CM6.Text.line(doc, end.line).from + end.col
- let dom = WebAPI.Global.document->WebAPI.Document.createElement("div")
+ let dom = WebAPI.DOM.window->WebAPI.Window.document->WebAPI.Document.createElement("div")
dom.textContent = Value(hint)
dom.className = "p-1 border"
Value({
diff --git a/packages/shared/src/CodeMirror.resi b/packages/shared/src/CodeMirror.resi
index 6c55487f0..ee089a2b5 100644
--- a/packages/shared/src/CodeMirror.resi
+++ b/packages/shared/src/CodeMirror.resi
@@ -41,7 +41,7 @@ module HoverHint: {
type editorInstance
type editorConfig = {
- parent: WebAPI.DOMAPI.element,
+ parent: WebAPI.Element.t,
initialValue: string,
mode: string,
readOnly: bool,
diff --git a/packages/shared/src/HtmlRef.res b/packages/shared/src/HtmlRef.res
index d2d2bfbcc..17c4c5b7f 100644
--- a/packages/shared/src/HtmlRef.res
+++ b/packages/shared/src/HtmlRef.res
@@ -1,5 +1,5 @@
/** For refs attached to HTML tags; bridge React's DOM type to WebAPI's HTML type. */
-external fromDom: Dom.element => WebAPI.DOMAPI.htmlElement = "%identity"
+external fromDom: Dom.element => WebAPI.HTMLElement.t = "%identity"
let domRef = ref =>
ReactDOM.Ref.callbackDomRef(element => {
diff --git a/packages/shared/src/ReactRouter.res b/packages/shared/src/ReactRouter.res
index 2edf81b73..409726608 100644
--- a/packages/shared/src/ReactRouter.res
+++ b/packages/shared/src/ReactRouter.res
@@ -6,7 +6,7 @@ type navigate = (string, ~options: navigateOptions=?) => unit
external useNavigate: unit => navigate = "useNavigate"
@module("react-router")
-external useSearchParams: unit => (WebAPI.URLAPI.urlSearchParams, {..} => unit) = "useSearchParams"
+external useSearchParams: unit => (WebAPI.URLSearchParams.t, {..} => unit) = "useSearchParams"
@module("react-router")
external useLoaderData: unit => 'a = "useLoaderData"
@@ -15,7 +15,7 @@ external useLoaderData: unit => 'a = "useLoaderData"
type path = {pathname: Path.t, search?: string, hash?: string}
module Loader = {
- type loaderArgs = {request: WebAPI.FetchAPI.request}
+ type loaderArgs = {request: WebAPI.Request.t}
type t<'a> = loaderArgs => promise<'a>
}
diff --git a/packages/shared/src/WebDocument.res b/packages/shared/src/WebDocument.res
new file mode 100644
index 000000000..41b5227c7
--- /dev/null
+++ b/packages/shared/src/WebDocument.res
@@ -0,0 +1,2 @@
+@get external activeElement: WebAPI.DOM.document => Null.t = "activeElement"
+@get external body: WebAPI.DOM.document => WebAPI.HTMLElement.t = "body"
diff --git a/yarn.lock b/yarn.lock
index a0558cc2c..374b14b69 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -1815,8 +1815,8 @@ __metadata:
"@react-router/node": "npm:^8.3.1"
"@rescript-lang/playground": "workspace:*"
"@rescript-lang/shared": "workspace:*"
- "@rescript/react": "npm:^0.14.2"
- "@rescript/webapi": "npm:0.1.0-experimental-29db5f4"
+ "@rescript/react": "npm:^0.16.0-beta.1"
+ "@rescript/webapi": "npm:alpha"
"@responsive-image/core": "npm:2.1.0"
"@responsive-image/vite-plugin": "npm:3.0.1"
"@rolldown/plugin-babel": "npm:^0.2.4"
@@ -1851,7 +1851,7 @@ __metadata:
remark-frontmatter: "npm:^5.0.0"
remark-gfm: "npm:^4.0.1"
remark-validate-links: "npm:^13.1.0"
- rescript: "npm:^12.2.0"
+ rescript: "npm:^13.0.0-alpha.6"
rolldown: "npm:1.2.8"
search-insights: "npm:^2.17.3"
tailwindcss: "npm:^4"
@@ -1881,8 +1881,8 @@ __metadata:
"@react-router/node": "npm:^8.3.1"
"@rescript-lang/playground": "workspace:*"
"@rescript-lang/shared": "workspace:*"
- "@rescript/react": "npm:^0.14.2"
- "@rescript/webapi": "npm:0.1.0-experimental-29db5f4"
+ "@rescript/react": "npm:^0.16.0-beta.1"
+ "@rescript/webapi": "npm:alpha"
"@types/react": "npm:^19.2.14"
"@vitejs/plugin-react": "npm:^6.0.1"
"@vitest/browser-playwright": "npm:^5.0.0"
@@ -1897,7 +1897,7 @@ __metadata:
remark-gfm: "npm:^4.0.1"
remark-parse: "npm:^11.0.0"
remark-stringify: "npm:^11.0.0"
- rescript: "npm:^12.2.0"
+ rescript: "npm:^13.0.0-alpha.6"
unified: "npm:^11.0.5"
vfile-matter: "npm:^5.0.1"
vite: "npm:^8.3.0"
@@ -1914,8 +1914,8 @@ __metadata:
dependencies:
"@babel/parser": "npm:^7.29.2"
"@rescript-lang/shared": "workspace:*"
- "@rescript/react": "npm:^0.14.2"
- "@rescript/webapi": "npm:0.1.0-experimental-29db5f4"
+ "@rescript/react": "npm:^0.16.0-beta.1"
+ "@rescript/webapi": "npm:alpha"
lz-string: "npm:^1.5.0"
react: "npm:^19.3.0"
react-dom: "npm:^19.3.0"
@@ -1940,8 +1940,8 @@ __metadata:
"@codemirror/view": "npm:^6.41.0"
"@lezer/highlight": "npm:^1.2.3"
"@replit/codemirror-vim": "npm:^6.3.0"
- "@rescript/react": "npm:^0.14.2"
- "@rescript/webapi": "npm:0.1.0-experimental-29db5f4"
+ "@rescript/react": "npm:^0.16.0-beta.1"
+ "@rescript/webapi": "npm:alpha"
"@tsnobip/rescript-lezer": "npm:^0.9.0"
highlight.js: "npm:^11.11.1"
react: "npm:^19.3.0"
@@ -1957,63 +1957,64 @@ __metadata:
languageName: unknown
linkType: soft
-"@rescript/darwin-arm64@npm:12.2.0":
- version: 12.2.0
- resolution: "@rescript/darwin-arm64@npm:12.2.0"
+"@rescript/darwin-arm64@npm:13.0.0-alpha.6":
+ version: 13.0.0-alpha.6
+ resolution: "@rescript/darwin-arm64@npm:13.0.0-alpha.6"
conditions: os=darwin & cpu=arm64
languageName: node
linkType: hard
-"@rescript/darwin-x64@npm:12.2.0":
- version: 12.2.0
- resolution: "@rescript/darwin-x64@npm:12.2.0"
+"@rescript/darwin-x64@npm:13.0.0-alpha.6":
+ version: 13.0.0-alpha.6
+ resolution: "@rescript/darwin-x64@npm:13.0.0-alpha.6"
conditions: os=darwin & cpu=x64
languageName: node
linkType: hard
-"@rescript/linux-arm64@npm:12.2.0":
- version: 12.2.0
- resolution: "@rescript/linux-arm64@npm:12.2.0"
+"@rescript/linux-arm64@npm:13.0.0-alpha.6":
+ version: 13.0.0-alpha.6
+ resolution: "@rescript/linux-arm64@npm:13.0.0-alpha.6"
conditions: os=linux & cpu=arm64
languageName: node
linkType: hard
-"@rescript/linux-x64@npm:12.2.0":
- version: 12.2.0
- resolution: "@rescript/linux-x64@npm:12.2.0"
+"@rescript/linux-x64@npm:13.0.0-alpha.6":
+ version: 13.0.0-alpha.6
+ resolution: "@rescript/linux-x64@npm:13.0.0-alpha.6"
conditions: os=linux & cpu=x64
languageName: node
linkType: hard
-"@rescript/react@npm:^0.14.2":
- version: 0.14.2
- resolution: "@rescript/react@npm:0.14.2"
+"@rescript/react@npm:^0.16.0-beta.1":
+ version: 0.16.0-beta.1
+ resolution: "@rescript/react@npm:0.16.0-beta.1"
peerDependencies:
- react: ">=19.1.0"
- react-dom: ">=19.1.0"
- checksum: 10c0/6fbc0614ac4e4e5ad37abe474dcc137dc8cb7c3351dbc9afa4de92f080614e78809278a034c52da1676e89c299ab07154760d8b80f68f0a5cfd284e22035f713
+ "@rescript/runtime": ">=13.0.0-alpha.5"
+ react: ">=19.2.0"
+ react-dom: ">=19.2.0"
+ checksum: 10c0/bcf008bfb91d07a15dbec273de633104c56147c56e84c8deebb14a2f6cc95eea8a0ff90c19be6ce272f0e768e0f1f6122386e8ac348beb04bffff84ee49d4ec4
languageName: node
linkType: hard
-"@rescript/runtime@npm:12.2.0":
- version: 12.2.0
- resolution: "@rescript/runtime@npm:12.2.0"
- checksum: 10c0/59c0194ae52fbbaadc736bbf1cfac1ed6ffde92b2346e36b9f1a29bb136e38b7ef203c780647203912fa657d293eab5c4e208f04dd65ed4bf47d53843980f7e1
+"@rescript/runtime@npm:13.0.0-alpha.6":
+ version: 13.0.0-alpha.6
+ resolution: "@rescript/runtime@npm:13.0.0-alpha.6"
+ checksum: 10c0/8d351bc3ff8e47c7ff9af871da90982aab056955d9990e38618285aa2eb0ecf6ec5094e07e63f1457957d6f273f1167ecfe67439547d5bcfeb547c2b0489129f
languageName: node
linkType: hard
-"@rescript/webapi@npm:0.1.0-experimental-29db5f4":
- version: 0.1.0-experimental-29db5f4
- resolution: "@rescript/webapi@npm:0.1.0-experimental-29db5f4"
- dependencies:
- rescript: "npm:^12.0.0-beta.3"
- checksum: 10c0/0ef8538fe59b2c058217dd17a5e653ac4902a87caad3b78bde2efc8099538c33e8c1fc7cef41595fd385a78de2ca172c60bdd36a100839f8983da7a40ebd9560
+"@rescript/webapi@npm:alpha":
+ version: 0.1.0-alpha-b1d58f9
+ resolution: "@rescript/webapi@npm:0.1.0-alpha-b1d58f9"
+ peerDependencies:
+ rescript: ">=13"
+ checksum: 10c0/4d242fd3deabf511552f936fe2a5dfa141da7932a644e96528e65c7d32f3bfa29ae4e0e548c5912995d0467312aa1c89b00267fc05b1c80ad373d13d3cd7945c
languageName: node
linkType: hard
-"@rescript/win32-x64@npm:12.2.0":
- version: 12.2.0
- resolution: "@rescript/win32-x64@npm:12.2.0"
+"@rescript/win32-x64@npm:13.0.0-alpha.6":
+ version: 13.0.0-alpha.6
+ resolution: "@rescript/win32-x64@npm:13.0.0-alpha.6"
conditions: os=win32 & cpu=x64
languageName: node
linkType: hard
@@ -9121,20 +9122,20 @@ __metadata:
dependencies:
lefthook: "npm:^2.1.4"
oxfmt: "npm:^0.46.0"
- rescript: "npm:^12.2.0"
+ rescript: "npm:^13.0.0-alpha.6"
languageName: unknown
linkType: soft
-"rescript@npm:^12.0.0-beta.3, rescript@npm:^12.2.0":
- version: 12.2.0
- resolution: "rescript@npm:12.2.0"
+"rescript@npm:^13.0.0-alpha.6":
+ version: 13.0.0-alpha.6
+ resolution: "rescript@npm:13.0.0-alpha.6"
dependencies:
- "@rescript/darwin-arm64": "npm:12.2.0"
- "@rescript/darwin-x64": "npm:12.2.0"
- "@rescript/linux-arm64": "npm:12.2.0"
- "@rescript/linux-x64": "npm:12.2.0"
- "@rescript/runtime": "npm:12.2.0"
- "@rescript/win32-x64": "npm:12.2.0"
+ "@rescript/darwin-arm64": "npm:13.0.0-alpha.6"
+ "@rescript/darwin-x64": "npm:13.0.0-alpha.6"
+ "@rescript/linux-arm64": "npm:13.0.0-alpha.6"
+ "@rescript/linux-x64": "npm:13.0.0-alpha.6"
+ "@rescript/runtime": "npm:13.0.0-alpha.6"
+ "@rescript/win32-x64": "npm:13.0.0-alpha.6"
dependenciesMeta:
"@rescript/darwin-arm64":
optional: true
@@ -9148,11 +9149,9 @@ __metadata:
optional: true
bin:
bsc: cli/bsc.js
- bstracing: cli/bstracing.js
rescript: cli/rescript.js
- rescript-legacy: cli/rescript-legacy.js
rescript-tools: cli/rescript-tools.js
- checksum: 10c0/7650a77a66e2f2ba2523eac54fd930f0b70bad922e9b498678e701e842a56c7b6facd0daf1ef9c7b71d344d9483a0293d17db72a67515a22d07856bdfc34fb46
+ checksum: 10c0/8b4a7430444a4db28e2e480b6750f700ceca0d899d3262248c682314e372cb33fb9030962e0628c93bd6dfc6ea07f03143423aa48f2d478c22152496ee211adf
languageName: node
linkType: hard