Fix bin/publish: copy docs.dist from project root

Fix bin/publish: use correct .env path for rspade_system
Fix bin/publish script: prevent grep exit code 1 from terminating script

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
root
2025-10-21 02:08:33 +00:00
commit f6fac6c4bc
79758 changed files with 10547827 additions and 0 deletions

62
node_modules/@jqhtml/core/dist/component-registry.d.ts generated vendored Executable file
View File

@@ -0,0 +1,62 @@
/**
* JQHTML v2 Component Registry
*
* Global registry for component classes and templates
* Enables dynamic component instantiation and template association
*/
import { Jqhtml_Component } from './component.js';
export type TemplateFunction = (this: Jqhtml_Component, data: Record<string, any>, args: Record<string, any>, content: any) => [any[], Jqhtml_Component];
export interface TemplateDefinition {
name: string;
tag: string;
defaultAttributes?: Record<string, any>;
render: TemplateFunction;
}
export type ComponentConstructor = new (args: Record<string, any>, element?: any) => Jqhtml_Component;
/**
* Register a component class with optional template
*/
export declare function register_component(name: string, component_class: ComponentConstructor, template?: TemplateDefinition): void;
export declare function register_component(component_class: ComponentConstructor): void;
/**
* Get a component class by name
*/
export declare function get_component_class(name: string): ComponentConstructor | undefined;
/**
* Register a template - name is extracted from template.name property
* Returns true if registered, false if duplicate
*/
export declare function register_template(template_def: TemplateDefinition): boolean;
/**
* Get template for a component by name
*/
export declare function get_template(name: string): TemplateDefinition;
/**
* Get template for a component class - walks up inheritance chain
*/
export declare function get_template_by_class(component_class: ComponentConstructor): TemplateDefinition;
/**
* Create a component instance by name
* If no component class is registered, uses the default Component class
*/
export declare function create_component(name: string, element?: any, args?: Record<string, any>): Jqhtml_Component;
/**
* Check if a component is registered
*/
export declare function has_component(name: string): boolean;
/**
* Get all registered component names
*/
export declare function get_component_names(): string[];
/**
* Get all registered template names
*/
export declare function get_registered_templates(): string[];
/**
* List all registered components with their template status
*/
export declare function list_components(): Record<string, {
has_class: boolean;
has_template: boolean;
}>;
//# sourceMappingURL=component-registry.d.ts.map

1
node_modules/@jqhtml/core/dist/component-registry.d.ts.map generated vendored Executable file
View File

