al_search 1.0.0 → 1.0.1

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 68f48082e8a06e866d181636a3ebd8bebe10983094099178affbfb228d3c29a1
4
- data.tar.gz: f01501623ca2c238e546675a46e6308e18ba6cd33f03f401366d764e80f97a17
3
+ metadata.gz: 6851f438a92db86777bc6af018daac9ac58c2f81eafca66b18df8f45f4c91d85
4
+ data.tar.gz: 7a8ce60ce3155487fc21e88f4fe1fb7d4a32b2cd10b6816304183ee8ecc232e0
5
5
  SHA512:
6
- metadata.gz: f1cdb8ff1bd7b3a4d16d8d27d69fd14b9bee2701af0581ad0ed3c149f4085af62d16294a06c7244b27dd33887515aca7c3ecc5b0f164958fc017c8f4097e9522
7
- data.tar.gz: fc7578dfee0e789d9d4c71a2f1f746561012beb874ae2ae610159a259217facbec5952d15fab7bfb38608e31881d0372721f9c98ac07a2f9fc1cccd688c72228
6
+ metadata.gz: 7adf70a29ac8857afe74c4ff7b82837eb76bfa30e55cbc9594d8272daa73b9d5646e6ec0f29bb1604c792f7a64e3db01e2ebc87fb0bb464d61d9eccc5f6689b1
7
+ data.tar.gz: 72c8c86f750a87378959a8508ef2f655a21e4125834d110cc24a46f31474f2a343d53ad1aacee2d676033232d0daf75b628af4dedef21b549fede8f1f990af49
data/CHANGELOG.md CHANGED
@@ -1,5 +1,14 @@
1
1
  # Changelog
2
2
 
3
+ ## 1.0.1 - 2026-02-17
4
+
5
+ - Made search modal open/close behavior plugin-owned and jQuery-free.
6
+ - Added vanilla navbar-collapse handling for search button interactions.
7
+
8
+ ## 1.0.0 - 2026-02-16
9
+
10
+ - Promoted search plugin to stable v1.0 runtime contract for al-folio.
11
+
3
12
  ## 0.1.0 - 2026-02-07
4
13
 
5
14
  - Initial gem release.
@@ -1,17 +1,35 @@
1
- let searchTheme = determineComputedTheme();
1
+ const searchTheme = typeof determineComputedTheme === "function" ? determineComputedTheme() : "light";
2
2
  const ninjaKeys = document.querySelector("ninja-keys");
3
3
 
4
- if (searchTheme === "dark") {
5
- ninjaKeys.classList.add("dark");
6
- } else {
7
- ninjaKeys.classList.remove("dark");
4
+ if (ninjaKeys) {
5
+ if (searchTheme === "dark") {
6
+ ninjaKeys.classList.add("dark");
7
+ } else {
8
+ ninjaKeys.classList.remove("dark");
9
+ }
8
10
  }
9
11
 
12
+ const collapseNavbarIfExpanded = () => {
13
+ const navbarNav = document.getElementById("navbarNav");
14
+ if (!navbarNav || !navbarNav.classList.contains("show")) {
15
+ return;
16
+ }
17
+
18
+ const navToggle = document.querySelector('[data-nav-toggle="navbarNav"], .navbar-toggler[aria-controls="navbarNav"]');
19
+ if (navToggle) {
20
+ navToggle.dispatchEvent(new MouseEvent("click", { bubbles: true, cancelable: true }));
21
+ return;
22
+ }
23
+
24
+ navbarNav.classList.remove("show");
25
+ navbarNav.setAttribute("aria-expanded", "false");
26
+ };
27
+
10
28
  const openSearchModal = () => {
11
- // collapse navbarNav if expanded on mobile
12
- const $navbarNav = $("#navbarNav");
13
- if ($navbarNav.hasClass("show")) {
14
- $navbarNav.collapse("hide");
29
+ collapseNavbarIfExpanded();
30
+ if (ninjaKeys && typeof ninjaKeys.open === "function") {
31
+ ninjaKeys.open();
15
32
  }
16
- ninjaKeys.open();
17
33
  };
34
+
35
+ window.openSearchModal = openSearchModal;
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: al_search
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - al-org
8
- autorequire:
9
8
  bindir: bin
10
9
  cert_chain: []
11
- date: 2026-02-16 00:00:00.000000000 Z
10
+ date: 1980-01-02 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: jekyll
@@ -140,7 +139,6 @@ metadata:
140
139
  allowed_push_host: https://rubygems.org
141
140
  homepage_uri: https://github.com/al-org-dev/al-search
142
141
  source_code_uri: https://github.com/al-org-dev/al-search
143
- post_install_message:
144
142
  rdoc_options: []
145
143
  require_paths:
146
144
  - lib
@@ -155,8 +153,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
155
153
  - !ruby/object:Gem::Version
156
154
  version: '0'
157
155
  requirements: []
158
- rubygems_version: 3.4.10
159
- signing_key:
156
+ rubygems_version: 4.0.6
160
157
  specification_version: 4
161
158
  summary: Search modal assets and data generation for Jekyll
162
159
  test_files: []