recourse 5.4.0 → 5.5.0
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/CHANGELOG.md +24 -0
- data/app/views/layouts/recourses.html.erb +2 -2
- data/lib/recourse/helpers/sorts.rb +9 -9
- data/lib/recourse/themes.rb +1 -1
- data/lib/recourse/version.rb +1 -1
- metadata +3 -3
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 90b3afa1fb3432ce14d6b23b67dfbd972c9887db8077b03eef5a58e43359d079
|
|
4
|
+
data.tar.gz: 69c7047b6f440ca4228d19fc2418deb769a51a63890b0c98cf1289059a80195c
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 1c72dd551e37c712fdf67f2beb4dd0cbcb3c44c234bec7cf8423ddd30a510efbb1ff00151f3820709b58d9a00e59efaf7759ed32cd15b5cc16d22cc46169192d
|
|
7
|
+
data.tar.gz: 8528213a6a673cabc608d45be06311439f317d6eb56f90f5d9e36b4b25298bd7e0d29acfa8a6d28dd38c9b0cd61b40c6e5cd4e4e5436c864eeac7da308aa1665
|
data/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,30 @@ For more information about changelogs, check [Keep a Changelog](http://keepachan
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
## 5.5.0 - 2026-09-17
|
|
11
|
+
|
|
12
|
+
* [Fix] A sorted heading has a mark again
|
|
13
|
+
|
|
14
|
+
The mark saying which way a column is sorted was a Bootstrap caret, and no caret is in the
|
|
15
|
+
icon font the pages link: the bundle carries a subset, and a name outside it gets no
|
|
16
|
+
`content` rule and no code point, so the `<i>` drew nothing at all. Since `design_assets`
|
|
17
|
+
every sorted heading has been bare, and the test asserting the mark passed throughout,
|
|
18
|
+
because what it asserts is a class name.
|
|
19
|
+
|
|
20
|
+
It is `unicon`'s `:sort_asc` and `:sort_desc` now, drawn through `icon_tag` like every
|
|
21
|
+
other icon here rather than by a class written out. Bootstrap draws them `sort-up` and
|
|
22
|
+
`sort-down` — named for the ordering rather than the arrow, since Bootstrap's four sort
|
|
23
|
+
glyphs point either way with either ordering. Both draw from the bundle this release
|
|
24
|
+
pins, whose subset carries `sort-up` beside the `sort-down` it already held.
|
|
25
|
+
|
|
26
|
+
* [Change] The pinned bundle is `houseaccount@0.13.0`
|
|
27
|
+
|
|
28
|
+
Two releases at once, since the pin was still at 0.11.0 while 0.12.0 came and went. It is
|
|
29
|
+
what carries the ascending sort glyph, so the fix above needs it; it also brings a card
|
|
30
|
+
that is as wide as what it holds, a form reading its rows from where their words start,
|
|
31
|
+
and a combobox the bundle searches. Moved at all three sites together — the layout's
|
|
32
|
+
stylesheet and script, and `THEMES_PATH`.
|
|
33
|
+
|
|
10
34
|
## 5.4.0 - 2026-09-17
|
|
11
35
|
|
|
12
36
|
* [Feature] A table of events can be read as a week
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
one and the CORS one a module script and a font are fetched over. -%>
|
|
27
27
|
<link rel='preconnect' href='https://cdn.jsdelivr.net'>
|
|
28
28
|
<link rel='preconnect' href='https://cdn.jsdelivr.net' crossorigin>
|
|
29
|
-
<link rel='stylesheet' href='https://cdn.jsdelivr.net/npm/houseaccount@0.
|
|
29
|
+
<link rel='stylesheet' href='https://cdn.jsdelivr.net/npm/houseaccount@0.13.0/public/css/houseaccount.css'>
|
|
30
30
|
<%# The one thing these screens set that the house's stylesheet does not: system faces
|
|
31
31
|
at a compact size, for pages dense with figures. 14px as rem, so a browser's own
|
|
32
32
|
text-size setting still scales it. After the stylesheet, since both are `:root`. -%>
|
|
@@ -50,7 +50,7 @@
|
|
|
50
50
|
<%# Turbo, Bootstrap and a Stimulus application with every controller this markup
|
|
51
51
|
names, started once under `window.Stimulus`. In the head, so a controller exists
|
|
52
52
|
before the body's first `data-controller`. -%>
|
|
53
|
-
<script type='module' src='https://cdn.jsdelivr.net/npm/houseaccount@0.
|
|
53
|
+
<script type='module' src='https://cdn.jsdelivr.net/npm/houseaccount@0.13.0/public/js/houseaccount.js'></script>
|
|
54
54
|
</head>
|
|
55
55
|
|
|
56
56
|
<%# The reader's zone is told to the server here rather than from a page of its
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
module Recourse
|
|
2
2
|
module Helpers
|
|
3
|
-
# The links in a table's headings, and the
|
|
3
|
+
# The links in a table's headings, and the mark naming the order in force.
|
|
4
4
|
module Sorts
|
|
5
|
-
#
|
|
6
|
-
# gets
|
|
7
|
-
|
|
5
|
+
# The concept for each order a column can be sorted in. A column nobody sorted
|
|
6
|
+
# by gets neither: a mark on every heading says nothing about the order in force.
|
|
7
|
+
SORT_ICONS = { 'asc' => :sort_asc, 'desc' => :sort_desc }.freeze
|
|
8
8
|
|
|
9
9
|
# A heading for a column: a link that sorts the table by it where the model
|
|
10
10
|
# allows that, and the plain title everywhere else. Only the header row draws
|
|
@@ -21,7 +21,7 @@ module Recourse
|
|
|
21
21
|
|
|
22
22
|
sort_link resource_search, column.to_sym,
|
|
23
23
|
hide_indicator: true, page: nil, default_order: :desc do
|
|
24
|
-
safe_join [title,
|
|
24
|
+
safe_join [title, sort_mark(column)].compact, ' '
|
|
25
25
|
end
|
|
26
26
|
end
|
|
27
27
|
|
|
@@ -46,12 +46,12 @@ module Recourse
|
|
|
46
46
|
# Whether the model lets a heading sort by this column.
|
|
47
47
|
def sortable_column?(column) = resource_model.ransortable_attributes.include?(column.to_s)
|
|
48
48
|
|
|
49
|
-
def
|
|
49
|
+
def sort_mark(column)
|
|
50
50
|
sort = resource_search.sorts.find { |one| one.name == column.to_s }
|
|
51
|
-
|
|
52
|
-
return unless
|
|
51
|
+
concept = SORT_ICONS[sort&.dir]
|
|
52
|
+
return unless concept
|
|
53
53
|
|
|
54
|
-
|
|
54
|
+
icon_tag concept
|
|
55
55
|
end
|
|
56
56
|
|
|
57
57
|
# Carried through the form as a hidden field, so searching keeps the order a
|
data/lib/recourse/themes.rb
CHANGED
|
@@ -25,7 +25,7 @@ module Recourse
|
|
|
25
25
|
# Where the palettes are served from, named once: the layout links one, the layout's
|
|
26
26
|
# own script puts back the one a reader chose, and the sidebar's controller swaps it.
|
|
27
27
|
# The version is the one the layout links its stylesheet and script at.
|
|
28
|
-
THEMES_PATH = 'https://cdn.jsdelivr.net/npm/houseaccount@0.
|
|
28
|
+
THEMES_PATH = 'https://cdn.jsdelivr.net/npm/houseaccount@0.13.0/public/theme'
|
|
29
29
|
|
|
30
30
|
# Where a reader's chosen palette and mode are kept in their browser. Named once for
|
|
31
31
|
# the same reason: the sidebar's controller writes it and the layout reads it back.
|
data/lib/recourse/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: recourse
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 5.
|
|
4
|
+
version: 5.5.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- claudiob
|
|
@@ -99,14 +99,14 @@ dependencies:
|
|
|
99
99
|
requirements:
|
|
100
100
|
- - ">="
|
|
101
101
|
- !ruby/object:Gem::Version
|
|
102
|
-
version: '3.
|
|
102
|
+
version: '3.7'
|
|
103
103
|
type: :runtime
|
|
104
104
|
prerelease: false
|
|
105
105
|
version_requirements: !ruby/object:Gem::Requirement
|
|
106
106
|
requirements:
|
|
107
107
|
- - ">="
|
|
108
108
|
- !ruby/object:Gem::Version
|
|
109
|
-
version: '3.
|
|
109
|
+
version: '3.7'
|
|
110
110
|
description: Recourse adds a `recourses` method to config/routes.rb. One line draws
|
|
111
111
|
the routes, controllers and views needed to browse and edit a resource, with no
|
|
112
112
|
files added to the host app. Any controller, view or partial can be overridden by
|