decidim-design 0.28.0.rc4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/README.md +29 -0
- data/Rakefile +3 -0
- data/app/controllers/concerns/decidim/design/has_templates.rb +20 -0
- data/app/controllers/decidim/design/application_controller.rb +28 -0
- data/app/controllers/decidim/design/components_controller.rb +21 -0
- data/app/controllers/decidim/design/foundations_controller.rb +14 -0
- data/app/controllers/decidim/design/home_controller.rb +11 -0
- data/app/helpers/decidim/design/activities_helper.rb +65 -0
- data/app/helpers/decidim/design/address_helper.rb +59 -0
- data/app/helpers/decidim/design/announcement_helper.rb +73 -0
- data/app/helpers/decidim/design/application_helper.rb +100 -0
- data/app/helpers/decidim/design/author_helper.rb +91 -0
- data/app/helpers/decidim/design/buttons_helper.rb +148 -0
- data/app/helpers/decidim/design/cards_helper.rb +195 -0
- data/app/helpers/decidim/design/colors_helper.rb +96 -0
- data/app/helpers/decidim/design/follow_helper.rb +42 -0
- data/app/helpers/decidim/design/iconography_helper.rb +72 -0
- data/app/helpers/decidim/design/report_helper.rb +38 -0
- data/app/helpers/decidim/design/share_helper.rb +38 -0
- data/app/helpers/decidim/design/tab_panels_helper.rb +103 -0
- data/app/helpers/decidim/design/typography_helper.rb +112 -0
- data/app/packs/entrypoints/decidim_design.js +2 -0
- data/app/packs/stylesheets/design.scss +121 -0
- data/app/views/decidim/design/components/accordions.html.erb +66 -0
- data/app/views/decidim/design/components/activities/_static-activities.html.erb +79 -0
- data/app/views/decidim/design/components/activities/_static-activity.html.erb +56 -0
- data/app/views/decidim/design/components/activities.html.erb +11 -0
- data/app/views/decidim/design/components/address/_static-address-online.html.erb +9 -0
- data/app/views/decidim/design/components/address/_static-address-person.html.erb +8 -0
- data/app/views/decidim/design/components/address.html.erb +11 -0
- data/app/views/decidim/design/components/announcement.html.erb +11 -0
- data/app/views/decidim/design/components/author/_static-avatar.html.erb +38 -0
- data/app/views/decidim/design/components/author/_static-compact.html.erb +46 -0
- data/app/views/decidim/design/components/author/_static-default.html.erb +35 -0
- data/app/views/decidim/design/components/author.html.erb +11 -0
- data/app/views/decidim/design/components/buttons.html.erb +15 -0
- data/app/views/decidim/design/components/cards/_static-card-g-highlight.html.erb +18 -0
- data/app/views/decidim/design/components/cards/_static-card-g-metadata-2.html.erb +17 -0
- data/app/views/decidim/design/components/cards/_static-card-g-metadata.html.erb +14 -0
- data/app/views/decidim/design/components/cards/_static-card-g.html.erb +17 -0
- data/app/views/decidim/design/components/cards/_static-card-l-description.html.erb +28 -0
- data/app/views/decidim/design/components/cards/_static-card-l-extra-data-2.html.erb +31 -0
- data/app/views/decidim/design/components/cards/_static-card-l-extra-data.html.erb +16 -0
- data/app/views/decidim/design/components/cards/_static-card-l-image.html.erb +66 -0
- data/app/views/decidim/design/components/cards/_static-card-l-meetings.html.erb +30 -0
- data/app/views/decidim/design/components/cards/_static-card-l.html.erb +60 -0
- data/app/views/decidim/design/components/cards/_static-card-s.html.erb +15 -0
- data/app/views/decidim/design/components/cards.html.erb +11 -0
- data/app/views/decidim/design/components/dialogs.html.erb +89 -0
- data/app/views/decidim/design/components/dropdowns.html.erb +64 -0
- data/app/views/decidim/design/components/follow/_static-follow-default.html.erb +4 -0
- data/app/views/decidim/design/components/follow/_static-follow-unfollow.html.erb +4 -0
- data/app/views/decidim/design/components/follow.html.erb +11 -0
- data/app/views/decidim/design/components/forms.html.erb +235 -0
- data/app/views/decidim/design/components/report/_static-report.html.erb +34 -0
- data/app/views/decidim/design/components/report.html.erb +11 -0
- data/app/views/decidim/design/components/share.html.erb +11 -0
- data/app/views/decidim/design/components/tab_panels.html.erb +11 -0
- data/app/views/decidim/design/foundations/accessibility.html.erb +99 -0
- data/app/views/decidim/design/foundations/color/_table.html.erb +26 -0
- data/app/views/decidim/design/foundations/color.html.erb +16 -0
- data/app/views/decidim/design/foundations/iconography/_icons.html.erb +8 -0
- data/app/views/decidim/design/foundations/iconography.html.erb +16 -0
- data/app/views/decidim/design/foundations/layout.html.erb +128 -0
- data/app/views/decidim/design/foundations/typography.html.erb +15 -0
- data/app/views/decidim/design/home/index.html.erb +17 -0
- data/app/views/decidim/design/shared/_card_grid.html.erb +3 -0
- data/app/views/decidim/design/shared/_cell_snippet.html.erb +6 -0
- data/app/views/decidim/design/shared/_sections.html.erb +9 -0
- data/app/views/decidim/design/shared/_table.html.erb +12 -0
- data/app/views/layouts/decidim/design/_head.html.erb +5 -0
- data/app/views/layouts/decidim/design/_layout.html.erb +86 -0
- data/app/views/layouts/decidim/design/application.html.erb +15 -0
- data/config/assets.rb +8 -0
- data/config/routes.rb +10 -0
- data/lib/decidim/design/engine.rb +35 -0
- data/lib/decidim/design/version.rb +9 -0
- data/lib/decidim/design.rb +10 -0
- metadata +154 -0
@@ -0,0 +1,112 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Decidim
|
4
|
+
module Design
|
5
|
+
module TypographyHelper
|
6
|
+
def typography_sections
|
7
|
+
[
|
8
|
+
{
|
9
|
+
id: "typefaces",
|
10
|
+
contents: [
|
11
|
+
{
|
12
|
+
type: :text,
|
13
|
+
values: [
|
14
|
+
"Decidim uses Source Sans Pro as primary typeface. This typeface supports 310 languages",
|
15
|
+
"This fonts are licensed under the Open Font License"
|
16
|
+
]
|
17
|
+
},
|
18
|
+
{
|
19
|
+
type: :table,
|
20
|
+
options: { headings: %w(Example) },
|
21
|
+
items: typography_table(
|
22
|
+
{ type: "typefaces", example: "Source Sans Pro Bold", class: "font-bold" },
|
23
|
+
{ type: "typefaces", example: "Source Sans Pro Semibold", class: "font-semibold" },
|
24
|
+
{ type: "typefaces", example: "Source Sans Pro Regulars", class: "font-normal" }
|
25
|
+
)
|
26
|
+
}
|
27
|
+
]
|
28
|
+
},
|
29
|
+
{
|
30
|
+
id: "headings",
|
31
|
+
contents: [
|
32
|
+
{
|
33
|
+
type: :table,
|
34
|
+
options: { headings: ["Level", "Semibold 600", "Bold 700", "Size"] },
|
35
|
+
items: typography_table(
|
36
|
+
{ type: "headings", level: "Hero H1", text: "Hero heading", size: "text-5xl" },
|
37
|
+
{ type: "headings", level: "H1", text: "Heading H1", size: "text-4xl" },
|
38
|
+
{ type: "headings", level: "H2", text: "Heading H2", size: "text-3xl" },
|
39
|
+
{ type: "headings", level: "H3", text: "Heading H3", size: "text-2xl" },
|
40
|
+
{ type: "headings", level: "H4", text: "Heading H4", size: "text-xl" },
|
41
|
+
{ type: "headings", level: "H5", text: "Heading H5", size: "text-lg" },
|
42
|
+
{ type: "headings", level: "H6", text: "Heading H6", size: "text-md" }
|
43
|
+
)
|
44
|
+
}
|
45
|
+
]
|
46
|
+
},
|
47
|
+
{
|
48
|
+
id: "content",
|
49
|
+
contents: [
|
50
|
+
{
|
51
|
+
type: :table,
|
52
|
+
options: { headings: ["Regular 400", "Semibold 600", "Bold 700", "Size"] },
|
53
|
+
items: typography_table(
|
54
|
+
{ type: "content", text: "Sample content", size: "text-xl" },
|
55
|
+
{ type: "content", text: "Sample content", size: "text-lg" },
|
56
|
+
{ type: "content", text: "Sample content", size: "text-md" },
|
57
|
+
{ type: "content", text: "Sample content", size: "text-sm" },
|
58
|
+
{ type: "content", text: "Sample content", size: "text-xs" }
|
59
|
+
)
|
60
|
+
}
|
61
|
+
]
|
62
|
+
},
|
63
|
+
{
|
64
|
+
id: "readability",
|
65
|
+
contents: [
|
66
|
+
{
|
67
|
+
type: :table,
|
68
|
+
options: { headings: ["Size", "Layout cols", "~ Characters per line"] },
|
69
|
+
items: typography_table(
|
70
|
+
{ type: "readability", size: "text-xl", layout: 6, chars: 81 },
|
71
|
+
{ type: "readability", size: "text-lg", layout: 6, chars: 90 },
|
72
|
+
{ type: "readability", size: "text-md", layout: 5, chars: 84 },
|
73
|
+
{ type: "readability", size: "text-sm", layout: 4, chars: 76 }
|
74
|
+
)
|
75
|
+
}
|
76
|
+
]
|
77
|
+
}
|
78
|
+
]
|
79
|
+
end
|
80
|
+
|
81
|
+
def typography_table(*table_rows, **_opts)
|
82
|
+
table_rows.each_with_index.map do |table_cell, ix|
|
83
|
+
row = []
|
84
|
+
|
85
|
+
row << content_tag(:span, table_cell[:example], class: "text-lg #{table_cell[:class]}") if table_cell[:type] == "typefaces"
|
86
|
+
|
87
|
+
if table_cell[:type] == "headings"
|
88
|
+
row << table_cell[:level]
|
89
|
+
row << content_tag(:span, ix.positive? ? table_cell[:text] : "", class: "font-semibold #{table_cell[:size]}")
|
90
|
+
row << content_tag(:span, table_cell[:text], class: "font-bold #{table_cell[:size]}")
|
91
|
+
row << content_tag(:span, table_cell[:size], class: "text-secondary underline text-center")
|
92
|
+
end
|
93
|
+
|
94
|
+
if table_cell[:type] == "content"
|
95
|
+
row << content_tag(:span, table_cell[:text], class: "font-normal #{table_cell[:size]}")
|
96
|
+
row << content_tag(:span, table_cell[:text], class: "font-semibold #{table_cell[:size]}")
|
97
|
+
row << content_tag(:span, table_cell[:text], class: "font-bold #{table_cell[:size]}")
|
98
|
+
row << content_tag(:span, table_cell[:size], class: "text-secondary underline text-center")
|
99
|
+
end
|
100
|
+
|
101
|
+
if table_cell[:type] == "readability"
|
102
|
+
row << content_tag(:span, table_cell[:size], class: "text-secondary underline")
|
103
|
+
row << table_cell[:layout].to_s
|
104
|
+
row << table_cell[:chars].to_s
|
105
|
+
end
|
106
|
+
|
107
|
+
row
|
108
|
+
end
|
109
|
+
end
|
110
|
+
end
|
111
|
+
end
|
112
|
+
end
|
@@ -0,0 +1,121 @@
|
|
1
|
+
.design__layout {
|
2
|
+
@apply grid md:grid-cols-12 container min-h-screen before:content-[''] before:absolute before:-z-10 before:w-1/2 before:h-full before:inset-0 before:bg-background;
|
3
|
+
|
4
|
+
aside:first-child {
|
5
|
+
@apply col-span-2 py-12 pr-16;
|
6
|
+
}
|
7
|
+
|
8
|
+
main {
|
9
|
+
@apply bg-white col-span-8 py-12 px-16 [&_section+section]:mt-10;
|
10
|
+
}
|
11
|
+
|
12
|
+
aside:last-child {
|
13
|
+
@apply bg-white col-span-2 py-12 pl-16;
|
14
|
+
}
|
15
|
+
}
|
16
|
+
|
17
|
+
.design__navigation {
|
18
|
+
@apply sticky top-12 space-y-4;
|
19
|
+
|
20
|
+
& > li > *:not(ul) {
|
21
|
+
@apply flex gap-1 items-center;
|
22
|
+
|
23
|
+
svg {
|
24
|
+
@apply text-gray fill-current;
|
25
|
+
}
|
26
|
+
|
27
|
+
span {
|
28
|
+
@apply font-semibold;
|
29
|
+
}
|
30
|
+
}
|
31
|
+
|
32
|
+
& > li > a {
|
33
|
+
@apply hover:underline;
|
34
|
+
}
|
35
|
+
|
36
|
+
& > li > ul {
|
37
|
+
@apply pl-5 pt-4 space-y-4;
|
38
|
+
}
|
39
|
+
|
40
|
+
& > li > ul > li {
|
41
|
+
@apply text-sm text-black cursor-pointer flex items-center gap-1;
|
42
|
+
|
43
|
+
svg {
|
44
|
+
@apply w-3 h-3 fill-current;
|
45
|
+
}
|
46
|
+
|
47
|
+
a {
|
48
|
+
@apply hover:underline first-letter:capitalize;
|
49
|
+
}
|
50
|
+
}
|
51
|
+
}
|
52
|
+
|
53
|
+
.design__navigation__right {
|
54
|
+
@apply sticky top-12;
|
55
|
+
|
56
|
+
nav {
|
57
|
+
@apply space-y-2 text-sm [&>*]:block [&_a]:text-secondary [&_a]:underline;
|
58
|
+
}
|
59
|
+
|
60
|
+
strong {
|
61
|
+
@apply text-md mb-4;
|
62
|
+
}
|
63
|
+
}
|
64
|
+
|
65
|
+
.design__heading__5xl {
|
66
|
+
@apply text-5xl font-bold text-black;
|
67
|
+
}
|
68
|
+
|
69
|
+
.design__heading__section {
|
70
|
+
@apply pb-10 border-b border-background;
|
71
|
+
}
|
72
|
+
|
73
|
+
.design__heading__description {
|
74
|
+
@apply mt-10 text-gray-2 text-md font-normal [&>*+*]:mt-4 [&_a]:underline;
|
75
|
+
}
|
76
|
+
|
77
|
+
.design__section {
|
78
|
+
@apply [&>*+*]:mt-6 [&>p]:text-gray-2;
|
79
|
+
|
80
|
+
h2 {
|
81
|
+
@apply text-3xl font-semibold;
|
82
|
+
}
|
83
|
+
|
84
|
+
h3 {
|
85
|
+
@apply text-xl font-semibold inline-flex items-center gap-1;
|
86
|
+
}
|
87
|
+
|
88
|
+
&-snippet {
|
89
|
+
@apply mt-0;
|
90
|
+
|
91
|
+
p {
|
92
|
+
@apply bg-gray-3 px-4 py-2 text-sm text-gray-2;
|
93
|
+
}
|
94
|
+
|
95
|
+
a {
|
96
|
+
@apply text-secondary underline;
|
97
|
+
}
|
98
|
+
|
99
|
+
textarea {
|
100
|
+
@apply w-full text-sm;
|
101
|
+
}
|
102
|
+
}
|
103
|
+
}
|
104
|
+
|
105
|
+
.design__table {
|
106
|
+
@apply w-full text-center text-sm text-gray-2;
|
107
|
+
|
108
|
+
--cell-width: ;
|
109
|
+
|
110
|
+
thead {
|
111
|
+
@apply bg-gray-3;
|
112
|
+
}
|
113
|
+
|
114
|
+
th {
|
115
|
+
@apply px-6 py-2 font-normal border border-background;
|
116
|
+
}
|
117
|
+
|
118
|
+
td {
|
119
|
+
@apply px-6 py-4 border border-background w-[var(--cell-width)];
|
120
|
+
}
|
121
|
+
}
|
@@ -0,0 +1,66 @@
|
|
1
|
+
<% content_for :heading do %>
|
2
|
+
Accordions
|
3
|
+
<% end %>
|
4
|
+
|
5
|
+
<% content_for :description do %>
|
6
|
+
Accordions are a javascript feature available thanks to an external library called <a href="https://github.com/jonathanlevaillant/a11y-accordion-component" target="_blank" rel="noopener noreferrer">a11y-accordion-component</a>.
|
7
|
+
<% end %>
|
8
|
+
|
9
|
+
<% content_for :toc do %>
|
10
|
+
<a href="#example">Demo</a>
|
11
|
+
<a href="#usage">Usage</a>
|
12
|
+
<% end %>
|
13
|
+
|
14
|
+
<section id="demo" class="design__section">
|
15
|
+
<h2>Demo</h2>
|
16
|
+
|
17
|
+
<p>Throughout the application the accordions are used, mainly, to show/hide content in tabs or fold/unfold visible texts.</p>
|
18
|
+
|
19
|
+
<div data-component="accordion" data-multiselectable="false" id="example-accordion-1">
|
20
|
+
<ul class="tab-x-container">
|
21
|
+
<% 3.times do |tab| %>
|
22
|
+
<li>
|
23
|
+
<button id="trigger-1-<%= tab %>" class="tab-x" data-controls="panel-1-<%= tab %>" <%= "data-open=true" if tab.zero? %>>
|
24
|
+
Trigger <%= tab %>
|
25
|
+
</button>
|
26
|
+
</li>
|
27
|
+
<% end %>
|
28
|
+
</ul>
|
29
|
+
|
30
|
+
<% 3.times do |panel| %>
|
31
|
+
<div id="panel-1-<%= panel %>" class="py-8 text-sm font-italic">
|
32
|
+
Content of the panel <%= panel %>
|
33
|
+
</div>
|
34
|
+
<% end %>
|
35
|
+
</div>
|
36
|
+
</section>
|
37
|
+
|
38
|
+
<section id="usage" class="design__section">
|
39
|
+
<h2>Usage</h2>
|
40
|
+
|
41
|
+
<p>An accordion requires at least three elements:</p>
|
42
|
+
|
43
|
+
<p>1. A wrapper <code>div</code>, with the data-attribute <code>data-component="accordion"</code>, over all the available triggers and panels.</p>
|
44
|
+
|
45
|
+
<p>2. A trigger element, user actionable (as a button), pointing to the collapsable element through <code>data-controls="panel"</code>, where <i>panel</i> is the <code>id</code> of the panel.</p>
|
46
|
+
|
47
|
+
<p>3. A hideable element, whose <code>id</code> matches the data-controls value the trigger refers to.</p>
|
48
|
+
|
49
|
+
<div class="design__section-snippet" style="margin-top: inherit;">
|
50
|
+
<p>Source code on GitHub: <%= link_to("decidim-core/app/packs/src/decidim/a11y.js", "https://github.com/decidim/decidim/blob/develop/decidim-core/app/packs/src/decidim/a11y.js", target: "_blank", rel: "noopener noreferrer") %></p>
|
51
|
+
|
52
|
+
<code>
|
53
|
+
<textarea rows="8">
|
54
|
+
<div data-component="accordion" id="example-accordion">
|
55
|
+
<button id="trigger" data-controls="panel">
|
56
|
+
Trigger
|
57
|
+
</button>
|
58
|
+
|
59
|
+
<div id="panel" aria-hidden="true">
|
60
|
+
Panel
|
61
|
+
</div>
|
62
|
+
</div>
|
63
|
+
</textarea>
|
64
|
+
</code>
|
65
|
+
</div>
|
66
|
+
</section>
|
@@ -0,0 +1,79 @@
|
|
1
|
+
<div class="activity__container">
|
2
|
+
<div class="activity" data-activity="">
|
3
|
+
<div class="activity__time">
|
4
|
+
about 2 months ago
|
5
|
+
</div>
|
6
|
+
<div class="activity__content">
|
7
|
+
<span>
|
8
|
+
<span>
|
9
|
+
<%= icon("chat-1-line") %>
|
10
|
+
New comment:
|
11
|
+
</span>
|
12
|
+
<a href="#">
|
13
|
+
This is a very short comment
|
14
|
+
</a>
|
15
|
+
</span>
|
16
|
+
<span>
|
17
|
+
<a href="#">Initiative without members </a>
|
18
|
+
</span>
|
19
|
+
</div>
|
20
|
+
<div class="activity__author">
|
21
|
+
<div class="author" data-author="">
|
22
|
+
<div class="author__container has-tip" data-tooltip="<div class="author__tooltip bottom" role="tooltip">
|
23
|
+
<div class="author__container">
|
24
|
+
<span class="author__avatar-container">
|
25
|
+
<a href="#">
|
26
|
+
<img alt="Avatar: User Group 28078" class="author__avatar" src="<%= asset_pack_path("media/images/default-avatar.svg") %>" />
|
27
|
+
</a>
|
28
|
+
</span>
|
29
|
+
<div>
|
30
|
+
<a class="author__name underline" href="#">User Group 28078</a>
|
31
|
+
<span class="text-md">@anon-ug-28078</span>
|
32
|
+
</div>
|
33
|
+
</div>
|
34
|
+
<div class="author__tooltip-links">
|
35
|
+
<a href="#">
|
36
|
+
<span id="followers_count_user_group_28078">27</span> Followers
|
37
|
+
</a>
|
38
|
+
</div>
|
39
|
+
<a class="button button__sm button__transparent" href="/users/sign_in">
|
40
|
+
<span>Send private message</span>
|
41
|
+
<svg width="1em" height="1em" role="img" aria-hidden="true"><use href="<%= "#{asset_pack_path("media/images/remixicon.symbol.svg")}#ri-mail-send-line" %>" tabindex="-1"></use></svg>
|
42
|
+
</a>
|
43
|
+
<form class="button_to" method="post" action="#"><button class="button button__sm button__transparent" title="Please log in before performing this action" aria-haspopup="true" id="follow_user_group_28078" data-dialog-open="loginModal" type="submit">
|
44
|
+
<span class="">Follow</span>
|
45
|
+
<svg width="1em" height="1em" role="img" aria-hidden="true"><use href="<%= "#{asset_pack_path("media/images/remixicon.symbol.svg")}#ri-notification-3-line" %>" tabindex="-1"></use></svg>
|
46
|
+
</button><input type="hidden" name="authenticity_token" value="l10A9D-VXx2J_sZi-EpPchvyyTbr_MuBIof0orqJ8mjskMZN38Nr1MLZHbYb06Q8XSxGIxtHP1Yz99QH5NtWaA" autocomplete="off" /><input type="hidden" name="follow[button_classes]" value="button button__sm button__transparent" autocomplete="off" /><input type="hidden" name="follow[followable_gid]" value="eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaEpJajFuYVdRNkx5OWtaV05wWkdsdExYQnZjSFZzWVhSbExYSmxaR1Z6YVdkdUwwUmxZMmxrYVcwNk9sVnpaWEpIY205MWNDOHlPREEzT0FZNkJrVlUiLCJleHAiOiIyMDIzLTEyLTA4VDE3OjM2OjUxLjk1MVoiLCJwdXIiOiJkZWZhdWx0In19--3388eefc3a8a7c90bdb54c2473912eb49caa3192" autocomplete="off" /></form>
|
47
|
+
</div>
|
48
|
+
" aria-describedby="0f99qi-tooltip" data-yeti-box="0f99qi-tooltip" data-toggle="0f99qi-tooltip" data-resize="0f99qi-tooltip" id="toggle-0q86" aria-controls="0f99qi-tooltip" data-events="resize">
|
49
|
+
<span class="author__avatar-container">
|
50
|
+
<a href="#">
|
51
|
+
<img alt="Avatar: User Group 28078" class="author__avatar" src="<%= asset_pack_path("media/images/default-avatar.svg") %>">
|
52
|
+
</a>
|
53
|
+
</span>
|
54
|
+
</div>
|
55
|
+
</div>
|
56
|
+
</div>
|
57
|
+
</div>
|
58
|
+
<div class="activity" data-activity="">
|
59
|
+
<div class="activity__time">
|
60
|
+
about 2 months ago
|
61
|
+
</div>
|
62
|
+
<div class="activity__content">
|
63
|
+
<span>
|
64
|
+
<span>
|
65
|
+
<%= icon("map-pin-line") %>
|
66
|
+
New meeting:
|
67
|
+
</span>
|
68
|
+
<a href="#">
|
69
|
+
Citizen Initiative Presentation & Signature Gathering Event
|
70
|
+
</a>
|
71
|
+
</span>
|
72
|
+
<span>
|
73
|
+
<a href="#">Initiative without members </a>
|
74
|
+
</span>
|
75
|
+
</div>
|
76
|
+
<div class="activity__author">
|
77
|
+
</div>
|
78
|
+
</div>
|
79
|
+
</div>
|
@@ -0,0 +1,56 @@
|
|
1
|
+
<div class="activity" data-activity="">
|
2
|
+
<div class="activity__time">
|
3
|
+
2 months ago
|
4
|
+
</div>
|
5
|
+
<div class="activity__content">
|
6
|
+
<span>
|
7
|
+
<span>
|
8
|
+
<%= icon("chat-new-line") %>
|
9
|
+
New proposal:
|
10
|
+
</span>
|
11
|
+
<a href="#">
|
12
|
+
La millor proposta
|
13
|
+
</a>
|
14
|
+
</span>
|
15
|
+
<span>
|
16
|
+
<a href="#">New park in Poblenou (Kat test)</a>
|
17
|
+
</span>
|
18
|
+
</div>
|
19
|
+
<div class="activity__author">
|
20
|
+
<div class="author" data-author="">
|
21
|
+
<div class="author__container has-tip" data-tooltip="<div class="author__tooltip bottom" role="tooltip">
|
22
|
+
<div class="author__container">
|
23
|
+
<span class="author__avatar-container">
|
24
|
+
<a href="#">
|
25
|
+
<img alt="Avatar: User Group 28036" class="author__avatar" src="<%= asset_pack_path("media/images/default-avatar.svg") %>" />
|
26
|
+
</a>
|
27
|
+
</span>
|
28
|
+
<div>
|
29
|
+
<a class="author__name underline" href="#">User Group 28036</a>
|
30
|
+
<span class="text-md">@anon-ug-28036</span>
|
31
|
+
</div>
|
32
|
+
</div>
|
33
|
+
<div class="author__tooltip-links">
|
34
|
+
<a href="#">
|
35
|
+
<span id="followers_count_user_group_28036">4</span> Followers
|
36
|
+
</a>
|
37
|
+
</div>
|
38
|
+
<a class="button button__sm button__transparent" href="#">
|
39
|
+
<span>Send private message</span>
|
40
|
+
<svg width="1em" height="1em" role="img" aria-hidden="true"><use href="<%= "#{asset_pack_path("media/images/remixicon.symbol.svg")}#ri-mail-send-line" %>" tabindex="-1"></use></svg>
|
41
|
+
</a>
|
42
|
+
<form class="button_to" method="post" action="#"><button class="button button__sm button__transparent" title="Please log in before performing this action" aria-haspopup="true" id="follow_user_group_28036" data-dialog-open="loginModal" type="submit">
|
43
|
+
<span class="">Follow</span>
|
44
|
+
<svg width="1em" height="1em" role="img" aria-hidden="true"><use href="<%= "#{asset_pack_path("media/images/remixicon.symbol.svg")}#ri-notification-3-line" %>" tabindex="-1"></use></svg>
|
45
|
+
</button><input type="hidden" name="authenticity_token" value="YDKRsY0hZ4fwm-K_uG6tJua9MP4qEnaP46S_3F9VAVMb_1cIbXdTTru8OWtb90ZooGO_69qpgljy1J95AQelUw" autocomplete="off" /><input type="hidden" name="follow[button_classes]" value="button button__sm button__transparent" autocomplete="off" /><input type="hidden" name="follow[followable_gid]" value="eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaEpJajFuYVdRNkx5OWtaV05wWkdsdExYQnZjSFZzWVhSbExYSmxaR1Z6YVdkdUwwUmxZMmxrYVcwNk9sVnpaWEpIY205MWNDOHlPREF6TmdZNkJrVlUiLCJleHAiOiIyMDIzLTEyLTEwVDExOjM3OjA1LjExNFoiLCJwdXIiOiJkZWZhdWx0In19--8488df6a633dd76191d973d968ce85a2fee73622" autocomplete="off" /></form>
|
46
|
+
</div>
|
47
|
+
" aria-describedby="j1iaa9-tooltip" data-yeti-box="j1iaa9-tooltip" data-toggle="j1iaa9-tooltip" data-resize="j1iaa9-tooltip" id="toggle-nuqmnw" aria-controls="j1iaa9-tooltip" data-events="resize">
|
48
|
+
<span class="author__avatar-container">
|
49
|
+
<a href="#">
|
50
|
+
<img alt="Avatar: User Group 28036" class="author__avatar" src="<%= asset_pack_path("media/images/default-avatar.svg") %>">
|
51
|
+
</a>
|
52
|
+
</span>
|
53
|
+
</div>
|
54
|
+
</div>
|
55
|
+
</div>
|
56
|
+
</div>
|
@@ -0,0 +1,11 @@
|
|
1
|
+
<% content_for :heading do %>
|
2
|
+
Activities
|
3
|
+
<% end %>
|
4
|
+
|
5
|
+
<% content_for :toc do %>
|
6
|
+
<% activities_sections.each do |section| %>
|
7
|
+
<%= link_to(section_text(section), "##{section[:id]}") %>
|
8
|
+
<% end %>
|
9
|
+
<% end %>
|
10
|
+
|
11
|
+
<%= render partial: "decidim/design/shared/sections", locals: { sections: activities_sections } %>
|
@@ -0,0 +1,9 @@
|
|
1
|
+
<div class="address__container">
|
2
|
+
<%= icon("map-pin-line") %>
|
3
|
+
<div class="address">
|
4
|
+
<div class="address__location">Online</div>
|
5
|
+
<a href="#" target="_blank" rel="noopener noreferrer" class="address__hints underline break-all" data-remote="true">
|
6
|
+
https://meet.jit.si/DecidimTry
|
7
|
+
<span data-external-link="true" class="inline-block mx-0.5"><%= icon("external-link-line") %><span class="sr-only">(External link)</span></span></a>
|
8
|
+
</div>
|
9
|
+
</div>
|
@@ -0,0 +1,11 @@
|
|
1
|
+
<% content_for :heading do %>
|
2
|
+
Address
|
3
|
+
<% end %>
|
4
|
+
|
5
|
+
<% content_for :toc do %>
|
6
|
+
<% address_sections.each do |section| %>
|
7
|
+
<%= link_to(section_text(section), "##{section[:id]}") %>
|
8
|
+
<% end %>
|
9
|
+
<% end %>
|
10
|
+
|
11
|
+
<%= render partial: "decidim/design/shared/sections", locals: { sections: address_sections } %>
|
@@ -0,0 +1,11 @@
|
|
1
|
+
<% content_for :heading do %>
|
2
|
+
Announcement
|
3
|
+
<% end %>
|
4
|
+
|
5
|
+
<% content_for :toc do %>
|
6
|
+
<% announcement_sections.each do |section| %>
|
7
|
+
<%= link_to(section_text(section), "##{section[:id]}") %>
|
8
|
+
<% end %>
|
9
|
+
<% end %>
|
10
|
+
|
11
|
+
<%= render partial: "decidim/design/shared/sections", locals: { sections: announcement_sections } %>
|
@@ -0,0 +1,38 @@
|
|
1
|
+
<div class="author" data-author="">
|
2
|
+
<div class="author__container has-tip" data-tooltip="<div class="author__tooltip bottom" role="tooltip">
|
3
|
+
<div class="author__container">
|
4
|
+
<span class="author__avatar-container">
|
5
|
+
<a href="#">
|
6
|
+
<img alt="Avatar: Ettie Hickle" class="author__avatar" src="<%= asset_pack_path("media/images/default-avatar.svg") %>" />
|
7
|
+
</a>
|
8
|
+
</span>
|
9
|
+
<div>
|
10
|
+
<a class="author__name underline" href="#">Ettie Hickle</a>
|
11
|
+
<span class="text-md">@jarred_vandervort</span>
|
12
|
+
</div>
|
13
|
+
</div>
|
14
|
+
<div class="author__tooltip-links">
|
15
|
+
<a href="#">
|
16
|
+
<span id="followers_count_user_1">0</span> Seguidoras
|
17
|
+
</a>
|
18
|
+
<a href="#">
|
19
|
+
4 Siguiendo
|
20
|
+
</a>
|
21
|
+
</div>
|
22
|
+
<a class="button button__sm button__transparent" href="/users/sign_in">
|
23
|
+
<span>Envia mensaje privado</span>
|
24
|
+
<svg width="1em" height="1em" role="img" aria-hidden="true"><use href="<%= "#{asset_pack_path("media/images/remixicon.symbol.svg")}#ri-mail-send-line" %>" tabindex="-1"></use></svg>
|
25
|
+
</a>
|
26
|
+
<form class="button_to" method="post" action="#"><button class="button button__sm button__transparent" title="Pro favor, inicia sesión antes de realizar esta acción" aria-haspopup="true" id="follow_user_1" data-dialog-open="loginModal" type="submit">
|
27
|
+
<span class="">Seguir</span>
|
28
|
+
<svg width="1em" height="1em" role="img" aria-hidden="true"><use href="<%= "#{asset_pack_path("media/images/remixicon.symbol.svg")}#ri-notification-3-line" %>" tabindex="-1"></use></svg>
|
29
|
+
</button><input type="hidden" name="authenticity_token" value="0tc00Idqu62KnwJ8Jt2TkvxtdXn4Y1719QeR5jI-J_JC-F3DGwPDOyQJGvv7FHfIg83tAiQdRmXe63Nv4miWKw" autocomplete="off" /><input type="hidden" name="follow[button_classes]" value="button button__sm button__transparent" autocomplete="off" /><input type="hidden" name="follow[followable_gid]" value="BAh7CEkiCGdpZAY6BkVUSSIyZ2lkOi8vZGVjaWRpbS1kZXZlbG9wbWVudC1hcHAvRGVjaWRpbTo6VXNlci8xBjsAVEkiDHB1cnBvc2UGOwBUSSIMZGVmYXVsdAY7AFRJIg9leHBpcmVzX2F0BjsAVEkiHTIwMjMtMTItMDhUMTE6MDg6MjQuODMzWgY7AFQ=--3d47942fb13084110877f3470e21f67c7649c114" autocomplete="off" /></form>
|
30
|
+
</div>
|
31
|
+
" aria-describedby="60onjg-tooltip" data-yeti-box="60onjg-tooltip" data-toggle="60onjg-tooltip" data-resize="60onjg-tooltip" id="toggle-36j4hx" aria-controls="60onjg-tooltip">
|
32
|
+
<span class="author__avatar-container">
|
33
|
+
<a href="#">
|
34
|
+
<img alt="Avatar: Ettie Hickle" class="author__avatar" src="<%= asset_pack_path("media/images/default-avatar.svg") %>">
|
35
|
+
</a>
|
36
|
+
</span>
|
37
|
+
</div>
|
38
|
+
</div>
|
@@ -0,0 +1,46 @@
|
|
1
|
+
<div class="author" data-author="">
|
2
|
+
<div class="author__container is-compact has-tip" data-tooltip="<div class="author__tooltip bottom" role="tooltip">
|
3
|
+
<div class="author__container">
|
4
|
+
<span class="author__avatar-container">
|
5
|
+
<a href="#">
|
6
|
+
<img alt="Avatar: Rolande Jacobi 1 2 endr1" class="author__avatar" src="<%= asset_pack_path("media/images/default-avatar.svg") %>" />
|
7
|
+
</a>
|
8
|
+
</span>
|
9
|
+
<div>
|
10
|
+
<a class="author__name underline" href="#">Rolande Jacobi 1 2 endr1</a>
|
11
|
+
<span class="text-md">@fausto_kassulke</span>
|
12
|
+
</div>
|
13
|
+
</div>
|
14
|
+
<div class="author__tooltip-links">
|
15
|
+
<a href="#">
|
16
|
+
<span id="followers_count_user_107">0</span> Seguidoras
|
17
|
+
</a>
|
18
|
+
<a href="#">
|
19
|
+
0 Siguiendo
|
20
|
+
</a>
|
21
|
+
</div>
|
22
|
+
<a class="button button__sm button__transparent" href="/users/sign_in">
|
23
|
+
<span>Envia mensaje privado</span>
|
24
|
+
<svg width="1em" height="1em" role="img" aria-hidden="true"><use href="<%= "#{asset_pack_path("media/images/remixicon.symbol.svg")}#ri-mail-send-line" %>" tabindex="-1"></use></svg>
|
25
|
+
</a>
|
26
|
+
<form class="button_to" method="post" action="#"><button class="button button__sm button__transparent" title="Pro favor, inicia sesión antes de realizar esta acción" aria-haspopup="true" id="follow_user_107" data-dialog-open="loginModal" type="submit">
|
27
|
+
<span class="">Seguir</span>
|
28
|
+
<svg width="1em" height="1em" role="img" aria-hidden="true"><use href="<%= "#{asset_pack_path("media/images/remixicon.symbol.svg")}#ri-notification-3-line" %>" tabindex="-1"></use></svg>
|
29
|
+
</button><input type="hidden" name="authenticity_token" value="mPVFPECIb-iR5Aw7rIVzmwi8j7F_fHW9MizYAWFLyvwI2iwv3OEXfj9yFLxxTJfBdxwXyqMCbS0ZwDqIsR17JQ" autocomplete="off" /><input type="hidden" name="follow[button_classes]" value="button button__sm button__transparent" autocomplete="off" /><input type="hidden" name="follow[followable_gid]" value="BAh7CEkiCGdpZAY6BkVUSSI0Z2lkOi8vZGVjaWRpbS1kZXZlbG9wbWVudC1hcHAvRGVjaWRpbTo6VXNlci8xMDcGOwBUSSIMcHVycG9zZQY7AFRJIgxkZWZhdWx0BjsAVEkiD2V4cGlyZXNfYXQGOwBUSSIdMjAyMy0xMi0wOFQxMDo1NDozNC42OTBaBjsAVA==--757a138d9c782a459354bce8e4849567be436ea6" autocomplete="off" /></form>
|
30
|
+
</div>
|
31
|
+
" aria-describedby="tooltip-d98lre" data-yeti-box="3gjzgq-tooltip" data-toggle="3gjzgq-tooltip"
|
32
|
+
data-resize="3gjzgq-tooltip" id="toggle-oe62o" aria-controls="3gjzgq-tooltip">
|
33
|
+
<span class="author__avatar-container">
|
34
|
+
<a href="#">
|
35
|
+
<img alt="Avatar: Rolande Jacobi 1 2 endr1" class="author__avatar"
|
36
|
+
src="<%= asset_pack_path("media/images/default-avatar.svg") %>">
|
37
|
+
</a>
|
38
|
+
</span>
|
39
|
+
<div>
|
40
|
+
<a class="author__name underline" href="#">Rolande Jacobi 1 2 endr1</a>
|
41
|
+
<span class="author__metadata">
|
42
|
+
25/10/2023 12:50
|
43
|
+
</span>
|
44
|
+
</div>
|
45
|
+
</div>
|
46
|
+
</div>
|
@@ -0,0 +1,35 @@
|
|
1
|
+
<div class="author" data-author="">
|
2
|
+
<div class="author__container has-tip" data-tooltip="<div class="author__tooltip bottom" role="tooltip">
|
3
|
+
<div class="author__container">
|
4
|
+
<span class="author__avatar-container">
|
5
|
+
<img alt="Avatar: Clint Runolfsdottir 2 2 0" class="author__avatar" src="<%= asset_pack_path("media/images/default-avatar.svg") %>" />
|
6
|
+
</span>
|
7
|
+
<div>
|
8
|
+
<span class="author__name">Clint Runolfsdottir 2 2 0</span>
|
9
|
+
<span class="text-md">@macie</span>
|
10
|
+
</div>
|
11
|
+
</div>
|
12
|
+
<div class="author__tooltip-links">
|
13
|
+
<a href="#">
|
14
|
+
<span id="followers_count_user_66">0</span> Seguidoras
|
15
|
+
</a>
|
16
|
+
<a href="#">
|
17
|
+
0 Siguiendo
|
18
|
+
</a>
|
19
|
+
</div>
|
20
|
+
<a class="button button__sm button__transparent" href="/users/sign_in">
|
21
|
+
<span>Envia mensaje privado</span>
|
22
|
+
<svg width="1em" height="1em" role="img" aria-hidden="true"><use href="<%= "#{asset_pack_path("media/images/remixicon.symbol.svg")}#ri-mail-send-line" %>" tabindex="-1"></use></svg>
|
23
|
+
</a>
|
24
|
+
<form class="button_to" method="post" action="#"><button class="button button__sm button__transparent" title="Pro favor, inicia sesión antes de realizar esta acción" aria-haspopup="true" id="follow_user_66" data-dialog-open="loginModal" type="submit">
|
25
|
+
<span class="">Seguir</span>
|
26
|
+
<svg width="1em" height="1em" role="img" aria-hidden="true"><use href="<%= "#{asset_pack_path("media/images/remixicon.symbol.svg")}#ri-notification-3-line" %>" tabindex="-1"></use></svg>
|
27
|
+
</button><input type="hidden" name="authenticity_token" value="prDEaQztVBlA3g5I6jFlPpN8SZXJfsqBsfxqfPmEaa42n616kIQsj-5IFs83-IFk7NzR7hUA0hGaEIj1KdLYdw" autocomplete="off" /><input type="hidden" name="follow[button_classes]" value="button button__sm button__transparent" autocomplete="off" /><input type="hidden" name="follow[followable_gid]" value="BAh7CEkiCGdpZAY6BkVUSSIzZ2lkOi8vZGVjaWRpbS1kZXZlbG9wbWVudC1hcHAvRGVjaWRpbTo6VXNlci82NgY7AFRJIgxwdXJwb3NlBjsAVEkiDGRlZmF1bHQGOwBUSSIPZXhwaXJlc19hdAY7AFRJIh0yMDIzLTEyLTA4VDExOjA1OjQwLjc5M1oGOwBU--3e2a9169f4eca80b74b92866053e11182b15c059" autocomplete="off" /></form>
|
28
|
+
</div>
|
29
|
+
" aria-describedby="tooltip-6kqmd" data-yeti-box="f8ufax-tooltip" data-toggle="f8ufax-tooltip" data-resize="f8ufax-tooltip" id="toggle-bce33" aria-controls="f8ufax-tooltip">
|
30
|
+
<span class="author__avatar-container">
|
31
|
+
<img alt="Avatar: Clint Runolfsdottir 2 2 0" class="author__avatar" src="<%= asset_pack_path("media/images/default-avatar.svg") %>">
|
32
|
+
</span>
|
33
|
+
<span class="author__name">Clint Runolfsdottir 2 2 0</span>
|
34
|
+
</div>
|
35
|
+
</div>
|
@@ -0,0 +1,11 @@
|
|
1
|
+
<% content_for :heading do %>
|
2
|
+
Author
|
3
|
+
<% end %>
|
4
|
+
|
5
|
+
<% content_for :toc do %>
|
6
|
+
<% author_sections.each do |section| %>
|
7
|
+
<%= link_to(section_text(section), "##{section[:id]}") %>
|
8
|
+
<% end %>
|
9
|
+
<% end %>
|
10
|
+
|
11
|
+
<%= render partial: "decidim/design/shared/sections", locals: { sections: author_sections } %>
|