@jqhtml/core 2.3.72 → 2.3.74

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.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * JQHTML Core v2.3.72
2
+ * JQHTML Core v2.3.74
3
3
  * (c) 2025 JQHTML Team
4
4
  * Released under the MIT License
5
5
  */
@@ -1618,7 +1618,7 @@ function serialize_for_cache_key(value) {
1618
1618
  const class_registry = Object.create(null);
1619
1619
  // Markers for serialized class instances (unique to avoid collisions with user data)
1620
1620
  // Replaced at build time by rollup (see rollup.config.js).
1621
- const CORE_VERSION = '2.3.72';
1621
+ const CORE_VERSION = '2.3.74';
1622
1622
  const CLASS_MARKER = '__jqhtml_class__';
1623
1623
  const PROPS_MARKER = '__jqhtml_props__';
1624
1624
  /**
@@ -5677,15 +5677,20 @@ class Jqhtml_Component {
5677
5677
  // DOM attachment state machine
5678
5678
  // -------------------------------------------------------------------------
5679
5679
  /**
5680
- * Whether this component currently considers itself attached to the document.
5680
+ * Whether this component's root is in the document right now.
5681
5681
  *
5682
- * This is the component's recorded state, not a live isConnected read: it is
5683
- * false until the first check after 'ready', and from then on flips only when a
5684
- * transition is observed (or on stop()). It is exactly the state 'attach' and
5685
- * 'detach' have reported.
5682
+ * A live answer - one isConnected read - so it is correct at every point in the
5683
+ * lifecycle (including on_create()/on_load()/on_ready(), before the first 'attach')
5684
+ * and for untracked components (a natively-removed component that nothing watches
5685
+ * still answers false). A stopped component always answers false.
5686
+ *
5687
+ * It does NOT read the recorded state behind 'attach'/'detach' (_attached), and it
5688
+ * never starts tracking. The two can disagree briefly: is_attached() can be true
5689
+ * before the first 'attach' has fired, and changes a moment before the matching
5690
+ * event, since the events come from the document observer.
5686
5691
  */
5687
5692
  is_attached() {
5688
- return this._attached;
5693
+ return !this._stopped && !!this.$[0].isConnected;
5689
5694
  }
5690
5695
  /**
5691
5696
  * Flip the recorded state and fire the matching hook + event. The opposite
@@ -7521,7 +7526,7 @@ function init(jQuery, config) {
7521
7526
  }
7522
7527
  }
7523
7528
  // Version - will be replaced during build with actual version from package.json
7524
- const version = '2.3.72';
7529
+ const version = '2.3.74';
7525
7530
  // Default export with all functionality
7526
7531
  const jqhtml = {
7527
7532
  // Core