Add js web stuff to landing page + documentation

This commit is contained in:
2026-07-14 10:33:12 -04:00
parent fec8ef4a3e
commit 02a6dc6c48
435 changed files with 69567 additions and 1522 deletions

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,329 @@
'use strict';
var solidJs = require('solid-js');
function setComponentProperty(component, key, value) {
const descriptor = Object.getOwnPropertyDescriptor(component, key);
if (descriptor) {
Object.defineProperty(component, key, Object.assign(Object.assign({}, descriptor), { value }));
}
else {
Object.defineProperty(component, key, {
value,
writable: false,
enumerable: false,
configurable: true,
});
}
}
function createProxy(source, name, location) {
const refreshName = `[solid-refresh]${name}`;
function HMRComp(props) {
const s = source();
if (!s || solidJs.$DEVCOMP in s) {
return solidJs.createMemo(() => {
const c = source();
if (c) {
return solidJs.untrack(() => c(props));
}
return undefined;
}, {
name: refreshName,
});
}
// no $DEVCOMP means it did not go through devComponent so source() is a regular function, not a component
return s(props);
}
setComponentProperty(HMRComp, 'name', refreshName);
if (location) {
setComponentProperty(HMRComp, 'location', location);
}
return new Proxy(HMRComp, {
get(_, property) {
if (property === 'location' || property === 'name') {
return HMRComp[property];
}
return source()[property];
},
set(_, property, value) {
source()[property] = value;
return true;
},
});
}
function isListUpdatedInternal(a, b) {
const aKeys = Object.keys(a);
const bKeys = Object.keys(b);
// Check if both objects has the same amount of keys
if (aKeys.length !== bKeys.length) {
return true;
}
// Merge keys
const keys = new Set([...aKeys, ...bKeys]);
// Now check if merged keys has the same amount of keys as the other two
// for example: { a, b } and { a, c } produces { a, b, c }
if (keys.size !== aKeys.length) {
return true;
}
// Now compare each items
for (const key of keys) {
// This covers NaN. No need for Object.is since it's extreme for -0
if (a[key] !== b[key] || (a[key] !== a[key] && b[key] !== b[key])) {
return true;
}
}
return false;
}
function isListUpdated(a, b) {
if (a && b) {
return isListUpdatedInternal(a, b);
}
if (a == null && b != null) {
return true;
}
if (a != null && b == null) {
return true;
}
return false;
}
function $$registry() {
return {
components: new Map(),
contexts: new Map(),
};
}
function $$component(registry, id, component, options = {}) {
const [comp, setComp] = solidJs.createSignal(component, { internal: true });
const proxy = createProxy(comp, id, options.location);
registry.components.set(id, Object.assign({ id,
component,
proxy, update: setComp }, options));
return proxy;
}
function $$context(registry, id, context) {
registry.contexts.set(id, {
id,
context,
});
return context;
}
function patchComponent(oldData, newData) {
var _a, _b;
// Check if incoming module has signature
if (newData.signature) {
// Compare signatures
const oldDeps = (_a = oldData.dependencies) === null || _a === void 0 ? void 0 : _a.call(oldData);
const newDeps = (_b = newData.dependencies) === null || _b === void 0 ? void 0 : _b.call(newData);
if (newData.signature !== oldData.signature ||
isListUpdated(newDeps, oldDeps)) {
// Replace signatures and dependencies
oldData.dependencies = newDeps ? () => newDeps : undefined;
oldData.signature = newData.signature;
// Remount
oldData.update(() => newData.component);
}
}
else {
// No granular update, remount
oldData.update(() => newData.component);
}
// Always rely on the first proxy
// This is to allow modules newly importing
// the updated version to still be able
// to render the latest version despite
// not receiving the first proxy
newData.update(() => oldData.proxy);
}
function patchComponents(oldData, newData) {
const components = new Set([
...oldData.components.keys(),
...newData.components.keys(),
]);
for (const key of components) {
const oldComponent = oldData.components.get(key);
const newComponent = newData.components.get(key);
if (oldComponent) {
if (newComponent) {
patchComponent(oldComponent, newComponent);
}
else {
// We need to invalidate
return true;
}
}
else if (newComponent) {
oldData.components.set(key, newComponent);
}
}
return false;
}
function patchContext(oldData, newData) {
oldData.context.defaultValue = newData.context.defaultValue;
newData.context.id = oldData.context.id;
newData.context.Provider = oldData.context.Provider;
}
function patchContexts(oldData, newData) {
const contexts = new Set([
...oldData.contexts.keys(),
...newData.contexts.keys(),
]);
for (const key of contexts) {
const oldContext = oldData.contexts.get(key);
const newContext = newData.contexts.get(key);
if (oldContext) {
if (newContext) {
patchContext(oldContext, newContext);
}
else {
// We need to invalidate
return true;
}
}
else if (newContext) {
oldData.contexts.set(key, newContext);
}
}
return false;
}
function patchRegistry(oldRegistry, newRegistry) {
const shouldInvalidateByContext = patchContexts(oldRegistry, newRegistry);
const shouldInvalidateByComponents = patchComponents(oldRegistry, newRegistry);
// In the future we may add other HMR features here
return shouldInvalidateByComponents || shouldInvalidateByContext;
}
const SOLID_REFRESH = 'solid-refresh';
const SOLID_REFRESH_PREV = 'solid-refresh-prev';
function $$decline(...[type, hot, inline]) {
switch (type) {
case 'esm': {
// Snowpack's ESM assumes invalidate as a normal page reload
// decline should be better
if (inline) {
hot.invalidate();
}
else {
hot.decline();
}
break;
}
case 'vite': {
// Vite is no-op on decline, just call invalidate
if (inline) {
hot.invalidate();
}
else {
hot.accept(() => {
hot.invalidate();
});
}
break;
}
case 'rspack-esm':
case 'webpack5': {
if (inline) {
hot.invalidate();
}
else {
hot.decline();
}
break;
}
case 'standard': {
// Some implementations do not have decline/invalidate
if (inline) {
if (hot.invalidate) {
hot.invalidate();
}
else {
window.location.reload();
}
}
else if (hot.decline) {
hot.decline();
}
else {
hot.accept(() => {
if (hot.invalidate) {
hot.invalidate();
}
else {
window.location.reload();
}
});
}
break;
}
}
}
let warned = false;
function shouldWarnAndDecline() {
const result = solidJs.DEV && Object.keys(solidJs.DEV).length;
if (result) {
return false;
}
if (!warned) {
console.warn("To use solid-refresh, you need to use the dev build of SolidJS. Make sure your build system supports package.json conditional exports and has the 'development' condition turned on.");
warned = true;
}
return true;
}
function $$refreshESM(type, hot, registry) {
if (shouldWarnAndDecline()) {
$$decline(type, hot);
}
else if (hot.data) {
hot.data[SOLID_REFRESH] = hot.data[SOLID_REFRESH] || registry;
hot.data[SOLID_REFRESH_PREV] = registry;
hot.accept(mod => {
if (mod == null ||
patchRegistry(hot.data[SOLID_REFRESH], hot.data[SOLID_REFRESH_PREV])) {
hot.invalidate();
}
});
}
else {
// I guess just decline if hot.data doesn't exist
$$decline(type, hot);
}
}
function $$refreshStandard(type, hot, registry) {
if (shouldWarnAndDecline()) {
$$decline(type, hot);
}
else {
const current = hot.data;
if (current && current[SOLID_REFRESH]) {
if (patchRegistry(current[SOLID_REFRESH], registry)) {
$$decline(type, hot, true);
}
}
hot.dispose((data) => {
data[SOLID_REFRESH] = current ? current[SOLID_REFRESH] : registry;
});
hot.accept();
}
}
function $$refresh(...[type, hot, registry]) {
switch (type) {
case 'esm':
case 'vite': {
$$refreshESM(type, hot, registry);
break;
}
case 'standard':
case 'webpack5':
case 'rspack-esm': {
$$refreshStandard(type, hot, registry);
break;
}
}
}
exports.$$component = $$component;
exports.$$context = $$context;
exports.$$decline = $$decline;
exports.$$refresh = $$refresh;
exports.$$registry = $$registry;
//# sourceMappingURL=solid-refresh.cjs.map

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,323 @@
import { $DEVCOMP, createMemo, untrack, createSignal, DEV } from 'solid-js';
function setComponentProperty(component, key, value) {
const descriptor = Object.getOwnPropertyDescriptor(component, key);
if (descriptor) {
Object.defineProperty(component, key, Object.assign(Object.assign({}, descriptor), { value }));
}
else {
Object.defineProperty(component, key, {
value,
writable: false,
enumerable: false,
configurable: true,
});
}
}
function createProxy(source, name, location) {
const refreshName = `[solid-refresh]${name}`;
function HMRComp(props) {
const s = source();
if (!s || $DEVCOMP in s) {
return createMemo(() => {
const c = source();
if (c) {
return untrack(() => c(props));
}
return undefined;
}, {
name: refreshName,
});
}
// no $DEVCOMP means it did not go through devComponent so source() is a regular function, not a component
return s(props);
}
setComponentProperty(HMRComp, 'name', refreshName);
if (location) {
setComponentProperty(HMRComp, 'location', location);
}
return new Proxy(HMRComp, {
get(_, property) {
if (property === 'location' || property === 'name') {
return HMRComp[property];
}
return source()[property];
},
set(_, property, value) {
source()[property] = value;
return true;
},
});
}
function isListUpdatedInternal(a, b) {
const aKeys = Object.keys(a);
const bKeys = Object.keys(b);
// Check if both objects has the same amount of keys
if (aKeys.length !== bKeys.length) {
return true;
}
// Merge keys
const keys = new Set([...aKeys, ...bKeys]);
// Now check if merged keys has the same amount of keys as the other two
// for example: { a, b } and { a, c } produces { a, b, c }
if (keys.size !== aKeys.length) {
return true;
}
// Now compare each items
for (const key of keys) {
// This covers NaN. No need for Object.is since it's extreme for -0
if (a[key] !== b[key] || (a[key] !== a[key] && b[key] !== b[key])) {
return true;
}
}
return false;
}
function isListUpdated(a, b) {
if (a && b) {
return isListUpdatedInternal(a, b);
}
if (a == null && b != null) {
return true;
}
if (a != null && b == null) {
return true;
}
return false;
}
function $$registry() {
return {
components: new Map(),
contexts: new Map(),
};
}
function $$component(registry, id, component, options = {}) {
const [comp, setComp] = createSignal(component, { internal: true });
const proxy = createProxy(comp, id, options.location);
registry.components.set(id, Object.assign({ id,
component,
proxy, update: setComp }, options));
return proxy;
}
function $$context(registry, id, context) {
registry.contexts.set(id, {
id,
context,
});
return context;
}
function patchComponent(oldData, newData) {
var _a, _b;
// Check if incoming module has signature
if (newData.signature) {
// Compare signatures
const oldDeps = (_a = oldData.dependencies) === null || _a === void 0 ? void 0 : _a.call(oldData);
const newDeps = (_b = newData.dependencies) === null || _b === void 0 ? void 0 : _b.call(newData);
if (newData.signature !== oldData.signature ||
isListUpdated(newDeps, oldDeps)) {
// Replace signatures and dependencies
oldData.dependencies = newDeps ? () => newDeps : undefined;
oldData.signature = newData.signature;
// Remount
oldData.update(() => newData.component);
}
}
else {
// No granular update, remount
oldData.update(() => newData.component);
}
// Always rely on the first proxy
// This is to allow modules newly importing
// the updated version to still be able
// to render the latest version despite
// not receiving the first proxy
newData.update(() => oldData.proxy);
}
function patchComponents(oldData, newData) {
const components = new Set([
...oldData.components.keys(),
...newData.components.keys(),
]);
for (const key of components) {
const oldComponent = oldData.components.get(key);
const newComponent = newData.components.get(key);
if (oldComponent) {
if (newComponent) {
patchComponent(oldComponent, newComponent);
}
else {
// We need to invalidate
return true;
}
}
else if (newComponent) {
oldData.components.set(key, newComponent);
}
}
return false;
}
function patchContext(oldData, newData) {
oldData.context.defaultValue = newData.context.defaultValue;
newData.context.id = oldData.context.id;
newData.context.Provider = oldData.context.Provider;
}
function patchContexts(oldData, newData) {
const contexts = new Set([
...oldData.contexts.keys(),
...newData.contexts.keys(),
]);
for (const key of contexts) {
const oldContext = oldData.contexts.get(key);
const newContext = newData.contexts.get(key);
if (oldContext) {
if (newContext) {
patchContext(oldContext, newContext);
}
else {
// We need to invalidate
return true;
}
}
else if (newContext) {
oldData.contexts.set(key, newContext);
}
}
return false;
}
function patchRegistry(oldRegistry, newRegistry) {
const shouldInvalidateByContext = patchContexts(oldRegistry, newRegistry);
const shouldInvalidateByComponents = patchComponents(oldRegistry, newRegistry);
// In the future we may add other HMR features here
return shouldInvalidateByComponents || shouldInvalidateByContext;
}
const SOLID_REFRESH = 'solid-refresh';
const SOLID_REFRESH_PREV = 'solid-refresh-prev';
function $$decline(...[type, hot, inline]) {
switch (type) {
case 'esm': {
// Snowpack's ESM assumes invalidate as a normal page reload
// decline should be better
if (inline) {
hot.invalidate();
}
else {
hot.decline();
}
break;
}
case 'vite': {
// Vite is no-op on decline, just call invalidate
if (inline) {
hot.invalidate();
}
else {
hot.accept(() => {
hot.invalidate();
});
}
break;
}
case 'rspack-esm':
case 'webpack5': {
if (inline) {
hot.invalidate();
}
else {
hot.decline();
}
break;
}
case 'standard': {
// Some implementations do not have decline/invalidate
if (inline) {
if (hot.invalidate) {
hot.invalidate();
}
else {
window.location.reload();
}
}
else if (hot.decline) {
hot.decline();
}
else {
hot.accept(() => {
if (hot.invalidate) {
hot.invalidate();
}
else {
window.location.reload();
}
});
}
break;
}
}
}
let warned = false;
function shouldWarnAndDecline() {
const result = DEV && Object.keys(DEV).length;
if (result) {
return false;
}
if (!warned) {
console.warn("To use solid-refresh, you need to use the dev build of SolidJS. Make sure your build system supports package.json conditional exports and has the 'development' condition turned on.");
warned = true;
}
return true;
}
function $$refreshESM(type, hot, registry) {
if (shouldWarnAndDecline()) {
$$decline(type, hot);
}
else if (hot.data) {
hot.data[SOLID_REFRESH] = hot.data[SOLID_REFRESH] || registry;
hot.data[SOLID_REFRESH_PREV] = registry;
hot.accept(mod => {
if (mod == null ||
patchRegistry(hot.data[SOLID_REFRESH], hot.data[SOLID_REFRESH_PREV])) {
hot.invalidate();
}
});
}
else {
// I guess just decline if hot.data doesn't exist
$$decline(type, hot);
}
}
function $$refreshStandard(type, hot, registry) {
if (shouldWarnAndDecline()) {
$$decline(type, hot);
}
else {
const current = hot.data;
if (current && current[SOLID_REFRESH]) {
if (patchRegistry(current[SOLID_REFRESH], registry)) {
$$decline(type, hot, true);
}
}
hot.dispose((data) => {
data[SOLID_REFRESH] = current ? current[SOLID_REFRESH] : registry;
});
hot.accept();
}
}
function $$refresh(...[type, hot, registry]) {
switch (type) {
case 'esm':
case 'vite': {
$$refreshESM(type, hot, registry);
break;
}
case 'standard':
case 'webpack5':
case 'rspack-esm': {
$$refreshStandard(type, hot, registry);
break;
}
}
}
export { $$component, $$context, $$decline, $$refresh, $$registry };
//# sourceMappingURL=solid-refresh.mjs.map

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,4 @@
import * as t from '@babel/types';
export declare function isComponentishName(name: string): boolean;
export declare function getImportSpecifierName(specifier: t.ImportSpecifier): string;
//# sourceMappingURL=checks.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"checks.d.ts","sourceRoot":"","sources":["../../../../src/babel/core/checks.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,cAAc,CAAC;AAKlC,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,WAE9C;AAED,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,CAAC,CAAC,eAAe,GAAG,MAAM,CAK3E"}

