baldur 0.1.2 → 0.1.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 755f7b5c5357a353e44fc2885a9dbae5134fd8e2150bdc24d7b49b670ac93fd3
4
- data.tar.gz: 1a5b0a736bfe6cb16bc00714b0e0e2649cd9e2233f22c53943bc95fd4c3c150f
3
+ metadata.gz: 91618f676806f1de454dd46fca5f426a13f4b5504bf7f2e1c91816325784f740
4
+ data.tar.gz: f91cc858789b87d5eacf92f0e9835ec614b288f045d4333dc2e19c2889850209
5
5
  SHA512:
6
- metadata.gz: da5b42f713b2a5e3416227666f956548017058ff95dd0a51ea53472ff08c417d6239ac224f9a58dafaedc0d29dbd016a73f49ab7368b894cb0d47ff0355d3b52
7
- data.tar.gz: 6ba4f17fc97e25faea592202d16fddbec20f4752e7f1d835f2f03499b988c4f0662a3f817aa2a10a1edbbc50a8dfb48f49d2f55ac0a392a9acdfa43572cf2a4d
6
+ metadata.gz: dbcd1175ac464c6dc6c730f5a39c154ec91371a4ea0214b8f0db0b0fc5e595ab0ffc7abaf0a8196cb065c43ce422305a509d799962b76b99746b3ab9a5449b28
7
+ data.tar.gz: f706bf4fadfeb7dfdd5919c8e93c968e402e65a3dcb69a9dae2a2e8ac909649c1ddc06895f0e05985663d5f34a938ee8d06a44f592f605949e96bb201e06b774
data/README.md CHANGED
@@ -12,10 +12,10 @@ Baldur is a reusable Rails UI engine for apps using the same frontend stack as t
12
12
 
13
13
  1. Add Baldur to the target app `Gemfile`:
14
14
 
15
- Baldur now declares `tailwindcss-rails` as a gem dependency, so hosts do not need to add that gem separately unless they want to pin a specific version.
15
+ Baldur now declares `tailwindcss-rails >= 4.4.0` as a gem dependency, so hosts do not need to add that gem separately unless they want to enforce their own minimum version.
16
16
 
17
17
  ```ruby
18
- gem "baldur", "~> 0.1.2"
18
+ gem "baldur", ">= 0.1.3"
19
19
  ```
20
20
 
21
21
  2. Run:
@@ -54,7 +54,7 @@ Default install behavior keeps Geist loaded through the host `fonts.css` scaffol
54
54
  To verify a release artifact manually:
55
55
 
56
56
  ```sh
57
- sha512sum -c baldur-0.1.2.gem.sha512
57
+ sha512sum -c baldur-0.1.3.gem.sha512
58
58
  ```
59
59
 
60
60
  ## Styling Ownership
data/TODO.md CHANGED
@@ -3,4 +3,3 @@
3
3
  - Add a dedicated dummy app in the extracted gem repo for visual smoke checks.
4
4
  - Add a component inventory/showcase page in that dummy app.
5
5
  - Add a few interaction-specific showcase pages for modal, sidebar, menu select, snackbar, and `panel_secondary`.
6
- - Add release automation in the extracted gem repo once publication workflow is defined.
@@ -145,6 +145,14 @@
145
145
  padding-right: calc(var(--space-4) + 40px);
146
146
  }
147
147
 
