phlex_ui 0.1.6 → 0.1.7

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,77 +1,77 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module PhlexUI
4
- class Sheet::Content < Base
5
- SIDE_CLASS = {
6
- top: "inset-x-0 top-0 border-b data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top",
7
- right: "inset-y-0 right-0 h-full border-l data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right",
8
- bottom: "inset-x-0 bottom-0 border-t data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom",
9
- left: "inset-y-0 left-0 h-full border-r data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left",
10
- }
4
+ class Sheet::Content < Base
5
+ SIDE_CLASS = {
6
+ top: "inset-x-0 top-0 border-b data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top",
7
+ right: "inset-y-0 right-0 h-full border-l data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right",
8
+ bottom: "inset-x-0 bottom-0 border-t data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom",
9
+ left: "inset-y-0 left-0 h-full border-r data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left"
10
+ }
11
11
 
12
- def initialize(side: :right, **attrs)
13
- @side = side
14
- @side_classes = SIDE_CLASS[side]
15
- super(**attrs)
16
- end
12
+ def initialize(side: :right, **attrs)
13
+ @side = side
14
+ @side_classes = SIDE_CLASS[side]
15
+ super(**attrs)
16
+ end
17
17
 
18
- def template(&block)
19
- template_tag(data: { sheet_target: "content" }) do
20
- div(data: { controller: 'dismissable' }) do
21
- backdrop
22
- div(**attrs) do
23
- block.call if block_given?
24
- close_button
25
- end
26
- end
27
- end
18
+ def template(&block)
19
+ template_tag(data: {sheet_target: "content"}) do
20
+ div(data: {controller: "dismissable"}) do
21
+ backdrop
22
+ div(**attrs) do
23
+ block&.call
24
+ close_button
25
+ end
28
26
  end
27
+ end
28
+ end
29
29
 
30
- private
30
+ private
31
31
 
32
- def default_attrs
33
- {
34
- data_state: "open", # For animate in
35
- class: tokens(
36
- "fixed pointer-events-auto z-50 gap-4 bg-background p-6 shadow-lg transition ease-in-out data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:duration-300 data-[state=open]:duration-500",
37
- @side_classes
38
- ),
39
- }
40
- end
32
+ def default_attrs
33
+ {
34
+ data_state: "open", # For animate in
35
+ class: tokens(
36
+ "fixed pointer-events-auto z-50 gap-4 bg-background p-6 shadow-lg transition ease-in-out data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:duration-300 data-[state=open]:duration-500",
37
+ @side_classes
38
+ )
39
+ }
40
+ end
41
41
 