View File

@@ -0,0 +1,8 @@
import type { ImportDefinition, ImportIdentifierSpecifier } from './types';
export declare const IMPORT_REGISTRY: ImportDefinition;
export declare const IMPORT_REFRESH: ImportDefinition;
export declare const IMPORT_COMPONENT: ImportDefinition;
export declare const IMPORT_CONTEXT: ImportDefinition;
export declare const IMPORT_DECLINE: ImportDefinition;
export declare const IMPORT_SPECIFIERS: ImportIdentifierSpecifier[];
//# sourceMappingURL=constants.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/babel/core/constants.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAC;AAM3E,eAAO,MAAM,eAAe,EAAE,gBAI7B,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,gBAI5B,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,gBAI9B,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,gBAI5B,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,gBAI5B,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,yBAAyB,EAyBxD,CAAC"}

View File

@@ -0,0 +1,5 @@
import type * as babel from '@babel/core';
import * as t from '@babel/types';
import type { StateContext } from './types';
export declare function createRegistry(state: StateContext, path: babel.NodePath): t.Identifier;
//# sourceMappingURL=create-registry.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"create-registry.d.ts","sourceRoot":"","sources":["../../../../src/babel/core/create-registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,CAAC,MAAM,cAAc,CAAC;AAKlC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAI5C,wBAAgB,cAAc,CAC5B,KAAK,EAAE,YAAY,EACnB,IAAI,EAAE,KAAK,CAAC,QAAQ,GACnB,CAAC,CAAC,UAAU,CAmDd"}

