@ecopages/radiant 0.3.0-beta.2 → 0.3.0-beta.3
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 +11 -7
- package/client/app-bootstrap.js +2 -2
- package/client/app-bootstrap.js.map +2 -2
- package/client/hydrator.js +2 -2
- package/client/hydrator.js.map +2 -2
- package/client/install-hydrator.js +2 -2
- package/client/install-hydrator.js.map +2 -2
- package/context/context-consumer-bootstrap.js +2 -2
- package/context/context-consumer-bootstrap.js.map +4 -4
- package/context/context-consumer-runtime.js +2 -2
- package/context/context-consumer-runtime.js.map +4 -4
- package/context/context-host.js +2 -2
- package/context/context-host.js.map +2 -2
- package/context/context-provider.js +2 -2
- package/context/context-provider.js.map +2 -2
- package/context/context-ssr-bridge.d.ts +1 -1
- package/context/context-ssr-bridge.js +2 -2
- package/context/context-ssr-bridge.js.map +3 -3
- package/context/create-context.js +2 -2
- package/context/create-context.js.map +2 -2
- package/context/decorators/consume-context.js +2 -2
- package/context/decorators/consume-context.js.map +4 -4
- package/context/decorators/context-selection-delivery.js +2 -2
- package/context/decorators/context-selection-delivery.js.map +2 -2
- package/context/decorators/context-selector.js +2 -2
- package/context/decorators/context-selector.js.map +4 -4
- package/context/decorators/legacy/consume-context.js +2 -2
- package/context/decorators/legacy/consume-context.js.map +4 -4
- package/context/decorators/legacy/context-selector-field.js +2 -2
- package/context/decorators/legacy/context-selector-field.js.map +4 -4
- package/context/decorators/legacy/context-selector.js +2 -2
- package/context/decorators/legacy/context-selector.js.map +4 -4
- package/context/decorators/legacy/provide-context.js +2 -2
- package/context/decorators/legacy/provide-context.js.map +2 -2
- package/context/decorators/on-context-update.js +2 -2
- package/context/decorators/on-context-update.js.map +4 -4
- package/context/decorators/provide-context.js +2 -2
- package/context/decorators/provide-context.js.map +2 -2
- package/context/decorators/standard/consume-context.js +2 -2
- package/context/decorators/standard/consume-context.js.map +4 -4
- package/context/decorators/standard/context-selector-field.js +2 -2
- package/context/decorators/standard/context-selector-field.js.map +4 -4
- package/context/decorators/standard/context-selector.js +2 -2
- package/context/decorators/standard/context-selector.js.map +4 -4
- package/context/decorators/standard/provide-context.js +2 -2
- package/context/decorators/standard/provide-context.js.map +2 -2
- package/context/decorators/standard-legacy-dispatch.js +2 -2
- package/context/decorators/standard-legacy-dispatch.js.map +2 -2
- package/context/events.js +2 -2
- package/context/events.js.map +2 -2
- package/context/hydration-script.js +2 -2
- package/context/hydration-script.js.map +2 -2
- package/context/index.js +2 -2
- package/context/index.js.map +4 -4
- package/controller-registry.js +2 -2
- package/controller-registry.js.map +2 -2
- package/core/controller-metadata.js +2 -2
- package/core/controller-metadata.js.map +2 -2
- package/core/custom-element-metadata.js +2 -2
- package/core/custom-element-metadata.js.map +2 -2
- package/core/event-subscription-registry.js +2 -2
- package/core/event-subscription-registry.js.map +2 -2
- package/core/host-ssr-registry.js +2 -2
- package/core/host-ssr-registry.js.map +2 -2
- package/core/hydration-capable-host.js +2 -2
- package/core/hydration-capable-host.js.map +2 -2
- package/core/hydration-codec.js +2 -2
- package/core/hydration-codec.js.map +2 -2
- package/core/radiant-controller.js +2 -2
- package/core/radiant-controller.js.map +2 -2
- package/core/radiant-element-brand.d.ts +2 -0
- package/core/radiant-element-brand.js +3 -0
- package/core/radiant-element-brand.js.map +10 -0
- package/core/radiant-element-ssr-host-source.d.ts +32 -0
- package/core/radiant-element-ssr-host-source.js +3 -0
- package/core/radiant-element-ssr-host-source.js.map +11 -0
- package/core/radiant-element-ssr-host.d.ts +5 -6
- package/core/radiant-element-ssr-host.js +1 -2
- package/core/radiant-element-ssr-host.js.map +3 -4
- package/core/radiant-element-ssr-registry.d.ts +24 -11
- package/core/radiant-element-ssr-registry.js +2 -2
- package/core/radiant-element-ssr-registry.js.map +3 -3
- package/core/radiant-element.d.ts +5 -3
- package/core/radiant-element.js +2 -2
- package/core/radiant-element.js.map +6 -5
- package/core/radiant-hydrator-state.js +2 -2
- package/core/radiant-hydrator-state.js.map +2 -2
- package/core/reactive-binding-adapter.js +2 -2
- package/core/reactive-binding-adapter.js.map +2 -2
- package/core/reactive-host.js +2 -2
- package/core/reactive-host.js.map +2 -2
- package/core/reactive-jsx-value.js +2 -2
- package/core/reactive-jsx-value.js.map +2 -2
- package/core/reactive-prop-core.js +2 -2
- package/core/reactive-prop-core.js.map +2 -2
- package/core/reactive-prop-metadata.js +2 -2
- package/core/reactive-prop-metadata.js.map +2 -2
- package/core/reactive-property-state.js +2 -2
- package/core/reactive-property-state.js.map +2 -2
- package/core/reactivity-adapter.js +2 -2
- package/core/reactivity-adapter.js.map +2 -2
- package/core/reactivity-runtime.js +2 -2
- package/core/reactivity-runtime.js.map +2 -2
- package/core/reactivity-signals.js +2 -2
- package/core/reactivity-signals.js.map +2 -2
- package/core/render-runtime.js +2 -2
- package/core/render-runtime.js.map +2 -2
- package/core/render-scheduler.js +2 -2
- package/core/render-scheduler.js.map +2 -2
- package/core/slot-projection-runtime.js +2 -2
- package/core/slot-projection-runtime.js.map +2 -2
- package/core/ssr-preparation.js +2 -2
- package/core/ssr-preparation.js.map +2 -2
- package/decorators/attr.js +2 -2
- package/decorators/attr.js.map +2 -2
- package/decorators/bound.js +2 -2
- package/decorators/bound.js.map +2 -2
- package/decorators/bridge.js +2 -2
- package/decorators/bridge.js.map +2 -2
- package/decorators/controller.js +2 -2
- package/decorators/controller.js.map +2 -2
- package/decorators/custom-element.js +2 -2
- package/decorators/custom-element.js.map +2 -2
- package/decorators/debounce.js +2 -2
- package/decorators/debounce.js.map +2 -2
- package/decorators/event.js +2 -2
- package/decorators/event.js.map +2 -2
- package/decorators/legacy/attr.js +2 -2
- package/decorators/legacy/attr.js.map +2 -2
- package/decorators/legacy/bound.js +2 -2
- package/decorators/legacy/bound.js.map +2 -2
- package/decorators/legacy/custom-element.js +2 -2
- package/decorators/legacy/custom-element.js.map +2 -2
- package/decorators/legacy/debounce.js +2 -2
- package/decorators/legacy/debounce.js.map +2 -2
- package/decorators/legacy/event.js +2 -2
- package/decorators/legacy/event.js.map +2 -2
- package/decorators/legacy/host-readiness.js +2 -2
- package/decorators/legacy/host-readiness.js.map +2 -2
- package/decorators/legacy/instance-initializers.js +2 -2
- package/decorators/legacy/instance-initializers.js.map +2 -2
- package/decorators/legacy/member-bootstrap.js +2 -2
- package/decorators/legacy/member-bootstrap.js.map +2 -2
- package/decorators/legacy/on-event.js +2 -2
- package/decorators/legacy/on-event.js.map +2 -2
- package/decorators/legacy/on-updated.js +2 -2
- package/decorators/legacy/on-updated.js.map +2 -2
- package/decorators/legacy/query-slot.js +2 -2
- package/decorators/legacy/query-slot.js.map +2 -2
- package/decorators/legacy/query.js +2 -2
- package/decorators/legacy/query.js.map +2 -2
- package/decorators/legacy/reactive-field.js +2 -2
- package/decorators/legacy/reactive-field.js.map +2 -2
- package/decorators/legacy/reactive-prop.js +2 -2
- package/decorators/legacy/reactive-prop.js.map +2 -2
- package/decorators/legacy/signal.js +2 -2
- package/decorators/legacy/signal.js.map +2 -2
- package/decorators/on-event.js +2 -2
- package/decorators/on-event.js.map +2 -2
- package/decorators/on-updated.js +2 -2
- package/decorators/on-updated.js.map +2 -2
- package/decorators/prop.js +2 -2
- package/decorators/prop.js.map +2 -2
- package/decorators/query-slot.js +2 -2
- package/decorators/query-slot.js.map +2 -2
- package/decorators/query.js +2 -2
- package/decorators/query.js.map +2 -2
- package/decorators/shared/auto-bind.js +2 -2
- package/decorators/shared/auto-bind.js.map +2 -2
- package/decorators/shared/reactive-attr.js +2 -2
- package/decorators/shared/reactive-attr.js.map +2 -2
- package/decorators/signal.js +2 -2
- package/decorators/signal.js.map +2 -2
- package/decorators/standard/attr.js +2 -2
- package/decorators/standard/attr.js.map +2 -2
- package/decorators/standard/bound.js +2 -2
- package/decorators/standard/bound.js.map +2 -2
- package/decorators/standard/custom-element.js +2 -2
- package/decorators/standard/custom-element.js.map +2 -2
- package/decorators/standard/debounce.js +2 -2
- package/decorators/standard/debounce.js.map +2 -2
- package/decorators/standard/event.js +2 -2
- package/decorators/standard/event.js.map +2 -2
- package/decorators/standard/on-event.js +2 -2
- package/decorators/standard/on-event.js.map +2 -2
- package/decorators/standard/on-updated.js +2 -2
- package/decorators/standard/on-updated.js.map +2 -2
- package/decorators/standard/query-slot.js +2 -2
- package/decorators/standard/query-slot.js.map +2 -2
- package/decorators/standard/query.js +2 -2
- package/decorators/standard/query.js.map +2 -2
- package/decorators/standard/reactive-field.js +2 -2
- package/decorators/standard/reactive-field.js.map +2 -2
- package/decorators/standard/reactive-prop.js +2 -2
- package/decorators/standard/reactive-prop.js.map +2 -2
- package/decorators/standard/signal.js +2 -2
- package/decorators/standard/signal.js.map +2 -2
- package/decorators/state.js +2 -2
- package/decorators/state.js.map +2 -2
- package/helpers/create-event-listener.js +2 -2
- package/helpers/create-event-listener.js.map +2 -2
- package/helpers/create-event.js +2 -2
- package/helpers/create-event.js.map +2 -2
- package/helpers/create-query-slot.js +2 -2
- package/helpers/create-query-slot.js.map +2 -2
- package/helpers/create-query.js +2 -2
- package/helpers/create-query.js.map +2 -2
- package/helpers/debounce.js +2 -2
- package/helpers/debounce.js.map +2 -2
- package/helpers/index.js +2 -2
- package/helpers/index.js.map +2 -2
- package/index.js +2 -2
- package/index.js.map +6 -5
- package/package.json +13 -3
- package/server/assert-light-dom-ssr.d.ts +10 -0
- package/server/assert-light-dom-ssr.js +3 -0
- package/server/assert-light-dom-ssr.js.map +10 -0
- package/server/context-ssr.d.ts +8 -19
- package/server/context-ssr.js +2 -2
- package/server/context-ssr.js.map +5 -5
- package/server/host-attribute-serialization.js +2 -2
- package/server/host-attribute-serialization.js.map +4 -4
- package/server/host-script-composition.js +2 -2
- package/server/host-script-composition.js.map +2 -2
- package/server/html-parser.js +2 -2
- package/server/html-parser.js.map +2 -2
- package/server/install-light-dom-shim.d.ts +2 -1
- package/server/install-light-dom-shim.js +2 -2
- package/server/install-light-dom-shim.js.map +9 -8
- package/server/install-ssr-runtime.d.ts +8 -0
- package/server/install-ssr-runtime.js +3 -0
- package/server/install-ssr-runtime.js.map +21 -0
- package/server/install-ssr-scope-adapters.d.ts +1 -0
- package/server/install-ssr-scope-adapters.js +3 -0
- package/server/install-ssr-scope-adapters.js.map +11 -0
- package/server/light-dom-shim.js +2 -2
- package/server/light-dom-shim.js.map +8 -7
- package/server/minimal-dom/dataset.d.ts +2 -0
- package/server/minimal-dom/dataset.js +3 -0
- package/server/minimal-dom/dataset.js.map +10 -0
- package/server/minimal-dom/document.js +2 -2
- package/server/minimal-dom/document.js.map +5 -6
- package/server/minimal-dom/html.d.ts +1 -2
- package/server/minimal-dom/html.js +2 -2
- package/server/minimal-dom/html.js.map +6 -5
- package/server/minimal-dom/install.d.ts +1 -0
- package/server/minimal-dom/install.js +2 -2
- package/server/minimal-dom/install.js.map +8 -7
- package/server/minimal-dom/nodes.d.ts +9 -0
- package/server/minimal-dom/nodes.js +3 -0
- package/server/minimal-dom/nodes.js.map +12 -0
- package/server/project-root.js +2 -2
- package/server/project-root.js.map +4 -5
- package/server/radiant-element-ssr-bridge.d.ts +9 -9
- package/server/radiant-element-ssr-bridge.js +2 -2
- package/server/radiant-element-ssr-bridge.js.map +27 -14
- package/server/radiant-element-ssr-extractor.d.ts +5 -1
- package/server/radiant-element-ssr-extractor.js +2 -2
- package/server/radiant-element-ssr-extractor.js.map +6 -5
- package/server/radiant-element-ssr-service.d.ts +4 -1
- package/server/radiant-element-ssr-service.js +2 -2
- package/server/radiant-element-ssr-service.js.map +15 -12
- package/server/radiant-element-ssr.d.ts +1 -1
- package/server/radiant-element-ssr.js +2 -2
- package/server/radiant-element-ssr.js.map +27 -14
- package/server/render-component.d.ts +3 -5
- package/server/render-component.js +2 -2
- package/server/render-component.js.map +27 -20
- package/server/render-controller.d.ts +1 -0
- package/server/render-controller.js +2 -2
- package/server/render-controller.js.map +30 -23
- package/server/render-fragment.js +2 -2
- package/server/render-fragment.js.map +2 -2
- package/server/slot-projection-html.js +2 -2
- package/server/slot-projection-html.js.map +5 -6
- package/signals/host-resource.js +2 -2
- package/signals/host-resource.js.map +2 -2
- package/signals/host-signal.js +2 -2
- package/signals/host-signal.js.map +2 -2
- package/signals/hydration-script.js +2 -2
- package/signals/hydration-script.js.map +2 -2
- package/tools/escape-css-identifier.js +2 -2
- package/tools/escape-css-identifier.js.map +2 -2
- package/tools/escape-script-json.js +2 -2
- package/tools/escape-script-json.js.map +2 -2
- package/tools/event-emitter.js +2 -2
- package/tools/event-emitter.js.map +2 -2
- package/tools/index.js +2 -2
- package/tools/index.js.map +2 -2
- package/tools/render-jsx-template.js +2 -2
- package/tools/render-jsx-template.js.map +2 -2
- package/types.js +2 -2
- package/types.js.map +2 -2
- package/utils/attribute-utils.js +2 -2
- package/utils/attribute-utils.js.map +2 -2
- package/utils/escape-html-attribute.js +2 -2
- package/utils/escape-html-attribute.js.map +2 -2
- package/utils/index.js +2 -2
- package/utils/index.js.map +2 -2
- package/server/internal-radiant-host.d.ts +0 -2
- package/server/internal-radiant-host.js +0 -3
- package/server/internal-radiant-host.js.map +0 -9
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
"import type { RadiantElementEventListener } from '../core/radiant-element';\nimport { escapeCssIdentifier } from '../tools/escape-css-identifier';\n\n/**\n * Selects which DOM tree delegated event listeners should observe.\n */\nexport type OnEventScope = 'light' | 'shadow' | 'both';\n\ntype BaseOnEventConfig = Pick<RadiantElementEventListener, 'type' | 'options'> & {\n\tscope?: OnEventScope;\n};\n\nexport type OnEventConfig = BaseOnEventConfig &\n\t(\n\t\t| {\n\t\t\t\tselector: string;\n\t\t }\n\t\t| {\n\t\t\t\tref: string;\n\t\t }\n\t\t| {\n\t\t\t\twindow: true;\n\t\t }\n\t\t| {\n\t\t\t\tdocument: true;\n\t\t }\n\t);\n\ntype DelegatedEventRoot = Element | ShadowRoot;\n\ntype EventListenerLifecycleHost = {\n\tregisterConnectedCallback(callback: () => void): void;\n\tregisterCleanupCallback(callback: () => void): void;\n\tisConnected: boolean;\n};\n\nexport type EventListenerHost =\n\t| (EventListenerLifecycleHost & Element)\n\t| (EventListenerLifecycleHost & { host: Element })\n\t| (EventListenerLifecycleHost & { element: Element });\n\nconst shadowRootListenerHooksKey = Symbol('radiant.shadowRootListenerHooks');\nconst patchedAttachShadowKey = Symbol('radiant.patchedAttachShadow');\n\ntype ShadowRootHookHost = Element & {\n\t[patchedAttachShadowKey]?: true;\n\t[shadowRootListenerHooksKey]?: Set<() => void>;\n};\n\nfunction resolveEventListenerHostElement(host: EventListenerHost): Element {\n\tif (host instanceof Element) {\n\t\treturn host;\n\t}\n\n\tif ('host' in host) {\n\t\treturn host.host;\n\t}\n\n\treturn host.element;\n}\n\nfunction isControllerEventHost(host: EventListenerHost): host is EventListenerLifecycleHost & { host: Element } {\n\treturn !(host instanceof Element);\n}\n\nfunction addDelegatedListener(\n\troot: DelegatedEventRoot,\n\tconfig: Pick<OnEventConfig, 'type' | 'options'>,\n\tselector: string,\n\tlistener: EventListener,\n): () => void {\n\tconst delegatedListener = (event: Event) => {\n\t\tif (event.target instanceof Element && event.target.matches(selector)) {\n\t\t\tlistener(event);\n\t\t}\n\t};\n\n\troot.addEventListener(config.type, delegatedListener, config.options);\n\n\treturn () => {\n\t\troot.removeEventListener(config.type, delegatedListener, config.options);\n\t};\n}\n\nfunction registerShadowRootHook(host: EventListenerHost, hook: () => void): void {\n\tconst shadowAwareHost = resolveEventListenerHostElement(host) as ShadowRootHookHost;\n\n\tif (!shadowAwareHost[shadowRootListenerHooksKey]) {\n\t\tshadowAwareHost[shadowRootListenerHooksKey] = new Set();\n\t}\n\n\tshadowAwareHost[shadowRootListenerHooksKey].add(hook);\n\n\tif (shadowAwareHost[patchedAttachShadowKey]) {\n\t\treturn;\n\t}\n\n\tconst originalAttachShadow = shadowAwareHost.attachShadow;\n\n\tshadowAwareHost.attachShadow = function patchedAttachShadow(init: ShadowRootInit): ShadowRoot {\n\t\tconst shadowRoot = originalAttachShadow.call(this, init);\n\t\tfor (const shadowRootHook of shadowAwareHost[shadowRootListenerHooksKey] ?? []) {\n\t\t\tshadowRootHook();\n\t\t}\n\t\treturn shadowRoot;\n\t};\n\n\tshadowAwareHost[patchedAttachShadowKey] = true;\n}\n\n/**\n * Subscribes to a DOM event with delegation, window, or document targeting.\n * Functional equivalent of the `@onEvent` decorator for vanilla JS usage.\n * Returns a cleanup function to remove the listener.\n * @param host The host RadiantElement.\n * @param config The event listener configuration.\n * @param callback The event handler function.\n */\nexport function createEventListener(\n\thost: EventListenerHost,\n\tconfig: OnEventConfig,\n\tcallback: (event: Event) => void,\n): () => void {\n\tif (isControllerEventHost(host) && 'scope' in config && config.scope && config.scope !== 'light') {\n\t\tthrow new Error('RadiantController event listeners only support light DOM scope.');\n\t}\n\n\tconst hostElement = resolveEventListenerHostElement(host);\n\tconst boundCallback = callback.bind(host);\n\tlet windowCleanup: (() => void) | null = null;\n\tlet documentCleanup: (() => void) | null = null;\n\tlet lightCleanup: (() => void) | null = null;\n\tlet shadowCleanup: (() => void) | null = null;\n\tlet disposed = false;\n\n\tconst detachListeners = () => {\n\t\twindowCleanup?.();\n\t\tdocumentCleanup?.();\n\t\tlightCleanup?.();\n\t\tshadowCleanup?.();\n\n\t\twindowCleanup = null;\n\t\tdocumentCleanup = null;\n\t\tlightCleanup = null;\n\t\tshadowCleanup = null;\n\t};\n\n\tconst attachListeners = () => {\n\t\tif (disposed) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ('window' in config && !windowCleanup) {\n\t\t\twindow.addEventListener(config.type, boundCallback, config.options);\n\t\t\twindowCleanup = () => {\n\t\t\t\twindow.removeEventListener(config.type, boundCallback, config.options);\n\t\t\t};\n\t\t}\n\n\t\tif ('document' in config && !documentCleanup) {\n\t\t\tdocument.addEventListener(config.type, boundCallback, config.options);\n\t\t\tdocumentCleanup = () => {\n\t\t\t\tdocument.removeEventListener(config.type, boundCallback, config.options);\n\t\t\t};\n\t\t}\n\n\t\tif ('selector' in config || 'ref' in config) {\n\t\t\tconst selector = 'selector' in config ? config.selector : `[data-ref='${escapeCssIdentifier(config.ref)}']`;\n\n\t\t\tif (config.scope !== 'shadow' && !lightCleanup) {\n\t\t\t\tlightCleanup = addDelegatedListener(hostElement, config, selector, boundCallback);\n\t\t\t}\n\n\t\t\tif (config.scope !== 'light' && hostElement.shadowRoot && !shadowCleanup) {\n\t\t\t\tshadowCleanup = addDelegatedListener(hostElement.shadowRoot, config, selector, boundCallback);\n\t\t\t}\n\t\t}\n\t};\n\n\tif ('selector' in config || 'ref' in config) {\n\t\tif (config.scope !== 'light') {\n\t\t\tregisterShadowRootHook(host, () => {\n\t\t\t\tif (host.isConnected) {\n\t\t\t\t\tattachListeners();\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\n\thost.registerConnectedCallback(attachListeners);\n\thost.registerCleanupCallback(detachListeners);\n\n\tif (host.isConnected) {\n\t\tattachListeners();\n\t}\n\n\treturn () => {\n\t\tdisposed = true;\n\t\tdetachListeners();\n\t};\n}\n",
|
|
8
8
|
"import { createEventListener, type EventListenerHost } from '../../helpers/create-event-listener';\nimport type { OnEventConfig } from '../on-event';\nimport { registerLegacyInstanceInitializer } from './instance-initializers';\n\n/**\n * A decorator to subscribe to an event on the target element.\n * The event listener will be automatically unsubscribed when the element is disconnected.\n *\n * Note: This decorator uses event delegation, which means it relies on event bubbling.\n * Therefore, it will not work with events that do not bubble, such as `focus`, `blur`, `load`, `unload`, `scroll`, etc.\n * For focus and blur events, consider using `focusin` and `focusout` which are similar but do bubble.\n *\n * @param eventConfig The event configuration.\n * @param eventConfig.selectors The CSS selector(s) of the target element(s).\n * @param eventConfig.ref The data-ref attribute of the target element.\n * @param eventConfig.type The type of the event to listen for.\n * @param eventConfig.options Optional. An options object that specifies characteristics about the event listener.\n */\nexport function onEvent(eventConfig: OnEventConfig) {\n\treturn (proto: EventListenerHost, _: string, descriptor: PropertyDescriptor) => {\n\t\tconst originalMethod = descriptor.value;\n\n\t\tregisterLegacyInstanceInitializer(proto, (element) => {\n\t\t\tcreateEventListener(element, eventConfig, originalMethod.bind(element));\n\t\t});\n\n\t\treturn descriptor;\n\t};\n}\n"
|
|
9
9
|
],
|
|
10
|
-
"mappings": "
|
|
11
|
-
"debugId": "
|
|
10
|
+
"mappings": "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",
|
|
11
|
+
"debugId": "531402DFD9ADB00964756E2164756E21",
|
|
12
12
|
"names": []
|
|
13
13
|
}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
var
|
|
1
|
+
var G=Symbol.for("@ecopages/radiant.legacy-instance-initializers"),H=Symbol.for("@ecopages/radiant.legacy-post-construction-initializers"),S=Symbol.for("@ecopages/radiant.legacy-executed-post-construction-initializers");function J(f,j){Q(f,G,j)}function W(f,j){Q(f,H,j)}function X(f){T(f,G)}function Y(f,j){let q=f;U(f,j,q[S]??=new Set)}function Q(f,j,q){let B=f,A=Object.prototype.hasOwnProperty.call(B,j)?B[j]:void 0;if(Array.isArray(A)){A.push(q);return}Object.defineProperty(B,j,{value:[q]})}function T(f,j){V(f,(q)=>{let B=q[j];if(!Array.isArray(B))return;for(let A of B)A(f)})}function U(f,j,q){for(let B of R(f)){let A=B[H];if(!Array.isArray(A))continue;for(let D of A){if(q.has(D))continue;D(f,j),q.add(D)}}}function R(f){let j=[],q=Object.getPrototypeOf(f);while(q&&q!==Object.prototype)j.unshift(q),q=Object.getPrototypeOf(q);return j}function V(f,j){for(let q of R(f))j(q)}function $(f){return(j,q)=>{let B=Symbol(`@ecopages/radiant/on-updated:${q}:cleanup`);J(j,(A)=>{A.registerConnectedCallback(()=>{let D=A[q].bind(A),E=[];if(Array.isArray(f))for(let F of f)E.push(A.registerUpdateCallback(F,D));else if(typeof f==="string")E.push(A.registerUpdateCallback(f,D));A[B]=()=>{for(let F of E)F()}}),A.registerCleanupCallback(()=>{let D=A[B];if(typeof D==="function")D(),delete A[B]})})}}export{$ as onUpdated};
|
|
2
2
|
|
|
3
|
-
//# debugId=
|
|
3
|
+
//# debugId=B68CD44583B03CF264756E2164756E21
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
"export type LegacyPostConstructionPhase = 'connect' | 'ssr';\n\ntype LegacyInstanceInitializer<T extends object = object> = (instance: T) => void;\ntype LegacyPostConstructionInitializer<T extends object = object> = (\n\tinstance: T,\n\tphase: LegacyPostConstructionPhase,\n) => void;\n\nconst LEGACY_INSTANCE_INITIALIZERS = Symbol.for('@ecopages/radiant.legacy-instance-initializers');\nconst LEGACY_POST_CONSTRUCTION_INITIALIZERS = Symbol.for('@ecopages/radiant.legacy-post-construction-initializers');\nconst LEGACY_EXECUTED_POST_CONSTRUCTION_INITIALIZERS = Symbol.for(\n\t'@ecopages/radiant.legacy-executed-post-construction-initializers',\n);\n\n/**\n * Registers per-instance initialization work for a legacy decorator.\n *\n * Legacy decorators execute against the prototype, so any initialization that\n * needs the concrete element instance must be deferred until construction time.\n */\nexport function registerLegacyInstanceInitializer<T extends object>(\n\tproto: T,\n\tinitializer: LegacyInstanceInitializer<T>,\n): void {\n\tregisterInitializer(proto, LEGACY_INSTANCE_INITIALIZERS, initializer);\n}\n\n/**\n * Registers post-construction work for a legacy decorator.\n *\n * This phase exists for decorators that eagerly write instance fields. With\n * legacy decorators plus `useDefineForClassFields`, subclass field definition\n * can overwrite values written during the base-class constructor.\n */\nexport function registerLegacyPostConstructionInitializer<T extends object>(\n\tproto: T,\n\tinitializer: LegacyPostConstructionInitializer<T>,\n): void {\n\tregisterInitializer(proto, LEGACY_POST_CONSTRUCTION_INITIALIZERS, initializer);\n}\n\n/**\n * Runs all legacy decorator initializers for a newly constructed element.\n *\n * Initializers are collected from the prototype chain and executed from base to\n * derived class so inherited setup remains stable.\n */\nexport function runLegacyInstanceInitializers<T extends object>(instance: T): void {\n\trunLegacyInitializers(instance, LEGACY_INSTANCE_INITIALIZERS);\n}\n\n/**\n * Runs legacy decorator setup that must happen after subclass field\n * initialization has completed.\n *\n * Each initializer runs at most once per instance even if multiple lifecycle\n * entrypoints call this helper.\n */\nexport function runLegacyPostConstructionInitializers<T extends object>(\n\tinstance: T,\n\tphase: LegacyPostConstructionPhase,\n): void {\n\tconst target = instance as Record<PropertyKey, unknown>;\n\n\trunLegacyPostConstructionInitializersOnPrototypeChain(\n\t\tinstance,\n\t\tphase,\n\t\t(target[LEGACY_EXECUTED_POST_CONSTRUCTION_INITIALIZERS] ??= new Set()) as Set<\n\t\t\tLegacyPostConstructionInitializer<T>\n\t\t>,\n\t);\n}\n\nfunction registerInitializer<T extends object>(\n\tproto: T,\n\tkey: symbol,\n\tinitializer: LegacyInstanceInitializer<T> | LegacyPostConstructionInitializer<T>,\n): void {\n\tconst target = proto as Record<PropertyKey, unknown>;\n\tconst ownInitializers = Object.prototype.hasOwnProperty.call(target, key) ? target[key] : undefined;\n\n\tif (Array.isArray(ownInitializers)) {\n\t\townInitializers.push(initializer);\n\t\treturn;\n\t}\n\n\tObject.defineProperty(target, key, {\n\t\tvalue: [initializer],\n\t});\n}\n\nfunction runLegacyInitializers<T extends object>(instance: T, key: symbol): void {\n\twalkPrototypeChain(instance, (prototype) => {\n\t\tconst initializers = (prototype as Record<PropertyKey, unknown>)[key] as\n\t\t\tLegacyInstanceInitializer<T>[] | undefined;\n\n\t\tif (!Array.isArray(initializers)) {\n\t\t\treturn;\n\t\t}\n\n\t\tfor (const initializer of initializers) {\n\t\t\tinitializer(instance);\n\t\t}\n\t});\n}\n\nfunction runLegacyPostConstructionInitializersOnPrototypeChain<T extends object>(\n\tinstance: T,\n\tphase: LegacyPostConstructionPhase,\n\texecutedInitializers: Set<LegacyPostConstructionInitializer<T>>,\n): void {\n\tfor (const prototype of collectPrototypeChain(instance)) {\n\t\tconst initializers = (prototype as Record<PropertyKey, unknown>)[LEGACY_POST_CONSTRUCTION_INITIALIZERS] as\n\t\t\tLegacyPostConstructionInitializer<T>[] | undefined;\n\n\t\tif (!Array.isArray(initializers)) {\n\t\t\tcontinue;\n\t\t}\n\n\t\tfor (const initializer of initializers) {\n\t\t\tif (executedInitializers.has(initializer)) {\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tinitializer(instance, phase);\n\t\t\texecutedInitializers.add(initializer);\n\t\t}\n\t}\n}\n\nfunction collectPrototypeChain<T extends object>(instance: T): object[] {\n\tconst prototypes: object[] = [];\n\tlet prototype: object | null = Object.getPrototypeOf(instance);\n\n\twhile (prototype && prototype !== Object.prototype) {\n\t\tprototypes.unshift(prototype);\n\t\tprototype = Object.getPrototypeOf(prototype);\n\t}\n\n\treturn prototypes;\n}\n\nfunction walkPrototypeChain<T extends object>(instance: T, visit: (prototype: object) => void): void {\n\tfor (const prototype of collectPrototypeChain(instance)) {\n\t\tvisit(prototype);\n\t}\n}\n",
|
|
6
6
|
"type LegacyUpdatedHost = {\n\tregisterCleanupCallback(callback: () => void): void;\n\tregisterConnectedCallback(callback: () => void): void;\n\tregisterUpdateCallback(key: string, update: () => void): () => void;\n};\n\nimport { registerLegacyInstanceInitializer } from './instance-initializers';\n\n/**\n * A decorator to subscribe to an updated callback when a reactive field or property changes.\n * @param eventConfig The event configuration.\n */\nexport function onUpdated(keyOrKeys: string | string[]) {\n\treturn (target: LegacyUpdatedHost, methodName: string) => {\n\t\tconst cleanupKey = Symbol(`@ecopages/radiant/on-updated:${methodName}:cleanup`);\n\n\t\tregisterLegacyInstanceInitializer(target, (element) => {\n\t\t\telement.registerConnectedCallback(() => {\n\t\t\t\tconst boundedMethod = (element as any)[methodName].bind(element);\n\t\t\t\tconst cleanups: Array<() => void> = [];\n\n\t\t\t\tif (Array.isArray(keyOrKeys)) {\n\t\t\t\t\tfor (const key of keyOrKeys) {\n\t\t\t\t\t\tcleanups.push(element.registerUpdateCallback(key, boundedMethod));\n\t\t\t\t\t}\n\t\t\t\t} else if (typeof keyOrKeys === 'string') {\n\t\t\t\t\tcleanups.push(element.registerUpdateCallback(keyOrKeys, boundedMethod));\n\t\t\t\t}\n\n\t\t\t\t(element as unknown as Record<PropertyKey, unknown>)[cleanupKey] = () => {\n\t\t\t\t\tfor (const cleanup of cleanups) {\n\t\t\t\t\t\tcleanup();\n\t\t\t\t\t}\n\t\t\t\t};\n\t\t\t});\n\n\t\t\telement.registerCleanupCallback(() => {\n\t\t\t\tconst cleanup = (element as unknown as Record<PropertyKey, unknown>)[cleanupKey];\n\n\t\t\t\tif (typeof cleanup === 'function') {\n\t\t\t\t\tcleanup();\n\t\t\t\t\tdelete (element as unknown as Record<PropertyKey, unknown>)[cleanupKey];\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\t};\n}\n"
|
|
7
7
|
],
|
|
8
|
-
"mappings": "
|
|
9
|
-
"debugId": "
|
|
8
|
+
"mappings": "AAQA,IAAM,EAA+B,OAAO,IAAI,gDAAgD,EAC1F,EAAwC,OAAO,IAAI,yDAAyD,EAC5G,EAAiD,OAAO,IAC7D,kEACD,EAQO,SAAS,CAAmD,CAClE,EACA,EACO,CACP,EAAoB,EAAO,EAA8B,CAAW,EAU9D,SAAS,CAA2D,CAC1E,EACA,EACO,CACP,EAAoB,EAAO,EAAuC,CAAW,EASvE,SAAS,CAA+C,CAAC,EAAmB,CAClF,EAAsB,EAAU,CAA4B,EAUtD,SAAS,CAAuD,CACtE,EACA,EACO,CACP,IAAM,EAAS,EAEf,EACC,EACA,EACC,EAAO,KAAoD,IAAI,GAGjE,EAGD,SAAS,CAAqC,CAC7C,EACA,EACA,EACO,CACP,IAAM,EAAS,EACT,EAAkB,OAAO,UAAU,eAAe,KAAK,EAAQ,CAAG,EAAI,EAAO,GAAO,OAE1F,GAAI,MAAM,QAAQ,CAAe,EAAG,CACnC,EAAgB,KAAK,CAAW,EAChC,OAGD,OAAO,eAAe,EAAQ,EAAK,CAClC,MAAO,CAAC,CAAW,CACpB,CAAC,EAGF,SAAS,CAAuC,CAAC,EAAa,EAAmB,CAChF,EAAmB,EAAU,CAAC,IAAc,CAC3C,IAAM,EAAgB,EAA2C,GAGjE,GAAI,CAAC,MAAM,QAAQ,CAAY,EAC9B,OAGD,QAAW,KAAe,EACzB,EAAY,CAAQ,EAErB,EAGF,SAAS,CAAuE,CAC/E,EACA,EACA,EACO,CACP,QAAW,KAAa,EAAsB,CAAQ,EAAG,CACxD,IAAM,EAAgB,EAA2C,GAGjE,GAAI,CAAC,MAAM,QAAQ,CAAY,EAC9B,SAGD,QAAW,KAAe,EAAc,CACvC,GAAI,EAAqB,IAAI,CAAW,EACvC,SAGD,EAAY,EAAU,CAAK,EAC3B,EAAqB,IAAI,CAAW,IAKvC,SAAS,CAAuC,CAAC,EAAuB,CACvE,IAAM,EAAuB,CAAC,EAC1B,EAA2B,OAAO,eAAe,CAAQ,EAE7D,MAAO,GAAa,IAAc,OAAO,UACxC,EAAW,QAAQ,CAAS,EAC5B,EAAY,OAAO,eAAe,CAAS,EAG5C,OAAO,EAGR,SAAS,CAAoC,CAAC,EAAa,EAA0C,CACpG,QAAW,KAAa,EAAsB,CAAQ,EACrD,EAAM,CAAS,ECpIV,SAAS,CAAS,CAAC,EAA8B,CACvD,MAAO,CAAC,EAA2B,IAAuB,CACzD,IAAM,EAAa,OAAO,gCAAgC,WAAoB,EAE9E,EAAkC,EAAQ,CAAC,IAAY,CACtD,EAAQ,0BAA0B,IAAM,CACvC,IAAM,EAAiB,EAAgB,GAAY,KAAK,CAAO,EACzD,EAA8B,CAAC,EAErC,GAAI,MAAM,QAAQ,CAAS,EAC1B,QAAW,KAAO,EACjB,EAAS,KAAK,EAAQ,uBAAuB,EAAK,CAAa,CAAC,EAE3D,QAAI,OAAO,IAAc,SAC/B,EAAS,KAAK,EAAQ,uBAAuB,EAAW,CAAa,CAAC,EAGtE,EAAoD,GAAc,IAAM,CACxE,QAAW,KAAW,EACrB,EAAQ,GAGV,EAED,EAAQ,wBAAwB,IAAM,CACrC,IAAM,EAAW,EAAoD,GAErE,GAAI,OAAO,IAAY,WACtB,EAAQ,EACR,OAAQ,EAAoD,GAE7D,EACD",
|
|
9
|
+
"debugId": "B68CD44583B03CF264756E2164756E21",
|
|
10
10
|
"names": []
|
|
11
11
|
}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
var
|
|
1
|
+
var J=Symbol.for("@ecopages/radiant.legacy-instance-initializers"),G=Symbol.for("@ecopages/radiant.legacy-post-construction-initializers"),v=Symbol.for("@ecopages/radiant.legacy-executed-post-construction-initializers");function U(H,j){w(H,J,j)}function x(H,j){w(H,G,j)}function T(H){E(H,J)}function f(H,j){let M=H;O(H,j,M[v]??=new Set)}function w(H,j,M){let W=H,Y=Object.prototype.hasOwnProperty.call(W,j)?W[j]:void 0;if(Array.isArray(Y)){Y.push(M);return}Object.defineProperty(W,j,{value:[M]})}function E(H,j){Q(H,(M)=>{let W=M[j];if(!Array.isArray(W))return;for(let Y of W)Y(H)})}function O(H,j,M){for(let W of B(H)){let Y=W[G];if(!Array.isArray(Y))continue;for(let Z of Y){if(M.has(Z))continue;Z(H,j),M.add(Z)}}}function B(H){let j=[],M=Object.getPrototypeOf(H);while(M&&M!==Object.prototype)j.unshift(M),M=Object.getPrototypeOf(M);return j}function Q(H,j){for(let M of B(H))j(M)}var $=Symbol.for("@ecopages/radiant.ssr-preparation-callbacks"),V=Symbol.for("@ecopages/radiant.ssr-preparation-running");function q(H,j){let W=H[$];if(Array.isArray(W)){W.push(j);return}Object.defineProperty(H,$,{value:[j],configurable:!0})}function L(H){let j=H,M=j[$];if(!Array.isArray(M))return;j[V]=!0;try{for(let W of M)W()}finally{delete j[V]}}function D(H,j={}){let M=null,W,Y=()=>{if(j.all)return H.getSlotElements(j.name);return H.getSlotElements(j.name)[0]??null};return{get value(){if(j.cache===!1)return Y();let Z=H.slotProjectionVersion??0;if(W!==Z)M=Y(),W=Z;return M}}}function P(H={}){return(j,M)=>{let W=(X)=>{return typeof Object.getOwnPropertyDescriptor(X,M)?.get==="function"},Y=(X)=>{if(W(X))return;let F=D(X,H);Object.defineProperty(X,M,{get(){return F.value},enumerable:!0,configurable:!0})},Z=new WeakMap;Object.defineProperty(j,M,{get(){let X=Z.get(this);if(!X)X=D(this,H),Z.set(this,X);return X.value},enumerable:!0,configurable:!0}),U(j,(X)=>{q(X,()=>{Y(X)}),X.registerConnectedCallback(()=>{Y(X)})})}}export{P as querySlot};
|
|
2
2
|
|
|
3
|
-
//# debugId=
|
|
3
|
+
//# debugId=CA5EA550A7980CAC64756E2164756E21
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
"export type QuerySlotConfig = {\n\tall?: boolean;\n\tcache?: boolean;\n\tname?: string;\n};\n\ntype SlotQueryHost = HTMLElement & {\n\tgetSlotElements<T extends Element = Element>(name?: string): T[];\n};\n\ntype QuerySlotResult<T extends Element | Element[] | null> = {\n\tget value(): T | null;\n};\n\n/**\n * Creates a lazy slot query accessor bound to a host element.\n * Functional equivalent of the `@querySlot` decorator for vanilla JS usage.\n * @param host The host element to query slots within.\n * @param options {@link QuerySlotConfig} The slot query configuration.\n */\nexport function createQuerySlot<T extends Element | Element[] | null = Element | null>(\n\thost: SlotQueryHost,\n\toptions: QuerySlotConfig = {},\n): QuerySlotResult<T> {\n\tlet cached: T | null = null;\n\tlet cachedVersion: number | undefined;\n\n\tconst executeQuery = (): T | null => {\n\t\tif (options.all) {\n\t\t\treturn host.getSlotElements(options.name) as T;\n\t\t}\n\t\treturn (host.getSlotElements(options.name)[0] ?? null) as T | null;\n\t};\n\n\treturn {\n\t\tget value(): T | null {\n\t\t\tif (options.cache === false) {\n\t\t\t\treturn executeQuery();\n\t\t\t}\n\n\t\t\tconst currentVersion = (host as unknown as Record<string, number | undefined>).slotProjectionVersion ?? 0;\n\n\t\t\tif (cachedVersion !== currentVersion) {\n\t\t\t\tcached = executeQuery();\n\t\t\t\tcachedVersion = currentVersion;\n\t\t\t}\n\n\t\t\treturn cached;\n\t\t},\n\t};\n}\n",
|
|
8
8
|
"import type { RadiantElement } from '../../core/radiant-element';\nimport { createQuerySlot } from '../../helpers/create-query-slot';\nimport { registerSsrPreparationCallback } from '../../core/ssr-preparation';\nimport type { QuerySlotConfig } from '../query-slot';\nimport { registerLegacyInstanceInitializer } from './instance-initializers';\n\ntype SlotQueryHost = RadiantElement & {\n\tgetSlotElements<T extends Element = Element>(name?: string): T[];\n\tslotProjectionVersion?: number;\n};\n\nexport function querySlot<T extends Element | Element[] | null>(\n\toptions: QuerySlotConfig = {},\n): (proto: RadiantElement, propertyName: string | symbol) => void {\n\treturn (proto: RadiantElement, propertyKey: string | symbol) => {\n\t\tconst hasDefinedInstanceQuery = (instance: SlotQueryHost) => {\n\t\t\tconst descriptor = Object.getOwnPropertyDescriptor(instance, propertyKey);\n\t\t\treturn typeof descriptor?.get === 'function';\n\t\t};\n\n\t\tconst defineSlotQueryProperty = (instance: SlotQueryHost) => {\n\t\t\tif (hasDefinedInstanceQuery(instance)) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst accessor = createQuerySlot<T>(instance, options);\n\n\t\t\tObject.defineProperty(instance, propertyKey, {\n\t\t\t\tget() {\n\t\t\t\t\treturn accessor.value;\n\t\t\t\t},\n\t\t\t\tenumerable: true,\n\t\t\t\tconfigurable: true,\n\t\t\t});\n\t\t};\n\n\t\tconst protoAccessorCache = new WeakMap<SlotQueryHost, ReturnType<typeof createQuerySlot<T>>>();\n\n\t\tObject.defineProperty(proto, propertyKey, {\n\t\t\tget(this: SlotQueryHost) {\n\t\t\t\tlet accessor = protoAccessorCache.get(this);\n\t\t\t\tif (!accessor) {\n\t\t\t\t\taccessor = createQuerySlot<T>(this, options);\n\t\t\t\t\tprotoAccessorCache.set(this, accessor);\n\t\t\t\t}\n\t\t\t\treturn accessor.value;\n\t\t\t},\n\t\t\tenumerable: true,\n\t\t\tconfigurable: true,\n\t\t});\n\n\t\tregisterLegacyInstanceInitializer(proto, (element) => {\n\t\t\tregisterSsrPreparationCallback(element, () => {\n\t\t\t\tdefineSlotQueryProperty(element as SlotQueryHost);\n\t\t\t});\n\t\t\telement.registerConnectedCallback(() => {\n\t\t\t\tdefineSlotQueryProperty(element as SlotQueryHost);\n\t\t\t});\n\t\t});\n\t};\n}\n"
|
|
9
9
|
],
|
|
10
|
-
"mappings": "
|
|
11
|
-
"debugId": "
|
|
10
|
+
"mappings": "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",
|
|
11
|
+
"debugId": "CA5EA550A7980CAC64756E2164756E21",
|
|
12
12
|
"names": []
|
|
13
13
|
}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
var
|
|
1
|
+
var Y=Symbol.for("@ecopages/radiant.legacy-instance-initializers"),Z=Symbol.for("@ecopages/radiant.legacy-post-construction-initializers"),F=Symbol.for("@ecopages/radiant.legacy-executed-post-construction-initializers");function _(j,A){$(j,Y,A)}function S(j,A){$(j,Z,A)}function L(j){H(j,Y)}function T(j,A){let E=j;J(j,A,E[F]??=new Set)}function $(j,A,E){let N=j,G=Object.prototype.hasOwnProperty.call(N,A)?N[A]:void 0;if(Array.isArray(G)){G.push(E);return}Object.defineProperty(N,A,{value:[E]})}function H(j,A){M(j,(E)=>{let N=E[A];if(!Array.isArray(N))return;for(let G of N)G(j)})}function J(j,A,E){for(let N of b(j)){let G=N[Z];if(!Array.isArray(G))continue;for(let U of G){if(E.has(U))continue;U(j,A),E.add(U)}}}function b(j){let A=[],E=Object.getPrototypeOf(j);while(E&&E!==Object.prototype)A.unshift(E),E=Object.getPrototypeOf(E);return A}function M(j,A){for(let E of b(j))A(E)}function B(j){return!(j instanceof Element)}function K(j){return"shadowRoot"in j?j.shadowRoot??null:null}function O(j){return j instanceof Element?j:j.host}function P(j,A="light"){let E=K(j);if(A==="shadow")return E?[E]:[];if(A==="both")return E?[j,E]:[j];return[j]}function D(j,A){if(B(j)&&A.scope&&A.scope!=="light")throw Error("RadiantController queries only support light DOM scope.");let E=O(j),N="selector"in A?A.selector:`[data-ref="${A.ref}"]`,G=null,U=()=>{let W=P(E,A.scope);if(A.all)return W.flatMap((V)=>Array.from(V.querySelectorAll(N)));for(let V of W){let X=V.querySelector(N);if(X)return X}return null};return{get value(){if(A.cache){if(G===null||A.all&&Array.isArray(G)&&!G.length)G=U();return G}return U()}}}function Q({cache:j=!0,...A}){return(E,N)=>{_(E,(G)=>{G.registerConnectedCallback(()=>{let U=D(G,{cache:j,...A});Object.defineProperty(G,N,{get(){return U.value},enumerable:!0,configurable:!0})})})}}export{Q as query};
|
|
2
2
|
|
|
3
|
-
//# debugId=
|
|
3
|
+
//# debugId=4F36FE38939B82F064756E2164756E21
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
"type BaseQueryConfig = {\n\tall?: boolean;\n\tcache?: boolean;\n\tscope?: QueryScope;\n};\n\ntype QueryBySelector = { selector: string };\n\ntype QueryByRef = { ref: string };\n\nexport type QueryHostTarget = Element | { host: Element };\n\n/**\n * Selects which DOM tree a query should read from.\n */\nexport type QueryScope = 'light' | 'shadow' | 'both';\n\nexport type QueryConfig = BaseQueryConfig & (QueryBySelector | QueryByRef);\n\ntype QueryRoot = Element | ShadowRoot;\n\ntype QueryResult<T extends Element | Element[]> = {\n\tget value(): T | null;\n};\n\nfunction isControllerQueryTarget(target: QueryHostTarget): target is { host: Element } {\n\treturn !(target instanceof Element);\n}\n\nfunction resolveShadowRoot(host: Element): ShadowRoot | null {\n\treturn 'shadowRoot' in host ? ((host as Element & { shadowRoot?: ShadowRoot | null }).shadowRoot ?? null) : null;\n}\n\n/**\n * Resolves the DOM element that should serve as the query root.\n *\n * `@query(...)` can run on both element hosts and controller instances. This\n * helper normalizes those call sites to the underlying element that actually\n * owns the DOM subtree.\n */\nexport function resolveQueryHost(target: QueryHostTarget): Element {\n\treturn target instanceof Element ? target : target.host;\n}\n\nfunction getQueryRoots(host: Element, scope: QueryScope = 'light'): QueryRoot[] {\n\tconst shadowRoot = resolveShadowRoot(host);\n\n\tif (scope === 'shadow') {\n\t\treturn shadowRoot ? [shadowRoot] : [];\n\t}\n\n\tif (scope === 'both') {\n\t\treturn shadowRoot ? [host, shadowRoot] : [host];\n\t}\n\n\treturn [host];\n}\n\n/**\n * Creates a lazy DOM query accessor bound to an element host or controller.\n * Functional equivalent of the `@query` decorator for vanilla JS usage.\n * @param target The element host or controller to query within.\n * @param options {@link QueryConfig} The query configuration.\n */\nexport function createQuery<T extends Element | Element[] = Element>(\n\ttarget: QueryHostTarget,\n\toptions: QueryConfig,\n): QueryResult<T> {\n\tif (isControllerQueryTarget(target) && options.scope && options.scope !== 'light') {\n\t\tthrow new Error('RadiantController queries only support light DOM scope.');\n\t}\n\n\tconst host = resolveQueryHost(target);\n\tconst selector = 'selector' in options ? options.selector : `[data-ref=\"${options.ref}\"]`;\n\tlet cached: T | null = null;\n\n\tconst executeQuery = (): T | null => {\n\t\tconst roots = getQueryRoots(host, options.scope);\n\n\t\tif (options.all) {\n\t\t\treturn roots.flatMap((root) => Array.from(root.querySelectorAll(selector))) as T;\n\t\t}\n\n\t\tfor (const root of roots) {\n\t\t\tconst match = root.querySelector(selector);\n\t\t\tif (match) {\n\t\t\t\treturn match as T;\n\t\t\t}\n\t\t}\n\n\t\treturn null;\n\t};\n\n\treturn {\n\t\tget value(): T | null {\n\t\t\tif (options.cache) {\n\t\t\t\tif (cached === null || (options.all && Array.isArray(cached) && !cached.length)) {\n\t\t\t\t\tcached = executeQuery();\n\t\t\t\t}\n\t\t\t\treturn cached;\n\t\t\t}\n\t\t\treturn executeQuery();\n\t\t},\n\t};\n}\n",
|
|
7
7
|
"import { createQuery } from '../../helpers/create-query';\nimport type { QueryConfig } from '../query';\nimport { registerLegacyInstanceInitializer } from './instance-initializers';\n\ntype QueryDecoratorInstance = (Element | { host: Element }) & {\n\tregisterConnectedCallback(callback: () => void): void;\n};\n\n/**\n * A decorator to query by CSS selector or data-ref attribute.\n * By default it queries for the first element that matches the selector, but it can be configured to query for all elements.\n *\n * @param {QueryConfig} options - The configuration object for the query.\n * @param {boolean} [options.all] - A flag to query for all elements that match the selector. Defaults to `false`.\n * @param {boolean} [options.cache] - A flag to cache the query result. Defaults to `true`.\n * @param {string} [options.selector] - A CSS selector to match elements against. This property is mutually exclusive with `options.ref`.\n * @param {string} [options.ref] - A reference to an element. This property is mutually exclusive with `options.selector`.\n *\n * @returns {Function} A decorator function that, when applied to a class property, will replace it with a getter. The getter will return the result of the query when accessed.\n *\n * @example\n * class MyElement extends HTMLElement {\n * @query({ selector: '.my-class' })\n * myElement;\n * }\n *\n * // Now, `myElement` will return the first element in the light DOM of `MyElement` that matches the selector '.my-class'.\n */\nexport function query<T extends Element | Element[]>({\n\tcache: shouldBeCached = true,\n\t...options\n}: QueryConfig): (proto: QueryDecoratorInstance, propertyName: string | symbol) => void {\n\treturn (proto: QueryDecoratorInstance, propertyKey: string | symbol) => {\n\t\tregisterLegacyInstanceInitializer(proto, (element) => {\n\t\t\telement.registerConnectedCallback(() => {\n\t\t\t\tconst accessor = createQuery<T>(element, {\n\t\t\t\t\tcache: shouldBeCached,\n\t\t\t\t\t...options,\n\t\t\t\t});\n\n\t\t\t\tObject.defineProperty(element, propertyKey, {\n\t\t\t\t\tget() {\n\t\t\t\t\t\treturn accessor.value;\n\t\t\t\t\t},\n\t\t\t\t\tenumerable: true,\n\t\t\t\t\tconfigurable: true,\n\t\t\t\t});\n\t\t\t});\n\t\t});\n\t};\n}\n"
|
|
8
8
|
],
|
|
9
|
-
"mappings": "
|
|
10
|
-
"debugId": "
|
|
9
|
+
"mappings": "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",
|
|
10
|
+
"debugId": "4F36FE38939B82F064756E2164756E21",
|
|
11
11
|
"names": []
|
|
12
12
|
}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
var
|
|
1
|
+
var j=Symbol.for("@ecopages/radiant.legacy-instance-initializers"),q=Symbol.for("@ecopages/radiant.legacy-post-construction-initializers"),Q=Symbol.for("@ecopages/radiant.legacy-executed-post-construction-initializers");function D(B,v){F(B,j,v)}function E(B,v){F(B,q,v)}function X(B){T(B,j)}function Y(B,v){let A=B;U(B,v,A[Q]??=new Set)}function F(B,v,A){let H=B,R=Object.prototype.hasOwnProperty.call(H,v)?H[v]:void 0;if(Array.isArray(R)){R.push(A);return}Object.defineProperty(H,v,{value:[A]})}function T(B,v){W(B,(A)=>{let H=A[v];if(!Array.isArray(H))return;for(let R of H)R(B)})}function U(B,v,A){for(let H of G(B)){let R=H[q];if(!Array.isArray(R))continue;for(let M of R){if(A.has(M))continue;M(B,v),A.add(M)}}}function G(B){let v=[],A=Object.getPrototypeOf(B);while(A&&A!==Object.prototype)v.unshift(A),A=Object.getPrototypeOf(A);return v}function W(B,v){for(let A of G(B))v(A)}function O(B){return B.shouldAutoBindReactiveMembers?.()??!1}function J(B,v,A,H=!1){if(B.getReactiveMember(v))return;if(B.createReactiveMember(v,A),H!==void 0&&H!==!1)B.defineReactiveBinding(v,H)}function f(B,v){D(B,(A)=>{J(A,v,A[v],O(A))}),E(B,(A)=>{A.createReactiveField(v,A[v],{bind:O(A)})})}export{f as reactiveField};
|
|
2
2
|
|
|
3
|
-
//# debugId=
|
|
3
|
+
//# debugId=FE840F40270F655C64756E2164756E21
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
"import type { ReactiveBindingOption } from '../../core/reactive-prop-core';\nimport type { ReactiveHostLike } from '../../core/reactive-host';\n\n/**\n * Registers a member `State` early enough for subclass field initializers that\n * read `this.$.member` (for example `this.$.preference.map(...)`).\n *\n * Post-construction setup still runs afterward to install accessors, SSR prop\n * resolution, and attribute channels once class fields have finished writing.\n */\nexport function bootstrapReactiveMemberBinding(\n\thost: ReactiveHostLike,\n\tpropertyName: string,\n\tinitialValue: unknown,\n\tbind: ReactiveBindingOption = false,\n): void {\n\tif (host.getReactiveMember(propertyName)) {\n\t\treturn;\n\t}\n\n\thost.createReactiveMember(propertyName, initialValue);\n\n\tif (bind !== undefined && bind !== false) {\n\t\thost.defineReactiveBinding(propertyName, bind);\n\t}\n}\n",
|
|
8
8
|
"import type { ReactiveHostLike } from '../../core/reactive-host';\nimport { resolveHostAutoBind } from '../shared/auto-bind';\nimport { registerLegacyInstanceInitializer, registerLegacyPostConstructionInitializer } from './instance-initializers';\nimport { bootstrapReactiveMemberBinding } from './member-bootstrap';\n\n/**\n * A decorator to define a reactive field.\n * Every time the property changes, the `updated` method will be called.\n * Due the fact the value is always undefined before the first update,\n * we are adding a `isDefined` WeakSet to track if the property has been defined.\n * @param target The target element.\n * @param propertyKey The property key.\n */\nexport function reactiveField(target: ReactiveHostLike, propertyKey: string) {\n\tregisterLegacyInstanceInitializer(target, (element) => {\n\t\tbootstrapReactiveMemberBinding(\n\t\t\telement,\n\t\t\tpropertyKey,\n\t\t\telement[propertyKey as keyof typeof element],\n\t\t\tresolveHostAutoBind(element),\n\t\t);\n\t});\n\n\tregisterLegacyPostConstructionInitializer(target, (element) => {\n\t\telement.createReactiveField(propertyKey, element[propertyKey as keyof typeof element], {\n\t\t\tbind: resolveHostAutoBind(element),\n\t\t});\n\t});\n}\n"
|
|
9
9
|
],
|
|
10
|
-
"mappings": "
|
|
11
|
-
"debugId": "
|
|
10
|
+
"mappings": "AAQA,IAAM,EAA+B,OAAO,IAAI,gDAAgD,EAC1F,EAAwC,OAAO,IAAI,yDAAyD,EAC5G,EAAiD,OAAO,IAC7D,kEACD,EAQO,SAAS,CAAmD,CAClE,EACA,EACO,CACP,EAAoB,EAAO,EAA8B,CAAW,EAU9D,SAAS,CAA2D,CAC1E,EACA,EACO,CACP,EAAoB,EAAO,EAAuC,CAAW,EASvE,SAAS,CAA+C,CAAC,EAAmB,CAClF,EAAsB,EAAU,CAA4B,EAUtD,SAAS,CAAuD,CACtE,EACA,EACO,CACP,IAAM,EAAS,EAEf,EACC,EACA,EACC,EAAO,KAAoD,IAAI,GAGjE,EAGD,SAAS,CAAqC,CAC7C,EACA,EACA,EACO,CACP,IAAM,EAAS,EACT,EAAkB,OAAO,UAAU,eAAe,KAAK,EAAQ,CAAG,EAAI,EAAO,GAAO,OAE1F,GAAI,MAAM,QAAQ,CAAe,EAAG,CACnC,EAAgB,KAAK,CAAW,EAChC,OAGD,OAAO,eAAe,EAAQ,EAAK,CAClC,MAAO,CAAC,CAAW,CACpB,CAAC,EAGF,SAAS,CAAuC,CAAC,EAAa,EAAmB,CAChF,EAAmB,EAAU,CAAC,IAAc,CAC3C,IAAM,EAAgB,EAA2C,GAGjE,GAAI,CAAC,MAAM,QAAQ,CAAY,EAC9B,OAGD,QAAW,KAAe,EACzB,EAAY,CAAQ,EAErB,EAGF,SAAS,CAAuE,CAC/E,EACA,EACA,EACO,CACP,QAAW,KAAa,EAAsB,CAAQ,EAAG,CACxD,IAAM,EAAgB,EAA2C,GAGjE,GAAI,CAAC,MAAM,QAAQ,CAAY,EAC9B,SAGD,QAAW,KAAe,EAAc,CACvC,GAAI,EAAqB,IAAI,CAAW,EACvC,SAGD,EAAY,EAAU,CAAK,EAC3B,EAAqB,IAAI,CAAW,IAKvC,SAAS,CAAuC,CAAC,EAAuB,CACvE,IAAM,EAAuB,CAAC,EAC1B,EAA2B,OAAO,eAAe,CAAQ,EAE7D,MAAO,GAAa,IAAc,OAAO,UACxC,EAAW,QAAQ,CAAS,EAC5B,EAAY,OAAO,eAAe,CAAS,EAG5C,OAAO,EAGR,SAAS,CAAoC,CAAC,EAAa,EAA0C,CACpG,QAAW,KAAa,EAAsB,CAAQ,EACrD,EAAM,CAAS,ECzIV,SAAS,CAAmB,CAAC,EAA2C,CAC9E,OAAO,EAAK,gCAAgC,GAAK,GCE3C,SAAS,CAA8B,CAC7C,EACA,EACA,EACA,EAA8B,GACvB,CACP,GAAI,EAAK,kBAAkB,CAAY,EACtC,OAKD,GAFA,EAAK,qBAAqB,EAAc,CAAY,EAEhD,IAAS,QAAa,IAAS,GAClC,EAAK,sBAAsB,EAAc,CAAI,ECVxC,SAAS,CAAa,CAAC,EAA0B,EAAqB,CAC5E,EAAkC,EAAQ,CAAC,IAAY,CACtD,EACC,EACA,EACA,EAAQ,GACR,EAAoB,CAAO,CAC5B,EACA,EAED,EAA0C,EAAQ,CAAC,IAAY,CAC9D,EAAQ,oBAAoB,EAAa,EAAQ,GAAsC,CACtF,KAAM,EAAoB,CAAO,CAClC,CAAC,EACD",
|
|
11
|
+
"debugId": "FE840F40270F655C64756E2164756E21",
|
|
12
12
|
"names": []
|
|
13
13
|
}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
var
|
|
1
|
+
var H=Symbol.for("@ecopages/radiant.reactivePropDefinitions");function U(R,P,E){let D=R.constructor,_=D[H]??[];if(_.some((C)=>C.name===P))return;_.push({name:P,options:E}),D[H]=_}function r(R){return(R.constructor[H]??[]).slice()}var x=Symbol.for("@ecopages/radiant.legacy-instance-initializers"),I=Symbol.for("@ecopages/radiant.legacy-post-construction-initializers"),g=Symbol.for("@ecopages/radiant.legacy-executed-post-construction-initializers");function $(R,P){L(R,x,P)}function J(R,P){L(R,I,P)}function l(R){v(R,x)}function a(R,P){let E=R;b(R,P,E[g]??=new Set)}function L(R,P,E){let D=R,_=Object.prototype.hasOwnProperty.call(D,P)?D[P]:void 0;if(Array.isArray(_)){_.push(E);return}Object.defineProperty(D,P,{value:[E]})}function v(R,P){m(R,(E)=>{let D=E[P];if(!Array.isArray(D))return;for(let _ of D)_(R)})}function b(R,P,E){for(let D of j(R)){let _=D[I];if(!Array.isArray(_))continue;for(let C of _){if(E.has(C))continue;C(R,P),E.add(C)}}}function j(R){let P=[],E=Object.getPrototypeOf(R);while(E&&E!==Object.prototype)P.unshift(E),E=Object.getPrototypeOf(E);return P}function m(R,P){for(let E of j(R))P(E)}function A(R){switch(R){case Array:return"array";case Boolean:return"boolean";case Number:return"number";case Object:return"object";case String:return"string"}}function f(R){switch(typeof R){case"boolean":return"boolean";case"number":return"number";case"string":return"string"}if(Array.isArray(R))return"array";if(Object.prototype.toString.call(R)==="[object Object]")return"object"}function o(R){switch(R){case Number:return 0;case String:return"";case Boolean:return!1;default:return null}}function V(R){try{return JSON.parse(R)}catch{throw TypeError("Invalid JSON string")}}var d={array(R){let P=V(R);if(!Array.isArray(P))throw TypeError(`Expected an array but got a value of type "${typeof P}"`);return P},boolean(R){return!(R==="0"||String(R).toLowerCase()==="false")},number(R){return Number(R.replace(/_/g,""))},object(R){let P=JSON.parse(R);if(P===null||typeof P!=="object"||Array.isArray(P))throw TypeError(`expected value of type "object" but instead got value "${R}" of type "${f(P)}"`);return P},string(R){return R}},T={default:K,array:k,object:k};function k(R){return JSON.stringify(R)}function K(R){return`${R}`}function q(R,P){let E=A(P);if(!E)throw TypeError(`[radiant-element] Unknown type "${P}"`);return d[E](R)}function S(R,P){let E=A(P);if(!E)throw TypeError(`[radiant-element] Unknown type "${P}"`);return(T[E]??T.default??K)(R)}function s(R){return typeof R==="boolean"}function n(R){return typeof R==="number"}function y(R){return typeof R==="string"}function p(R){return Array.isArray(R)}function i(R){return typeof R==="object"&&!Array.isArray(R)&&R!==null}function w(R,P){switch(R){case Boolean:return s(P);case Number:return n(P);case String:return y(P);case Array:return p(P);case Object:return i(P);default:return!1}}var e=(R,P,E,D)=>{if(P===Boolean){let C=R.getAttribute(E);if(C===null)return D;return C===""?!0:q(C,P)}let _=R.getAttribute(E);return _!==null?q(_,P):D??o(P)};function c(R,P){if(P!==void 0&&!w(R,P))throw Error(`defaultValue does not match the expected type for ${R.name}`)}function ER(R,P,E,D){return{type:E,name:R,initialValue:D,attribute:P,converter:{fromAttribute:(_)=>q(_,E),toAttribute:(_)=>S(_,E)}}}function h(R,P,E,D=!1){if(R.getReactiveMember(P))return;if(R.createReactiveMember(P,E),D!==void 0&&D!==!1)R.defineReactiveBinding(P,D)}function GR({type:R,attribute:P,reflect:E,defaultValue:D,bind:_}){return c(R,D),(C,W)=>{let M=P??W;U(C,W,{type:R,reflect:E,attribute:M,defaultValue:D,bind:_});let Q=Symbol.for(`@ecopages/radiant.ssr-prop:${W}`),X=Symbol.for(`@ecopages/radiant.ssr-prop-assigned:${W}`);Object.defineProperty(C,W,{get(){return this[Q]??D},set(F){this[Q]=F,this[X]=!0},configurable:!0,enumerable:!0}),$(C,(F)=>{let G=F[W]??D;h(F,W,G,_)}),J(C,(F,Y)=>{let G=F,Z=F[W],z=G[X]===!0,B=Object.prototype.hasOwnProperty.call(F,W),O=B?F[W]:void 0,N=z?Z:Y==="ssr"&&B&&O!==D?O:D===void 0?Z:D;F.createReactiveProp(W,{type:R,reflect:E,attribute:M,defaultValue:N,bind:_})})}}export{GR as reactiveProp};
|
|
2
2
|
|
|
3
|
-
//# debugId=
|
|
3
|
+
//# debugId=1888F279D18A649364756E2164756E21
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
"import type { ReactiveBindingOption } from '../../core/reactive-prop-core';\nimport type { ReactiveHostLike } from '../../core/reactive-host';\n\n/**\n * Registers a member `State` early enough for subclass field initializers that\n * read `this.$.member` (for example `this.$.preference.map(...)`).\n *\n * Post-construction setup still runs afterward to install accessors, SSR prop\n * resolution, and attribute channels once class fields have finished writing.\n */\nexport function bootstrapReactiveMemberBinding(\n\thost: ReactiveHostLike,\n\tpropertyName: string,\n\tinitialValue: unknown,\n\tbind: ReactiveBindingOption = false,\n): void {\n\tif (host.getReactiveMember(propertyName)) {\n\t\treturn;\n\t}\n\n\thost.createReactiveMember(propertyName, initialValue);\n\n\tif (bind !== undefined && bind !== false) {\n\t\thost.defineReactiveBinding(propertyName, bind);\n\t}\n}\n",
|
|
10
10
|
"import { type ReactivePropertyOptions, validateReactivePropertyDefault } from '../../core/reactive-prop-core';\nimport type { ReactiveHostLike } from '../../core/reactive-host';\nimport { registerReactivePropDefinition } from '../../core/reactive-prop-metadata';\nimport { registerLegacyInstanceInitializer, registerLegacyPostConstructionInitializer } from './instance-initializers';\nimport { bootstrapReactiveMemberBinding } from './member-bootstrap';\n\ntype ReactivePropHost<T> = {\n\tcreateReactiveProp(propertyName: string, options: ReactivePropertyOptions<T>): void;\n};\n\n/**\n * Legacy-decorator implementation for `@prop(...)`.\n *\n * The decorated host is expected to expose `createReactiveProp(...)`, which\n * lets both `RadiantElement` and `RadiantController` share the same public\n * decorator while keeping their runtime channels different.\n */\nexport function reactiveProp<T = unknown>({\n\ttype,\n\tattribute,\n\treflect,\n\tdefaultValue,\n\tbind,\n}: ReactivePropertyOptions<T>) {\n\tvalidateReactivePropertyDefault(type, defaultValue);\n\n\treturn (target: ReactivePropHost<T>, propertyName: string) => {\n\t\tconst attributeKey = attribute ?? propertyName;\n\t\tregisterReactivePropDefinition(target, propertyName, {\n\t\t\ttype,\n\t\t\treflect,\n\t\t\tattribute: attributeKey,\n\t\t\tdefaultValue,\n\t\t\tbind,\n\t\t});\n\n\t\tconst ssrStoreKey = Symbol.for(`@ecopages/radiant.ssr-prop:${propertyName}`);\n\t\tconst ssrAssignedKey = Symbol.for(`@ecopages/radiant.ssr-prop-assigned:${propertyName}`);\n\n\t\tObject.defineProperty(target, propertyName, {\n\t\t\tget(this: ReactivePropHost<T> & Record<PropertyKey, unknown>) {\n\t\t\t\treturn this[ssrStoreKey] ?? defaultValue;\n\t\t\t},\n\t\t\tset(this: ReactivePropHost<T> & Record<PropertyKey, unknown>, value: T) {\n\t\t\t\tthis[ssrStoreKey] = value;\n\t\t\t\tthis[ssrAssignedKey] = true;\n\t\t\t},\n\t\t\tconfigurable: true,\n\t\t\tenumerable: true,\n\t\t});\n\n\t\tregisterLegacyInstanceInitializer(target, (element) => {\n\t\t\tconst initializerValue = element[propertyName as keyof typeof element] as T | undefined;\n\t\t\tconst bootstrapValue = (initializerValue ?? defaultValue) as T;\n\t\t\tbootstrapReactiveMemberBinding(element as unknown as ReactiveHostLike, propertyName, bootstrapValue, bind);\n\t\t});\n\n\t\tregisterLegacyPostConstructionInitializer(target, (element, phase) => {\n\t\t\tconst host = element as ReactivePropHost<T> & Record<PropertyKey, unknown>;\n\t\t\tconst initializerValue = element[propertyName as keyof typeof element] as T | undefined;\n\t\t\tconst wasAssigned = host[ssrAssignedKey] === true;\n\t\t\tconst hasOwnStagingValue = Object.prototype.hasOwnProperty.call(element, propertyName);\n\t\t\tconst ownStagingValue = hasOwnStagingValue\n\t\t\t\t? ((element as Record<PropertyKey, unknown>)[propertyName] as T)\n\t\t\t\t: undefined;\n\t\t\tconst resolvedDefaultValue = wasAssigned\n\t\t\t\t? initializerValue\n\t\t\t\t: phase === 'ssr' && hasOwnStagingValue && ownStagingValue !== defaultValue\n\t\t\t\t\t? ownStagingValue\n\t\t\t\t\t: defaultValue === undefined\n\t\t\t\t\t\t? initializerValue\n\t\t\t\t\t\t: defaultValue;\n\n\t\t\telement.createReactiveProp(propertyName, {\n\t\t\t\ttype,\n\t\t\t\treflect,\n\t\t\t\tattribute: attributeKey,\n\t\t\t\tdefaultValue: resolvedDefaultValue,\n\t\t\t\tbind,\n\t\t\t});\n\t\t});\n\t};\n}\n"
|
|
11
11
|
],
|
|
12
|
-
"mappings": "
|
|
13
|
-
"debugId": "
|
|
12
|
+
"mappings": "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",
|
|
13
|
+
"debugId": "1888F279D18A649364756E2164756E21",
|
|
14
14
|
"names": []
|
|
15
15
|
}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
var
|
|
1
|
+
var f=Symbol.for("@ecopages/radiant.legacy-instance-initializers"),w=Symbol.for("@ecopages/radiant.legacy-post-construction-initializers"),I=Symbol.for("@ecopages/radiant.legacy-executed-post-construction-initializers");function h(q,Q){P(q,f,Q)}function L(q,Q){P(q,w,Q)}function m(q){g(q,f)}function c(q,Q){let G=q;N(q,Q,G[I]??=new Set)}function P(q,Q,G){let Z=q,X=Object.prototype.hasOwnProperty.call(Z,Q)?Z[Q]:void 0;if(Array.isArray(X)){X.push(G);return}Object.defineProperty(Z,Q,{value:[G]})}function g(q,Q){S(q,(G)=>{let Z=G[Q];if(!Array.isArray(Z))return;for(let X of Z)X(q)})}function N(q,Q,G){for(let Z of C(q)){let X=Z[w];if(!Array.isArray(X))continue;for(let $ of X){if(G.has($))continue;$(q,Q),G.add($)}}}function C(q){let Q=[],G=Object.getPrototypeOf(q);while(G&&G!==Object.prototype)Q.unshift(G),G=Object.getPrototypeOf(G);return Q}function S(q,Q){for(let G of C(q))Q(G)}function D(q){return q.replace(/&/g,"\\u0026").replace(/</g,"\\u003c").replace(/>/g,"\\u003e").replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}var W="data-hydration",U="data-hydration-type",J="data-hydration-key";function b(q){let Q=q.hydrationKey?` ${J}="${z(q.hydrationKey)}"`:"";return`<script type="application/json" ${W} ${U}="${q.type}"${Q}>${q.serializedValue}</script>`}function K(q){return D(q)}function x(q,Q){let G=q.textContent;if(!G)return Q;try{return JSON.parse(G)}catch{if(typeof console<"u")console.warn(`[@ecopages/radiant] Failed to parse hydration payload from <script ${W}>:`,G.slice(0,120));return Q}}function A(q,Q,G){let Z=q.children;if(!Z||Z.length===0){let X=q.childNodes;if(!X||X.length===0)return null;for(let $=0;$<X.length;$+=1){let F=X[$];if(F.nodeType!==1)continue;let j=F;if(O(j,Q,G))return j}return null}for(let X=0;X<Z.length;X+=1)if(O(Z[X],Q,G))return Z[X];return null}function O(q,Q,G){if(q.tagName!=="SCRIPT"||!q.hasAttribute(W)||q.getAttribute(U)!==Q)return!1;if(G!==void 0)return q.getAttribute(J)===G;return!q.hasAttribute(J)}function z(q){return q.replace(/&/g,"&").replace(/"/g,""").replace(/</g,"<").replace(/>/g,">")}function R(q){return q.shouldAutoBindReactiveMembers?.()??!1}function Y(q){return b({type:"signal",...q})}function _(q){return K(q)}import{createMarkupNodeLike as V}from"@ecopages/jsx";import{state as T}from"@ecopages/signals";function E(q){return typeof q==="object"&&q!==null&&typeof q.get==="function"&&typeof q.set==="function"&&typeof q.subscribe==="function"&&typeof q.update==="function"}class M{host;hydrate;hydrationKey;property;source;currentValue;hasAppliedHostHydration=!1;sourceUnsubscribe;constructor(q){this.host=q.host,this.hydrate=q.hydrate,this.hydrationKey=q.hydrationKey,this.property=q.property,this.source=q.source??T(this.resolveInitialValue(q.initialValue)),this.currentValue=this.source.get(),this.host.registerReactiveMember(this.property,this.source)}get(){return this.source.get()}set(q){this.source.set(q)}subscribe(q){return this.source.subscribe(q)}update(q){this.set(q(this.get()))}connectToSource(){if(this.sourceUnsubscribe)return;let q=this.source.get();if(!Object.is(this.currentValue,q))this.currentValue=q;this.sourceUnsubscribe=this.source.subscribe((Q)=>{this.handleSourceChange(Q)})}disconnectFromSource(){this.sourceUnsubscribe?.(),this.sourceUnsubscribe=void 0}hydrateFromHost(){if(!this.hydrate||this.hasAppliedHostHydration)return;this.hasAppliedHostHydration=!0;let q=this.source.get(),Q=this.resolveInitialValue(q);if(!Object.is(q,Q))this.source.set(Q),this.currentValue=this.source.get()}renderHydrationScript(){let q=this.renderHydrationScriptTag();if(!q)return;return V(q)}renderHydrationScriptTag(){let q=this.serializeHydrationValue();if(!q)return;return Y({hydrationKey:this.hydrationKey,serializedValue:q})}findHydrationScriptElement(){if(!(this.host instanceof Element))return null;return A(this.host,"signal",this.hydrationKey)}isObject(q){return typeof q==="object"&&!Array.isArray(q)&&q!==null}resolveInitialValue(q){if(!this.hydrate)return q;let Q=this.findHydrationScriptElement();if(!Q)return q;let G=x(Q,q);if(this.hydrate===Object&&this.isObject(G)&&this.isObject(q))return{...q,...G};return G}serializeHydrationValue(){if(!this.hydrate)return;let q=JSON.stringify(this.get());if(typeof q!=="string")return;return _(q)}handleSourceChange(q){this.currentValue=q}}function k(q){return new M(q)}function v(q){return typeof q.registerHydrationBinding==="function"}function Z0(q={}){return(Q,G)=>{let Z=(X)=>{let $=X[G];if($ instanceof M)return $;let F=typeof q.source==="function"?q.source(X):q.source??(E($)?$:void 0),j=q.bind??R(X),H=F!==void 0?q.initial:$===void 0?q.initial:$;X.defineReactiveBinding(G,j);let B=k({host:X,hydrate:q.hydrate,hydrationKey:G,initialValue:H,property:G,source:F});if(X.registerConnectedCallback(()=>{B.hydrateFromHost(),B.connectToSource()}),X.registerCleanupCallback(()=>{B.disconnectFromSource()}),q.hydrate&&v(X))X.registerHydrationBinding(G,B);return X[G]=B,B};L(Q,(X)=>{let $=Z(X);X.registerConnectedCallback(()=>{if(!(X[G]instanceof M))X[G]=$})})}}export{Z0 as signal};
|
|
2
2
|
|
|
3
|
-
//# debugId=
|
|
3
|
+
//# debugId=13A81B81594EC59B64756E2164756E21
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
"import type { SsrSerializableHydrationBinding } from './ssr-hydration-binding';\n\n/**\n * Hosts that can register keyed SSR hydration bindings.\n */\nexport interface HydrationCapableHost {\n\tregisterHydrationBinding(name: string, binding: SsrSerializableHydrationBinding): void;\n}\n\nexport function isHydrationCapableHost(host: object): host is HydrationCapableHost {\n\treturn typeof (host as HydrationCapableHost).registerHydrationBinding === 'function';\n}\n",
|
|
12
12
|
"import type { ReactiveBindingOption } from '../../core/reactive-prop-core';\nimport { createHostSignal, HostSignal, isWritableSignalLike } from '../../signals/host-signal';\nimport { isHydrationCapableHost } from '../../core/hydration-capable-host';\nimport type { ReactiveHostLike } from '../../core/reactive-host';\nimport { resolveHostAutoBind } from '../shared/auto-bind';\nimport { registerLegacyPostConstructionInitializer } from './instance-initializers';\nimport type { AttributeTypeConstant } from '../../utils/attribute-utils';\nimport type { WritableSignal } from '@ecopages/signals';\n\nexport type SignalDecoratorOptions<Value = unknown> = {\n\tbind?: ReactiveBindingOption;\n\tinitial?: Value;\n\tsource?: WritableSignal<Value> | ((host: ReactiveHostLike) => WritableSignal<Value>);\n\thydrate?: AttributeTypeConstant;\n};\n\nexport function signal<Value = unknown>(options: SignalDecoratorOptions<Value> = {}) {\n\treturn (target: ReactiveHostLike, propertyName: string) => {\n\t\tconst initializeSignal = (element: ReactiveHostLike): HostSignal<unknown> => {\n\t\t\tconst currentValue = element[propertyName as keyof typeof element] as unknown;\n\n\t\t\tif (currentValue instanceof HostSignal) {\n\t\t\t\treturn currentValue;\n\t\t\t}\n\n\t\t\tconst resolvedSource =\n\t\t\t\ttypeof options.source === 'function'\n\t\t\t\t\t? options.source(element)\n\t\t\t\t\t: (options.source ?? (isWritableSignalLike(currentValue) ? currentValue : undefined));\n\n\t\t\tconst bind = options.bind ?? resolveHostAutoBind(element);\n\n\t\t\tconst resolvedInitialValue =\n\t\t\t\tresolvedSource !== undefined\n\t\t\t\t\t? options.initial\n\t\t\t\t\t: ((currentValue === undefined ? options.initial : currentValue) as Value);\n\t\t\telement.defineReactiveBinding(propertyName, bind);\n\n\t\t\tconst hostSignal = createHostSignal({\n\t\t\t\thost: element,\n\t\t\t\thydrate: options.hydrate,\n\t\t\t\thydrationKey: propertyName,\n\t\t\t\tinitialValue: resolvedInitialValue,\n\t\t\t\tproperty: propertyName,\n\t\t\t\tsource: resolvedSource,\n\t\t\t});\n\n\t\t\telement.registerConnectedCallback(() => {\n\t\t\t\thostSignal.hydrateFromHost();\n\t\t\t\thostSignal.connectToSource();\n\t\t\t});\n\t\t\telement.registerCleanupCallback(() => {\n\t\t\t\thostSignal.disconnectFromSource();\n\t\t\t});\n\n\t\t\tif (options.hydrate && isHydrationCapableHost(element)) {\n\t\t\t\telement.registerHydrationBinding(propertyName, hostSignal);\n\t\t\t}\n\n\t\t\t(element as unknown as Record<string, unknown>)[propertyName] = hostSignal;\n\t\t\treturn hostSignal as unknown as HostSignal<unknown>;\n\t\t};\n\n\t\tregisterLegacyPostConstructionInitializer(target, (element) => {\n\t\t\tconst hostSignal = initializeSignal(element);\n\t\t\telement.registerConnectedCallback(() => {\n\t\t\t\tif (!((element as any)[propertyName] instanceof HostSignal)) {\n\t\t\t\t\t(element as unknown as Record<string, unknown>)[propertyName] = hostSignal;\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\t};\n}\n"
|
|
13
13
|
],
|
|
14
|
-
"mappings": "
|
|
15
|
-
"debugId": "
|
|
14
|
+
"mappings": "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",
|
|
15
|
+
"debugId": "13A81B81594EC59B64756E2164756E21",
|
|
16
16
|
"names": []
|
|
17
17
|
}
|
package/decorators/on-event.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
var
|
|
1
|
+
var H=Symbol.for("@ecopages/radiant.legacy-instance-initializers"),$=Symbol.for("@ecopages/radiant.legacy-post-construction-initializers"),J=Symbol.for("@ecopages/radiant.legacy-executed-post-construction-initializers");function W(x,d){q(x,H,d)}function E(x,d){q(x,$,d)}function k(x){L(x,H)}function m(x,d){let F=x;O(x,d,F[J]??=new Set)}function q(x,d,F){let M=x,R=Object.prototype.hasOwnProperty.call(M,d)?M[d]:void 0;if(Array.isArray(R)){R.push(F);return}Object.defineProperty(M,d,{value:[F]})}function L(x,d){K(x,(F)=>{let M=F[d];if(!Array.isArray(M))return;for(let R of M)R(x)})}function O(x,d,F){for(let M of _(x)){let R=M[$];if(!Array.isArray(R))continue;for(let P of R){if(F.has(P))continue;P(x,d),F.add(P)}}}function _(x){let d=[],F=Object.getPrototypeOf(x);while(F&&F!==Object.prototype)d.unshift(F),F=Object.getPrototypeOf(F);return d}function K(x,d){for(let F of _(x))d(F)}function I(x){return typeof x==="function"}function b(x,d,F,M){if(typeof M==="object")return x(void 0,M);return d(F,M)}function G(x,d,F,M,R){if(typeof M==="object"){if(!I(F))throw TypeError("Standard method decorators require a method target");return x(F,M)}if(!R)throw TypeError("Legacy method decorators require a property descriptor");return d(F,M,R)}function N(x){let d=globalThis.CSS;if(typeof d?.escape==="function")return d.escape(x);let F="";for(let M=0;M<x.length;M+=1){let R=x[M]??"",P=R.codePointAt(0)??0;if(P===0){F+="�";continue}let u=P>=1&&P<=31||P===127,r=M===0&&P>=48&&P<=57,D=M===1&&P>=48&&P<=57&&(x[0]??"")==="-",S=M===0&&R==="-"&&x.length===1;if(u||r||D){F+=`\\${P.toString(16)} `;continue}if(P>=128||R==="-"||R==="_"||P>=48&&P<=57||P>=65&&P<=90||P>=97&&P<=122){F+=S?`\\${R}`:R;continue}F+=`\\${R}`}return F}var j=Symbol("radiant.shadowRootListenerHooks"),Q=Symbol("radiant.patchedAttachShadow");function X(x){if(x instanceof Element)return x;if("host"in x)return x.host;return x.element}function A(x){return!(x instanceof Element)}function U(x,d,F,M){let R=(P)=>{if(P.target instanceof Element&&P.target.matches(F))M(P)};return x.addEventListener(d.type,R,d.options),()=>{x.removeEventListener(d.type,R,d.options)}}function C(x,d){let F=X(x);if(!F[j])F[j]=new Set;if(F[j].add(d),F[Q])return;let M=F.attachShadow;F.attachShadow=function(P){let u=M.call(this,P);for(let r of F[j]??[])r();return u},F[Q]=!0}function T(x,d,F){if(A(x)&&"scope"in d&&d.scope&&d.scope!=="light")throw Error("RadiantController event listeners only support light DOM scope.");let M=X(x),R=F.bind(x),P=null,u=null,r=null,D=null,S=!1,y=()=>{P?.(),u?.(),r?.(),D?.(),P=null,u=null,r=null,D=null},V=()=>{if(S)return;if("window"in d&&!P)window.addEventListener(d.type,R,d.options),P=()=>{window.removeEventListener(d.type,R,d.options)};if("document"in d&&!u)document.addEventListener(d.type,R,d.options),u=()=>{document.removeEventListener(d.type,R,d.options)};if("selector"in d||"ref"in d){let B="selector"in d?d.selector:`[data-ref='${N(d.ref)}']`;if(d.scope!=="shadow"&&!r)r=U(M,d,B,R);if(d.scope!=="light"&&M.shadowRoot&&!D)D=U(M.shadowRoot,d,B,R)}};if("selector"in d||"ref"in d){if(d.scope!=="light")C(x,()=>{if(x.isConnected)V()})}if(x.registerConnectedCallback(V),x.registerCleanupCallback(y),x.isConnected)V();return()=>{S=!0,y()}}function Y(x){return(d,F,M)=>{let R=M.value;return W(d,(P)=>{T(P,x,R.bind(P))}),M}}function Z(x){return function(d,F){F.addInitializer(function(){T(this,x,d.bind(this))})}}function e(x){function d(F,M,R){return G(Z(x),Y(x),F,M,R)}return d}export{e as onEvent};
|
|
2
2
|
|
|
3
|
-
//# debugId=
|
|
3
|
+
//# debugId=4F9923CD3B261A4E64756E2164756E21
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
"import { createEventListener, type EventListenerHost } from '../../helpers/create-event-listener';\nimport type { OnEventConfig } from '../on-event';\nimport type { Method } from '../../types';\n\n/**\n * A decorator to subscribe to an event on the target element.\n * The event listener will be automatically unsubscribed when the element is disconnected.\n *\n * Note: This decorator uses event delegation, which means it relies on event bubbling.\n * Therefore, it will not work with events that do not bubble, such as `focus`, `blur`, `load`, `unload`, `scroll`, etc.\n * For focus and blur events, consider using `focusin` and `focusout` which are similar but do bubble.\n *\n * @param eventConfig The event configuration.\n * @param eventConfig.selectors The CSS selector(s) of the target element(s).\n * @param eventConfig.ref The data-ref attribute of the target element.\n * @param eventConfig.type The type of the event to listen for.\n * @param eventConfig.options Optional. An options object that specifies characteristics about the event listener.\n */\nexport function onEvent(eventConfig: OnEventConfig) {\n\treturn function <Host extends EventListenerHost, T extends Method>(\n\t\toriginalMethod: T,\n\t\tcontext: ClassMethodDecoratorContext<Host, T>,\n\t): void {\n\t\tcontext.addInitializer(function (this: Host) {\n\t\t\tcreateEventListener(this, eventConfig, originalMethod.bind(this));\n\t\t});\n\t};\n}\n",
|
|
11
11
|
"import type { Method } from '../types';\nimport type { EventListenerHost, OnEventConfig, OnEventScope } from '../helpers/create-event-listener';\nimport { onEvent as legacyOnEvent } from './legacy/on-event';\nimport { onEvent as standardOnEvent } from './standard/on-event';\nimport { methodDecoratorBridge } from './bridge';\n\nexport type { OnEventConfig, OnEventScope };\n\n/**\n * A decorator to subscribe to an event on the target element.\n * The event listener will be automatically unsubscribed when the element is disconnected.\n *\n * Note: This decorator uses event delegation, which means it relies on event bubbling.\n * Therefore, it will not work with events that do not bubble, such as `focus`, `blur`, `load`, `unload`, `scroll`, etc.\n * For focus and blur events, consider using `focusin` and `focusout` which are similar but do bubble.\n * Delegated listeners observe the host light DOM by default, and can optionally observe the shadow root or both trees.\n *\n * @param options {@link OnEventConfig} The event configuration.\n */\nexport function onEvent(options: OnEventConfig) {\n\tfunction decorator<Host extends EventListenerHost, TMethod extends Method>(\n\t\tprotoOrTarget: TMethod,\n\t\tnameOrContext: ClassMethodDecoratorContext<Host, TMethod>,\n\t): void;\n\tfunction decorator(\n\t\tprotoOrTarget: EventListenerHost,\n\t\tnameOrContext: string,\n\t\tdescriptor: TypedPropertyDescriptor<Method>,\n\t): TypedPropertyDescriptor<Method> | void;\n\tfunction decorator(\n\t\tprotoOrTarget: EventListenerHost | Method,\n\t\tnameOrContext: string | ClassMethodDecoratorContext<EventListenerHost, Method>,\n\t\tdescriptor?: TypedPropertyDescriptor<Method>,\n\t): TypedPropertyDescriptor<Method> | void {\n\t\treturn methodDecoratorBridge(\n\t\t\tstandardOnEvent(options),\n\t\t\tlegacyOnEvent(options),\n\t\t\tprotoOrTarget,\n\t\t\tnameOrContext,\n\t\t\tdescriptor,\n\t\t);\n\t}\n\n\treturn decorator;\n}\n"
|
|
12
12
|
],
|
|
13
|
-
"mappings": "
|
|
14
|
-
"debugId": "
|
|
13
|
+
"mappings": "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",
|
|
14
|
+
"debugId": "4F9923CD3B261A4E64756E2164756E21",
|
|
15
15
|
"names": []
|
|
16
16
|
}
|
package/decorators/on-updated.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
var
|
|
1
|
+
var a=Symbol.for("@ecopages/radiant.legacy-instance-initializers"),c=Symbol.for("@ecopages/radiant.legacy-post-construction-initializers"),R=Symbol.for("@ecopages/radiant.legacy-executed-post-construction-initializers");function h(o,d){g(o,a,d)}function D(o,d){g(o,c,d)}function C(o){x(o,a)}function b(o,d){let t=o;H(o,d,t[R]??=new Set)}function g(o,d,t){let r=o,e=Object.prototype.hasOwnProperty.call(r,d)?r[d]:void 0;if(Array.isArray(e)){e.push(t);return}Object.defineProperty(r,d,{value:[t]})}function x(o,d){P(o,(t)=>{let r=t[d];if(!Array.isArray(r))return;for(let e of r)e(o)})}function H(o,d,t){for(let r of f(o)){let e=r[c];if(!Array.isArray(e))continue;for(let n of e){if(t.has(n))continue;n(o,d),t.add(n)}}}function f(o){let d=[],t=Object.getPrototypeOf(o);while(t&&t!==Object.prototype)d.unshift(t),t=Object.getPrototypeOf(t);return d}function P(o,d){for(let t of f(o))d(t)}function T(o){return typeof o==="function"}function S(o,d,t,r){if(typeof r==="object")return o(void 0,r);return d(t,r)}function M(o,d,t,r,e){if(typeof r==="object"){if(!T(t))throw TypeError("Standard method decorators require a method target");return o(t,r)}if(!e)throw TypeError("Legacy method decorators require a property descriptor");return d(t,r,e)}function F(o){return(d,t)=>{let r=Symbol(`@ecopages/radiant/on-updated:${t}:cleanup`);h(d,(e)=>{e.registerConnectedCallback(()=>{let n=e[t].bind(e),u=[];if(Array.isArray(o))for(let s of o)u.push(e.registerUpdateCallback(s,n));else if(typeof o==="string")u.push(e.registerUpdateCallback(o,n));e[r]=()=>{for(let s of u)s()}}),e.registerCleanupCallback(()=>{let n=e[r];if(typeof n==="function")n(),delete e[r]})})}}function l(o){return function(d,t){t.addInitializer(function(){let r=d.bind(this);if(Object.defineProperty(this,t.name,{value:r,configurable:!0,writable:!0}),Array.isArray(o))for(let e of o)this.registerUpdateCallback(e,r);else if(typeof o==="string")this.registerUpdateCallback(o,r)})}}function q(o){function d(t,r,e){return M(l(o),F(o),t,r,e)}return d}export{q as onUpdated};
|
|
2
2
|
|
|
3
|
-
//# debugId=
|
|
3
|
+
//# debugId=1BB7097FD4770F8564756E2164756E21
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
"import type { Method } from '../../types';\n\ntype UpdatedHost = {\n\tregisterUpdateCallback(key: string, update: (...args: unknown[]) => unknown): () => void;\n};\n\nexport function onUpdated(keyOrKeys: string | string[]) {\n\treturn function <THost extends UpdatedHost, T extends Method>(\n\t\toriginalMethod: T,\n\t\tcontext: ClassMethodDecoratorContext<THost, T>,\n\t): void {\n\t\tcontext.addInitializer(function (this: THost) {\n\t\t\tconst boundMethod = originalMethod.bind(this);\n\n\t\t\tObject.defineProperty(this, context.name, {\n\t\t\t\tvalue: boundMethod,\n\t\t\t\tconfigurable: true,\n\t\t\t\twritable: true,\n\t\t\t});\n\n\t\t\tif (Array.isArray(keyOrKeys)) {\n\t\t\t\tfor (const key of keyOrKeys) {\n\t\t\t\t\tthis.registerUpdateCallback(key, boundMethod);\n\t\t\t\t}\n\t\t\t} else if (typeof keyOrKeys === 'string') {\n\t\t\t\tthis.registerUpdateCallback(keyOrKeys, boundMethod);\n\t\t\t}\n\t\t});\n\t};\n}\n",
|
|
9
9
|
"import type { Method } from '../types';\nimport { onUpdated as legacyOnUpdated } from './legacy/on-updated';\nimport { onUpdated as standardOnUpdated } from './standard/on-updated';\nimport { methodDecoratorBridge } from './bridge';\n\ntype UpdateCallback = (...args: unknown[]) => unknown;\n\ntype UpdatedHost = {\n\tregisterCleanupCallback(callback: () => void): void;\n\tregisterConnectedCallback(callback: () => void): void;\n\tregisterUpdateCallback(key: string, update: UpdateCallback): () => void;\n};\n\n/**\n * A decorator to bind a method to the instance.\n */\nexport function onUpdated(keyOrKeys: string | string[]) {\n\tfunction decorator<THost extends UpdatedHost, TMethod extends Method>(\n\t\tprotoOrTarget: TMethod,\n\t\tnameOrContext: ClassMethodDecoratorContext<THost, TMethod>,\n\t): void;\n\tfunction decorator(\n\t\tprotoOrTarget: UpdatedHost,\n\t\tnameOrContext: string,\n\t\tdescriptor: TypedPropertyDescriptor<Method>,\n\t): TypedPropertyDescriptor<Method> | void;\n\tfunction decorator(\n\t\tprotoOrTarget: UpdatedHost | Method,\n\t\tnameOrContext: string | ClassMethodDecoratorContext<UpdatedHost, Method>,\n\t\tdescriptor?: TypedPropertyDescriptor<Method>,\n\t): TypedPropertyDescriptor<Method> | void {\n\t\treturn methodDecoratorBridge(\n\t\t\tstandardOnUpdated(keyOrKeys),\n\t\t\tlegacyOnUpdated(keyOrKeys),\n\t\t\tprotoOrTarget,\n\t\t\tnameOrContext,\n\t\t\tdescriptor,\n\t\t);\n\t}\n\n\treturn decorator;\n}\n"
|
|
10
10
|
],
|
|
11
|
-
"mappings": "
|
|
12
|
-
"debugId": "
|
|
11
|
+
"mappings": "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",
|
|
12
|
+
"debugId": "1BB7097FD4770F8564756E2164756E21",
|
|
13
13
|
"names": []
|
|
14
14
|
}
|
package/decorators/prop.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
var
|
|
1
|
+
var _=Symbol.for("@ecopages/radiant.reactivePropDefinitions");function T(o,R,d){let M=o.constructor,F=M[_]??[];if(F.some((P)=>P.name===R))return;F.push({name:R,options:d}),M[_]=F}function a(o){return(o.constructor[_]??[]).slice()}var k=Symbol.for("@ecopages/radiant.legacy-instance-initializers"),g=Symbol.for("@ecopages/radiant.legacy-post-construction-initializers"),z=Symbol.for("@ecopages/radiant.legacy-executed-post-construction-initializers");function G(o,R){Y(o,k,R)}function Q(o,R){Y(o,g,R)}function oo(o){N(o,k)}function Ro(o,R){let d=o;f(o,R,d[z]??=new Set)}function Y(o,R,d){let M=o,F=Object.prototype.hasOwnProperty.call(M,R)?M[R]:void 0;if(Array.isArray(F)){F.push(d);return}Object.defineProperty(M,R,{value:[d]})}function N(o,R){b(o,(d)=>{let M=d[R];if(!Array.isArray(M))return;for(let F of M)F(o)})}function f(o,R,d){for(let M of Z(o)){let F=M[g];if(!Array.isArray(F))continue;for(let P of F){if(d.has(P))continue;P(o,R),d.add(P)}}}function Z(o){let R=[],d=Object.getPrototypeOf(o);while(d&&d!==Object.prototype)R.unshift(d),d=Object.getPrototypeOf(d);return R}function b(o,R){for(let d of Z(o))R(d)}function O(o){switch(o){case Array:return"array";case Boolean:return"boolean";case Number:return"number";case Object:return"object";case String:return"string"}}function m(o){switch(typeof o){case"boolean":return"boolean";case"number":return"number";case"string":return"string"}if(Array.isArray(o))return"array";if(Object.prototype.toString.call(o)==="[object Object]")return"object"}function v(o){switch(o){case Number:return 0;case String:return"";case Boolean:return!1;default:return null}}function V(o){try{return JSON.parse(o)}catch{throw TypeError("Invalid JSON string")}}var r={array(o){let R=V(o);if(!Array.isArray(R))throw TypeError(`Expected an array but got a value of type "${typeof R}"`);return R},boolean(o){return!(o==="0"||String(o).toLowerCase()==="false")},number(o){return Number(o.replace(/_/g,""))},object(o){let R=JSON.parse(o);if(R===null||typeof R!=="object"||Array.isArray(R))throw TypeError(`expected value of type "object" but instead got value "${o}" of type "${m(R)}"`);return R},string(o){return o}},X={default:U,array:I,object:I};function I(o){return JSON.stringify(o)}function U(o){return`${o}`}function j(o,R){let d=O(R);if(!d)throw TypeError(`[radiant-element] Unknown type "${R}"`);return r[d](o)}function $(o,R){let d=O(R);if(!d)throw TypeError(`[radiant-element] Unknown type "${R}"`);return(X[d]??X.default??U)(o)}function y(o){return typeof o==="boolean"}function u(o){return typeof o==="number"}function p(o){return typeof o==="string"}function i(o){return Array.isArray(o)}function t(o){return typeof o==="object"&&!Array.isArray(o)&&o!==null}function w(o,R){switch(o){case Boolean:return y(R);case Number:return u(R);case String:return p(R);case Array:return i(R);case Object:return t(R);default:return!1}}var Fo=(o,R,d,M)=>{if(R===Boolean){let P=o.getAttribute(d);if(P===null)return M;return P===""?!0:j(P,R)}let F=o.getAttribute(d);return F!==null?j(F,R):M??v(R)};function E(o,R){if(R!==void 0&&!w(o,R))throw Error(`defaultValue does not match the expected type for ${o.name}`)}function co(o,R,d,M){return{type:d,name:o,initialValue:M,attribute:R,converter:{fromAttribute:(F)=>j(F,d),toAttribute:(F)=>$(F,d)}}}function l(o){return typeof o==="function"}function J(o,R,d,M){if(typeof M==="object")return o(void 0,M);return R(d,M)}function Ho(o,R,d,M,F){if(typeof M==="object"){if(!l(d))throw TypeError("Standard method decorators require a method target");return o(d,M)}if(!F)throw TypeError("Legacy method decorators require a property descriptor");return R(d,M,F)}function h(o,R,d,M=!1){if(o.getReactiveMember(R))return;if(o.createReactiveMember(R,d),M!==void 0&&M!==!1)o.defineReactiveBinding(R,M)}function n({type:o,attribute:R,reflect:d,defaultValue:M,bind:F}){return E(o,M),(P,c)=>{let D=R??c;T(P,c,{type:o,reflect:d,attribute:D,defaultValue:M,bind:F});let H=Symbol.for(`@ecopages/radiant.ssr-prop:${c}`),C=Symbol.for(`@ecopages/radiant.ssr-prop-assigned:${c}`);Object.defineProperty(P,c,{get(){return this[H]??M},set(x){this[H]=x,this[C]=!0},configurable:!0,enumerable:!0}),G(P,(x)=>{let B=x[c]??M;h(x,c,B,F)}),Q(P,(x,L)=>{let B=x,S=x[c],K=B[C]===!0,q=Object.prototype.hasOwnProperty.call(x,c),W=q?x[c]:void 0,s=K?S:L==="ssr"&&q&&W!==M?W:M===void 0?S:M;x.createReactiveProp(c,{type:o,reflect:d,attribute:D,defaultValue:s,bind:F})})}}function A({type:o,attribute:R,reflect:d,defaultValue:M,bind:F}){return E(o,M),function(P,c){let D=String(c.name),H=R??D,C=Symbol(`@ecopages/radiant/reactive-prop:${D}:initializer`);return c.addInitializer(function(){let x=this[C],L=M===void 0?x:M;T(this,D,{type:o,reflect:d,attribute:H,defaultValue:M,bind:F}),this.createReactiveProp(D,{type:o,reflect:d,attribute:H,defaultValue:L,bind:F})}),function(x){return this[C]=x,x}}}function Qo(o){function R(d,M){return J(A(o),n(o),d,M)}return R}export{Qo as prop};
|
|
2
2
|
|
|
3
|
-
//# debugId=
|
|
3
|
+
//# debugId=81A900EC9DDA24BD64756E2164756E21
|