@@ -0,0 +1 @@
{"version":3,"file":"component-registry.d.ts","sourceRoot":"","sources":["../src/component-registry.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAGlD,MAAM,MAAM,gBAAgB,GAAG,CAC7B,IAAI,EAAE,gBAAgB,EACtB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACzB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACzB,OAAO,EAAE,GAAG,KACT,CAAC,GAAG,EAAE,EAAE,gBAAgB,CAAC,CAAC;AAG/B,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACxC,MAAM,EAAE,gBAAgB,CAAC;CAC1B;AAGD,MAAM,MAAM,oBAAoB,GAAG,KAAK,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,OAAO,CAAC,EAAE,GAAG,KAAK,gBAAgB,CAAC;AAsCtG;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,MAAM,EACZ,eAAe,EAAE,oBAAoB,EACrC,QAAQ,CAAC,EAAE,kBAAkB,GAC5B,IAAI,CAAC;AACR,wBAAgB,kBAAkB,CAAC,eAAe,EAAE,oBAAoB,GAAG,IAAI,CAAC;AA4ChF;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,oBAAoB,GAAG,SAAS,CAElF;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,YAAY,EAAE,kBAAkB,GAAG,OAAO,CAoC3E;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,kBAAkB,CA0B7D;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,eAAe,EAAE,oBAAoB,GAAG,kBAAkB,CAwB/F;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,GAAG,EACb,IAAI,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM,GAC7B,gBAAgB,CAGlB;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEnD;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,MAAM,EAAE,CAE9C;AAED;;GAEG;AACH,wBAAgB,wBAAwB,IAAI,MAAM,EAAE,CAEnD;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,MAAM,CAAC,MAAM,EAAE;IAAE,SAAS,EAAE,OAAO,CAAC;IAAC,YAAY,EAAE,OAAO,CAAA;CAAE,CAAC,CAsB/F"}

148
node_modules/@jqhtml/core/dist/component.d.ts generated vendored Executable file
View File

@@ -0,0 +1,148 @@
/**
* JQHTML v2 Component Base Class
*
* Core component implementation following v2 specification:
* - 5-stage lifecycle coordinated by LifecycleManager
* - Direct jQuery manipulation (no virtual DOM)
* - Scoped IDs using _cid pattern
* - Event emission and CSS class hierarchy
*/
declare global {
interface Window {
JQHTML_DEBUG?: {
log: (componentName: string, phase: string, message: string, data?: any) => void;
updateTree: () => void;
};
}
}
export declare class Jqhtml_Component {
static template?: any;
$: any;
args: Record<string, any>;
data: Record<string, any>;
_cid: string;
_ready_state: number;
private _lifecycle_manager;
private _parent;
private _children;
private _destroyed;
private _data_before_render;
private _lifecycle_callbacks;
private _lifecycle_states;
private __loading;
constructor(element?: any, args?: Record<string, any>);
/**
* Render phase - Create DOM structure
* Called top-down (parent before children) when part of lifecycle
* Can also be called directly to just re-render DOM without lifecycle hooks
*
* @param id Optional scoped ID - if provided, delegates to child component's render()
*/
render(id?: string | null): Promise<void>;
/**
* Create phase - Quick setup, prepare UI
* Called bottom-up (children before parent)
*/
create(): Promise<void>;
/**
* Load phase - Fetch data from APIs
* Called bottom-up, fully parallel
* NO DOM MODIFICATIONS ALLOWED IN THIS PHASE
*/
load(): Promise<void>;
/**
* Ready phase - Component fully initialized
* Called bottom-up (children before parent)
*/
ready(): Promise<void>;
/**
* Reinitialize the component - full reset and re-initialization
* Wipes the innerHTML, resets data to empty, and runs full lifecycle
*/
reinitialize(): Promise<void>;
/**
* Reload data - re-fetch data and update the component
* Re-runs on_load(), then renders and calls on_ready()
*/
reload_data(): Promise<void>;
/**
* Destroy the component and cleanup
* Synchronously cleans up component and all children before removal
*/
destroy(): void;
on_render(): void | Promise<void>;
on_create(): void | Promise<void>;
on_load(): Promise<void>;
on_ready(): Promise<void>;
on_destroy(): void | Promise<void>;
/**
* Should component re-render after load?
* By default, only re-renders if data has changed
* Override to control re-rendering behavior
*/
should_rerender(): boolean;
/**
* Get component name for debugging
*/
component_name(): string;
/**
* Emit a jQuery event from component root
*/
emit(event_name: string, data?: any): void;
/**
* Register lifecycle event callback
* Allowed events: 'render', 'create', 'load', 'ready', 'destroy'
* Callbacks fire after the lifecycle method completes
* If the event has already occurred, the callback fires immediately AND registers for future occurrences
*/
on(event_name: string, callback: (component: Jqhtml_Component) => void): this;
/**
* Emit lifecycle event - fires all registered callbacks
* @private
*/
private _emit_lifecycle_event;
/**
* Find element by scoped ID
* @param local_id The local ID (without _cid suffix)
* @returns jQuery element with id="local_id:_cid"
*/
$id(local_id: string): any;
/**
* Get component instance by scoped ID
*/
id(local_id: string): Jqhtml_Component | null;
/**
* Get parent component
*/
parent(): Jqhtml_Component | null;
/**
* Get direct child components
*/
children(): Jqhtml_Component[];
/**
* Find descendant components by CSS selector
*/
find(selector: string): Jqhtml_Component[];
/**
* Find closest ancestor component matching selector
*/
closest(selector: string): Jqhtml_Component | null;
/**
* Get CSS class hierarchy for this component type
*/
static get_class_hierarchy(): string[];
private _generate_cid;
/**
* Flatten instruction array - converts ['_content', [...]] markers to flat array
* Recursively flattens nested content from content() calls
*/
private _flatten_instructions;
private _apply_css_classes;
private _apply_default_attributes;
private _set_attributes;
private _update_debug_attrs;
private _find_parent;
private _log_lifecycle;
private _log_debug;
}
//# sourceMappingURL=component.d.ts.map

1
node_modules/@jqhtml/core/dist/component.d.ts.map generated vendored Executable file
View File

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

36
node_modules/@jqhtml/core/dist/debug-entry.d.ts generated vendored Executable file
View File

@@ -0,0 +1,36 @@
/**
* JQHTML Debug Module
*
* Optional debugging utilities for development
* Import separately to keep production bundles small:
*
* import { showDebugOverlay } from '@jqhtml/core/debug';
*/
export { DebugOverlay, showDebugOverlay, hideDebugOverlay } from './debug-overlay.js';
export type { DebugOverlayOptions } from './debug-overlay.js';
export { logLifecycle, applyDebugDelay, logDispatch, logInstruction, logDataChange, isSequentialProcessing, handleComponentError, devWarn } from './debug.js';
export interface DebugSettings {
verbose?: boolean;
logCreationReady?: boolean;
logFullLifecycle?: boolean;
logDispatch?: boolean;
logDispatchVerbose?: boolean;
delayAfterComponent?: number;
delayAfterRender?: number;
delayAfterRerender?: number;
sequentialProcessing?: boolean;
flashComponents?: boolean;
flashDuration?: number;
flashColors?: {
create?: string;
render?: string;
ready?: string;
};
showComponentTree?: boolean;
profilePerformance?: boolean;
breakOnError?: boolean;
traceDataFlow?: boolean;
logInstructionProcessing?: boolean;
highlightSlowRenders?: number;
}
//# sourceMappingURL=debug-entry.d.ts.map

1
node_modules/@jqhtml/core/dist/debug-entry.d.ts.map generated vendored Executable file
View File

@@ -0,0 +1 @@
{"version":3,"file":"debug-entry.d.ts","sourceRoot":"","sources":["../src/debug-entry.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EACL,YAAY,EACZ,gBAAgB,EAChB,gBAAgB,EACjB,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAG9D,OAAO,EACL,YAAY,EACZ,eAAe,EACf,WAAW,EACX,cAAc,EACd,aAAa,EACb,sBAAsB,EACtB,oBAAoB,EACpB,OAAO,EACR,MAAM,YAAY,CAAC;AAGpB,MAAM,WAAW,aAAa;IAE5B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAG7B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAG/B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE;QACZ,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IAGF,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,wBAAwB,CAAC,EAAE,OAAO,CAAC;IACnC,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B"}

61
node_modules/@jqhtml/core/dist/debug-overlay.d.ts generated vendored Executable file
View File

@@ -0,0 +1,61 @@
/**
* JQHTML Debug Overlay
*
* Independent debug controls using pure jQuery DOM manipulation.
* Does NOT use JQHTML components so it works even when components are broken.
*/
export interface DebugOverlayOptions {
position?: 'top' | 'bottom';
theme?: 'dark' | 'light';
compact?: boolean;
showStatus?: boolean;
autoHide?: boolean;
}
export declare class DebugOverlay {
private static instance;
private $container;
private $statusIndicator;
private options;
private $;
constructor(options?: DebugOverlayOptions);
/**
* Static method to show debug overlay (singleton pattern)
*/
static show(options?: DebugOverlayOptions): DebugOverlay;
/**
* Static method to hide debug overlay
*/
static hide(): void;
/**
* Static method to toggle debug overlay visibility
*/
static toggle(): void;
/**
* Static method to destroy debug overlay
*/
static destroy(): void;
/**
* Display the debug overlay
*/
private display;
/**
* Hide the debug overlay
*/
hide(): void;
/**
* Remove the debug overlay completely
*/
destroy(): void;
/**
* Update the status indicator
*/
updateStatus(mode: string): void;
private createOverlay;
private createStatusIndicator;
private addStyles;
private toggle;
private executeAction;
}
export declare function showDebugOverlay(options?: DebugOverlayOptions): DebugOverlay;
export declare function hideDebugOverlay(): void;
//# sourceMappingURL=debug-overlay.d.ts.map

1
node_modules/@jqhtml/core/dist/debug-overlay.d.ts.map generated vendored Executable file
View File

@@ -0,0 +1 @@
{"version":3,"file":"debug-overlay.d.ts","sourceRoot":"","sources":["../src/debug-overlay.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AA8BH,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IACzB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,qBAAa,YAAY;IACvB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAA6B;IACpD,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,gBAAgB,CAAa;IACrC,OAAO,CAAC,OAAO,CAAsB;IACrC,OAAO,CAAC,CAAC,CAAM;gBAEH,OAAO,GAAE,mBAAwB;IAgB7C;;OAEG;IACH,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,mBAAmB,GAAG,YAAY;IAQxD;;OAEG;IACH,MAAM,CAAC,IAAI,IAAI,IAAI;IAMnB;;OAEG;IACH,MAAM,CAAC,MAAM,IAAI,IAAI;IAYrB;;OAEG;IACH,MAAM,CAAC,OAAO,IAAI,IAAI;IAOtB;;OAEG;IACH,OAAO,CAAC,OAAO;IAYf;;OAEG;IACH,IAAI,IAAI,IAAI;IASZ;;OAEG;IACH,OAAO,IAAI,IAAI;IAWf;;OAEG;IACH,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAOhC,OAAO,CAAC,aAAa;IAiDrB,OAAO,CAAC,qBAAqB;IAqB7B,OAAO,CAAC,SAAS;IAoGjB,OAAO,CAAC,MAAM;IAed,OAAO,CAAC,aAAa;CAoEtB;AAGD,wBAAgB,gBAAgB,CAAC,OAAO,CAAC,EAAE,mBAAmB,GAAG,YAAY,CAE5E;AAED,wBAAgB,gBAAgB,IAAI,IAAI,CAEvC"}

19
node_modules/@jqhtml/core/dist/debug.d.ts generated vendored Executable file
View File

@@ -0,0 +1,19 @@
/**
* JQHTML Debug Module
*
* Provides comprehensive debugging capabilities for JQHTML components
*/
import type { Jqhtml_Component } from './component.js';
/**
* Development warning helper
* Warnings are suppressed in production builds or when JQHTML_SUPPRESS_WARNINGS is set
*/
export declare function devWarn(message: string): void;
export declare function logLifecycle(component: Jqhtml_Component, phase: string, status: 'start' | 'complete'): void;
export declare function applyDebugDelay(phase: 'component' | 'render' | 'rerender'): void;
export declare function logInstruction(type: string, data: any): void;
export declare function logDataChange(component: Jqhtml_Component, property: string, oldValue: any, newValue: any): void;
export declare function logDispatch(url: string, route: any, params: any, verbose?: boolean): void;
export declare function isSequentialProcessing(): boolean;
export declare function handleComponentError(component: Jqhtml_Component, phase: string, error: Error): void;
//# sourceMappingURL=debug.d.ts.map

1
node_modules/@jqhtml/core/dist/debug.d.ts.map generated vendored Executable file
View File

@@ -0,0 +1 @@
{"version":3,"file":"debug.d.ts","sourceRoot":"","sources":["../src/debug.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAQvD;;;GAGG;AACH,wBAAgB,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAY7C;AAuDD,wBAAgB,YAAY,CAAC,SAAS,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,UAAU,GAAG,IAAI,CAmD3G;AAGD,wBAAgB,eAAe,CAAC,KAAK,EAAE,WAAW,GAAG,QAAQ,GAAG,UAAU,GAAG,IAAI,CAqBhF;AAGD,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,IAAI,CAK5D;AAGD,wBAAgB,aAAa,CAAC,SAAS,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,GAAG,IAAI,CAM/G;AAUD,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,GAAE,OAAe,GAAG,IAAI,CAoBhG;AAGD,wBAAgB,sBAAsB,IAAI,OAAO,CAGhD;AAGD,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,IAAI,CAQnG"}

2869
node_modules/@jqhtml/core/dist/index.cjs generated vendored Executable file

File diff suppressed because it is too large Load Diff

1
node_modules/@jqhtml/core/dist/index.cjs.map generated vendored Executable file

File diff suppressed because one or more lines are too long

86
node_modules/@jqhtml/core/dist/index.d.ts generated vendored Executable file
View File

@@ -0,0 +1,86 @@
/**
* JQHTML v2 Core Runtime
*
* Main entry point for the JQHTML runtime library
*/
export { Jqhtml_Component } from './component.js';
export { LifecycleManager } from './lifecycle-manager.js';
export type { LifecyclePhase } from './lifecycle-manager.js';
export { register_component, get_component_class, register_template, get_template, get_template_by_class, create_component, has_component, get_component_names, get_registered_templates, list_components } from './component-registry.js';
export type { ComponentConstructor, TemplateFunction, TemplateDefinition } from './component-registry.js';
export { process_instructions, extract_slots } from './instruction-processor.js';
export type { Instruction, TagInstruction, ComponentInstruction, SlotInstruction } from './instruction-processor.js';
export { render_template, escape_html } from './template-renderer.js';
export { logLifecycle, applyDebugDelay, logDispatch, logInstruction, logDataChange, isSequentialProcessing, handleComponentError, devWarn } from './debug.js';
export { DebugOverlay, showDebugOverlay, hideDebugOverlay } from './debug-overlay.js';
export type { DebugOverlayOptions } from './debug-overlay.js';
import { init_jquery_plugin } from './jquery-plugin.js';
export { init_jquery_plugin };
export declare function init(jQuery?: any): void;
export { LifecycleManager as Jqhtml_LifecycleManager } from './lifecycle-manager.js';
import { Jqhtml_Component } from './component.js';
import { LifecycleManager } from './lifecycle-manager.js';
import { register_component, get_component_class, register_template, get_template, get_template_by_class, create_component, has_component, get_component_names, get_registered_templates, list_components } from './component-registry.js';
import { process_instructions, extract_slots } from './instruction-processor.js';
import { render_template, escape_html } from './template-renderer.js';
import { DebugOverlay } from './debug-overlay.js';
import './jquery-plugin.js';
export declare const version = "__VERSION__";
export interface DebugSettings {
verbose?: boolean;
logCreationReady?: boolean;
logFullLifecycle?: boolean;
logDispatch?: boolean;
logDispatchVerbose?: boolean;
delayAfterComponent?: number;
delayAfterRender?: number;
delayAfterRerender?: number;
sequentialProcessing?: boolean;
flashComponents?: boolean;
flashDuration?: number;
flashColors?: {
create?: string;
render?: string;
ready?: string;
};
showComponentTree?: boolean;
profilePerformance?: boolean;
breakOnError?: boolean;
traceDataFlow?: boolean;
logInstructionProcessing?: boolean;
highlightSlowRenders?: number;
}
declare const jqhtml: {
Jqhtml_Component: typeof Jqhtml_Component;
LifecycleManager: typeof LifecycleManager;
register_component: typeof register_component;
get_component_class: typeof get_component_class;
register_template: typeof register_template;
get_template: typeof get_template;
get_template_by_class: typeof get_template_by_class;
create_component: typeof create_component;
has_component: typeof has_component;
get_component_names: typeof get_component_names;
get_registered_templates: typeof get_registered_templates;
list_components: typeof list_components;
process_instructions: typeof process_instructions;
extract_slots: typeof extract_slots;
render_template: typeof render_template;
escape_html: typeof escape_html;
__version: string;
debug: DebugSettings & {
enabled: boolean;
verbose: boolean;
};
setDebugSettings(settings: DebugSettings): void;
enableDebugMode(level?: "basic" | "full"): void;
clearDebugSettings(): void;
showDebugOverlay(options?: any): DebugOverlay;
hideDebugOverlay(): void;
DebugOverlay: typeof DebugOverlay;
installGlobals(): void;
_version(): any;
version(): string;
};
export default jqhtml;
//# sourceMappingURL=index.d.ts.map

1
node_modules/@jqhtml/core/dist/index.d.ts.map generated vendored Executable file
View File

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

2834
node_modules/@jqhtml/core/dist/index.js generated vendored Executable file

File diff suppressed because it is too large Load Diff

1
node_modules/@jqhtml/core/dist/index.js.map generated vendored Executable file

File diff suppressed because one or more lines are too long

27
node_modules/@jqhtml/core/dist/instruction-processor.d.ts generated vendored Executable file
View File

@@ -0,0 +1,27 @@
/**
* JQHTML v2 Instruction Processor
*
* Processes instruction arrays generated by the parser
* Uses v1's HTML string building approach for performance
*/
import { Jqhtml_Component } from './component.js';
export interface TagInstruction {
tag: [string, Record<string, any>, boolean];
}
export interface ComponentInstruction {
comp: [string, Record<string, any>] | [string, Record<string, any>, (context: any) => [any[], Jqhtml_Component]];
}
export interface SlotInstruction {
slot: [string, Record<string, any>, (context: any) => [any[], Jqhtml_Component]];
}
export type Instruction = TagInstruction | ComponentInstruction | SlotInstruction | string;
/**
* Process an array of instructions and append to target
* Uses v1 approach: build HTML string, set innerHTML, then initialize
*/
export declare function process_instructions(instructions: Instruction[], target: any, context: Jqhtml_Component, slots?: Record<string, SlotInstruction>): Promise<void>;
/**
* Utility to extract slots from instructions
*/
export declare function extract_slots(instructions: Instruction[]): Record<string, SlotInstruction>;
//# sourceMappingURL=instruction-processor.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"instruction-processor.d.ts","sourceRoot":"","sources":["../src/instruction-processor.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAIlD,MAAM,WAAW,cAAc;IAC7B,GAAG,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC;CAC7C;AAED,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,KAAK,CAAC,GAAG,EAAE,EAAE,gBAAgB,CAAC,CAAC,CAAC;CAClH;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,KAAK,CAAC,GAAG,EAAE,EAAE,gBAAgB,CAAC,CAAC,CAAC;CAClF;AAED,MAAM,MAAM,WAAW,GAAG,cAAc,GAAG,oBAAoB,GAAG,eAAe,GAAG,MAAM,CAAC;AAqB3F;;;GAGG;AACH,wBAAsB,oBAAoB,CACxC,YAAY,EAAE,WAAW,EAAE,EAC3B,MAAM,EAAE,GAAG,EACX,OAAO,EAAE,gBAAgB,EACzB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,GACtC,OAAO,CAAC,IAAI,CAAC,CAuCf;AAwXD;;GAEG;AACH,wBAAgB,aAAa,CAAC,YAAY,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAW1F"}

2839
node_modules/@jqhtml/core/dist/jqhtml-core.esm.js generated vendored Executable file

File diff suppressed because it is too large Load Diff

1
node_modules/@jqhtml/core/dist/jqhtml-core.esm.js.map generated vendored Executable file

File diff suppressed because one or more lines are too long

575
node_modules/@jqhtml/core/dist/jqhtml-debug.esm.js generated vendored Executable file
View File

@@ -0,0 +1,575 @@
/**
* JQHTML Debug Overlay
*
* Independent debug controls using pure jQuery DOM manipulation.
* Does NOT use JQHTML components so it works even when components are broken.
*/
// Get global jQuery
function getJQuery() {
if (typeof window !== 'undefined' && window.$) {
return window.$;
}
if (typeof window !== 'undefined' && window.jQuery) {
return window.jQuery;
}
throw new Error('FATAL: jQuery is not defined. jQuery must be loaded before using JQHTML. ' +
'Add <script src="https://code.jquery.com/jquery-3.7.1.min.js"></script> before loading JQHTML.');
}
// Get global jqhtml object
function getJqhtml$1() {
if (typeof window !== 'undefined' && window.jqhtml) {
return window.jqhtml;
}
if (typeof globalThis !== 'undefined' && globalThis.jqhtml) {
return globalThis.jqhtml;
}
throw new Error('FATAL: window.jqhtml is not defined. The JQHTML runtime must be loaded before using JQHTML components. ' +
'Ensure @jqhtml/core is imported and initialized before attempting to use debug features.');
}
class DebugOverlay {
constructor(options = {}) {
this.$container = null;
this.$statusIndicator = null;
this.$ = getJQuery();
if (!this.$) {
throw new Error('jQuery is required for DebugOverlay');
}
this.options = {
position: 'bottom',
theme: 'dark',
compact: false,
showStatus: true,
autoHide: false,
...options
};
}
/**
* Static method to show debug overlay (singleton pattern)
*/
static show(options) {
if (!DebugOverlay.instance) {
DebugOverlay.instance = new DebugOverlay(options);
}
DebugOverlay.instance.display();
return DebugOverlay.instance;
}
/**
* Static method to hide debug overlay
*/
static hide() {
if (DebugOverlay.instance) {
DebugOverlay.instance.hide();
}
}
/**
* Static method to toggle debug overlay visibility
*/
static toggle() {
if (DebugOverlay.instance && DebugOverlay.instance.$container) {
if (DebugOverlay.instance.$container.is(':visible')) {
DebugOverlay.hide();
}
else {
DebugOverlay.instance.display();
}
}
else {
DebugOverlay.show();
}
}
/**
* Static method to destroy debug overlay
*/
static destroy() {
if (DebugOverlay.instance) {
DebugOverlay.instance.destroy();
DebugOverlay.instance = null;
}
}
/**
* Display the debug overlay
*/
display() {
if (this.$container) {
this.$container.show();
return;
}
this.createOverlay();
if (this.options.showStatus) {
this.createStatusIndicator();
}
}
/**
* Hide the debug overlay
*/
hide() {
if (this.$container) {
this.$container.hide();
}
if (this.$statusIndicator) {
this.$statusIndicator.hide();
}
}
/**
* Remove the debug overlay completely
*/
destroy() {
if (this.$container) {
this.$container.remove();
this.$container = null;
}
if (this.$statusIndicator) {
this.$statusIndicator.remove();
this.$statusIndicator = null;
}
}
/**
* Update the status indicator
*/
updateStatus(mode) {
if (!this.$statusIndicator)
return;
this.$statusIndicator.text('Debug: ' + mode);
this.$statusIndicator.attr('class', 'jqhtml-debug-status' + (mode !== 'Off' ? ' active' : ''));
}
createOverlay() {
// Add styles first
this.addStyles();
// Create container using jQuery
this.$container = this.$('<div>')
.addClass(`jqhtml-debug-overlay ${this.options.theme} ${this.options.position}`);
// Create content structure
const $content = this.$('<div>').addClass('jqhtml-debug-content');
const $controls = this.$('<div>').addClass('jqhtml-debug-controls');
// Add title
const $title = this.$('<span>')
.addClass('jqhtml-debug-title')
.html('<strong>🐛 JQHTML Debug:</strong>');
$controls.append($title);
// Create buttons
const buttons = [
{ text: 'Slow Motion + Flash', action: 'enableSlowMotionDebug', class: 'success' },
{ text: 'Basic Debug', action: 'enableBasicDebug', class: '' },
{ text: 'Full Debug', action: 'enableFullDebug', class: '' },
{ text: 'Sequential', action: 'enableSequentialMode', class: '' },
{ text: 'Clear Debug', action: 'clearAllDebug', class: 'danger' },
{ text: 'Settings', action: 'showDebugInfo', class: '' }
];
buttons.forEach(btn => {
const $button = this.$('<button>')
.text(btn.text)
.addClass('jqhtml-debug-btn' + (btn.class ? ` ${btn.class}` : ''))
.on('click', () => this.executeAction(btn.action));
$controls.append($button);
});
// Add minimize/close button
const $toggleBtn = this.$('<button>')
.text(this.options.compact ? '▼' : '▲')
.addClass('jqhtml-debug-toggle')
.on('click', () => this.toggle());
$controls.append($toggleBtn);
// Assemble and add to page
$content.append($controls);
this.$container.append($content);
this.$('body').append(this.$container);
}
createStatusIndicator() {
this.$statusIndicator = this.$('<div>')
.addClass('jqhtml-debug-status')
.text('Debug: Off')
.css({
position: 'fixed',
top: '10px',
right: '10px',
background: '#2c3e50',
color: 'white',
padding: '5px 10px',
borderRadius: '4px',
fontSize: '0.75rem',
zIndex: '10001',
opacity: '0.8',
fontFamily: 'monospace'
});
this.$('body').append(this.$statusIndicator);
}
addStyles() {
// Check if styles already exist
if (this.$('#jqhtml-debug-styles').length > 0)
return;
// Create and inject CSS using jQuery - concatenated strings for better minification
const $style = this.$('<style>')
.attr('id', 'jqhtml-debug-styles')
.text('.jqhtml-debug-overlay {' +
'position: fixed;' +
'left: 0;' +
'right: 0;' +
'z-index: 10000;' +
'font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, monospace;' +
'font-size: 0.8rem;' +
'box-shadow: 0 2px 10px rgba(0,0,0,0.2);' +
'}' +
'.jqhtml-debug-overlay.top {' +
'top: 0;' +
'}' +
'.jqhtml-debug-overlay.bottom {' +
'bottom: 0;' +
'}' +
'.jqhtml-debug-overlay.dark {' +
'background: #34495e;' +
'color: #ecf0f1;' +
'}' +
'.jqhtml-debug-overlay.light {' +
'background: #f8f9fa;' +
'color: #333;' +
'border-bottom: 1px solid #dee2e6;' +
'}' +
'.jqhtml-debug-content {' +
'padding: 0.5rem 1rem;' +
'}' +
'.jqhtml-debug-controls {' +
'display: flex;' +
'flex-wrap: wrap;' +
'gap: 8px;' +
'align-items: center;' +
'}' +
'.jqhtml-debug-title {' +
'margin-right: 10px;' +
'font-weight: bold;' +
'}' +
'.jqhtml-debug-btn {' +
'padding: 4px 8px;' +
'border: none;' +
'border-radius: 3px;' +
'background: #3498db;' +
'color: white;' +
'cursor: pointer;' +
'font-size: 0.75rem;' +
'transition: background 0.2s;' +
'}' +
'.jqhtml-debug-btn:hover {' +
'background: #2980b9;' +
'}' +
'.jqhtml-debug-btn.success {' +
'background: #27ae60;' +
'}' +
'.jqhtml-debug-btn.success:hover {' +
'background: #229954;' +
'}' +
'.jqhtml-debug-btn.danger {' +
'background: #e74c3c;' +
'}' +
'.jqhtml-debug-btn.danger:hover {' +
'background: #c0392b;' +
'}' +
'.jqhtml-debug-toggle {' +
'padding: 4px 8px;' +
'border: none;' +
'border-radius: 3px;' +
'background: #7f8c8d;' +
'color: white;' +
'cursor: pointer;' +
'font-size: 0.75rem;' +
'margin-left: auto;' +
'}' +
'.jqhtml-debug-toggle:hover {' +
'background: #6c7b7d;' +
'}' +
'.jqhtml-debug-status.active {' +
'background: #27ae60 !important;' +
'}' +
'@media (max-width: 768px) {' +
'.jqhtml-debug-controls {' +
'flex-direction: column;' +
'align-items: flex-start;' +
'}' +
'.jqhtml-debug-title {' +
'margin-bottom: 5px;' +
'}' +
'}');
this.$('head').append($style);
}
toggle() {
// Toggle between compact and full view
this.options.compact = !this.options.compact;
const $toggleBtn = this.$container.find('.jqhtml-debug-toggle');
$toggleBtn.text(this.options.compact ? '▼' : '▲');
const $buttons = this.$container.find('.jqhtml-debug-btn');
if (this.options.compact) {
$buttons.hide();
}
else {
$buttons.show();
}
}
executeAction(action) {
const jqhtml = getJqhtml$1();
if (!jqhtml) {
console.warn('JQHTML not available - make sure it\'s loaded and exposed globally');
return;
}
switch (action) {
case 'enableSlowMotionDebug':
jqhtml.setDebugSettings({
logFullLifecycle: true,
sequentialProcessing: true,
delayAfterComponent: 150,
delayAfterRender: 200,
delayAfterRerender: 250,
flashComponents: true,
flashDuration: 800,
flashColors: {
create: '#3498db',
render: '#27ae60',
ready: '#9b59b6'
},
profilePerformance: true,
highlightSlowRenders: 30,
logDispatch: true
});
this.updateStatus('Slow Motion');
console.log('🐛 Slow Motion Debug Mode Enabled');
break;
case 'enableBasicDebug':
jqhtml.enableDebugMode('basic');
this.updateStatus('Basic');
console.log('🐛 Basic Debug Mode Enabled');
break;
case 'enableFullDebug':
jqhtml.enableDebugMode('full');
this.updateStatus('Full');
console.log('🐛 Full Debug Mode Enabled');
break;
case 'enableSequentialMode':
jqhtml.setDebugSettings({
logCreationReady: true,
sequentialProcessing: true,
flashComponents: true,
profilePerformance: true
});
this.updateStatus('Sequential');
console.log('🐛 Sequential Processing Mode Enabled');
break;
case 'clearAllDebug':
jqhtml.clearDebugSettings();
this.updateStatus('Off');
console.log('🐛 All Debug Modes Disabled');
break;
case 'showDebugInfo':
const settings = JSON.stringify(jqhtml.debug, null, 2);
console.log('🐛 Current Debug Settings:', settings);
alert('Debug settings logged to console:\n\n' + (Object.keys(jqhtml.debug).length > 0 ? settings : 'No debug settings active'));
break;
}
}
}
DebugOverlay.instance = null;
// Simplified global convenience functions that use static methods
function showDebugOverlay(options) {
return DebugOverlay.show(options);
}
function hideDebugOverlay() {
DebugOverlay.hide();
}
// Auto-initialize if debug query parameter is present
if (typeof window !== 'undefined') {
const urlParams = new URLSearchParams(window.location.search);
if (urlParams.get('debug') === 'true' || urlParams.get('jqhtml-debug') === 'true') {
document.addEventListener('DOMContentLoaded', () => {
DebugOverlay.show();
});
}
}
/**
* JQHTML Debug Module
*
* Provides comprehensive debugging capabilities for JQHTML components
*/
// Global debug state
let performanceMetrics = new Map();
/**
* Development warning helper
* Warnings are suppressed in production builds or when JQHTML_SUPPRESS_WARNINGS is set
*/
function devWarn(message) {
// Check if warnings are suppressed
if (typeof window !== 'undefined' && window.JQHTML_SUPPRESS_WARNINGS) {
return;
}
// Check if in production mode
if (typeof process !== 'undefined' && process.env && process.env.NODE_ENV === 'production') {
return;
}
console.warn(`[JQHTML Dev Warning] ${message}`);
}
// Get global jqhtml object
function getJqhtml() {
if (typeof window !== 'undefined' && window.jqhtml) {
return window.jqhtml;
}
// Fallback: try to get from global if available
if (typeof globalThis !== 'undefined' && globalThis.jqhtml) {
return globalThis.jqhtml;
}
throw new Error('FATAL: window.jqhtml is not defined. The JQHTML runtime must be loaded before using debug features. ' +
'Import and initialize @jqhtml/core before attempting to use debug functionality.');
}
// Visual flash effect
function flashComponent(component, eventType) {
const jqhtml = getJqhtml();
if (!jqhtml?.debug?.flashComponents)
return;
const duration = jqhtml.debug.flashDuration || 500;
const colors = jqhtml.debug.flashColors || {};
const color = colors[eventType] || (eventType === 'create' ? '#3498db' :
eventType === 'render' ? '#27ae60' :
'#9b59b6');
// Store original border
const originalBorder = component.$.css('border');
// Apply flash border
component.$.css({
'border': `2px solid ${color}`,
'transition': `border ${duration}ms ease-out`
});
// Remove after duration
setTimeout(() => {
component.$.css('border', originalBorder || '');
}, duration);
}
// Log lifecycle event
function logLifecycle(component, phase, status) {
const jqhtml = getJqhtml();
if (!jqhtml?.debug)
return;
const shouldLog = jqhtml.debug.logFullLifecycle ||
(jqhtml.debug.logCreationReady && (phase === 'create' || phase === 'ready'));
if (!shouldLog)
return;
const componentName = component.constructor.name;
const timestamp = new Date().toISOString();
const prefix = `[JQHTML ${timestamp}]`;
if (status === 'start') {
console.log(`${prefix} ${componentName}#${component._cid}${phase} starting...`);
// Start performance tracking
if (jqhtml.debug.profilePerformance) {
performanceMetrics.set(`${component._cid}_${phase}`, Date.now());
}
}
else {
let message = `${prefix} ${componentName}#${component._cid}${phase} complete`;
// Add performance data
if (jqhtml.debug.profilePerformance) {
const startTime = performanceMetrics.get(`${component._cid}_${phase}`);
if (startTime) {
const duration = Date.now() - startTime;
message += ` (${duration}ms)`;
// Highlight slow renders
if (phase === 'render' && jqhtml.debug.highlightSlowRenders &&
duration > jqhtml.debug.highlightSlowRenders) {
console.warn(`${prefix} SLOW RENDER: ${componentName}#${component._cid} took ${duration}ms`);
component.$.css('outline', '2px dashed red');
}
}
}
console.log(message);
// Visual feedback
if (jqhtml.debug.flashComponents && (phase === 'create' || phase === 'render' || phase === 'ready')) {
flashComponent(component, phase);
}
}
// Update component tree if enabled
if (jqhtml.debug.showComponentTree) {
updateComponentTree();
}
}
// Apply delays based on lifecycle phase
function applyDebugDelay(phase) {
const jqhtml = getJqhtml();
if (!jqhtml?.debug)
return;
let delayMs = 0;
switch (phase) {
case 'component':
delayMs = jqhtml.debug.delayAfterComponent || 0;
break;
case 'render':
delayMs = jqhtml.debug.delayAfterRender || 0;
break;
case 'rerender':
delayMs = jqhtml.debug.delayAfterRerender || 0;
break;
}
if (delayMs > 0) {
console.log(`[JQHTML Debug] Applying ${delayMs}ms delay after ${phase}`);
}
}
// Log instruction processing
function logInstruction(type, data) {
const jqhtml = getJqhtml();
if (!jqhtml?.debug?.logInstructionProcessing)
return;
console.log(`[JQHTML Instruction] ${type}:`, data);
}
// Log data changes
function logDataChange(component, property, oldValue, newValue) {
const jqhtml = getJqhtml();
if (!jqhtml?.debug?.traceDataFlow)
return;
console.log(`[JQHTML Data] ${component.constructor.name}#${component._cid}.data.${property}:`, { old: oldValue, new: newValue });
}
// Update component tree visualization
function updateComponentTree() {
// This would update a debug panel if implemented
// For now, just log the tree structure periodically
console.log('[JQHTML Tree] Component hierarchy updated');
}
// Router dispatch logging
function logDispatch(url, route, params, verbose = false) {
const jqhtml = getJqhtml();
if (!jqhtml?.debug)
return;
const shouldLog = jqhtml.debug.logDispatch || jqhtml.debug.logDispatchVerbose;
if (!shouldLog)
return;
const isVerbose = jqhtml.debug.logDispatchVerbose || verbose;
if (isVerbose) {
console.group(`[JQHTML Router] Dispatching: ${url}`);
console.log('Matched route:', route);
console.log('Extracted params:', params);
console.log('Route component:', route.component);
console.log('Route layout:', route.layout);
console.log('Route meta:', route.meta);
console.groupEnd();
}
else {
console.log(`[JQHTML Router] ${url}${route.component} (params: ${JSON.stringify(params)})`);
}
}
// Check if sequential processing is enabled
function isSequentialProcessing() {
const jqhtml = getJqhtml();
return jqhtml?.debug?.sequentialProcessing || false;
}
// Error handling with break on error
function handleComponentError(component, phase, error) {
const jqhtml = getJqhtml();
console.error(`[JQHTML Error] ${component.constructor.name}#${component._cid} failed in ${phase}:`, error);
if (jqhtml?.debug?.breakOnError) {
debugger; // This will pause execution in dev tools
}
}
// Additional debug suggestions that could be implemented:
//
// 1. Component Inspector - Click on any component to see its data/args/state
// 2. Time Travel Debugging - Record state changes and replay them
// 3. Network Request Tracking - Log all AJAX calls made during load()
// 4. Memory Leak Detection - Track component creation/destruction
// 5. Template Compilation Debugging - Show compiled template functions
// 6. Event Flow Visualization - Show event bubbling through components
// 7. Dependency Graph - Show which components depend on which data
// 8. Hot Reload Support - Reload components without losing state
// 9. Performance Budgets - Warn when components exceed size/time limits
// 10. Accessibility Auditing - Check for missing ARIA attributes
export { DebugOverlay, applyDebugDelay, devWarn, handleComponentError, hideDebugOverlay, isSequentialProcessing, logDataChange, logDispatch, logInstruction, logLifecycle, showDebugOverlay };
//# sourceMappingURL=jqhtml-debug.esm.js.map

1
node_modules/@jqhtml/core/dist/jqhtml-debug.esm.js.map generated vendored Executable file

File diff suppressed because one or more lines are too long

21
node_modules/@jqhtml/core/dist/jquery-plugin.d.ts generated vendored Executable file
View File

@@ -0,0 +1,21 @@
/**
* JQHTML v2 jQuery Plugin
*
* Extends jQuery with component method:
* - $(el).component() - Get component instance
* - $(el).component(ComponentClass, args) - Create component
*/
import { Jqhtml_Component } from './component.js';
import type { ComponentConstructor } from './component-registry.js';
declare global {
interface JQuery {
/**
* Get or create a component on this element
*/
component(): Jqhtml_Component | null;
component(ComponentClass: ComponentConstructor, args?: Record<string, any>): Jqhtml_Component;
component(componentName: string, args?: Record<string, any>): Jqhtml_Component;
}
}
export declare function init_jquery_plugin(jQuery: any): void;
//# sourceMappingURL=jquery-plugin.d.ts.map

1
node_modules/@jqhtml/core/dist/jquery-plugin.d.ts.map generated vendored Executable file
View File

@@ -0,0 +1 @@
{"version":3,"file":"jquery-plugin.d.ts","sourceRoot":"","sources":["../src/jquery-plugin.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAQpE,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd;;WAEG;QACH,SAAS,IAAI,gBAAgB,GAAG,IAAI,CAAC;QACrC,SAAS,CAAC,cAAc,EAAE,oBAAoB,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,gBAAgB,CAAC;QAC9F,SAAS,CAAC,aAAa,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,gBAAgB,CAAC;KAChF;CACF;AAGD,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,GAAG,GAAG,IAAI,CA2JpD"}

70
node_modules/@jqhtml/core/dist/lifecycle-manager.d.ts generated vendored Executable file
View File

@@ -0,0 +1,70 @@
/**
* JQHTML v2 Lifecycle Manager
*
* Coordinates phase batching across all components
* Implements the v2 lifecycle specification:
* 1. render - Create DOM structure (top-down)
* 2. create - Quick setup, hide elements, prepare UI (bottom-up)
* 3. load - Fetch data from APIs (bottom-up, parallelizable)
* 4. ready - Component fully initialized (bottom-up)
*/
import type { Jqhtml_Component } from './component.js';
export type LifecyclePhase = 'render' | 'create' | 'load' | 'ready';
export declare class LifecycleManager {
private static instance;
private active_components;
private phase_queues;
private current_phase;
private processing;
constructor();
static get_instance(): LifecycleManager;
/**
* Register a component for lifecycle processing
*/
register_component(component: Jqhtml_Component): void;
/**
* Unregister a component (called on destroy)
*/
unregister_component(component: Jqhtml_Component): void;
/**
* Process lifecycle phases for all queued components
*/
private process_queues;
/**
* Process a single lifecycle phase
*/
private process_phase;
/**
* Execute a lifecycle phase on a component
*/
private execute_phase;
/**
* Sort components by hierarchy for proper phase execution order
*/
private sort_components_by_hierarchy;
/**
* Process bottom-up with parallel sibling execution
*/
private process_bottom_up_parallel;
/**
* Process top-down sequentially
*/
private process_top_down;
/**
* Group components by their depth in the hierarchy
*/
private group_by_depth;
/**
* Find the parent component of a given component
*/
private find_parent_component;
/**
* Catch up a component to the current lifecycle phase
*/
private catch_up_component;
/**
* Wait for all components to reach ready state
*/
wait_for_ready(): Promise<void>;
}
//# sourceMappingURL=lifecycle-manager.d.ts.map

1
node_modules/@jqhtml/core/dist/lifecycle-manager.d.ts.map generated vendored Executable file
View File

@@ -0,0 +1 @@
{"version":3,"file":"lifecycle-manager.d.ts","sourceRoot":"","sources":["../src/lifecycle-manager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAGvD,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;AAepE,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAmB;IAC1C,OAAO,CAAC,iBAAiB,CAAoC;IAC7D,OAAO,CAAC,YAAY,CAAyD;IAC7E,OAAO,CAAC,aAAa,CAA+B;IACpD,OAAO,CAAC,UAAU,CAAkB;;IASpC,MAAM,CAAC,YAAY,IAAI,gBAAgB;IAOvC;;OAEG;IACH,kBAAkB,CAAC,SAAS,EAAE,gBAAgB,GAAG,IAAI;IAarD;;OAEG;IACH,oBAAoB,CAAC,SAAS,EAAE,gBAAgB,GAAG,IAAI;IASvD;;OAEG;YACW,cAAc;IAe5B;;OAEG;YACW,aAAa;IA6C3B;;OAEG;YACW,aAAa;IA+C3B;;OAEG;IACH,OAAO,CAAC,4BAA4B;IA+CpC;;OAEG;YACW,0BAA0B;IAiBxC;;OAEG;YACW,gBAAgB;IAS9B;;OAEG;IACH,OAAO,CAAC,cAAc;IAuBtB;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAiB7B;;OAEG;YACW,kBAAkB;IAehC;;OAEG;IACG,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;CAMtC"}

17
node_modules/@jqhtml/core/dist/template-renderer.d.ts generated vendored Executable file
View File

@@ -0,0 +1,17 @@
/**
* JQHTML v2 Template Renderer
*
* Connects compiled templates to components
* Processes instruction arrays and handles bindings
*/
import type { Jqhtml_Component } from './component.js';
/**
* Render a template for a component
* Templates are functions that return [instructions, context] tuples
*/
export declare function render_template(component: Jqhtml_Component, template_fn?: Function): Promise<void>;
/**
* Helper to escape HTML for safe output
*/
export declare function escape_html(str: string): string;
//# sourceMappingURL=template-renderer.d.ts.map

1
node_modules/@jqhtml/core/dist/template-renderer.d.ts.map generated vendored Executable file
View File

@@ -0,0 +1 @@
{"version":3,"file":"template-renderer.d.ts","sourceRoot":"","sources":["../src/template-renderer.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AA2EvD;;;GAGG;AACH,wBAAsB,eAAe,CACnC,SAAS,EAAE,gBAAgB,EAC3B,WAAW,CAAC,EAAE,QAAQ,GACrB,OAAO,CAAC,IAAI,CAAC,CAqDf;AA8KD;;GAEG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAI/C"}