View File

@@ -0,0 +1,4 @@
import type * as babel from '@babel/core';
import * as t from '@babel/types';
export declare function generateUniqueName(path: babel.NodePath, name: string): t.Identifier;
//# sourceMappingURL=generate-unique-name.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"generate-unique-name.d.ts","sourceRoot":"","sources":["../../../../src/babel/core/generate-unique-name.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,CAAC,MAAM,cAAc,CAAC;AAElC,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,KAAK,CAAC,QAAQ,EACpB,IAAI,EAAE,MAAM,GACX,CAAC,CAAC,UAAU,CAkBd"}

View File

@@ -0,0 +1,3 @@
import type * as t from '@babel/types';
export declare function generateCode(node: t.Node): string;
//# sourceMappingURL=generator.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"generator.d.ts","sourceRoot":"","sources":["../../../../src/babel/core/generator.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,CAAC,MAAM,cAAc,CAAC;AAUvC,wBAAgB,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,GAAG,MAAM,CAEjD"}

View File

@@ -0,0 +1,3 @@
import type * as babel from '@babel/core';
export declare function getDescriptiveName(path: babel.NodePath, defaultName: string): string;
//# sourceMappingURL=get-descriptive-name.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"get-descriptive-name.d.ts","sourceRoot":"","sources":["../../../../src/babel/core/get-descriptive-name.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,aAAa,CAAC;AAE1C,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,KAAK,CAAC,QAAQ,EACpB,WAAW,EAAE,MAAM,GAClB,MAAM,CAoCR"}