42
- def close_button
43
- button(
44
- type: "button",
45
- class: "absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground",
46
- data_action: "click->dismissable#dismiss"
47
- ) do
48
- svg(
49
- width: "15",
50
- height: "15",
51
- viewbox: "0 0 15 15",
52
- fill: "none",
53
- xmlns: "http://www.w3.org/2000/svg",
54
- class: "h-4 w-4"
55
- ) do |s|
56
- s.path(
57
- d:
58
- "M11.7816 4.03157C12.0062 3.80702 12.0062 3.44295 11.7816 3.2184C11.5571 2.99385 11.193 2.99385 10.9685 3.2184L7.50005 6.68682L4.03164 3.2184C3.80708 2.99385 3.44301 2.99385 3.21846 3.2184C2.99391 3.44295 2.99391 3.80702 3.21846 4.03157L6.68688 7.49999L3.21846 10.9684C2.99391 11.193 2.99391 11.557 3.21846 11.7816C3.44301 12.0061 3.80708 12.0061 4.03164 11.7816L7.50005 8.31316L10.9685 11.7816C11.193 12.0061 11.5571 12.0061 11.7816 11.7816C12.0062 11.557 12.0062 11.193 11.7816 10.9684L8.31322 7.49999L11.7816 4.03157Z",
59
- fill: "currentColor",
60
- fill_rule: "evenodd",
61
- clip_rule: "evenodd"
62
- )
63
- end
64
- span(class: "sr-only") { "Close" }
65
- end
42
+ def close_button
43
+ button(
44
+ type: "button",
45
+ class: "absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground",
46
+ data_action: "click->dismissable#dismiss"
47
+ ) do
48
+ svg(
49
+ width: "15",
50
+ height: "15",
51
+ viewbox: "0 0 15 15",
52
+ fill: "none",
53
+ xmlns: "http://www.w3.org/2000/svg",
54
+ class: "h-4 w-4"
55
+ ) do |s|
56
+ s.path(
57
+ d:
58
+ "M11.7816 4.03157C12.0062 3.80702 12.0062 3.44295 11.7816 3.2184C11.5571 2.99385 11.193 2.99385 10.9685 3.2184L7.50005 6.68682L4.03164 3.2184C3.80708 2.99385 3.44301 2.99385 3.21846 3.2184C2.99391 3.44295 2.99391 3.80702 3.21846 4.03157L6.68688 7.49999L3.21846 10.9684C2.99391 11.193 2.99391 11.557 3.21846 11.7816C3.44301 12.0061 3.80708 12.0061 4.03164 11.7816L7.50005 8.31316L10.9685 11.7816C11.193 12.0061 11.5571 12.0061 11.7816 11.7816C12.0062 11.557 12.0062 11.193 11.7816 10.9684L8.31322 7.49999L11.7816 4.03157Z",
59
+ fill: "currentColor",
60
+ fill_rule: "evenodd",
61
+ clip_rule: "evenodd"
62
+ )
66
63
  end
64
+ span(class: "sr-only") { "Close" }
65
+ end
66
+ end
67
67
 
68
- def backdrop
69
- div(
70
- data_state: "open",
71
- data_action: "click->dismissable#dismiss",
72
- class:
73
- "fixed pointer-events-auto inset-0 z-50 bg-background/80 backdrop-blur-sm data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",
74
- )
75
- end
68
+ def backdrop
69
+ div(
70
+ data_state: "open",
71
+ data_action: "click->dismissable#dismiss",
72
+ class:
73
+ "fixed pointer-events-auto inset-0 z-50 bg-background/80 backdrop-blur-sm data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0"
74
+ )
76
75
  end
77
- end
76
+ end
77
+ end
@@ -1,17 +1,17 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module PhlexUI
4
- class Sheet::Description < Base
5
- def template(&block)
6
- p(**attrs, &block)
7
- end
4
+ class Sheet::Description < Base
5
+ def template(&block)
6
+ p(**attrs, &block)
7
+ end
8
8
 
9
- private
9
+ private
10
10
 
11
- def default_attrs
12
- {
13
- class: "text-sm text-muted-foreground",
14
- }
15
- end
11
+ def default_attrs
12
+ {
13
+ class: "text-sm text-muted-foreground"
14
+ }
16
15
  end
17
- end
16
+ end
17
+ end
@@ -1,17 +1,17 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module PhlexUI
4
- class Sheet::Footer < Base
5
- def template(&block)
6
- div(**attrs, &block)
7
- end
4
+ class Sheet::Footer < Base
5
+ def template(&block)
6
+ div(**attrs, &block)
7
+ end
8
8
 
9
- private
9
+ private
10
10
 
11
- def default_attrs
12
- {
13
- class: "flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2 gap-y-2 sm:gap-y-0",
14
- }
15
- end
11
+ def default_attrs
12
+ {
13
+ class: "flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2 gap-y-2 sm:gap-y-0"
14
+ }
16
15
  end
17
- end
16
+ end
17
+ end
@@ -1,17 +1,17 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module PhlexUI
4
- class Sheet::Header < Base
5
- def template(&block)
6
- div(**attrs, &block)
7
- end
4
+ class Sheet::Header < Base
5
+ def template(&block)
6
+ div(**attrs, &block)
7
+ end
8
8
 
9
- private
9
+ private
10
10
 
