Comparing version 0.0.2 to 0.0.3
@@ -1,1 +0,2 @@ | ||
export * from 'react' | ||
"use strict"; | ||
module.exports = require("react"); |
{ | ||
"name": "rehackt", | ||
"version": "0.0.2", | ||
"version": "0.0.3", | ||
"description": "A wrapper around React that will hide hooks from the React Server Component compiler", | ||
@@ -12,8 +12,6 @@ "author": "Lenz Weber-Tronic", | ||
"license": "MIT", | ||
"peerDependencies": { | ||
"react": "*" | ||
}, | ||
"main": "index.js", | ||
"exports": { | ||
".": { | ||
"types": "./index.d.ts", | ||
"react-server": "./rsc.js", | ||
@@ -26,5 +24,22 @@ "default": "./index.js" | ||
"index.js", | ||
"index.d.ts", | ||
"rsc.js", | ||
"package.json" | ||
] | ||
], | ||
"peerDependencies": { | ||
"react": "*", | ||
"@types/react": "*" | ||
}, | ||
"peerDependenciesMeta": { | ||
"react": { | ||
"optional": true | ||
}, | ||
"@types/react": { | ||
"optional": true | ||
} | ||
}, | ||
"devDependencies": { | ||
"react": "^18.3.0-canary-ab31a9ed2-20230824", | ||
"@types/node": "^20.5.7" | ||
} | ||
} |
106
rsc.js
// @ts-check | ||
import * as ignoreMe from 'react' | ||
const React = require("react"); | ||
const invalidImportError = new Error("not in runtime!") | ||
const GuaranteedReactExports = [ | ||
"Children", | ||
"Component", | ||
"Fragment", | ||
"Profiler", | ||
"PureComponent", | ||
"StrictMode", | ||
"Suspense", | ||
"cache", | ||
"cloneElement", | ||
"createContext", | ||
"createElement", | ||
"createFactory", | ||
"createRef", | ||
"createServerContext", | ||
"forwardRef", | ||
"isValidElement", | ||
"lazy", | ||
"memo", | ||
"startTransition", | ||
"unstable_act", | ||
"unstable_useCacheRefresh", | ||
"use", | ||
"useCallback", | ||
"useContext", | ||
"useDebugValue", | ||
"useDeferredValue", | ||
"useEffect", | ||
"useId", | ||
"useImperativeHandle", | ||
"useInsertionEffect", | ||
"useLayoutEffect", | ||
"useMemo", | ||
"useReducer", | ||
"useRef", | ||
"useState", | ||
"useSyncExternalStore", | ||
"useTransition", | ||
"version", | ||
]; | ||
export const version = ignoreMe.version | ||
export const Children = ignoreMe.Children | ||
export const Component = ignoreMe.Component | ||
export const PureComponent = ignoreMe.PureComponent | ||
export const createElement = ignoreMe.createElement | ||
export const cloneElement = ignoreMe.cloneElement | ||
export const isValidElement = ignoreMe.isValidElement | ||
export const createFactory = ignoreMe.createFactory | ||
export const createRef = ignoreMe.createRef | ||
export const Fragment = ignoreMe.Fragment | ||
export const StrictMode = ignoreMe.StrictMode | ||
export const Suspense = ignoreMe.Suspense | ||
export const lazy = ignoreMe.lazy | ||
export const forwardRef = ignoreMe.forwardRef | ||
export const memo = ignoreMe.memo | ||
export const useCallback = ignoreMe.useCallback | ||
export const useContext = () => { throw invalidImportError } | ||
export const useEffect = () => { throw invalidImportError } | ||
export const useImperativeHandle = ignoreMe.useImperativeHandle | ||
export const useDebugValue = ignoreMe.useDebugValue | ||
export const useLayoutEffect = ignoreMe.useLayoutEffect | ||
export const useMemo = ignoreMe.useMemo | ||
export const useReducer = () => { throw invalidImportError } | ||
export const useRef = () => { throw invalidImportError } | ||
export const useState = () => { throw invalidImportError } | ||
export const createContext = () => { throw invalidImportError } | ||
export const useDeferredValue = ignoreMe.useDeferredValue | ||
export const useTransition = ignoreMe.useTransition | ||
export const startTransition = ignoreMe.startTransition | ||
export const useId = ignoreMe.useId | ||
export const useInsertionEffect = ignoreMe.useInsertionEffect | ||
export const useSyncExternalStore = ignoreMe.useSyncExternalStore | ||
export const Profiler = ignoreMe.Profiler | ||
const Polyfilled = { | ||
...Object.fromEntries( | ||
Object.values(GuaranteedReactExports).map((exportName) => [ | ||
exportName, | ||
function throwOnNonExistentImport() { | ||
throw new Error( | ||
`React functionality ${exportName} is not available in this environment.` | ||
); | ||
}, | ||
]) | ||
), | ||
// @ts-expect-error we want `createContext` to be executable in RSC | ||
// the created empty context object cannot be used in any meaningful way | ||
// but this can keep consuming libraries that create a context from | ||
// crashing on import | ||
createContext: () => ({ | ||
Provider: function throwNoContext() { | ||
throw new Error("Context is not available in this environment."); | ||
}, | ||
Consumer: function throwNoContext() { | ||
throw new Error("Context is not available in this environment."); | ||
}, | ||
}), | ||
...React, | ||
}; | ||
import * as myExports from './rsc.js' | ||
/** @type {typeof ignoreMe} */ | ||
const check = myExports | ||
module.exports = Polyfilled; |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
2674
4
73
2
2