View File

@@ -0,0 +1,4 @@
import type * as babel from '@babel/core';
import * as t from '@babel/types';
export declare function getForeignBindings(path: babel.NodePath): t.Identifier[];
//# sourceMappingURL=get-foreign-bindings.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"get-foreign-bindings.d.ts","sourceRoot":"","sources":["../../../../src/babel/core/get-foreign-bindings.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,CAAC,MAAM,cAAc,CAAC;AA+BlC,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,UAAU,EAAE,CAoBvE"}

View File

@@ -0,0 +1,4 @@
import type * as babel from '@babel/core';
import type { StateContext } from './types';
export declare function getHMRDeclineCall(state: StateContext, path: babel.NodePath): babel.types.IfStatement;
//# sourceMappingURL=get-hmr-decline-call.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"get-hmr-decline-call.d.ts","sourceRoot":"","sources":["../../../../src/babel/core/get-hmr-decline-call.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,aAAa,CAAC;AAK1C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5C,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,KAAK,CAAC,QAAQ,2BAmC1E"}

View File

@@ -0,0 +1,4 @@
import * as t from '@babel/types';
import type { StateContext } from './types';
export declare function getHotIdentifier(state: StateContext): t.MemberExpression;
//# sourceMappingURL=get-hot-identifier.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"get-hot-identifier.d.ts","sourceRoot":"","sources":["../../../../src/babel/core/get-hot-identifier.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,cAAc,CAAC;AAClC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5C,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,YAAY,GAAG,CAAC,CAAC,gBAAgB,CAqBxE"}