11
- def default_attrs
12
- {
13
- class: "flex flex-col space-y-1.5 text-center sm:text-left",
14
- }
15
- end
11
+ def default_attrs
12
+ {
13
+ class: "flex flex-col space-y-1.5 text-center sm:text-left"
14
+ }
16
15
  end
17
- end
16
+ end
17
+ end
@@ -1,17 +1,17 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module PhlexUI
4
- class Sheet::Middle < Base
5
- def template(&block)
6
- div(**attrs, &block)
7
- end
4
+ class Sheet::Middle < Base
5
+ def template(&block)
6
+ div(**attrs, &block)
7
+ end
8
8
 
9
- private
9
+ private
10
10
 
11
- def default_attrs
12
- {
13
- class: "py-4",
14
- }
15
- end
11
+ def default_attrs
12
+ {
13
+ class: "py-4"
14
+ }
16
15
  end
17
- end
16
+ end
17
+ end
@@ -1,17 +1,17 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module PhlexUI
4
- class Sheet::Title < Base
5
- def template(&block)
6
- h3(**attrs, &block)
7
- end
4
+ class Sheet::Title < Base
5
+ def template(&block)
6
+ h3(**attrs, &block)
7
+ end
8
8
 
9
- private
9
+ private
10
10
 
11
- def default_attrs
12
- {
13
- class: "text-lg font-semibold leading-none tracking-tight",
14
- }
15
- end
11
+ def default_attrs
12
+ {
13
+ class: "text-lg font-semibold leading-none tracking-tight"
14
+ }
16
15
  end
17
- end
16
+ end
17
+ end
@@ -1,17 +1,17 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module PhlexUI
4
- class Sheet::Trigger < Base
5
- def template(&block)
6
- div(**attrs, &block)
7
- end
4
+ class Sheet::Trigger < Base
5
+ def template(&block)
6
+ div(**attrs, &block)
7
+ end
8
8
 
9
- private
9
+ private
10
10
 
11
- def default_attrs
12
- {
13
- data: { action: "click->sheet#open" }
14
- }
15
- end
11
+ def default_attrs
12
+ {
13
+ data: {action: "click->sheet#open"}
14
+ }
16
15
  end
17
- end
16
+ end
17
+ end
@@ -1,17 +1,17 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module PhlexUI
4
- class Sheet < Base
5
- def template(&block)
6
- div(**attrs, &block)
7
- end
4
+ class Sheet < Base
5
+ def template(&block)
6
+ div(**attrs, &block)
7
+ end
8
8
 
9
- private
9
+ private
10
10
 
11
- def default_attrs
12
- {
13
- data: { controller: "sheet"}
14
- }
15
- end
11
+ def default_attrs
12
+ {
13
+ data: {controller: "sheet"}
14
+ }
16
15
  end
17
- end
16
+ end
17
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: phlex_ui
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.6
4
+ version: 0.1.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - George Kettle
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-02-06 00:00:00.000000000 Z
11
+ date: 2024-03-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: phlex
@@ -196,6 +196,10 @@ files:
196
196
  - lib/phlex_ui/input_error.rb
197
197
  - lib/phlex_ui/label.rb
198
198
  - lib/phlex_ui/link.rb
199
+ - lib/phlex_ui/pagination.rb
200
+ - lib/phlex_ui/pagination/content.rb
201
+ - lib/phlex_ui/pagination/ellipsis.rb
202
+ - lib/phlex_ui/pagination/item.rb
199
203
  - lib/phlex_ui/popover.rb
200
204
  - lib/phlex_ui/popover/content.rb
201
205
  - lib/phlex_ui/popover/trigger.rb
@@ -267,7 +271,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
267
271
  - !ruby/object:Gem::Version
268
272
  version: '0'
269
273
  requirements: []
270
- rubygems_version: 3.4.10
274
+ rubygems_version: 3.5.6
271
275
  signing_key:
272
276
  specification_version: 4
273
277
  summary: PhlexUI is a UI Component Library for Ruby developers.