sygnal 5.3.6 → 5.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +53 -38
- package/dist/astro/client.cjs.js +18 -8106
- package/dist/astro/client.cjs.js.map +1 -0
- package/dist/astro/client.mjs +17 -8105
- package/dist/astro/client.mjs.map +1 -0
- package/dist/astro/index.cjs.js +768 -9
- package/dist/astro/index.cjs.js.map +1 -0
- package/dist/astro/index.mjs +768 -9
- package/dist/astro/index.mjs.map +1 -0
- package/dist/astro/server.cjs.js +4 -1
- package/dist/astro/server.cjs.js.map +1 -0
- package/dist/astro/server.mjs +4 -1
- package/dist/astro/server.mjs.map +1 -0
- package/dist/diagnostics.cjs.js +1297 -0
- package/dist/diagnostics.cjs.js.map +1 -0
- package/dist/diagnostics.esm.js +1267 -0
- package/dist/diagnostics.esm.js.map +1 -0
- package/dist/index.cjs.js +2981 -1386
- package/dist/index.cjs.js.map +1 -0
- package/dist/index.d.ts +848 -111
- package/dist/index.esm.js +2997 -1411
- package/dist/index.esm.js.map +1 -0
- package/dist/jsx-dev-runtime.cjs.js +15 -9
- package/dist/jsx-dev-runtime.cjs.js.map +1 -0
- package/dist/jsx-dev-runtime.esm.js +15 -9
- package/dist/jsx-dev-runtime.esm.js.map +1 -0
- package/dist/jsx-runtime.cjs.js +15 -9
- package/dist/jsx-runtime.cjs.js.map +1 -0
- package/dist/jsx-runtime.esm.js +15 -9
- package/dist/jsx-runtime.esm.js.map +1 -0
- package/dist/jsx.cjs.js +15 -9
- package/dist/jsx.cjs.js.map +1 -0
- package/dist/jsx.esm.js +15 -9
- package/dist/jsx.esm.js.map +1 -0
- package/dist/sygnal.min.js +2 -1
- package/dist/sygnal.min.js.map +1 -0
- package/dist/vike/+config.cjs.js +1 -0
- package/dist/vike/+config.cjs.js.map +1 -0
- package/dist/vike/+config.js +1 -0
- package/dist/vike/+config.js.map +1 -0
- package/dist/vike/ClientOnly.cjs.js +1 -0
- package/dist/vike/ClientOnly.cjs.js.map +1 -0
- package/dist/vike/ClientOnly.mjs +1 -0
- package/dist/vike/ClientOnly.mjs.map +1 -0
- package/dist/vike/onRenderClient.cjs.js +1 -0
- package/dist/vike/onRenderClient.cjs.js.map +1 -0
- package/dist/vike/onRenderClient.mjs +1 -0
- package/dist/vike/onRenderClient.mjs.map +1 -0
- package/dist/vike/onRenderHtml.cjs.js +1 -0
- package/dist/vike/onRenderHtml.cjs.js.map +1 -0
- package/dist/vike/onRenderHtml.mjs +1 -0
- package/dist/vike/onRenderHtml.mjs.map +1 -0
- package/dist/vite/plugin.cjs.js +680 -47
- package/dist/vite/plugin.cjs.js.map +1 -0
- package/dist/vite/plugin.mjs +680 -47
- package/dist/vite/plugin.mjs.map +1 -0
- package/llms.txt +250 -0
- package/package.json +15 -6
- package/src/astro/client.ts +13 -2
- package/src/astro/index.d.ts +24 -1
- package/src/astro/index.ts +40 -9
- package/src/astro/server.ts +3 -1
- package/src/collection.ts +5 -2
- package/src/component.ts +375 -330
- package/src/cycle/dom/MainDOMSource.ts +4 -0
- package/src/cycle/dom/classNameModule.ts +74 -0
- package/src/cycle/dom/controlledInputModule.ts +33 -0
- package/src/cycle/dom/enrichEventStream.ts +9 -3
- package/src/cycle/dom/makeDOMDriver.ts +1 -2
- package/src/cycle/dom/mockDOMSource.ts +62 -8
- package/src/cycle/dom/modules.ts +5 -1
- package/src/cycle/state/Collection.ts +13 -3
- package/src/cycle/state/StateSource.ts +1 -1
- package/src/cycle/state/pickCombine.ts +35 -1
- package/src/cycle/state/withState.ts +1 -1
- package/src/extra/devtools.ts +8 -0
- package/src/extra/diagnostics/checks/collections.ts +67 -0
- package/src/extra/diagnostics/checks/dom.ts +241 -0
- package/src/extra/diagnostics/checks/events.ts +68 -0
- package/src/extra/diagnostics/checks/index.ts +109 -0
- package/src/extra/diagnostics/checks/inspect.ts +319 -0
- package/src/extra/diagnostics/checks/props.ts +51 -0
- package/src/extra/diagnostics/checks/public.d.ts +211 -0
- package/src/extra/diagnostics/checks/rxjsHints.ts +88 -0
- package/src/extra/diagnostics/checks/shared.ts +119 -0
- package/src/extra/diagnostics/checks/state.ts +55 -0
- package/src/extra/diagnostics/checks/strict.ts +112 -0
- package/src/extra/diagnostics/checks/wiring.ts +65 -0
- package/src/extra/diagnostics/codes.ts +232 -0
- package/src/extra/diagnostics/index.ts +328 -0
- package/src/extra/diagnostics/legacy.ts +59 -0
- package/src/extra/driverFactories.ts +106 -58
- package/src/extra/eventDriver.ts +4 -0
- package/src/extra/flatten.ts +75 -0
- package/src/extra/reducers.ts +12 -5
- package/src/extra/run.ts +11 -0
- package/src/extra/testing.ts +890 -180
- package/src/extra/xstreamExtras.ts +269 -0
- package/src/index.d.ts +428 -17
- package/src/index.ts +7 -6
- package/src/pragma/index.ts +14 -9
- package/src/switchable.ts +10 -8
- package/src/vike/types.ts +21 -4
- package/src/vite/plugin.d.ts +95 -2
- package/src/vite/plugin.ts +730 -55
- package/dist/astro/astro/client.d.ts +0 -5
- package/dist/astro/astro/index.d.ts +0 -16
- package/dist/astro/astro/server.d.ts +0 -12
- package/dist/astro/client.d.ts +0 -5
- package/dist/astro/client.esm.js +0 -4665
- package/dist/astro/collection.d.ts +0 -12
- package/dist/astro/component.d.ts +0 -22
- package/dist/astro/cycle/dom/BodyDOMSource.d.ts +0 -10
- package/dist/astro/cycle/dom/DOMSource.d.ts +0 -11
- package/dist/astro/cycle/dom/DocumentDOMSource.d.ts +0 -12
- package/dist/astro/cycle/dom/ElementFinder.d.ts +0 -8
- package/dist/astro/cycle/dom/EventDelegator.d.ts +0 -34
- package/dist/astro/cycle/dom/IsolateModule.d.ts +0 -23
- package/dist/astro/cycle/dom/MainDOMSource.d.ts +0 -32
- package/dist/astro/cycle/dom/PriorityQueue.d.ts +0 -7
- package/dist/astro/cycle/dom/ScopeChecker.d.ts +0 -9
- package/dist/astro/cycle/dom/SymbolTree.d.ts +0 -9
- package/dist/astro/cycle/dom/VNodeWrapper.d.ts +0 -8
- package/dist/astro/cycle/dom/enrichEventStream.d.ts +0 -24
- package/dist/astro/cycle/dom/fromEvent.d.ts +0 -6
- package/dist/astro/cycle/dom/index.d.ts +0 -8
- package/dist/astro/cycle/dom/isolate.d.ts +0 -9
- package/dist/astro/cycle/dom/makeDOMDriver.d.ts +0 -11
- package/dist/astro/cycle/dom/mockDOMSource.d.ts +0 -17
- package/dist/astro/cycle/dom/modules.d.ts +0 -5
- package/dist/astro/cycle/dom/snabbdom.d.ts +0 -22
- package/dist/astro/cycle/dom/styleModule.d.ts +0 -13
- package/dist/astro/cycle/dom/thunk.d.ts +0 -11
- package/dist/astro/cycle/dom/utils.d.ts +0 -8
- package/dist/astro/cycle/isolate/index.d.ts +0 -42
- package/dist/astro/cycle/run/adapt.d.ts +0 -6
- package/dist/astro/cycle/run/index.d.ts +0 -36
- package/dist/astro/cycle/run/internals.d.ts +0 -8
- package/dist/astro/cycle/run/types.d.ts +0 -49
- package/dist/astro/cycle/state/Collection.d.ts +0 -29
- package/dist/astro/cycle/state/StateSource.d.ts +0 -20
- package/dist/astro/cycle/state/index.d.ts +0 -5
- package/dist/astro/cycle/state/pickCombine.d.ts +0 -3
- package/dist/astro/cycle/state/pickMerge.d.ts +0 -3
- package/dist/astro/cycle/state/types.d.ts +0 -18
- package/dist/astro/cycle/state/withState.d.ts +0 -17
- package/dist/astro/extra/classes.d.ts +0 -7
- package/dist/astro/extra/devtools.d.ts +0 -78
- package/dist/astro/extra/dragDriver.d.ts +0 -20
- package/dist/astro/extra/driverFactories.d.ts +0 -12
- package/dist/astro/extra/eventDriver.d.ts +0 -9
- package/dist/astro/extra/exactState.d.ts +0 -1
- package/dist/astro/extra/hmr.d.ts +0 -17
- package/dist/astro/extra/logDriver.d.ts +0 -2
- package/dist/astro/extra/processDrag.d.ts +0 -19
- package/dist/astro/extra/processForm.d.ts +0 -15
- package/dist/astro/extra/run.d.ts +0 -13
- package/dist/astro/extra/xstreamCompat.d.ts +0 -5
- package/dist/astro/index.d.ts +0 -19
- package/dist/astro/index.esm.js +0 -27
- package/dist/astro/jsx-dev-runtime.d.ts +0 -1
- package/dist/astro/jsx-runtime.d.ts +0 -4
- package/dist/astro/jsx.d.ts +0 -2
- package/dist/astro/pragma/fn.d.ts +0 -7
- package/dist/astro/pragma/index.d.ts +0 -7
- package/dist/astro/pragma/is.d.ts +0 -10
- package/dist/astro/server.d.ts +0 -12
- package/dist/astro/server.esm.js +0 -25
- package/dist/astro/switchable.d.ts +0 -7
- package/dist/collection.d.ts +0 -12
- package/dist/component.d.ts +0 -22
- package/dist/cycle/dom/BodyDOMSource.d.ts +0 -10
- package/dist/cycle/dom/DOMSource.d.ts +0 -11
- package/dist/cycle/dom/DocumentDOMSource.d.ts +0 -12
- package/dist/cycle/dom/ElementFinder.d.ts +0 -8
- package/dist/cycle/dom/EventDelegator.d.ts +0 -34
- package/dist/cycle/dom/IsolateModule.d.ts +0 -23
- package/dist/cycle/dom/MainDOMSource.d.ts +0 -32
- package/dist/cycle/dom/PriorityQueue.d.ts +0 -7
- package/dist/cycle/dom/ScopeChecker.d.ts +0 -9
- package/dist/cycle/dom/SymbolTree.d.ts +0 -9
- package/dist/cycle/dom/VNodeWrapper.d.ts +0 -8
- package/dist/cycle/dom/enrichEventStream.d.ts +0 -24
- package/dist/cycle/dom/fromEvent.d.ts +0 -6
- package/dist/cycle/dom/index.d.ts +0 -8
- package/dist/cycle/dom/isolate.d.ts +0 -9
- package/dist/cycle/dom/makeDOMDriver.d.ts +0 -11
- package/dist/cycle/dom/mockDOMSource.d.ts +0 -17
- package/dist/cycle/dom/modules.d.ts +0 -5
- package/dist/cycle/dom/snabbdom.d.ts +0 -22
- package/dist/cycle/dom/styleModule.d.ts +0 -13
- package/dist/cycle/dom/thunk.d.ts +0 -11
- package/dist/cycle/dom/utils.d.ts +0 -8
- package/dist/cycle/isolate/index.d.ts +0 -42
- package/dist/cycle/run/adapt.d.ts +0 -6
- package/dist/cycle/run/index.d.ts +0 -36
- package/dist/cycle/run/internals.d.ts +0 -8
- package/dist/cycle/run/types.d.ts +0 -49
- package/dist/cycle/state/Collection.d.ts +0 -29
- package/dist/cycle/state/StateSource.d.ts +0 -20
- package/dist/cycle/state/index.d.ts +0 -5
- package/dist/cycle/state/pickCombine.d.ts +0 -3
- package/dist/cycle/state/pickMerge.d.ts +0 -3
- package/dist/cycle/state/types.d.ts +0 -18
- package/dist/cycle/state/withState.d.ts +0 -17
- package/dist/extra/classes.d.ts +0 -7
- package/dist/extra/devtools.d.ts +0 -78
- package/dist/extra/dragDriver.d.ts +0 -20
- package/dist/extra/driverFactories.d.ts +0 -12
- package/dist/extra/eventDriver.d.ts +0 -9
- package/dist/extra/exactState.d.ts +0 -1
- package/dist/extra/hmr.d.ts +0 -17
- package/dist/extra/logDriver.d.ts +0 -2
- package/dist/extra/processDrag.d.ts +0 -19
- package/dist/extra/processForm.d.ts +0 -15
- package/dist/extra/run.d.ts +0 -13
- package/dist/extra/xstreamCompat.d.ts +0 -5
- package/dist/jsx-dev-runtime.d.ts +0 -1
- package/dist/jsx-dev-runtime.js +0 -224
- package/dist/jsx-runtime.d.ts +0 -4
- package/dist/jsx-runtime.js +0 -224
- package/dist/jsx.d.ts +0 -2
- package/dist/pragma/fn.d.ts +0 -7
- package/dist/pragma/index.d.ts +0 -7
- package/dist/pragma/is.d.ts +0 -10
- package/dist/switchable.d.ts +0 -7
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"jsx.cjs.js","sources":["../src/pragma/is.ts","../src/pragma/fn.ts","../src/pragma/index.ts","../node_modules/snabbdom/build/vnode.js","../node_modules/snabbdom/build/jsx.js"],"sourcesContent":["\nexport const nullv = (v: any): v is null => v === null\n\nexport const undefinedv = (v: any): v is undefined => v === undefined\n\nexport const number = (v: any): v is number => typeof v === 'number'\n\nexport const string = (v: any): v is string => typeof v === 'string'\n\nexport const text = (v: any): v is string | number => string(v) || number(v)\n\nexport const array = (v: any): v is any[] => Array.isArray(v)\n\nexport const object = (v: any): v is Record<string, any> => typeof v === 'object' && v !== null\n\nexport const fun = (v: any): v is Function => typeof v === 'function'\n\nexport const vnode = (v: any): boolean => object(v) && 'sel' in v && 'data' in v && 'children' in v && 'text' in v\n\nconst svgPropsMap: Record<string, number> = {\n // Container / structural\n svg: 1, g: 1, defs: 1, symbol: 1, use: 1,\n // Shape\n circle: 1, ellipse: 1, line: 1, path: 1, polygon: 1, polyline: 1, rect: 1,\n // Text (no HTML collision: HTML has no <text>, <tspan>, or <textPath>)\n text: 1, tspan: 1, textPath: 1,\n // Gradient / paint\n linearGradient: 1, radialGradient: 1, stop: 1, pattern: 1,\n // Clipping / masking\n clipPath: 1, mask: 1,\n // Marker\n marker: 1,\n // Filter primitives\n filter: 1, feBlend: 1, feColorMatrix: 1, feComponentTransfer: 1,\n feComposite: 1, feConvolveMatrix: 1, feDiffuseLighting: 1,\n feDisplacementMap: 1, feDropShadow: 1, feFlood: 1, feGaussianBlur: 1,\n feImage: 1, feMerge: 1, feMergeNode: 1, feMorphology: 1, feOffset: 1,\n fePointLight: 1, feSpecularLighting: 1, feSpotLight: 1, feTile: 1,\n feTurbulence: 1, feFuncR: 1, feFuncG: 1, feFuncB: 1, feFuncA: 1,\n // Descriptive (excluding 'title' — collides with HTML <title>)\n desc: 1, metadata: 1,\n // Other (excluding 'a', 'image', 'style', 'script' — collide with HTML)\n foreignObject: 1, switch: 1,\n // Animation\n animate: 1, animateMotion: 1, animateTransform: 1, set: 1, mpath: 1,\n}\n\nexport const svg = (v: any): boolean => v.sel in svgPropsMap\n","// TODO: stop using extend here\n// @ts-ignore — no type declarations for 'extend'\nimport _extend from 'extend'\n\nimport * as is from './is'\n\nexport const extend = (...objs: any[]): any => _extend(true, ...objs)\n\nexport const assign = (...objs: any[]): any => _extend(false, ...objs)\n\nexport const reduceDeep = <T>(arr: any[], fn: (acc: T, value: any) => T, initial: T): T => {\n let result = initial\n for (let i = 0; i < arr.length; i++) {\n const value = arr[i]\n if (is.array(value)) {\n result = reduceDeep(value, fn, result)\n } else {\n result = fn(result, value)\n }\n }\n return result\n}\n\nexport const mapObject = (obj: Record<string, any>, fn: (key: string, val: any) => any): any => Object.keys(obj).map(\n (key) => fn(key, obj[key])\n).reduce(\n (acc: any, curr: any) => extend(acc, curr),\n {}\n)\n\nexport const deepifyKeys = (obj: Record<string, any>, modules: Record<string, any>): any => mapObject(obj,\n (key: string, val: any) => {\n const dashIndex = key.indexOf('-')\n if (dashIndex > -1 && modules[key.slice(0, dashIndex)] !== undefined) {\n const moduleData = {\n [key.slice(dashIndex + 1)]: val\n }\n return {\n [key.slice(0, dashIndex)]: moduleData\n }\n }\n return { [key]: val }\n }\n)\n\nexport const flatifyKeys = (obj: Record<string, any>): any => mapObject(obj,\n (mod: string, data: any) => !is.object(data) ? ({ [mod]: data }) : mapObject(\n flatifyKeys(data),\n (key: string, val: any) => ({ [`${mod}-${key}`]: val })\n )\n)\n\nexport const omit = (key: string, obj: Record<string, any>): any => mapObject(obj,\n (mod: string, data: any) => mod !== key ? ({ [mod]: data }) : {}\n)\n","\nimport * as is from './is'\nimport * as fn from './fn'\n\nconst createTextElement = (text: any): any => !is.text(text) ? undefined : {\n text,\n sel: undefined,\n data: undefined,\n children: undefined,\n elm: undefined,\n key: undefined\n}\n\nconst applySvg = (vnode: any): any => {\n // Skip text vnodes (sel is undefined) and nullish values\n if (!vnode || is.undefinedv(vnode.sel)) return vnode\n\n const data = vnode.data || {}\n const props = data.props || {}\n const propsWithoutClassName = fn.omit('className', props)\n const classAttr = props.className !== undefined ? { class: props.className } : {}\n const mergedAttrs = fn.assign({}, propsWithoutClassName, classAttr, data.attrs || {})\n\n return fn.assign(vnode,\n { data: fn.omit('props', fn.assign({}, data,\n { ns: 'http://www.w3.org/2000/svg', attrs: mergedAttrs }\n )) },\n // foreignObject contains HTML, not SVG — do not recurse into its children\n { children: (!Array.isArray(vnode.children) || vnode.sel === 'foreignObject')\n ? vnode.children\n : vnode.children.map((child: any) => applySvg(child))\n }\n )\n}\n\nconst considerSvg = (vnode: any): any => !is.svg(vnode) ? vnode : applySvg(vnode)\n\nconst rewrites: Record<string, string | null> = {\n for: 'attrs',\n role: 'attrs',\n tabindex: 'attrs',\n 'aria-*': 'attrs',\n key: null\n}\n\nconst rewriteModules = (data: any, modules: Record<string, any>): any => fn.mapObject(data, (key: string, val: any) => {\n const inner = { [key]: val }\n if (rewrites[key] && modules[rewrites[key] as string] !== undefined) {\n return { [rewrites[key] as string]: inner }\n }\n if (rewrites[key] === null) {\n return {}\n }\n const keys = Object.keys(rewrites)\n for (let i = 0; i < keys.length; i++) {\n const k = keys[i]\n if (k.charAt(k.length - 1) === '*' && key.indexOf(k.slice(0, -1)) === 0 && modules[rewrites[k] as string] !== undefined) {\n return { [rewrites[k] as string]: inner }\n }\n }\n if (modules[key] !== undefined) {\n return { [modules[key] ? modules[key] : key]: val }\n }\n if (modules.props !== undefined) {\n return { props: inner }\n }\n return inner\n})\n\nconst applyFocusProps = (data: any): any => {\n if (!data.props) return data\n const { autoFocus, autoSelect, ...rest } = data.props\n if (!autoFocus && !autoSelect) return data\n\n data.props = rest\n data._autoFocus = !!autoFocus\n data._autoSelect = !!autoSelect\n\n const doFocus = (elm: any) => {\n if (elm && typeof elm.focus === 'function') {\n requestAnimationFrame(() => {\n elm.focus()\n if (autoSelect && typeof elm.select === 'function') {\n elm.select()\n }\n })\n }\n }\n\n const existingInsert = data.hook?.insert\n const existingPostpatch = data.hook?.postpatch\n data.hook = {\n ...data.hook,\n insert: (vnode: any) => {\n if (existingInsert) existingInsert(vnode)\n if (autoFocus || autoSelect) doFocus(vnode.elm)\n },\n postpatch: (oldVnode: any, vnode: any) => {\n if (existingPostpatch) existingPostpatch(oldVnode, vnode)\n const wasFocused = oldVnode.data?._autoFocus\n const isFocused = vnode.data?._autoFocus\n if (!wasFocused && isFocused) doFocus(vnode.elm)\n },\n }\n return data\n}\n\nconst applyRefProps = (data: any, ref: any): any => {\n if (!ref) return data\n\n const setRef = (elm: any) => {\n if (typeof ref === 'function') {\n ref(elm)\n } else if (ref && typeof ref === 'object' && 'current' in ref) {\n ref.current = elm\n }\n }\n\n const existingInsert = data.hook?.insert\n const existingDestroy = data.hook?.destroy\n const existingPostpatch = data.hook?.postpatch\n data.hook = {\n ...data.hook,\n insert: (vnode: any) => {\n if (existingInsert) existingInsert(vnode)\n setRef(vnode.elm)\n },\n postpatch: (_oldVnode: any, vnode: any) => {\n if (existingPostpatch) existingPostpatch(_oldVnode, vnode)\n setRef(vnode.elm)\n },\n destroy: (vnode: any) => {\n if (existingDestroy) existingDestroy(vnode)\n setRef(null)\n },\n }\n return data\n}\n\nconst sanitizeData = (data: any, modules: Record<string, any>): any => {\n const { ref, ...rest } = data\n const sanitized = applyFocusProps(rewriteModules(fn.deepifyKeys(rest, modules), modules))\n return applyRefProps(sanitized, ref)\n}\n\nconst sanitizeText = (children: any[]): string | undefined => children.length > 1 || !is.text(children[0]) ? undefined : children[0].toString()\n\nconst sanitizeChildren = (children: any[]): any[] => fn.reduceDeep(children, (acc: any[], child: any) => {\n const vnode = is.vnode(child) ? child : createTextElement(child)\n acc.push(vnode)\n return acc\n}\n, [])\n\nconst defaultModules: Record<string, string> = {\n attrs: '',\n props: '',\n class: '',\n data: 'dataset',\n style: '',\n hook: '',\n on: ''\n}\n\nexport const createElementWithModules = (modules: Record<string, any>) => {\n return (sel: any, data: any, ...children: any[]) => {\n if (typeof sel === 'undefined') {\n sel = 'UNDEFINED'\n // Pre-formatted (formatDiagnostic output) instead of diagnostics/legacy: the JSX\n // runtime entries bundle this file standalone and must not carry a second diagnostics core.\n console.error('[Sygnal SYG420] JSX: A JSX tag is undefined, so <UNDEFINED> is rendered instead. Import or define the component in this file. https://sygnal.js.org/reference/errors#syg420')\n }\n const isComponent = is.fun(sel)\n if (isComponent) {\n if ((sel as any).__sygnalFragment || sel.name === 'Fragment') {\n return sel(data || {}, children)\n }\n data ||= {}\n if (!(sel as any).isSygnalComponent) {\n const name = (sel as any).componentName || (sel as any).label || sel.name || 'FUNCTION_COMPONENT'\n const view = sel\n const { model, intent, hmrActions, context, peers, components, initialState, isolatedState, calculated, storeCalculatedInState, DOMSourceName, stateSourceName, onError, debug, preventInstantiation } = sel as any\n if (preventInstantiation) {\n // children always stay an array here: Portal/Suspense/... read vnode.children\n return considerSvg({\n sel: name,\n data: data ? sanitizeData(data, modules) : {},\n children: sanitizeChildren(children),\n text: undefined,\n elm: undefined,\n key: data ? data.key : undefined\n })\n }\n const options = { name, view, model, intent, hmrActions, context, peers, components, initialState, isolatedState, calculated, storeCalculatedInState, DOMSourceName, stateSourceName, onError, debug }\n data.sygnalOptions = options\n sel = name\n } else {\n const factory = sel\n sel = (sel as any).componentName || (sel as any).label || sel.name || 'sygnal-factory'\n data.sygnalFactory = factory\n }\n }\n // B-011: a vnode is either text-only (`text`, no children) or has a children array,\n // never both; snabbdom's diff mishandles a vnode with both. A component placeholder\n // keeps an array so the component receives its text child via `children`.\n const text = isComponent ? undefined : sanitizeText(children)\n return considerSvg({\n sel,\n data: data ? sanitizeData(data, modules) : {},\n children: typeof text !== 'undefined' ? undefined : sanitizeChildren(children),\n text,\n elm: undefined,\n key: data ? data.key : undefined\n })\n }\n}\n\nexport const createElement = createElementWithModules(defaultModules)\n\nexport default {\n createElement,\n createElementWithModules\n}\n","export function vnode(sel, data, children, text, elm) {\n const key = data === undefined ? undefined : data.key;\n return { sel, data, children, text, elm, key };\n}\n//# sourceMappingURL=vnode.js.map","/* eslint-disable @typescript-eslint/no-namespace, import/export */\nimport { vnode } from \"./vnode.js\";\nimport { h } from \"./h.js\";\nexport function Fragment(data, ...children) {\n const flatChildren = flattenAndFilter(children, []);\n if (flatChildren.length === 1 &&\n !flatChildren[0].sel &&\n flatChildren[0].text) {\n // only child is a simple text node, pass as text for a simpler vtree\n return vnode(undefined, undefined, undefined, flatChildren[0].text, undefined);\n }\n else {\n return vnode(undefined, data !== null && data !== void 0 ? data : {}, flatChildren, undefined, undefined);\n }\n}\nfunction flattenAndFilter(children, flattened) {\n for (const child of children) {\n // filter out falsey children, except 0 since zero can be a valid value e.g inside a chart\n if (child !== undefined &&\n child !== null &&\n child !== false &&\n child !== \"\") {\n if (Array.isArray(child)) {\n flattenAndFilter(child, flattened);\n }\n else if (typeof child === \"string\" ||\n typeof child === \"number\" ||\n typeof child === \"boolean\") {\n flattened.push(vnode(undefined, undefined, undefined, String(child), undefined));\n }\n else {\n flattened.push(child);\n }\n }\n }\n return flattened;\n}\n/**\n * jsx/tsx compatible factory function\n * see: https://www.typescriptlang.org/docs/handbook/jsx.html#factory-functions\n */\nexport function jsx(tag, data, ...children) {\n const flatChildren = flattenAndFilter(children, []);\n if (typeof tag === \"function\") {\n // tag is a function component\n return tag(data, flatChildren);\n }\n else {\n if (flatChildren.length === 1 &&\n !flatChildren[0].sel &&\n flatChildren[0].text) {\n // only child is a simple text node, pass as text for a simpler vtree\n return h(tag, data, flatChildren[0].text);\n }\n else {\n return h(tag, data, flatChildren);\n }\n }\n}\n//# sourceMappingURL=jsx.js.map"],"names":["vnode","is.array","text","is.text","is.undefinedv","fn.omit","fn.assign","is.svg","fn.mapObject","fn.deepifyKeys","fn.reduceDeep","is.vnode","is.fun"],"mappings":"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","x_google_ignoreList":[3,4]}
|
package/dist/jsx.esm.js
CHANGED
|
@@ -222,9 +222,12 @@ const createElementWithModules = (modules) => {
|
|
|
222
222
|
return (sel, data, ...children) => {
|
|
223
223
|
if (typeof sel === 'undefined') {
|
|
224
224
|
sel = 'UNDEFINED';
|
|
225
|
-
|
|
225
|
+
// Pre-formatted (formatDiagnostic output) instead of diagnostics/legacy: the JSX
|
|
226
|
+
// runtime entries bundle this file standalone and must not carry a second diagnostics core.
|
|
227
|
+
console.error('[Sygnal SYG420] JSX: A JSX tag is undefined, so <UNDEFINED> is rendered instead. Import or define the component in this file. https://sygnal.js.org/reference/errors#syg420');
|
|
226
228
|
}
|
|
227
|
-
|
|
229
|
+
const isComponent = fun(sel);
|
|
230
|
+
if (isComponent) {
|
|
228
231
|
if (sel.__sygnalFragment || sel.name === 'Fragment') {
|
|
229
232
|
return sel(data || {}, children);
|
|
230
233
|
}
|
|
@@ -234,13 +237,12 @@ const createElementWithModules = (modules) => {
|
|
|
234
237
|
const view = sel;
|
|
235
238
|
const { model, intent, hmrActions, context, peers, components, initialState, isolatedState, calculated, storeCalculatedInState, DOMSourceName, stateSourceName, onError, debug, preventInstantiation } = sel;
|
|
236
239
|
if (preventInstantiation) {
|
|
237
|
-
|
|
238
|
-
const sanitized = data ? sanitizeData(data, modules) : {};
|
|
240
|
+
// children always stay an array here: Portal/Suspense/... read vnode.children
|
|
239
241
|
return considerSvg({
|
|
240
242
|
sel: name,
|
|
241
|
-
data:
|
|
242
|
-
children:
|
|
243
|
-
text,
|
|
243
|
+
data: data ? sanitizeData(data, modules) : {},
|
|
244
|
+
children: sanitizeChildren(children),
|
|
245
|
+
text: undefined,
|
|
244
246
|
elm: undefined,
|
|
245
247
|
key: data ? data.key : undefined
|
|
246
248
|
});
|
|
@@ -255,11 +257,14 @@ const createElementWithModules = (modules) => {
|
|
|
255
257
|
data.sygnalFactory = factory;
|
|
256
258
|
}
|
|
257
259
|
}
|
|
258
|
-
|
|
260
|
+
// B-011: a vnode is either text-only (`text`, no children) or has a children array,
|
|
261
|
+
// never both; snabbdom's diff mishandles a vnode with both. A component placeholder
|
|
262
|
+
// keeps an array so the component receives its text child via `children`.
|
|
263
|
+
const text = isComponent ? undefined : sanitizeText(children);
|
|
259
264
|
return considerSvg({
|
|
260
265
|
sel,
|
|
261
266
|
data: data ? sanitizeData(data, modules) : {},
|
|
262
|
-
children: typeof text !== 'undefined' ?
|
|
267
|
+
children: typeof text !== 'undefined' ? undefined : sanitizeChildren(children),
|
|
263
268
|
text,
|
|
264
269
|
elm: undefined,
|
|
265
270
|
key: data ? data.key : undefined
|
|
@@ -310,3 +315,4 @@ function flattenAndFilter(children, flattened) {
|
|
|
310
315
|
}
|
|
311
316
|
|
|
312
317
|
export { Fragment, createElement as jsx };
|
|
318
|
+
//# sourceMappingURL=jsx.esm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"jsx.esm.js","sources":["../src/pragma/is.ts","../src/pragma/fn.ts","../src/pragma/index.ts","../node_modules/snabbdom/build/vnode.js","../node_modules/snabbdom/build/jsx.js"],"sourcesContent":["\nexport const nullv = (v: any): v is null => v === null\n\nexport const undefinedv = (v: any): v is undefined => v === undefined\n\nexport const number = (v: any): v is number => typeof v === 'number'\n\nexport const string = (v: any): v is string => typeof v === 'string'\n\nexport const text = (v: any): v is string | number => string(v) || number(v)\n\nexport const array = (v: any): v is any[] => Array.isArray(v)\n\nexport const object = (v: any): v is Record<string, any> => typeof v === 'object' && v !== null\n\nexport const fun = (v: any): v is Function => typeof v === 'function'\n\nexport const vnode = (v: any): boolean => object(v) && 'sel' in v && 'data' in v && 'children' in v && 'text' in v\n\nconst svgPropsMap: Record<string, number> = {\n // Container / structural\n svg: 1, g: 1, defs: 1, symbol: 1, use: 1,\n // Shape\n circle: 1, ellipse: 1, line: 1, path: 1, polygon: 1, polyline: 1, rect: 1,\n // Text (no HTML collision: HTML has no <text>, <tspan>, or <textPath>)\n text: 1, tspan: 1, textPath: 1,\n // Gradient / paint\n linearGradient: 1, radialGradient: 1, stop: 1, pattern: 1,\n // Clipping / masking\n clipPath: 1, mask: 1,\n // Marker\n marker: 1,\n // Filter primitives\n filter: 1, feBlend: 1, feColorMatrix: 1, feComponentTransfer: 1,\n feComposite: 1, feConvolveMatrix: 1, feDiffuseLighting: 1,\n feDisplacementMap: 1, feDropShadow: 1, feFlood: 1, feGaussianBlur: 1,\n feImage: 1, feMerge: 1, feMergeNode: 1, feMorphology: 1, feOffset: 1,\n fePointLight: 1, feSpecularLighting: 1, feSpotLight: 1, feTile: 1,\n feTurbulence: 1, feFuncR: 1, feFuncG: 1, feFuncB: 1, feFuncA: 1,\n // Descriptive (excluding 'title' — collides with HTML <title>)\n desc: 1, metadata: 1,\n // Other (excluding 'a', 'image', 'style', 'script' — collide with HTML)\n foreignObject: 1, switch: 1,\n // Animation\n animate: 1, animateMotion: 1, animateTransform: 1, set: 1, mpath: 1,\n}\n\nexport const svg = (v: any): boolean => v.sel in svgPropsMap\n","// TODO: stop using extend here\n// @ts-ignore — no type declarations for 'extend'\nimport _extend from 'extend'\n\nimport * as is from './is'\n\nexport const extend = (...objs: any[]): any => _extend(true, ...objs)\n\nexport const assign = (...objs: any[]): any => _extend(false, ...objs)\n\nexport const reduceDeep = <T>(arr: any[], fn: (acc: T, value: any) => T, initial: T): T => {\n let result = initial\n for (let i = 0; i < arr.length; i++) {\n const value = arr[i]\n if (is.array(value)) {\n result = reduceDeep(value, fn, result)\n } else {\n result = fn(result, value)\n }\n }\n return result\n}\n\nexport const mapObject = (obj: Record<string, any>, fn: (key: string, val: any) => any): any => Object.keys(obj).map(\n (key) => fn(key, obj[key])\n).reduce(\n (acc: any, curr: any) => extend(acc, curr),\n {}\n)\n\nexport const deepifyKeys = (obj: Record<string, any>, modules: Record<string, any>): any => mapObject(obj,\n (key: string, val: any) => {\n const dashIndex = key.indexOf('-')\n if (dashIndex > -1 && modules[key.slice(0, dashIndex)] !== undefined) {\n const moduleData = {\n [key.slice(dashIndex + 1)]: val\n }\n return {\n [key.slice(0, dashIndex)]: moduleData\n }\n }\n return { [key]: val }\n }\n)\n\nexport const flatifyKeys = (obj: Record<string, any>): any => mapObject(obj,\n (mod: string, data: any) => !is.object(data) ? ({ [mod]: data }) : mapObject(\n flatifyKeys(data),\n (key: string, val: any) => ({ [`${mod}-${key}`]: val })\n )\n)\n\nexport const omit = (key: string, obj: Record<string, any>): any => mapObject(obj,\n (mod: string, data: any) => mod !== key ? ({ [mod]: data }) : {}\n)\n","\nimport * as is from './is'\nimport * as fn from './fn'\n\nconst createTextElement = (text: any): any => !is.text(text) ? undefined : {\n text,\n sel: undefined,\n data: undefined,\n children: undefined,\n elm: undefined,\n key: undefined\n}\n\nconst applySvg = (vnode: any): any => {\n // Skip text vnodes (sel is undefined) and nullish values\n if (!vnode || is.undefinedv(vnode.sel)) return vnode\n\n const data = vnode.data || {}\n const props = data.props || {}\n const propsWithoutClassName = fn.omit('className', props)\n const classAttr = props.className !== undefined ? { class: props.className } : {}\n const mergedAttrs = fn.assign({}, propsWithoutClassName, classAttr, data.attrs || {})\n\n return fn.assign(vnode,\n { data: fn.omit('props', fn.assign({}, data,\n { ns: 'http://www.w3.org/2000/svg', attrs: mergedAttrs }\n )) },\n // foreignObject contains HTML, not SVG — do not recurse into its children\n { children: (!Array.isArray(vnode.children) || vnode.sel === 'foreignObject')\n ? vnode.children\n : vnode.children.map((child: any) => applySvg(child))\n }\n )\n}\n\nconst considerSvg = (vnode: any): any => !is.svg(vnode) ? vnode : applySvg(vnode)\n\nconst rewrites: Record<string, string | null> = {\n for: 'attrs',\n role: 'attrs',\n tabindex: 'attrs',\n 'aria-*': 'attrs',\n key: null\n}\n\nconst rewriteModules = (data: any, modules: Record<string, any>): any => fn.mapObject(data, (key: string, val: any) => {\n const inner = { [key]: val }\n if (rewrites[key] && modules[rewrites[key] as string] !== undefined) {\n return { [rewrites[key] as string]: inner }\n }\n if (rewrites[key] === null) {\n return {}\n }\n const keys = Object.keys(rewrites)\n for (let i = 0; i < keys.length; i++) {\n const k = keys[i]\n if (k.charAt(k.length - 1) === '*' && key.indexOf(k.slice(0, -1)) === 0 && modules[rewrites[k] as string] !== undefined) {\n return { [rewrites[k] as string]: inner }\n }\n }\n if (modules[key] !== undefined) {\n return { [modules[key] ? modules[key] : key]: val }\n }\n if (modules.props !== undefined) {\n return { props: inner }\n }\n return inner\n})\n\nconst applyFocusProps = (data: any): any => {\n if (!data.props) return data\n const { autoFocus, autoSelect, ...rest } = data.props\n if (!autoFocus && !autoSelect) return data\n\n data.props = rest\n data._autoFocus = !!autoFocus\n data._autoSelect = !!autoSelect\n\n const doFocus = (elm: any) => {\n if (elm && typeof elm.focus === 'function') {\n requestAnimationFrame(() => {\n elm.focus()\n if (autoSelect && typeof elm.select === 'function') {\n elm.select()\n }\n })\n }\n }\n\n const existingInsert = data.hook?.insert\n const existingPostpatch = data.hook?.postpatch\n data.hook = {\n ...data.hook,\n insert: (vnode: any) => {\n if (existingInsert) existingInsert(vnode)\n if (autoFocus || autoSelect) doFocus(vnode.elm)\n },\n postpatch: (oldVnode: any, vnode: any) => {\n if (existingPostpatch) existingPostpatch(oldVnode, vnode)\n const wasFocused = oldVnode.data?._autoFocus\n const isFocused = vnode.data?._autoFocus\n if (!wasFocused && isFocused) doFocus(vnode.elm)\n },\n }\n return data\n}\n\nconst applyRefProps = (data: any, ref: any): any => {\n if (!ref) return data\n\n const setRef = (elm: any) => {\n if (typeof ref === 'function') {\n ref(elm)\n } else if (ref && typeof ref === 'object' && 'current' in ref) {\n ref.current = elm\n }\n }\n\n const existingInsert = data.hook?.insert\n const existingDestroy = data.hook?.destroy\n const existingPostpatch = data.hook?.postpatch\n data.hook = {\n ...data.hook,\n insert: (vnode: any) => {\n if (existingInsert) existingInsert(vnode)\n setRef(vnode.elm)\n },\n postpatch: (_oldVnode: any, vnode: any) => {\n if (existingPostpatch) existingPostpatch(_oldVnode, vnode)\n setRef(vnode.elm)\n },\n destroy: (vnode: any) => {\n if (existingDestroy) existingDestroy(vnode)\n setRef(null)\n },\n }\n return data\n}\n\nconst sanitizeData = (data: any, modules: Record<string, any>): any => {\n const { ref, ...rest } = data\n const sanitized = applyFocusProps(rewriteModules(fn.deepifyKeys(rest, modules), modules))\n return applyRefProps(sanitized, ref)\n}\n\nconst sanitizeText = (children: any[]): string | undefined => children.length > 1 || !is.text(children[0]) ? undefined : children[0].toString()\n\nconst sanitizeChildren = (children: any[]): any[] => fn.reduceDeep(children, (acc: any[], child: any) => {\n const vnode = is.vnode(child) ? child : createTextElement(child)\n acc.push(vnode)\n return acc\n}\n, [])\n\nconst defaultModules: Record<string, string> = {\n attrs: '',\n props: '',\n class: '',\n data: 'dataset',\n style: '',\n hook: '',\n on: ''\n}\n\nexport const createElementWithModules = (modules: Record<string, any>) => {\n return (sel: any, data: any, ...children: any[]) => {\n if (typeof sel === 'undefined') {\n sel = 'UNDEFINED'\n // Pre-formatted (formatDiagnostic output) instead of diagnostics/legacy: the JSX\n // runtime entries bundle this file standalone and must not carry a second diagnostics core.\n console.error('[Sygnal SYG420] JSX: A JSX tag is undefined, so <UNDEFINED> is rendered instead. Import or define the component in this file. https://sygnal.js.org/reference/errors#syg420')\n }\n const isComponent = is.fun(sel)\n if (isComponent) {\n if ((sel as any).__sygnalFragment || sel.name === 'Fragment') {\n return sel(data || {}, children)\n }\n data ||= {}\n if (!(sel as any).isSygnalComponent) {\n const name = (sel as any).componentName || (sel as any).label || sel.name || 'FUNCTION_COMPONENT'\n const view = sel\n const { model, intent, hmrActions, context, peers, components, initialState, isolatedState, calculated, storeCalculatedInState, DOMSourceName, stateSourceName, onError, debug, preventInstantiation } = sel as any\n if (preventInstantiation) {\n // children always stay an array here: Portal/Suspense/... read vnode.children\n return considerSvg({\n sel: name,\n data: data ? sanitizeData(data, modules) : {},\n children: sanitizeChildren(children),\n text: undefined,\n elm: undefined,\n key: data ? data.key : undefined\n })\n }\n const options = { name, view, model, intent, hmrActions, context, peers, components, initialState, isolatedState, calculated, storeCalculatedInState, DOMSourceName, stateSourceName, onError, debug }\n data.sygnalOptions = options\n sel = name\n } else {\n const factory = sel\n sel = (sel as any).componentName || (sel as any).label || sel.name || 'sygnal-factory'\n data.sygnalFactory = factory\n }\n }\n // B-011: a vnode is either text-only (`text`, no children) or has a children array,\n // never both; snabbdom's diff mishandles a vnode with both. A component placeholder\n // keeps an array so the component receives its text child via `children`.\n const text = isComponent ? undefined : sanitizeText(children)\n return considerSvg({\n sel,\n data: data ? sanitizeData(data, modules) : {},\n children: typeof text !== 'undefined' ? undefined : sanitizeChildren(children),\n text,\n elm: undefined,\n key: data ? data.key : undefined\n })\n }\n}\n\nexport const createElement = createElementWithModules(defaultModules)\n\nexport default {\n createElement,\n createElementWithModules\n}\n","export function vnode(sel, data, children, text, elm) {\n const key = data === undefined ? undefined : data.key;\n return { sel, data, children, text, elm, key };\n}\n//# sourceMappingURL=vnode.js.map","/* eslint-disable @typescript-eslint/no-namespace, import/export */\nimport { vnode } from \"./vnode.js\";\nimport { h } from \"./h.js\";\nexport function Fragment(data, ...children) {\n const flatChildren = flattenAndFilter(children, []);\n if (flatChildren.length === 1 &&\n !flatChildren[0].sel &&\n flatChildren[0].text) {\n // only child is a simple text node, pass as text for a simpler vtree\n return vnode(undefined, undefined, undefined, flatChildren[0].text, undefined);\n }\n else {\n return vnode(undefined, data !== null && data !== void 0 ? data : {}, flatChildren, undefined, undefined);\n }\n}\nfunction flattenAndFilter(children, flattened) {\n for (const child of children) {\n // filter out falsey children, except 0 since zero can be a valid value e.g inside a chart\n if (child !== undefined &&\n child !== null &&\n child !== false &&\n child !== \"\") {\n if (Array.isArray(child)) {\n flattenAndFilter(child, flattened);\n }\n else if (typeof child === \"string\" ||\n typeof child === \"number\" ||\n typeof child === \"boolean\") {\n flattened.push(vnode(undefined, undefined, undefined, String(child), undefined));\n }\n else {\n flattened.push(child);\n }\n }\n }\n return flattened;\n}\n/**\n * jsx/tsx compatible factory function\n * see: https://www.typescriptlang.org/docs/handbook/jsx.html#factory-functions\n */\nexport function jsx(tag, data, ...children) {\n const flatChildren = flattenAndFilter(children, []);\n if (typeof tag === \"function\") {\n // tag is a function component\n return tag(data, flatChildren);\n }\n else {\n if (flatChildren.length === 1 &&\n !flatChildren[0].sel &&\n flatChildren[0].text) {\n // only child is a simple text node, pass as text for a simpler vtree\n return h(tag, data, flatChildren[0].text);\n }\n else {\n return h(tag, data, flatChildren);\n }\n }\n}\n//# sourceMappingURL=jsx.js.map"],"names":["vnode","is.array","text","is.text","is.undefinedv","fn.omit","fn.assign","is.svg","fn.mapObject","fn.deepifyKeys","fn.reduceDeep","is.vnode","is.fun"],"mappings":"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","x_google_ignoreList":[3,4]}
|