View File

@@ -0,0 +1,5 @@
import type * as babel from '@babel/core';
import * as t from '@babel/types';
import type { ImportDefinition, StateContext } from './types';
export declare function getImportIdentifier(state: StateContext, path: babel.NodePath, registration: ImportDefinition): t.Identifier;
//# sourceMappingURL=get-import-identifier.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"get-import-identifier.d.ts","sourceRoot":"","sources":["../../../../src/babel/core/get-import-identifier.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,CAAC,MAAM,cAAc,CAAC;AAClC,OAAO,KAAK,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE9D,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,YAAY,EACnB,IAAI,EAAE,KAAK,CAAC,QAAQ,EACpB,YAAY,EAAE,gBAAgB,GAC7B,CAAC,CAAC,UAAU,CAwBd"}

View File

@@ -0,0 +1,3 @@
import type * as babel from '@babel/core';
export declare function getRootStatementPath(path: babel.NodePath): babel.NodePath;
//# sourceMappingURL=get-root-statement-path.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"get-root-statement-path.d.ts","sourceRoot":"","sources":["../../../../src/babel/core/get-root-statement-path.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,aAAa,CAAC;AAG1C,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAUzE"}

View File

@@ -0,0 +1,3 @@
import type * as babel from '@babel/core';
export declare function getStatementPath(path: babel.NodePath): babel.NodePath | null;
//# sourceMappingURL=get-statement-path.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"get-statement-path.d.ts","sourceRoot":"","sources":["../../../../src/babel/core/get-statement-path.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,aAAa,CAAC;AAG1C,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,GAAG,IAAI,CAQ5E"}

View File

@@ -0,0 +1,4 @@
import type * as babel from '@babel/core';
import type * as t from '@babel/types';
export declare function isStatementTopLevel(path: babel.NodePath<t.Statement>): boolean;
//# sourceMappingURL=is-statement-top-level.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"is-statement-top-level.d.ts","sourceRoot":"","sources":["../../../../src/babel/core/is-statement-top-level.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,KAAK,CAAC,MAAM,cAAc,CAAC;AAEvC,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,GAChC,OAAO,CAST"}

