houseaccount 0.13.2 → 0.14.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 +4 -4
- data/CHANGELOG.md +46 -0
- data/README.md +8 -8
- data/art/index.html.erb +32 -51
- data/lib/houseaccount/helpers/chats/asks.rb +2 -1
- data/lib/houseaccount/version.rb +1 -1
- data/public/css/houseaccount.css +1 -1
- data/public/index.html +34 -53
- data/public/js/houseaccount.js +32 -24
- data/public/{v0.13.2 → v0.14.1}/css/houseaccount.css +1 -1
- data/public/v0.14.1/js/houseaccount.js +152 -0
- metadata +19 -19
- data/public/v0.13.2/js/houseaccount.js +0 -144
- /data/public/{v0.13.2 → v0.14.1}/font/bootstrap-icons-FRBPO3H7.woff2 +0 -0
- /data/public/{v0.13.2 → v0.14.1}/font/quicksand-500-latin-QHYSRFVK.woff2 +0 -0
- /data/public/{v0.13.2 → v0.14.1}/font/quicksand-500-latin-ext-QZ4PXVHB.woff2 +0 -0
- /data/public/{v0.13.2 → v0.14.1}/font/quicksand-500-latin-ext.woff2 +0 -0
- /data/public/{v0.13.2 → v0.14.1}/font/quicksand-500-latin.woff2 +0 -0
- /data/public/{v0.13.2 → v0.14.1}/font/quicksand-500-vietnamese-RRA5CUQB.woff2 +0 -0
- /data/public/{v0.13.2 → v0.14.1}/font/quicksand-500-vietnamese.woff2 +0 -0
- /data/public/{v0.13.2 → v0.14.1}/theme/bootstrap.css +0 -0
- /data/public/{v0.13.2 → v0.14.1}/theme/dawn.css +0 -0
- /data/public/{v0.13.2 → v0.14.1}/theme/dracula.css +0 -0
- /data/public/{v0.13.2 → v0.14.1}/theme/gruvbox.css +0 -0
- /data/public/{v0.13.2 → v0.14.1}/theme/monokai.css +0 -0
- /data/public/{v0.13.2 → v0.14.1}/theme/nord.css +0 -0
- /data/public/{v0.13.2 → v0.14.1}/theme/one_dark.css +0 -0
- /data/public/{v0.13.2 → v0.14.1}/theme/solarized.css +0 -0
- /data/public/{v0.13.2 → v0.14.1}/theme/tokyo_night.css +0 -0
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 5a8e618a87b0698bb0ceec6d3a257045325766ab840ad8672a52148210a3298b
|
|
4
|
+
data.tar.gz: 595a9d0ed9b7b85eaa4dc4581db033a0219eebcdc72cb2ea14a83da9dab81bc8
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 2a0649f3153594aa2092c89519926980cd9118c788a4ac87056845c206bc09a908e657bd772db0637f6850b77a5292f765cbe30c1b0f7b52934151c98662a1ec
|
|
7
|
+
data.tar.gz: 4b1da3b9f81e9401ee9f353a73cb5c7f7951bc0b01ea7c629215c1b302b7cd67bdc93ac32c255a4ed27b3a31196f3b4d8b2270ca7468bd42b047abaf78b05869
|
data/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,52 @@ For more information about changelogs, check [Keep a Changelog](http://keepachan
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
## 0.14.1 - 2026-09-17
|
|
11
|
+
|
|
12
|
+
* [Fix] A confirm asks about the link that was clicked rather than whatever holds the focus
|
|
13
|
+
|
|
14
|
+
* [Change] The showcase demonstrates the confirm without a bare dialog standing beside it
|
|
15
|
+
|
|
16
|
+
## 0.14.0 - 2026-09-17
|
|
17
|
+
|
|
18
|
+
* [Feature] A table's rows can be dragged into an order
|
|
19
|
+
|
|
20
|
+
The `sortable` controller, which is what a recourse page with a grip beside each row
|
|
21
|
+
names: a row is picked up by its grip and dropped somewhere else in the table, and the
|
|
22
|
+
place it landed in is PATCHed to the URL that row carries. Only the row that moved is
|
|
23
|
+
reported — the server shifts whatever it displaced, being the only one that knows how
|
|
24
|
+
many rows stand behind this page — and nothing is rendered from the answer, since the
|
|
25
|
+
row is already where it was dropped and redrawing the table under the cursor that
|
|
26
|
+
dropped it is the thing to avoid. A move the server refuses reloads the enclosing
|
|
27
|
+
frame, so a row never sits somewhere the database never agreed to, and a refresh
|
|
28
|
+
broadcast arriving mid-drag is sat out the way the search form sits one out.
|
|
29
|
+
|
|
30
|
+
SortableJS does the dragging, bundled like everything else here. Its own two classes
|
|
31
|
+
are styled beside the table's: the space a row will land in wears the tint a kept row
|
|
32
|
+
wears, and the grip is `grab`, then `grabbing` while it is held — the whole of the
|
|
33
|
+
affordance, since the icon already says what it is. `touch-action` is taken off that
|
|
34
|
+
square alone, a phone scrolling a table by dragging anywhere else on it.
|
|
35
|
+
|
|
36
|
+
* [Fix] A question half typed survives an answer landing: the field is Turbo's to leave alone,
|
|
37
|
+
and is emptied once the question it held has gone rather than by the morph
|
|
38
|
+
|
|
39
|
+
## 0.13.3 - 2026-09-17
|
|
40
|
+
|
|
41
|
+
* [Change] The showcase leads with the themes, and says less everywhere else
|
|
42
|
+
|
|
43
|
+
The palette toggle repaints everything under it, so it stands first, and the section is
|
|
44
|
+
Themes — the word the folder, the id and the files have always used. Its button names the
|
|
45
|
+
mode it switches to and nothing else. Icons lost the last paragraph on the page that
|
|
46
|
+
described what the thing under it draws, and on a phone the two card URLs show the path
|
|
47
|
+
without the origin there is no room for.
|
|
48
|
+
|
|
49
|
+
* [Fix] The README pins a version a host can install
|
|
50
|
+
|
|
51
|
+
Three 0.13 releases went out while the README still taught `~> 0.12.0`, which stops short
|
|
52
|
+
of 0.13: a pin that cannot resolve the gem it appears in. It pins `~> 0.13.0` now, every
|
|
53
|
+
example URL names this release, and `package-lock.json`, left at 0.12.0 by the same three
|
|
54
|
+
releases, carries the version its package does.
|
|
55
|
+
|
|
10
56
|
## 0.13.2 - 2026-09-17
|
|
11
57
|
|
|
12
58
|
* [Fix] The cell a label wraps is `flow-field`; `form-field` is Bootstrap's, and its rules applied
|
data/README.md
CHANGED
|
@@ -22,10 +22,10 @@ gem install houseaccount
|
|
|
22
22
|
|
|
23
23
|
```ruby
|
|
24
24
|
# Gemfile
|
|
25
|
-
gem 'houseaccount', '~> 0.
|
|
25
|
+
gem 'houseaccount', '~> 0.14.0'
|
|
26
26
|
```
|
|
27
27
|
|
|
28
|
-
`~> 0.
|
|
28
|
+
`~> 0.14.0` stops short of `0.15`, since below 1.0 a minor release may break whatever it likes.
|
|
29
29
|
Rails 8.1 and Ruby 3.2 are the minimum.
|
|
30
30
|
|
|
31
31
|
### From npm
|
|
@@ -59,7 +59,7 @@ Stimulus application rather than taking the house's:
|
|
|
59
59
|
import WallController from 'houseaccount/controllers/wall_controller.js'
|
|
60
60
|
```
|
|
61
61
|
|
|
62
|
-
Pin as a Gemfile does, and for the same reason: `"houseaccount": "~0.
|
|
62
|
+
Pin as a Gemfile does, and for the same reason: `"houseaccount": "~0.14.0"` stops short of `0.15`.
|
|
63
63
|
|
|
64
64
|
A page takes the gem's layout, and wears the same head:
|
|
65
65
|
|
|
@@ -95,7 +95,7 @@ which Pages redirects away from.
|
|
|
95
95
|
|
|
96
96
|
With the gem in the bundle an app serves `/css/houseaccount.css`, `/js/houseaccount.js`,
|
|
97
97
|
`/theme/*`, `/font/*`, `/logo/*` and `/favicon/*` itself — and its own version's copy under
|
|
98
|
-
`/v0.
|
|
98
|
+
`/v0.14.1/`, which is what the head helper links, cached for a year — answers a 400, 404, 406, 422 or 500
|
|
99
99
|
with the house's own page, and has these helpers in every view:
|
|
100
100
|
|
|
101
101
|
```erb
|
|
@@ -248,16 +248,16 @@ Those follow the latest release. Every release is also kept whole under its own
|
|
|
248
248
|
forever and cached for a year, for a page that would rather move on its own terms:
|
|
249
249
|
|
|
250
250
|
```html
|
|
251
|
-
<link rel='stylesheet' href='https://design.houseaccount.com/v0.
|
|
252
|
-
<script type='module' src='https://design.houseaccount.com/v0.
|
|
251
|
+
<link rel='stylesheet' href='https://design.houseaccount.com/v0.14.1/css/houseaccount.css'>
|
|
252
|
+
<script type='module' src='https://design.houseaccount.com/v0.14.1/js/houseaccount.js'></script>
|
|
253
253
|
```
|
|
254
254
|
|
|
255
255
|
The same two files come from any CDN that carries the npm package, for a page that would
|
|
256
256
|
rather not depend on the site at all:
|
|
257
257
|
|
|
258
258
|
```html
|
|
259
|
-
<link rel='stylesheet' href='https://cdn.jsdelivr.net/npm/houseaccount@0.
|
|
260
|
-
<script type='module' src='https://cdn.jsdelivr.net/npm/houseaccount@0.
|
|
259
|
+
<link rel='stylesheet' href='https://cdn.jsdelivr.net/npm/houseaccount@0.14.1/public/css/houseaccount.css'>
|
|
260
|
+
<script type='module' src='https://cdn.jsdelivr.net/npm/houseaccount@0.14.1/public/js/houseaccount.js'></script>
|
|
261
261
|
```
|
|
262
262
|
|
|
263
263
|
The palettes are beside them, at `public/theme/nord.css` and the rest. A published version is never
|
data/art/index.html.erb
CHANGED
|
@@ -10,14 +10,16 @@
|
|
|
10
10
|
<link rel='icon' href='favicon/design-96.png' type='image/png' sizes='96x96'>
|
|
11
11
|
<link rel='apple-touch-icon' href='favicon/design-180.png'>
|
|
12
12
|
<link rel='manifest' href='site.webmanifest'>
|
|
13
|
-
<!-- The same
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
<
|
|
13
|
+
<!-- The same files every HouseAccount page loads, under the version the head helper
|
|
14
|
+
pins a host to, so the page is drawn by the bytes it hands out rather than by
|
|
15
|
+
whatever was last built. Relative, so it reads the same on staging, on production
|
|
16
|
+
and from a folder on disk. -->
|
|
17
|
+
<link rel='stylesheet' href='v<%= version %>/css/houseaccount.css'>
|
|
18
|
+
<link rel='stylesheet' href='v<%= version %>/theme/bootstrap.css' data-recourse-theme=''>
|
|
19
|
+
<script type='module' src='v<%= version %>/js/houseaccount.js'></script>
|
|
18
20
|
<style>
|
|
19
21
|
/* The page's own chrome and nothing else: everything shown below is styled by
|
|
20
|
-
|
|
22
|
+
the pinned houseaccount.css alone, which is the point of showing it. */
|
|
21
23
|
.design-section { padding-block: 2rem; border-block-end: var(--bs-border-width) solid var(--bs-border-color); }
|
|
22
24
|
.design-section > p { max-width: 48rem; margin-inline: auto; }
|
|
23
25
|
.design-subsection { margin-block-start: 2.5rem; padding-block-start: 1.5rem; border-block-start: var(--bs-border-width) dashed var(--bs-border-color); }
|
|
@@ -27,16 +29,12 @@
|
|
|
27
29
|
.design-shell { height: 18rem; border: var(--bs-border-width) solid var(--bs-border-color); border-radius: var(--bs-radius-3); overflow: hidden; }
|
|
28
30
|
.design-shell .recourse-shell { height: 100%; }
|
|
29
31
|
.chat-thread { max-width: 36rem; margin-inline: auto; }
|
|
30
|
-
/* The wall fills a viewport; here it fills a box, so the page can show it beside the rest. */
|
|
31
|
-
.design-wall { position: relative; height: 24rem; overflow: hidden; border-radius: var(--bs-radius-3); }
|
|
32
|
-
.design-wall .tools { position: absolute; }
|
|
33
|
-
.design-wall .flow { height: 100%; justify-content: center; }
|
|
34
32
|
</style>
|
|
35
33
|
</head>
|
|
36
34
|
<body class='text-center'>
|
|
37
35
|
<header class='container-fluid px-3 py-3 border-bottom d-flex flex-wrap justify-content-center align-items-baseline gap-3'>
|
|
38
36
|
<a class='lockup quicksand' href='#'><svg aria-hidden='true' style='width: 1.0515em; height: 1.0515em; top: 0.18625em' viewBox='0 0 512 512'><g fill='none' stroke='#3b8ae8' stroke-width='28' stroke-linecap='round' stroke-linejoin='round' transform='rotate(45 256 256)'><path d='M196 60 L316 60 L316 372 L196 372 Z'/><path d='M196 120 L316 120'/><path d='M196 372 L256 470 L316 372'/><path d='M232 431 L256 470 L280 431 Z' fill='#1B5288'/></g></svg>design</a>
|
|
39
|
-
<nav class='fg-2'>the <a href='#
|
|
37
|
+
<nav class='fg-2'>the <a href='#theme'>themes</a>, <a href='#component'>components</a>, <a href='#page'>error pages</a>, <a href='#favicon'>icons</a> shared by <a href='https://pro.houseaccount.com/bookings' title='Fountain'><img class='design-mark' src='logo/fountain.svg' alt='Fountain'></a> <a href='https://gold.houseaccount.com/specialty_matches' title='Goldrush'><img class='design-mark' src='logo/goldrush.svg' alt='Goldrush'></a> <a href='https://providers.houseaccount.com/providers' title='Houston'><img class='design-mark' src='logo/houston.svg' alt='Houston'></a> <a href='https://checkout.houseaccount.com/providers' title='Autopilot'><img class='design-mark' src='logo/autopilot.svg' alt='Autopilot'></a></nav>
|
|
40
38
|
</header>
|
|
41
39
|
|
|
42
40
|
<main class='container-fluid px-3'>
|
|
@@ -46,14 +44,14 @@
|
|
|
46
44
|
<div class='col-12 md:col-6'>
|
|
47
45
|
<div class='card p-3'>
|
|
48
46
|
<strong>Stylesheet</strong>
|
|
49
|
-
<a class='design-url' href='css/houseaccount.css'>https://design.houseaccount.com
|
|
50
|
-
<span class='small fg-2 mt-1'>Bootstrap 6
|
|
47
|
+
<a class='design-url' href='css/houseaccount.css'><span class='d-none sm:d-inline'>https://design.houseaccount.com/</span>css/houseaccount.css</a>
|
|
48
|
+
<span class='small fg-2 mt-1'>Bootstrap 6 with extra icons and components</span>
|
|
51
49
|
</div>
|
|
52
50
|
</div>
|
|
53
51
|
<div class='col-12 md:col-6'>
|
|
54
52
|
<div class='card p-3'>
|
|
55
53
|
<strong>Script</strong>
|
|
56
|
-
<a class='design-url' href='js/houseaccount.js'>https://design.houseaccount.com
|
|
54
|
+
<a class='design-url' href='js/houseaccount.js'><span class='d-none sm:d-inline'>https://design.houseaccount.com/</span>js/houseaccount.js</a>
|
|
57
55
|
<span class='small fg-2 mt-1'>Turbo, Bootstrap, and a Stimulus application</span>
|
|
58
56
|
</div>
|
|
59
57
|
</div>
|
|
@@ -66,6 +64,16 @@
|
|
|
66
64
|
</div>
|
|
67
65
|
</section>
|
|
68
66
|
|
|
67
|
+
<section class='design-section' id='theme'>
|
|
68
|
+
<h2>Themes</h2>
|
|
69
|
+
<button type='button' class='btn btn-outline theme-primary' data-controller='scheme' data-action='scheme#rotate'
|
|
70
|
+
data-scheme-themes-value='["bootstrap","dawn","dracula","gruvbox","monokai","nord","one_dark","solarized","tokyo_night"]'
|
|
71
|
+
data-scheme-path-value='v<%= version %>/theme' data-scheme-storage-value='recourse-scheme'>
|
|
72
|
+
<span class='recourse-scheme-light'><i class='bi bi-moon-fill'></i> Dark</span>
|
|
73
|
+
<span class='recourse-scheme-dark'><i class='bi bi-sun-fill'></i> Light</span>
|
|
74
|
+
</button>
|
|
75
|
+
</section>
|
|
76
|
+
|
|
69
77
|
<section class='design-section' id='component'>
|
|
70
78
|
<h2>Components</h2>
|
|
71
79
|
<h3 class='h5 design-subsection'>Buttons and badges</h3>
|
|
@@ -132,7 +140,9 @@
|
|
|
132
140
|
</div>
|
|
133
141
|
|
|
134
142
|
<h3 class='h5 design-subsection'>Confirm</h3>
|
|
135
|
-
<
|
|
143
|
+
<turbo-frame id='confirm-demo'>
|
|
144
|
+
<a class='btn btn-sm btn-solid theme-danger' href='#confirm-demo' data-turbo-method='get' data-turbo-frame='confirm-demo' data-turbo-confirm='Delete humanity?'>Delete state</a>
|
|
145
|
+
</turbo-frame>
|
|
136
146
|
|
|
137
147
|
<h3 class='h5 design-subsection'>Tooltip and relative time</h3>
|
|
138
148
|
<p>Hover the icon and the time: <i class='bi bi-telephone' role='img' data-controller='tooltip' data-bs-placement='top' data-bs-title='Phone'></i> ·
|
|
@@ -175,26 +185,6 @@
|
|
|
175
185
|
<input type='submit' value='Send' class='btn btn-solid rounded-3 theme-primary ms-3'>
|
|
176
186
|
</form>
|
|
177
187
|
</div>
|
|
178
|
-
|
|
179
|
-
<h3 class='h5 design-subsection' id='wall'>Wall</h3>
|
|
180
|
-
<p class='fg-2'>A page of the signup flow, as <code>flow</code> draws it around a card.</p>
|
|
181
|
-
<div class='design-wall'>
|
|
182
|
-
<div class='flow' data-controller='wall'>
|
|
183
|
-
<header><a class='lockup quicksand' href='#wall'><svg aria-hidden='true' style='width: 0.8117em; height: 0.8117em; top: 0.0358em' viewBox='0 0 512 512'><g fill='none' stroke='#3b8ae8' stroke-width='28' stroke-linecap='round' stroke-linejoin='round'><path d='M256 302Q256 256 295.8 233L406.2 169.3Q446 146.3 446 192.3V319.7Q446 365.7 406.2 388.7L295.8 452.4Q256 475.4 256 429.4Z' fill='#1B5288'/><path d='M216.2 59.6Q256 36.6 295.8 59.6L406.2 123.3Q446 146.3 446 192.3V319.7Q446 365.7 406.2 388.7L295.8 452.4Q256 475.4 216.2 452.4L105.8 388.7Q66 365.7 66 319.7V192.3Q66 146.3 105.8 123.3Z'/><path d='M256 256 95.4 163.3'/><path d='M256 256 416.6 163.3'/><path d='M256 256V441.4'/></g></svg><span class='house'>house</span>account</a></header>
|
|
184
|
-
<h1>Welcome to HouseAccount</h1>
|
|
185
|
-
<p>Enter the phone number of your business and we’ll text a verification code</p>
|
|
186
|
-
<div class='flow-card p-3 md:p-4 mx-auto'>
|
|
187
|
-
<form class='p-0' data-controller='require' onsubmit='return false'>
|
|
188
|
-
<fieldset class='d-grid'>
|
|
189
|
-
<label class='form-label' for='wall-phone'>Your mobile number</label>
|
|
190
|
-
<input class='form-control' type='tel' id='wall-phone' required data-controller='phone' data-action='keydown->phone#down input->phone#input'>
|
|
191
|
-
</fieldset>
|
|
192
|
-
<input type='submit' value='Join' class='btn btn-solid theme-primary mt-3'>
|
|
193
|
-
</form>
|
|
194
|
-
</div>
|
|
195
|
-
<footer><a href='#wall'>Sign out</a><span class='fg-2' aria-hidden='true'>·</span><a href='#wall'>Disconnect Jobber</a></footer>
|
|
196
|
-
</div>
|
|
197
|
-
</div>
|
|
198
188
|
</section>
|
|
199
189
|
|
|
200
190
|
<section class='design-section' id='page'>
|
|
@@ -208,19 +198,8 @@
|
|
|
208
198
|
</ul>
|
|
209
199
|
</section>
|
|
210
200
|
|
|
211
|
-
<section class='design-section' id='theme'>
|
|
212
|
-
<h2>Palettes</h2>
|
|
213
|
-
<button type='button' class='btn btn-outline theme-primary' data-controller='scheme' data-action='scheme#rotate'
|
|
214
|
-
data-scheme-themes-value='["bootstrap","dawn","dracula","gruvbox","monokai","nord","one_dark","solarized","tokyo_night"]'
|
|
215
|
-
data-scheme-path-value='theme' data-scheme-storage-value='recourse-scheme'>
|
|
216
|
-
<span class='recourse-scheme-light'><i class='bi bi-moon-fill'></i> Another palette, dark</span>
|
|
217
|
-
<span class='recourse-scheme-dark'><i class='bi bi-sun-fill'></i> Another palette, light</span>
|
|
218
|
-
</button>
|
|
219
|
-
</section>
|
|
220
|
-
|
|
221
201
|
<section class='design-section' id='favicon'>
|
|
222
202
|
<h2>Icons</h2>
|
|
223
|
-
<p class='fg-2'>Every mark an app is known by: the drawing under <code>/logo</code>, and what a tab, a phone and a manifest each ask for under <code>/favicon</code>. The pink one is a local machine's.</p>
|
|
224
203
|
<div class='table-responsive'>
|
|
225
204
|
<table class='table table-hover mx-auto' style='max-width: 60rem'>
|
|
226
205
|
<thead><tr><th scope='col'>Logo</th><th scope='col'>App</th><th scope='col'>.svg</th><th scope='col'>-dev.svg</th><th scope='col'>-96.png</th><th scope='col'>-180.png</th><th scope='col'>-192.png</th><th scope='col'>-512.png</th><th scope='col'>.ico</th><th scope='col'>.webmanifest</th></tr></thead>
|
|
@@ -237,11 +216,13 @@
|
|
|
237
216
|
</section>
|
|
238
217
|
</main>
|
|
239
218
|
|
|
240
|
-
<footer class='container-fluid px-3 py-4 small fg-2 d-flex flex-
|
|
241
|
-
<
|
|
242
|
-
<
|
|
243
|
-
|
|
244
|
-
|
|
219
|
+
<footer class='container-fluid px-3 py-4 small fg-2 d-flex flex-column align-items-center gap-2'>
|
|
220
|
+
<code>gem install houseaccount</code>
|
|
221
|
+
<div class='d-flex flex-wrap justify-content-center gap-3'>
|
|
222
|
+
<a href='https://github.com/HouseAccountEng/design'>Source</a>
|
|
223
|
+
<a href='https://rubydoc.info/gems/houseaccount'>Reference</a>
|
|
224
|
+
<a href='https://rubygems.org/gems/houseaccount'>RubyGems</a>
|
|
225
|
+
</div>
|
|
245
226
|
</footer>
|
|
246
227
|
</body>
|
|
247
228
|
</html>
|
|
@@ -25,7 +25,8 @@ module HouseAccount
|
|
|
25
25
|
{
|
|
26
26
|
id: 'ask', required: true, autofocus: true, autocomplete: 'off',
|
|
27
27
|
class: 'form-control rounded-4 flex-grow-1 chat-ask', placeholder: hints.first,
|
|
28
|
-
data: { thread_target: 'field',
|
|
28
|
+
data: { thread_target: 'field', turbo_permanent: '',
|
|
29
|
+
**houseaccount_chat_placeholder_data(hints), },
|
|
29
30
|
}
|
|
30
31
|
end
|
|
31
32
|
|
data/lib/houseaccount/version.rb
CHANGED