148
+ .date-field__native--hidden {
149
+ position: absolute;
150
+ width: 1px;
151
+ height: 1px;
152
+ opacity: 0;
153
+ pointer-events: none;
154
+ }
155
+
148
156
  .date-field__toggle {
149
157
  position: absolute;
150
158
  top: 50%;
@@ -97,7 +97,7 @@ module Baldur
97
97
  native_options[:disabled] = true if disabled
98
98
  native_options[:tabindex] ||= "-1"
99
99
  native_options[:autocomplete] ||= "off"
100
- native_options[:style] ||= "position:absolute; inset:auto; width:1px; height:1px; opacity:0; pointer-events:none;"
100
+ native_options[:class] = [ native_options[:class], "date-field__native--hidden" ].compact.join(" ")
101
101
 
102
102
  if min_date.present?
103
103
  min_date_value = case min_date
@@ -62,7 +62,6 @@ end %>
62
62
  id: tooltip_id,
63
63
  role: "tooltip",
64
64
  class: bubble_classes,
65
- style: "text-align: left;",
66
65
  data: {
67
66
  tooltip_target: "bubble",
68
67
  state: "closed"
data/baldur.gemspec CHANGED
@@ -32,5 +32,5 @@ Gem::Specification.new do |spec|
32
32
  spec.add_dependency "importmap-rails"
33
33
  spec.add_dependency "lucide-rails"
34
34
  spec.add_dependency "rails", ">= 8.1.0"
35
- spec.add_dependency "tailwindcss-rails"
35
+ spec.add_dependency "tailwindcss-rails", ">= 4.4.0"
36
36
  end
@@ -1,3 +1,3 @@
1
1
  module Baldur
2
- VERSION = "0.1.2".freeze
2
+ VERSION = "0.1.3".freeze
3
3
  end
@@ -0,0 +1,60 @@
1
+ require_relative "test_helper"
2
+
3
+ require "action_controller"
4
+
5
+ class BaldurCspRenderingTest < Minitest::Test
6
+ class TestController < ActionController::Base
7
+ append_view_path File.expand_path("../app/views", __dir__)
8
+ helper Baldur::UiHelper
9
+ helper Baldur::UiHelperForms
10
+ end
11
+
12
+ def test_tooltip_renders_without_inline_style_attribute
13
+ html = TestController.render(
14
+ partial: "baldur/components/tooltip",
15
+ locals: {
16
+ text: "Info",
17
+ content: "Tooltip body",
18
+ show_icon: true,
19
+ icon: "circle-help",
20
+ variant: :link,
21
+ wrapper_class: nil,
22
+ trigger_class: nil,
23
+ bubble_class: nil,
24
+ inline: false
25
+ }
26
+ )
27
+
28
+ refute_includes html, 'style="text-align: left;"'
29
+ assert_includes html, 'role="tooltip"'
30
+ end
31
+
32
+ def test_date_field_renders_hidden_native_input_class_without_inline_style
33
+ html = TestController.render(
34
+ partial: "baldur/components/date_field",
35
+ locals: {
36
+ wrapper_classes: "field date-field",
37
+ label: "Due date",
38
+ supporting_text: nil,
39
+ display_input_options: {
40
+ id: "due-date-display",
41
+ class: "text-field__control date-field__display",
42
+ type: "text",
43
+ name: "due_date"
44
+ },
45
+ native_input_options: {
46
+ id: "due-date-native",
47
+ class: "date-field__native date-field__native--hidden",
48
+ type: "date",
49
+ tabindex: "-1"
50
+ },
51
+ toggle_label: "Open date picker",
52
+ icon_name: "calendar",
53
+ support_id: "due-date-support"
54
+ }
55
+ )
56
+
57
+ refute_includes html, 'style="position:absolute;'
58
+ assert_includes html, 'date-field__native--hidden'
59
+ end
60
+ end
data/test/test_helper.rb CHANGED
@@ -3,7 +3,13 @@ ENV["MT_NO_PLUGINS"] = "1"
3
3
  require "bundler/setup"
4
4
  require "minitest/autorun"
5
5
  require "rails/generators/test_case"
6
+ require "rails"
7
+ require "lucide-rails"
6
8
 
7
9
  require_relative "../lib/baldur"
8
10
  require_relative "../app/helpers/baldur/render_helper"
11
+ require_relative "../app/helpers/baldur/ui_helper_feedback"
12
+ require_relative "../app/helpers/baldur/ui_helper_unavailable"
13
+ require_relative "../app/helpers/baldur/ui_helper_forms"
14
+ require_relative "../app/helpers/baldur/ui_helper"
9
15
  require_relative "../app/helpers/baldur/marketing_helper"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: baldur
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.1.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Varun Murkar
@@ -57,14 +57,14 @@ dependencies:
57
57
  requirements:
58
58
  - - ">="
59
59
  - !ruby/object:Gem::Version
60
- version: '0'
60
+ version: 4.4.0
61
61
  type: :runtime
62
62
  prerelease: false
63
63
  version_requirements: !ruby/object:Gem::Requirement
64
64
  requirements:
65
65
  - - ">="
66
66
  - !ruby/object:Gem::Version
67
- version: '0'
67
+ version: 4.4.0
68
68
  description: Baldur packages reusable Rails view helpers, components, styles, and
69
69
  Stimulus controllers.
70
70
  executables: []
@@ -199,6 +199,7 @@ files:
199
199
  - lib/generators/baldur/install_panel_right/install_panel_right_generator.rb
200
200
  - lib/generators/baldur/install_panel_secondary/install_panel_secondary_generator.rb
201
201
  - script/verify_host_install
202
+ - test/csp_rendering_test.rb
202
203
  - test/gemspec_test.rb
203
204
  - test/install_generator_test.rb
204
205
  - test/install_panel_secondary_generator_test.rb