coveragebook_components 0.17.2 → 0.17.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/assets/build/coco/coco.css +74 -35
- data/app/assets/build/coco/coco.js +20 -2
- data/app/assets/css/base/tippy.css +1 -1
- data/app/components/coco/messaging/alert/alert.rb +5 -0
- data/app/components/coco/messaging/notice/notice.rb +8 -0
- data/app/components/coco/messaging/tooltip/tooltip.css +6 -0
- data/app/components/coco/messaging/tooltip/tooltip.html.erb +3 -0
- data/app/components/coco/messaging/tooltip/tooltip.js +15 -0
- data/app/components/coco/messaging/tooltip/tooltip.rb +9 -0
- data/app/components/coco/modals/modal_dialog/modal_dialog.css +27 -9
- data/app/components/coco/modals/modal_dialog/modal_dialog.html.erb +19 -10
- data/app/components/coco/modals/modal_dialog/modal_dialog.rb +5 -0
- data/app/helpers/coco/components_helper.rb +6 -2
- data/lib/coco.rb +1 -1
- metadata +6 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 640690640d1cb09848352d16bf5eab6b24525775a46bff8773c316eadc349333
|
4
|
+
data.tar.gz: 64520da2e244704072216713b5d08376b468015145850bdf393f6636b73a4dd1
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: dd6d5464840a829d94a91093897bebc91c0af1c73d64729088a4563fe89b8f00e401c245067e8c95f50d878fb8ac6af7e394fbbe2022f28113f196fa5573a6f2
|
7
|
+
data.tar.gz: edda3f86449b0cf48c5c2811a4ee9b61b3c5b706727fe8e8259abebf34135e235489d6288cea5cd533ad8401ba3069c7044422a604dd29e82e4dfeb51aabfeeb
|
@@ -4383,6 +4383,12 @@ select{
|
|
4383
4383
|
opacity: 0
|
4384
4384
|
}
|
4385
4385
|
|
4386
|
+
[data-coco][data-component="tooltip"] {
|
4387
|
+
display: block;
|
4388
|
+
width: -moz-fit-content;
|
4389
|
+
width: fit-content;
|
4390
|
+
}
|
4391
|
+
|
4386
4392
|
[data-coco][data-component="modal"]{
|
4387
4393
|
position: fixed;
|
4388
4394
|
inset: 0px;
|
@@ -4549,56 +4555,72 @@ select{
|
|
4549
4555
|
|
4550
4556
|
[data-coco][data-component="modal-dialog"]{
|
4551
4557
|
width: 100%;
|
4552
|
-
border-radius:
|
4558
|
+
border-radius: 2rem;
|
4559
|
+
--tw-bg-opacity: 1;
|
4560
|
+
background-color: rgb(255 255 255 / var(--tw-bg-opacity))
|
4553
4561
|
}
|
4554
4562
|
|
4555
4563
|
.modal-frame [data-coco][data-component="modal-dialog"]{
|
4556
|
-
--tw-shadow: 0 25px
|
4557
|
-
--tw-shadow-colored: 0 25px
|
4558
|
-
box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)
|
4559
|
-
max-width: 42rem /* temp until sizes added */
|
4564
|
+
--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
|
4565
|
+
--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);
|
4566
|
+
box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)
|
4560
4567
|
}
|
4561
4568
|
|
4569
|
+
.modal-frame [data-coco][data-component="modal-dialog"][data-size="sm"] {
|
4570
|
+
max-width: 480px;
|
4571
|
+
}
|
4572
|
+
|
4573
|
+
.modal-frame [data-coco][data-component="modal-dialog"][data-size="md"] {
|
4574
|
+
max-width: 520px;
|
4575
|
+
}
|
4576
|
+
|
4577
|
+
.modal-frame [data-coco][data-component="modal-dialog"][data-size="lg"] {
|
4578
|
+
max-width: 640px;
|
4579
|
+
}
|
4580
|
+
|
4562
4581
|
[data-coco][data-component="modal-dialog"] .modal-dialog-header{
|
4563
|
-
|
4564
|
-
|
4565
|
-
align-items: center;
|
4566
|
-
height: 3.5rem;
|
4567
|
-
border-top-left-radius: 0.75rem;
|
4568
|
-
border-top-right-radius: 0.75rem;
|
4569
|
-
border-bottom-width: 1px;
|
4570
|
-
--tw-border-opacity: 1;
|
4571
|
-
border-color: rgb(209 213 219 / var(--tw-border-opacity));
|
4582
|
+
border-top-left-radius: 2rem;
|
4583
|
+
border-top-right-radius: 2rem;
|
4572
4584
|
--tw-bg-opacity: 1;
|
4573
4585
|
background-color: rgb(255 255 255 / var(--tw-bg-opacity));
|
4574
4586
|
padding-left: 1rem;
|
4575
|
-
padding-right: 1rem
|
4587
|
+
padding-right: 1rem;
|
4588
|
+
padding-top: 1rem;
|
4589
|
+
padding-bottom: 1rem
|
4576
4590
|
}
|
4577
4591
|
|
4578
4592
|
@media (min-width: 576px){
|
4579
4593
|
|
4580
4594
|
[data-coco][data-component="modal-dialog"] .modal-dialog-header{
|
4581
|
-
|
4582
|
-
padding-
|
4583
|
-
padding-
|
4595
|
+
padding-left: 2.5rem;
|
4596
|
+
padding-right: 2.5rem;
|
4597
|
+
padding-top: 1.5rem;
|
4598
|
+
padding-bottom: 1.5rem
|
4584
4599
|
}
|
4585
4600
|
}
|
4586
4601
|
|
4602
|
+
[data-coco][data-component="modal-dialog"] .modal-dialog-header-container{
|
4603
|
+
position: relative;
|
4604
|
+
display: flex;
|
4605
|
+
height: 2.75rem;
|
4606
|
+
align-items: center
|
4607
|
+
}
|
4608
|
+
|
4587
4609
|
[data-coco][data-component="modal-dialog"] .modal-dialog-title{
|
4588
4610
|
width: 100%;
|
4589
4611
|
overflow: hidden;
|
4590
4612
|
text-overflow: ellipsis;
|
4591
4613
|
white-space: nowrap;
|
4592
4614
|
padding-right: 1.5rem;
|
4593
|
-
font-size:
|
4594
|
-
line-height:
|
4615
|
+
font-size: 20px;
|
4616
|
+
line-height: 24px;
|
4595
4617
|
font-weight: 700
|
4596
4618
|
}
|
4597
4619
|
|
4598
4620
|
[data-coco][data-component="modal-dialog"] .modal-dialog-close{
|
4599
4621
|
position: absolute;
|
4600
4622
|
top: 50%;
|
4601
|
-
right: 0.25rem;
|
4623
|
+
right: -0.25rem;
|
4602
4624
|
display: block;
|
4603
4625
|
flex: none;
|
4604
4626
|
--tw-translate-y: -50%;
|
@@ -4609,18 +4631,24 @@ select{
|
|
4609
4631
|
@media (min-width: 576px){
|
4610
4632
|
|
4611
4633
|
[data-coco][data-component="modal-dialog"] .modal-dialog-close{
|
4612
|
-
right: 0.
|
4634
|
+
right: -0.5rem
|
4613
4635
|
}
|
4614
4636
|
}
|
4615
4637
|
|
4616
4638
|
[data-coco][data-component="modal-dialog"] .modal-dialog-close{
|
4639
|
+
border-radius: 9999px;
|
4617
4640
|
--tw-text-opacity: 1;
|
4618
|
-
color: rgb(
|
4641
|
+
color: rgb(17 24 39 / var(--tw-text-opacity));
|
4642
|
+
transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
|
4643
|
+
transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
|
4644
|
+
transition-duration: 150ms
|
4619
4645
|
}
|
4620
4646
|
|
4621
4647
|
[data-coco][data-component="modal-dialog"] .modal-dialog-close:hover{
|
4648
|
+
--tw-bg-opacity: 1;
|
4649
|
+
background-color: rgb(243 244 246 / var(--tw-bg-opacity));
|
4622
4650
|
--tw-text-opacity: 1;
|
4623
|
-
color: rgb(
|
4651
|
+
color: rgb(17 24 39 / var(--tw-text-opacity))
|
4624
4652
|
}
|
4625
4653
|
|
4626
4654
|
[data-coco][data-component="modal-dialog"] .modal-dialog-close:focus{
|
@@ -4631,23 +4659,37 @@ select{
|
|
4631
4659
|
box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000)
|
4632
4660
|
}
|
4633
4661
|
|
4662
|
+
[data-coco][data-component="modal-dialog"] .modal-dialog-notice [data-component="notice"]{
|
4663
|
+
margin-bottom: 1rem;
|
4664
|
+
padding-left: 1rem;
|
4665
|
+
padding-right: 1rem
|
4666
|
+
}
|
4667
|
+
|
4668
|
+
@media (min-width: 576px){
|
4669
|
+
|
4670
|
+
[data-coco][data-component="modal-dialog"] .modal-dialog-notice [data-component="notice"]{
|
4671
|
+
margin-bottom: 1.5rem;
|
4672
|
+
padding-left: 2.5rem;
|
4673
|
+
padding-right: 2.5rem
|
4674
|
+
}
|
4675
|
+
}
|
4676
|
+
|
4634
4677
|
[data-coco][data-component="modal-dialog"] .modal-dialog-content{
|
4635
|
-
border-radius:
|
4678
|
+
border-bottom-right-radius: 2rem;
|
4679
|
+
border-bottom-left-radius: 2rem;
|
4636
4680
|
--tw-bg-opacity: 1;
|
4637
|
-
background-color: rgb(
|
4681
|
+
background-color: rgb(255 255 255 / var(--tw-bg-opacity));
|
4638
4682
|
padding-left: 1rem;
|
4639
4683
|
padding-right: 1rem;
|
4640
|
-
padding-
|
4641
|
-
padding-bottom: 1rem
|
4684
|
+
padding-bottom: 1.5rem
|
4642
4685
|
}
|
4643
4686
|
|
4644
4687
|
@media (min-width: 576px){
|
4645
4688
|
|
4646
4689
|
[data-coco][data-component="modal-dialog"] .modal-dialog-content{
|
4647
|
-
padding-left:
|
4648
|
-
padding-right:
|
4649
|
-
padding-
|
4650
|
-
padding-bottom: 1.5rem
|
4690
|
+
padding-left: 2.5rem;
|
4691
|
+
padding-right: 2.5rem;
|
4692
|
+
padding-bottom: 2rem
|
4651
4693
|
}
|
4652
4694
|
}
|
4653
4695
|
|
@@ -6861,9 +6903,6 @@ select{
|
|
6861
6903
|
|
6862
6904
|
.tippy-box[data-theme~="coco-tooltip"] .tippy-content{
|
6863
6905
|
max-width: 240px;
|
6864
|
-
overflow: hidden;
|
6865
|
-
text-overflow: ellipsis;
|
6866
|
-
white-space: nowrap;
|
6867
6906
|
padding-left: 0.75rem;
|
6868
6907
|
padding-right: 0.75rem;
|
6869
6908
|
padding-top: 0.5rem;
|
@@ -15415,7 +15415,7 @@ var alpine_default = import_alpinejs.default;
|
|
15415
15415
|
// ../../../package.json
|
15416
15416
|
var package_default = {
|
15417
15417
|
name: "coveragebook-components",
|
15418
|
-
version: "0.17.
|
15418
|
+
version: "0.17.4",
|
15419
15419
|
repository: "git@github.com:coveragebook/coco.git",
|
15420
15420
|
license: "NO LICENSE",
|
15421
15421
|
author: "Mark Perkins <mark@coveragebook.com>",
|
@@ -16358,8 +16358,26 @@ var toast_default = CocoComponent("toast", () => {
|
|
16358
16358
|
};
|
16359
16359
|
});
|
16360
16360
|
|
16361
|
+
// ../../components/coco/messaging/tooltip/tooltip.js
|
16362
|
+
var tooltip_exports = {};
|
16363
|
+
__export(tooltip_exports, {
|
16364
|
+
default: () => tooltip_default2
|
16365
|
+
});
|
16366
|
+
var tooltip_default2 = CocoComponent("tooltip", () => {
|
16367
|
+
return {
|
16368
|
+
init() {
|
16369
|
+
tippy_default(this.$el, {
|
16370
|
+
theme: "coco-tooltip",
|
16371
|
+
appendTo: () => {
|
16372
|
+
return this.$el.firstElementChild;
|
16373
|
+
}
|
16374
|
+
});
|
16375
|
+
}
|
16376
|
+
};
|
16377
|
+
});
|
16378
|
+
|
16361
16379
|
// import-glob:/Users/mark/Code/coveragebook/coco/app/assets/js/base|@components/messaging/**/*.js
|
16362
|
-
var modules7 = [alert_exports, notice_exports, snackbar_exports, system_banner_exports, toast_exports];
|
16380
|
+
var modules7 = [alert_exports, notice_exports, snackbar_exports, system_banner_exports, toast_exports, tooltip_exports];
|
16363
16381
|
var __default7 = modules7;
|
16364
16382
|
|
16365
16383
|
// ../../components/coco/modals/modal/modal.js
|
@@ -0,0 +1,15 @@
|
|
1
|
+
import { CocoComponent } from "@assets/js/coco/component";
|
2
|
+
import tippy from "@js/base/tippy";
|
3
|
+
|
4
|
+
export default CocoComponent("tooltip", () => {
|
5
|
+
return {
|
6
|
+
init() {
|
7
|
+
tippy(this.$el, {
|
8
|
+
theme: "coco-tooltip",
|
9
|
+
appendTo: () => {
|
10
|
+
return this.$el.firstElementChild;
|
11
|
+
},
|
12
|
+
});
|
13
|
+
},
|
14
|
+
};
|
15
|
+
});
|
@@ -1,28 +1,46 @@
|
|
1
1
|
@layer components {
|
2
2
|
[data-coco][data-component="modal-dialog"] {
|
3
|
-
@apply rounded-
|
3
|
+
@apply rounded-[2rem] w-full bg-background-light-1;
|
4
4
|
|
5
5
|
.modal-frame & {
|
6
|
-
@apply shadow-
|
7
|
-
|
6
|
+
@apply shadow-xl;
|
7
|
+
|
8
|
+
&[data-size="sm"] {
|
9
|
+
max-width: 480px;
|
10
|
+
}
|
11
|
+
|
12
|
+
&[data-size="md"] {
|
13
|
+
max-width: 520px;
|
14
|
+
}
|
15
|
+
|
16
|
+
&[data-size="lg"] {
|
17
|
+
max-width: 640px;
|
18
|
+
}
|
8
19
|
}
|
9
20
|
|
10
21
|
.modal-dialog-header {
|
11
|
-
@apply
|
12
|
-
|
22
|
+
@apply px-4 sm:px-10 py-4 sm:py-6 rounded-t-[2rem] bg-background-light-1;
|
23
|
+
}
|
24
|
+
|
25
|
+
.modal-dialog-header-container {
|
26
|
+
@apply relative flex items-center h-11;
|
13
27
|
}
|
14
28
|
|
15
29
|
.modal-dialog-title {
|
16
|
-
@apply text-
|
30
|
+
@apply text-heading-5 pr-6 w-full font-bold truncate;
|
17
31
|
}
|
18
32
|
|
19
33
|
.modal-dialog-close {
|
20
|
-
@apply flex-none block p-2 absolute top-1/2 right-1 sm
|
21
|
-
@apply focus:ring-0 focus:outline-none text-content-dark-
|
34
|
+
@apply flex-none block p-2 absolute top-1/2 -right-1 sm:-right-2 -translate-y-1/2;
|
35
|
+
@apply focus:ring-0 focus:outline-none text-content-dark-1 hover:text-content-dark-1 rounded-full hover:bg-coco-gray-100 transition-colors;
|
36
|
+
}
|
37
|
+
|
38
|
+
.modal-dialog-notice [data-component="notice"] {
|
39
|
+
@apply px-4 sm:px-10 mb-4 sm:mb-6;
|
22
40
|
}
|
23
41
|
|
24
42
|
.modal-dialog-content {
|
25
|
-
@apply px-4 sm:px-
|
43
|
+
@apply px-4 sm:px-10 pb-6 sm:pb-8 rounded-b-[2rem] bg-background-light-1;
|
26
44
|
}
|
27
45
|
|
28
46
|
.modal-dialog-header + .modal-dialog-content {
|
@@ -1,18 +1,27 @@
|
|
1
1
|
<%= render component_tag(x: {data: x_data("modalDialog")}) do %>
|
2
2
|
<% if header? %>
|
3
3
|
<header class="modal-dialog-header">
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
4
|
+
<div class="modal-dialog-header-container">
|
5
|
+
<% if title? %>
|
6
|
+
<h4 class="modal-dialog-title" data-role="title">
|
7
|
+
<%= title %>
|
8
|
+
</h4>
|
9
|
+
<% end %>
|
10
|
+
<% if dismissable? %>
|
11
|
+
<button type="button" class="modal-dialog-close" data-role="close" @click="close">
|
12
|
+
<%= coco_icon(:x, size: :md) %>
|
13
|
+
</button>
|
14
|
+
<% end %>
|
15
|
+
</div>
|
14
16
|
</header>
|
15
17
|
<% end %>
|
18
|
+
|
19
|
+
<% if notice? %>
|
20
|
+
<div class="modal-dialog-notice">
|
21
|
+
<%= notice %>
|
22
|
+
</div>
|
23
|
+
<% end %>
|
24
|
+
|
16
25
|
<div class="modal-dialog-content">
|
17
26
|
<%= content %>
|
18
27
|
</div>
|
@@ -3,6 +3,11 @@ module Coco
|
|
3
3
|
include Concerns::AcceptsOptions
|
4
4
|
|
5
5
|
accepts_option :dismissable, from: [true, false], default: true
|
6
|
+
accepts_option :size, from: [:sm, :md, :lg], default: :md
|
7
|
+
|
8
|
+
renders_one :notice, ->(**kwargs) do
|
9
|
+
Coco::Notice.new(**kwargs, dismissable: false)
|
10
|
+
end
|
6
11
|
|
7
12
|
renders_one :title
|
8
13
|
|
@@ -146,6 +146,10 @@ module Coco
|
|
146
146
|
|
147
147
|
# Messaging
|
148
148
|
|
149
|
+
def coco_tooltip(text, **, &)
|
150
|
+
render(Coco::Tooltip.new(text:, **), &)
|
151
|
+
end
|
152
|
+
|
149
153
|
def coco_notice(**, &)
|
150
154
|
render(Coco::Notice.new(**), &)
|
151
155
|
end
|
@@ -168,9 +172,9 @@ module Coco
|
|
168
172
|
render(Coco::Modal.new(name: name, **), &)
|
169
173
|
end
|
170
174
|
|
171
|
-
def coco_modal_dialog(name = "default", **, &block)
|
175
|
+
def coco_modal_dialog(name = "default", size: :md, **, &block)
|
172
176
|
render(Coco::Modal.new(name: name, **)) do |modal|
|
173
|
-
modal.with_container_dialog(&block)
|
177
|
+
modal.with_container_dialog(size: size, &block)
|
174
178
|
end
|
175
179
|
end
|
176
180
|
|
data/lib/coco.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: coveragebook_components
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.17.
|
4
|
+
version: 0.17.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Mark Perkins
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-
|
11
|
+
date: 2024-04-10 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|
@@ -1653,6 +1653,10 @@ files:
|
|
1653
1653
|
- app/components/coco/messaging/toast/toast.html.erb
|
1654
1654
|
- app/components/coco/messaging/toast/toast.js
|
1655
1655
|
- app/components/coco/messaging/toast/toast.rb
|
1656
|
+
- app/components/coco/messaging/tooltip/tooltip.css
|
1657
|
+
- app/components/coco/messaging/tooltip/tooltip.html.erb
|
1658
|
+
- app/components/coco/messaging/tooltip/tooltip.js
|
1659
|
+
- app/components/coco/messaging/tooltip/tooltip.rb
|
1656
1660
|
- app/components/coco/modals/modal/modal.css
|
1657
1661
|
- app/components/coco/modals/modal/modal.html.erb
|
1658
1662
|
- app/components/coco/modals/modal/modal.js
|