View File

@@ -0,0 +1,5 @@
import type * as babel from '@babel/core';
import * as t from '@babel/types';
import type { ImportIdentifierType, StateContext } from './types';
export declare function isValidCallee(state: StateContext, path: babel.NodePath, { callee }: t.CallExpression, target: ImportIdentifierType): boolean;
//# sourceMappingURL=is-valid-callee.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"is-valid-callee.d.ts","sourceRoot":"","sources":["../../../../src/babel/core/is-valid-callee.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,CAAC,MAAM,cAAc,CAAC;AAClC,OAAO,KAAK,EAEV,oBAAoB,EACpB,YAAY,EACb,MAAM,SAAS,CAAC;AA+DjB,wBAAgB,aAAa,CAC3B,KAAK,EAAE,YAAY,EACnB,IAAI,EAAE,KAAK,CAAC,QAAQ,EACpB,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC,cAAc,EAC5B,MAAM,EAAE,oBAAoB,WAe7B"}

View File

@@ -0,0 +1,5 @@
import type * as babel from '@babel/core';
import * as t from '@babel/types';
import type { ImportIdentifierSpecifier, StateContext } from './types';
export declare function registerImportSpecifiers(state: StateContext, path: babel.NodePath<t.ImportDeclaration>, definitions: ImportIdentifierSpecifier[]): void;
//# sourceMappingURL=register-import-specifiers.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"register-import-specifiers.d.ts","sourceRoot":"","sources":["../../../../src/babel/core/register-import-specifiers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,CAAC,MAAM,cAAc,CAAC;AAElC,OAAO,KAAK,EAAE,yBAAyB,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAqCvE,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,YAAY,EACnB,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,iBAAiB,CAAC,EACzC,WAAW,EAAE,yBAAyB,EAAE,QAUzC"}

View File

@@ -0,0 +1,4 @@
import type * as babel from '@babel/core';
import * as t from '@babel/types';
export declare function transformJSX(path: babel.NodePath<t.JSXElement | t.JSXFragment>): void;
//# sourceMappingURL=transform-jsx.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"transform-jsx.d.ts","sourceRoot":"","sources":["../../../../src/babel/core/transform-jsx.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,CAAC,MAAM,cAAc,CAAC;AA+QlC,wBAAgB,YAAY,CAC1B,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,WAAW,CAAC,GACjD,IAAI,CA4DN"}

View File

@@ -0,0 +1,42 @@
import type * as t from '@babel/types';
import type { RuntimeType } from '../../shared/types';
export interface NamedImportDefinition {
kind: 'named';
name: string;
source: string;
}
export interface DefaultImportDefinition {
kind: 'default';
source: string;
}
export type ImportDefinition = DefaultImportDefinition | NamedImportDefinition;
export interface Options {
granular?: boolean;
jsx?: boolean;
bundler?: RuntimeType;
fixRender?: boolean;
imports?: {
createContext: ImportDefinition[];
render: ImportDefinition[];
};
}
export type ImportIdentifierType = 'render' | 'createContext';
export interface ImportIdentifierSpecifier {
type: ImportIdentifierType;
definition: ImportDefinition;
}
export interface StateContext {
jsx: boolean;
granular: boolean;
opts: Options;
specifiers: ImportIdentifierSpecifier[];
imports: Map<string, t.Identifier>;
registrations: {
identifiers: Map<t.Identifier, ImportIdentifierSpecifier>;
namespaces: Map<t.Identifier, ImportIdentifierSpecifier[]>;
};
filename: string | undefined;
bundler: RuntimeType;
fixRender: boolean;
}
//# sourceMappingURL=types.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/babel/core/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,CAAC,MAAM,cAAc,CAAC;AACvC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEtD,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,SAAS,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,MAAM,gBAAgB,GAAG,uBAAuB,GAAG,qBAAqB,CAAC;AAE/E,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE;QACR,aAAa,EAAE,gBAAgB,EAAE,CAAC;QAClC,MAAM,EAAE,gBAAgB,EAAE,CAAC;KAC5B,CAAC;CACH;AAED,MAAM,MAAM,oBAAoB,GAAG,QAAQ,GAAG,eAAe,CAAC;AAE9D,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,oBAAoB,CAAC;IAC3B,UAAU,EAAE,gBAAgB,CAAC;CAC9B;AAED,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,OAAO,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,EAAE,OAAO,CAAC;IACd,UAAU,EAAE,yBAAyB,EAAE,CAAC;IACxC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC;IACnC,aAAa,EAAE;QACb,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC,UAAU,EAAE,yBAAyB,CAAC,CAAC;QAC1D,UAAU,EAAE,GAAG,CAAC,CAAC,CAAC,UAAU,EAAE,yBAAyB,EAAE,CAAC,CAAC;KAC5D,CAAC;IACF,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,OAAO,EAAE,WAAW,CAAC;IACrB,SAAS,EAAE,OAAO,CAAC;CACpB"}

