phlex_kit 0.2.1 → 0.2.2
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 +4 -4
- data/README.md +81 -6
- data/THIRD_PARTY_LICENSES +104 -0
- data/app/assets/stylesheets/phlex_kit/_tokens.css +72 -0
- data/app/assets/stylesheets/phlex_kit/phlex_kit.css +1 -1
- data/app/assets/stylesheets/phlex_kit/themes/claude.css +86 -0
- data/app/assets/stylesheets/phlex_kit/themes/neutral.css +95 -0
- data/app/assets/stylesheets/phlex_kit/themes/zinc.css +85 -0
- data/app/components/phlex_kit/accordion/accordion.css +13 -0
- data/app/components/phlex_kit/accordion/accordion.rb +11 -2
- data/app/components/phlex_kit/accordion/accordion_icon.rb +1 -3
- data/app/components/phlex_kit/accordion/accordion_item.rb +5 -2
- data/app/components/phlex_kit/alert_dialog/alert_dialog.css +45 -4
- data/app/components/phlex_kit/alert_dialog/alert_dialog_action.rb +3 -2
- data/app/components/phlex_kit/alert_dialog/alert_dialog_content.rb +6 -2
- data/app/components/phlex_kit/alert_dialog/alert_dialog_media.rb +14 -0
- data/app/components/phlex_kit/attachment/attachment.css +102 -2
- data/app/components/phlex_kit/attachment/attachment.rb +18 -6
- data/app/components/phlex_kit/attachment/attachment_action.rb +1 -6
- data/app/components/phlex_kit/attachment/attachment_group.rb +21 -0
- data/app/components/phlex_kit/attachment/attachment_media.rb +13 -4
- data/app/components/phlex_kit/attachment/attachment_trigger.rb +22 -0
- data/app/components/phlex_kit/breadcrumb/breadcrumb_ellipsis.rb +1 -5
- data/app/components/phlex_kit/breadcrumb/breadcrumb_separator.rb +1 -1
- data/app/components/phlex_kit/calendar/calendar_next.rb +1 -15
- data/app/components/phlex_kit/calendar/calendar_prev.rb +1 -15
- data/app/components/phlex_kit/card/card.css +50 -14
- data/app/components/phlex_kit/card/card.rb +6 -2
- data/app/components/phlex_kit/card/card_action.rb +14 -0
- data/app/components/phlex_kit/carousel/carousel_next.rb +1 -15
- data/app/components/phlex_kit/carousel/carousel_previous.rb +1 -15
- data/app/components/phlex_kit/codeblock/codeblock.css +1 -1
- data/app/components/phlex_kit/combobox/combobox_clear_button.rb +1 -15
- data/app/components/phlex_kit/combobox/combobox_input_trigger.rb +1 -12
- data/app/components/phlex_kit/combobox/combobox_item_indicator.rb +1 -15
- data/app/components/phlex_kit/combobox/combobox_search_input.rb +1 -14
- data/app/components/phlex_kit/combobox/combobox_trigger.rb +1 -14
- data/app/components/phlex_kit/command/command.css +2 -2
- data/app/components/phlex_kit/command/command_input.rb +1 -13
- data/app/components/phlex_kit/context_menu/context_menu_item.rb +1 -3
- data/app/components/phlex_kit/data_table/data_table_column_toggle.rb +1 -13
- data/app/components/phlex_kit/data_table/data_table_expand_toggle.rb +1 -12
- data/app/components/phlex_kit/data_table/data_table_sort_head.rb +2 -28
- data/app/components/phlex_kit/dialog/dialog.css +8 -2
- data/app/components/phlex_kit/dialog/dialog_content.rb +1 -3
- data/app/components/phlex_kit/drawer/drawer.css +1 -0
- data/app/components/phlex_kit/dropdown_menu/dropdown_menu.css +64 -0
- data/app/components/phlex_kit/dropdown_menu/dropdown_menu_checkbox_item.rb +31 -0
- data/app/components/phlex_kit/dropdown_menu/dropdown_menu_group.rb +11 -0
- data/app/components/phlex_kit/dropdown_menu/dropdown_menu_item.rb +5 -2
- data/app/components/phlex_kit/dropdown_menu/dropdown_menu_radio_group.rb +10 -0
- data/app/components/phlex_kit/dropdown_menu/dropdown_menu_radio_item.rb +31 -0
- data/app/components/phlex_kit/dropdown_menu/dropdown_menu_shortcut.rb +10 -0
- data/app/components/phlex_kit/dropdown_menu/dropdown_menu_sub.rb +11 -0
- data/app/components/phlex_kit/dropdown_menu/dropdown_menu_sub_content.rb +12 -0
- data/app/components/phlex_kit/dropdown_menu/dropdown_menu_sub_trigger.rb +18 -0
- data/app/components/phlex_kit/icon/icon.rb +51 -0
- data/app/components/phlex_kit/marker/marker.css +25 -0
- data/app/components/phlex_kit/marker/marker.rb +18 -0
- data/app/components/phlex_kit/marker/marker_content.rb +7 -0
- data/app/components/phlex_kit/marker/marker_icon.rb +7 -0
- data/app/components/phlex_kit/native_select/native_select_icon.rb +1 -10
- data/app/components/phlex_kit/navigation_menu/navigation_menu_trigger.rb +1 -5
- data/app/components/phlex_kit/pagination/pagination_ellipsis.rb +1 -5
- data/app/components/phlex_kit/select/select_item.rb +1 -11
- data/app/components/phlex_kit/select/select_trigger.rb +1 -14
- data/app/components/phlex_kit/sheet/sheet.css +1 -1
- data/app/components/phlex_kit/sheet/sheet_content.rb +1 -3
- data/app/components/phlex_kit/sidebar/sidebar.css +129 -11
- data/app/components/phlex_kit/sidebar/sidebar.rb +19 -6
- data/app/components/phlex_kit/sidebar/sidebar_group_action.rb +14 -0
- data/app/components/phlex_kit/sidebar/sidebar_group_content.rb +13 -0
- data/app/components/phlex_kit/sidebar/sidebar_group_label.rb +13 -0
- data/app/components/phlex_kit/sidebar/sidebar_input.rb +14 -0
- data/app/components/phlex_kit/sidebar/sidebar_menu_action.rb +13 -0
- data/app/components/phlex_kit/sidebar/sidebar_menu_badge.rb +13 -0
- data/app/components/phlex_kit/sidebar/sidebar_menu_skeleton.rb +19 -0
- data/app/components/phlex_kit/sidebar/sidebar_menu_sub.rb +13 -0
- data/app/components/phlex_kit/sidebar/sidebar_menu_sub_button.rb +18 -0
- data/app/components/phlex_kit/sidebar/sidebar_menu_sub_item.rb +13 -0
- data/app/components/phlex_kit/sidebar/sidebar_separator.rb +14 -0
- data/app/components/phlex_kit/spinner/spinner.rb +5 -10
- data/app/components/phlex_kit/toast/toast_close.rb +1 -15
- data/app/components/phlex_kit/toast/toast_icon.rb +12 -36
- data/app/components/phlex_kit/typography/heading.rb +1 -1
- data/app/components/phlex_kit/typography/typography.css +7 -3
- data/app/javascript/phlex_kit/controllers/accordion_controller.js +17 -1
- data/app/javascript/phlex_kit/controllers/index.js +2 -0
- data/app/javascript/phlex_kit/controllers/scroll_fade_controller.js +31 -0
- data/lib/phlex_kit/configuration.rb +7 -0
- data/lib/phlex_kit/icons/lucide.rb +88 -0
- data/lib/phlex_kit/icons/phosphor.rb +88 -0
- data/lib/phlex_kit/icons/remix.rb +88 -0
- data/lib/phlex_kit/icons/tabler.rb +88 -0
- data/lib/phlex_kit/icons.rb +40 -0
- data/lib/phlex_kit/version.rb +1 -1
- data/lib/phlex_kit.rb +1 -0
- metadata +45 -8
- data/app/components/phlex_kit/stars/stars.css +0 -4
- data/app/components/phlex_kit/stars/stars.rb +0 -19
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: phlex_kit
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.2.
|
|
4
|
+
version: 0.2.2
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Matt Kennedy
|
|
@@ -105,10 +105,10 @@ dependencies:
|
|
|
105
105
|
- - ">="
|
|
106
106
|
- !ruby/object:Gem::Version
|
|
107
107
|
version: '0'
|
|
108
|
-
description: PhlexKit
|
|
109
|
-
co-located vanilla CSS per component plus a global :root design-token
|
|
110
|
-
is an optional, per-component integration — never a required
|
|
111
|
-
ship precompiled-static, so no host build step.
|
|
108
|
+
description: PhlexKit brings the shadcn/ui component catalog to Phlex and Rails, replacing
|
|
109
|
+
Tailwind with co-located vanilla CSS per component plus a global :root design-token
|
|
110
|
+
theme. phlex-reactive is an optional, per-component integration — never a required
|
|
111
|
+
dependency. Assets ship precompiled-static, so no host build step.
|
|
112
112
|
email:
|
|
113
113
|
- m.kennedy@aypex.io
|
|
114
114
|
executables: []
|
|
@@ -117,8 +117,12 @@ extra_rdoc_files: []
|
|
|
117
117
|
files:
|
|
118
118
|
- MIT-LICENSE
|
|
119
119
|
- README.md
|
|
120
|
+
- THIRD_PARTY_LICENSES
|
|
120
121
|
- app/assets/stylesheets/phlex_kit/_tokens.css
|
|
121
122
|
- app/assets/stylesheets/phlex_kit/phlex_kit.css
|
|
123
|
+
- app/assets/stylesheets/phlex_kit/themes/claude.css
|
|
124
|
+
- app/assets/stylesheets/phlex_kit/themes/neutral.css
|
|
125
|
+
- app/assets/stylesheets/phlex_kit/themes/zinc.css
|
|
122
126
|
- app/components/phlex_kit/accordion/accordion.css
|
|
123
127
|
- app/components/phlex_kit/accordion/accordion.rb
|
|
124
128
|
- app/components/phlex_kit/accordion/accordion_content.rb
|
|
@@ -139,6 +143,7 @@ files:
|
|
|
139
143
|
- app/components/phlex_kit/alert_dialog/alert_dialog_description.rb
|
|
140
144
|
- app/components/phlex_kit/alert_dialog/alert_dialog_footer.rb
|
|
141
145
|
- app/components/phlex_kit/alert_dialog/alert_dialog_header.rb
|
|
146
|
+
- app/components/phlex_kit/alert_dialog/alert_dialog_media.rb
|
|
142
147
|
- app/components/phlex_kit/alert_dialog/alert_dialog_title.rb
|
|
143
148
|
- app/components/phlex_kit/alert_dialog/alert_dialog_trigger.rb
|
|
144
149
|
- app/components/phlex_kit/aspect_ratio/aspect_ratio.css
|
|
@@ -149,8 +154,10 @@ files:
|
|
|
149
154
|
- app/components/phlex_kit/attachment/attachment_actions.rb
|
|
150
155
|
- app/components/phlex_kit/attachment/attachment_content.rb
|
|
151
156
|
- app/components/phlex_kit/attachment/attachment_description.rb
|
|
157
|
+
- app/components/phlex_kit/attachment/attachment_group.rb
|
|
152
158
|
- app/components/phlex_kit/attachment/attachment_media.rb
|
|
153
159
|
- app/components/phlex_kit/attachment/attachment_title.rb
|
|
160
|
+
- app/components/phlex_kit/attachment/attachment_trigger.rb
|
|
154
161
|
- app/components/phlex_kit/avatar/avatar.css
|
|
155
162
|
- app/components/phlex_kit/avatar/avatar.rb
|
|
156
163
|
- app/components/phlex_kit/avatar/avatar_fallback.rb
|
|
@@ -186,6 +193,7 @@ files:
|
|
|
186
193
|
- app/components/phlex_kit/calendar/calendar_weekdays.rb
|
|
187
194
|
- app/components/phlex_kit/card/card.css
|
|
188
195
|
- app/components/phlex_kit/card/card.rb
|
|
196
|
+
- app/components/phlex_kit/card/card_action.rb
|
|
189
197
|
- app/components/phlex_kit/card/card_content.rb
|
|
190
198
|
- app/components/phlex_kit/card/card_description.rb
|
|
191
199
|
- app/components/phlex_kit/card/card_footer.rb
|
|
@@ -286,10 +294,18 @@ files:
|
|
|
286
294
|
- app/components/phlex_kit/drawer/drawer_trigger.rb
|
|
287
295
|
- app/components/phlex_kit/dropdown_menu/dropdown_menu.css
|
|
288
296
|
- app/components/phlex_kit/dropdown_menu/dropdown_menu.rb
|
|
297
|
+
- app/components/phlex_kit/dropdown_menu/dropdown_menu_checkbox_item.rb
|
|
289
298
|
- app/components/phlex_kit/dropdown_menu/dropdown_menu_content.rb
|
|
299
|
+
- app/components/phlex_kit/dropdown_menu/dropdown_menu_group.rb
|
|
290
300
|
- app/components/phlex_kit/dropdown_menu/dropdown_menu_item.rb
|
|
291
301
|
- app/components/phlex_kit/dropdown_menu/dropdown_menu_label.rb
|
|
302
|
+
- app/components/phlex_kit/dropdown_menu/dropdown_menu_radio_group.rb
|
|
303
|
+
- app/components/phlex_kit/dropdown_menu/dropdown_menu_radio_item.rb
|
|
292
304
|
- app/components/phlex_kit/dropdown_menu/dropdown_menu_separator.rb
|
|
305
|
+
- app/components/phlex_kit/dropdown_menu/dropdown_menu_shortcut.rb
|
|
306
|
+
- app/components/phlex_kit/dropdown_menu/dropdown_menu_sub.rb
|
|
307
|
+
- app/components/phlex_kit/dropdown_menu/dropdown_menu_sub_content.rb
|
|
308
|
+
- app/components/phlex_kit/dropdown_menu/dropdown_menu_sub_trigger.rb
|
|
293
309
|
- app/components/phlex_kit/dropdown_menu/dropdown_menu_trigger.rb
|
|
294
310
|
- app/components/phlex_kit/empty/empty.css
|
|
295
311
|
- app/components/phlex_kit/empty/empty.rb
|
|
@@ -309,6 +325,7 @@ files:
|
|
|
309
325
|
- app/components/phlex_kit/hover_card/hover_card.rb
|
|
310
326
|
- app/components/phlex_kit/hover_card/hover_card_content.rb
|
|
311
327
|
- app/components/phlex_kit/hover_card/hover_card_trigger.rb
|
|
328
|
+
- app/components/phlex_kit/icon/icon.rb
|
|
312
329
|
- app/components/phlex_kit/input/input.css
|
|
313
330
|
- app/components/phlex_kit/input/input.rb
|
|
314
331
|
- app/components/phlex_kit/input_group/input_group.css
|
|
@@ -335,6 +352,10 @@ files:
|
|
|
335
352
|
- app/components/phlex_kit/label/label.rb
|
|
336
353
|
- app/components/phlex_kit/link/link.css
|
|
337
354
|
- app/components/phlex_kit/link/link.rb
|
|
355
|
+
- app/components/phlex_kit/marker/marker.css
|
|
356
|
+
- app/components/phlex_kit/marker/marker.rb
|
|
357
|
+
- app/components/phlex_kit/marker/marker_content.rb
|
|
358
|
+
- app/components/phlex_kit/marker/marker_icon.rb
|
|
338
359
|
- app/components/phlex_kit/masked_input/masked_input.rb
|
|
339
360
|
- app/components/phlex_kit/menubar/menubar.css
|
|
340
361
|
- app/components/phlex_kit/menubar/menubar.rb
|
|
@@ -412,11 +433,22 @@ files:
|
|
|
412
433
|
- app/components/phlex_kit/sidebar/sidebar_content.rb
|
|
413
434
|
- app/components/phlex_kit/sidebar/sidebar_footer.rb
|
|
414
435
|
- app/components/phlex_kit/sidebar/sidebar_group.rb
|
|
436
|
+
- app/components/phlex_kit/sidebar/sidebar_group_action.rb
|
|
437
|
+
- app/components/phlex_kit/sidebar/sidebar_group_content.rb
|
|
438
|
+
- app/components/phlex_kit/sidebar/sidebar_group_label.rb
|
|
415
439
|
- app/components/phlex_kit/sidebar/sidebar_header.rb
|
|
440
|
+
- app/components/phlex_kit/sidebar/sidebar_input.rb
|
|
416
441
|
- app/components/phlex_kit/sidebar/sidebar_inset.rb
|
|
417
442
|
- app/components/phlex_kit/sidebar/sidebar_menu.rb
|
|
443
|
+
- app/components/phlex_kit/sidebar/sidebar_menu_action.rb
|
|
444
|
+
- app/components/phlex_kit/sidebar/sidebar_menu_badge.rb
|
|
418
445
|
- app/components/phlex_kit/sidebar/sidebar_menu_button.rb
|
|
419
446
|
- app/components/phlex_kit/sidebar/sidebar_menu_item.rb
|
|
447
|
+
- app/components/phlex_kit/sidebar/sidebar_menu_skeleton.rb
|
|
448
|
+
- app/components/phlex_kit/sidebar/sidebar_menu_sub.rb
|
|
449
|
+
- app/components/phlex_kit/sidebar/sidebar_menu_sub_button.rb
|
|
450
|
+
- app/components/phlex_kit/sidebar/sidebar_menu_sub_item.rb
|
|
451
|
+
- app/components/phlex_kit/sidebar/sidebar_separator.rb
|
|
420
452
|
- app/components/phlex_kit/sidebar/sidebar_wrapper.rb
|
|
421
453
|
- app/components/phlex_kit/skeleton/skeleton.css
|
|
422
454
|
- app/components/phlex_kit/skeleton/skeleton.rb
|
|
@@ -424,8 +456,6 @@ files:
|
|
|
424
456
|
- app/components/phlex_kit/slider/slider.rb
|
|
425
457
|
- app/components/phlex_kit/spinner/spinner.css
|
|
426
458
|
- app/components/phlex_kit/spinner/spinner.rb
|
|
427
|
-
- app/components/phlex_kit/stars/stars.css
|
|
428
|
-
- app/components/phlex_kit/stars/stars.rb
|
|
429
459
|
- app/components/phlex_kit/switch/switch.css
|
|
430
460
|
- app/components/phlex_kit/switch/switch.rb
|
|
431
461
|
- app/components/phlex_kit/table/table.css
|
|
@@ -497,6 +527,7 @@ files:
|
|
|
497
527
|
- app/javascript/phlex_kit/controllers/message_scroller_controller.js
|
|
498
528
|
- app/javascript/phlex_kit/controllers/popover_controller.js
|
|
499
529
|
- app/javascript/phlex_kit/controllers/resizable_controller.js
|
|
530
|
+
- app/javascript/phlex_kit/controllers/scroll_fade_controller.js
|
|
500
531
|
- app/javascript/phlex_kit/controllers/select_controller.js
|
|
501
532
|
- app/javascript/phlex_kit/controllers/select_item_controller.js
|
|
502
533
|
- app/javascript/phlex_kit/controllers/sheet_content_controller.js
|
|
@@ -516,6 +547,11 @@ files:
|
|
|
516
547
|
- lib/phlex_kit/base_component.rb
|
|
517
548
|
- lib/phlex_kit/configuration.rb
|
|
518
549
|
- lib/phlex_kit/engine.rb
|
|
550
|
+
- lib/phlex_kit/icons.rb
|
|
551
|
+
- lib/phlex_kit/icons/lucide.rb
|
|
552
|
+
- lib/phlex_kit/icons/phosphor.rb
|
|
553
|
+
- lib/phlex_kit/icons/remix.rb
|
|
554
|
+
- lib/phlex_kit/icons/tabler.rb
|
|
519
555
|
- lib/phlex_kit/propshaft_skip_source.rb
|
|
520
556
|
- lib/phlex_kit/version.rb
|
|
521
557
|
homepage: https://github.com/MatthewKennedy/phlex_kit
|
|
@@ -541,5 +577,6 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
541
577
|
requirements: []
|
|
542
578
|
rubygems_version: 4.0.15
|
|
543
579
|
specification_version: 4
|
|
544
|
-
summary:
|
|
580
|
+
summary: shadcn/ui-style component system for Phlex, styled with vanilla CSS and design
|
|
581
|
+
tokens.
|
|
545
582
|
test_files: []
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
/* Co-located with stars.rb — UI::Stars. The gold rating glyphs; self-colours so
|
|
2
|
-
product cards / summaries get amber stars too (the old `.review .stars` rule
|
|
3
|
-
only coloured stars inside a review). Theme tokens come from the global stylesheet. */
|
|
4
|
-
.pk-stars { color: var(--pk-amber); letter-spacing: 1px; }
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
module PhlexKit
|
|
2
|
-
# Star rating (CUSTOM — ruby_ui has no rating component). Replaces the `stars`
|
|
3
|
-
# view helper: renders `rating` filled stars + the remainder empty, out of
|
|
4
|
-
# `max`. Presentational; attrs pass through via mix. Self-colours (amber) so it
|
|
5
|
-
# works anywhere, not just inside a review.
|
|
6
|
-
class Stars < BaseComponent
|
|
7
|
-
def initialize(rating:, max: 5, **attrs)
|
|
8
|
-
@rating = rating.to_i.clamp(0, max)
|
|
9
|
-
@max = max
|
|
10
|
-
@attrs = attrs
|
|
11
|
-
end
|
|
12
|
-
|
|
13
|
-
def view_template
|
|
14
|
-
span(**mix({ class: "pk-stars", title: "#{@rating}/#{@max}" }, @attrs)) do
|
|
15
|
-
plain(("★" * @rating) + ("☆" * (@max - @rating)))
|
|
16
|
-
end
|
|
17
|
-
end
|
|
18
|
-
end
|
|
19
|
-
end
|