View File

@@ -0,0 +1,11 @@
import type * as babel from '@babel/core';
import type * as t from '@babel/types';
type TypeFilter<V extends t.Node> = (node: t.Node) => node is V;
export declare function isPathValid<V extends t.Node>(path: unknown, key: TypeFilter<V>): path is babel.NodePath<V>;
export type NestedExpression = t.ParenthesizedExpression | t.TypeCastExpression | t.TSAsExpression | t.TSSatisfiesExpression | t.TSNonNullExpression | t.TSInstantiationExpression | t.TSTypeAssertion;
export declare function isNestedExpression(node: t.Node): node is NestedExpression;
type TypeCheck<K> = K extends TypeFilter<infer U> ? U : never;
export declare function unwrapNode<K extends (value: t.Node) => boolean>(node: t.Node, key: K): TypeCheck<K> | undefined;
export declare function unwrapPath<V extends t.Node>(path: unknown, key: TypeFilter<V>): babel.NodePath<V> | undefined;
export {};
//# sourceMappingURL=unwrap.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"unwrap.d.ts","sourceRoot":"","sources":["../../../../src/babel/core/unwrap.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,KAAK,CAAC,MAAM,cAAc,CAAC;AAEvC,KAAK,UAAU,CAAC,CAAC,SAAS,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,CAAC;AAEhE,wBAAgB,WAAW,CAAC,CAAC,SAAS,CAAC,CAAC,IAAI,EAC1C,IAAI,EAAE,OAAO,EACb,GAAG,EAAE,UAAU,CAAC,CAAC,CAAC,GACjB,IAAI,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAE3B;AAED,MAAM,MAAM,gBAAgB,GACxB,CAAC,CAAC,uBAAuB,GACzB,CAAC,CAAC,kBAAkB,GACpB,CAAC,CAAC,cAAc,GAChB,CAAC,CAAC,qBAAqB,GACvB,CAAC,CAAC,mBAAmB,GACrB,CAAC,CAAC,yBAAyB,GAC3B,CAAC,CAAC,eAAe,CAAC;AAEtB,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,GAAG,IAAI,IAAI,gBAAgB,CAazE;AAED,KAAK,SAAS,CAAC,CAAC,IAAI,CAAC,SAAS,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AAE9D,wBAAgB,UAAU,CAAC,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,KAAK,OAAO,EAC7D,IAAI,EAAE,CAAC,CAAC,IAAI,EACZ,GAAG,EAAE,CAAC,GACL,SAAS,CAAC,CAAC,CAAC,GAAG,SAAS,CAQ1B;AAED,wBAAgB,UAAU,CAAC,CAAC,SAAS,CAAC,CAAC,IAAI,EACzC,IAAI,EAAE,OAAO,EACb,GAAG,EAAE,UAAU,CAAC,CAAC,CAAC,GACjB,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,SAAS,CAQ/B"}

View File

@@ -0,0 +1,7 @@
/**
*
* @param buffer - byte array or string
* @param seed - optional seed (32-bit unsigned);
*/
export declare function xxHash32(buffer: Uint8Array | string, seed?: number): number;
//# sourceMappingURL=xxhash32.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"xxhash32.d.ts","sourceRoot":"","sources":["../../../../src/babel/core/xxhash32.ts"],"names":[],"mappings":"AAkCA;;;;GAIG;AACH,wBAAgB,QAAQ,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,EAAE,IAAI,SAAI,GAAG,MAAM,CAqKtE"}

View File

@@ -0,0 +1,8 @@
import type * as babel from '@babel/core';
import type { Options } from './core/types';
interface State extends babel.PluginPass {
opts: Options;
}
export type { Options };
export default function solidRefreshPlugin(): babel.PluginObj<State>;
//# sourceMappingURL=index.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/babel/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,aAAa,CAAC;AAoB1C,OAAO,KAAK,EAAE,OAAO,EAAgB,MAAM,cAAc,CAAC;AAqT1D,UAAU,KAAM,SAAQ,KAAK,CAAC,UAAU;IACtC,IAAI,EAAE,OAAO,CAAC;CACf;AAED,YAAY,EAAE,OAAO,EAAE,CAAC;AAExB,MAAM,CAAC,OAAO,UAAU,kBAAkB,IAAI,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAqDnE"}

View File

@@ -0,0 +1,6 @@
import type { JSX, Accessor } from 'solid-js';
export interface BaseComponent<P> {
(props: P): JSX.Element;
}
export default function createProxy<C extends BaseComponent<P>, P>(source: Accessor<C>, name: string, location?: string): (props: P) => JSX.Element;
//# sourceMappingURL=create-proxy.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"create-proxy.d.ts","sourceRoot":"","sources":["../../../src/runtime/create-proxy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAG9C,MAAM,WAAW,aAAa,CAAC,CAAC;IAC9B,CAAC,KAAK,EAAE,CAAC,GAAG,GAAG,CAAC,OAAO,CAAC;CACzB;AAuBD,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,CAAC,SAAS,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,EAC/D,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,EACnB,IAAI,EAAE,MAAM,EACZ,QAAQ,CAAC,EAAE,MAAM,GAChB,CAAC,KAAK,EAAE,CAAC,KAAK,GAAG,CAAC,OAAO,CAuC3B"}

View File

@@ -0,0 +1,60 @@
import type { Context, JSX } from 'solid-js';
import type { ESMRuntimeType, StandardRuntimeType } from '../shared/types';
interface ComponentOptions {
location?: string;
signature?: string;
dependencies?: () => Record<string, any>;
}
export interface ComponentRegistrationData<P> extends ComponentOptions {
id: string;
component: (props: P) => JSX.Element;
proxy: (props: P) => JSX.Element;
update: (action: () => (props: P) => JSX.Element) => void;
}
export interface ContextRegistrationData<T> {
id: string;
context: Context<T>;
}
export interface Registry {
components: Map<string, ComponentRegistrationData<any>>;
contexts: Map<string, ContextRegistrationData<any>>;
}
export declare function $$registry(): Registry;
export declare function $$component<P>(registry: Registry, id: string, component: (props: P) => JSX.Element, options?: ComponentOptions): (props: P) => JSX.Element;
export declare function $$context<T>(registry: Registry, id: string, context: Context<T>): Context<T>;
declare const SOLID_REFRESH = "solid-refresh";
declare const SOLID_REFRESH_PREV = "solid-refresh-prev";
type HotData = {
[key in typeof SOLID_REFRESH | typeof SOLID_REFRESH_PREV]: Registry;
};
interface ESMHot {
data: HotData;
accept: (cb: (module?: unknown) => void) => void;
invalidate: () => void;
decline: () => void;
}
interface StandardHot {
data: HotData;
accept: (cb?: () => void) => void;
dispose: (cb: (data: HotData) => void) => void;
invalidate?: () => void;
decline?: () => void;
}
type ESMDecline = [type: ESMRuntimeType, hot: ESMHot, inline?: boolean];
type StandardDecline = [
type: StandardRuntimeType,
hot: StandardHot,
inline?: boolean
];
type Decline = ESMDecline | StandardDecline;
export declare function $$decline(...[type, hot, inline]: Decline): void;
type ESMRefresh = [type: ESMRuntimeType, hot: ESMHot, registry: Registry];
type StandardRefresh = [
type: StandardRuntimeType,
hot: StandardHot,
registry: Registry
];
type Refresh = ESMRefresh | StandardRefresh;
export declare function $$refresh(...[type, hot, registry]: Refresh): void;
export {};
//# sourceMappingURL=index.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/runtime/index.ts"],"names":[],"mappings":"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"}

View File

@@ -0,0 +1,2 @@
export default function isListUpdated(a: Record<string, any> | undefined, b: Record<string, any> | undefined): boolean;
//# sourceMappingURL=is-list-updated.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"is-list-updated.d.ts","sourceRoot":"","sources":["../../../src/runtime/is-list-updated.ts"],"names":[],"mappings":"AA2BA,MAAM,CAAC,OAAO,UAAU,aAAa,CACnC,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,SAAS,EAClC,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,SAAS,GACjC,OAAO,CAWT"}

View File

@@ -0,0 +1,4 @@
export type ESMRuntimeType = 'esm' | 'vite';
export type StandardRuntimeType = 'standard' | 'webpack5' | 'rspack-esm';
export type RuntimeType = ESMRuntimeType | StandardRuntimeType;
//# sourceMappingURL=types.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/shared/types.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,cAAc,GAAG,KAAK,GAAG,MAAM,CAAC;AAG5C,MAAM,MAAM,mBAAmB,GAAG,UAAU,GAAG,UAAU,GAAG,YAAY,CAAC;AAEzE,MAAM,MAAM,WAAW,GAAG,cAAc,GAAG,mBAAmB,CAAC"}