promethee 4.1.9 → 4.1.14
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/app/assets/stylesheets/promethee.sass +11 -0
- data/app/views/promethee/components/aside/_show.html.erb +2 -1
- data/app/views/promethee/components/blockquote/_show.html.erb +2 -1
- data/app/views/promethee/components/collection/_show.html.erb +2 -1
- data/app/views/promethee/components/collection_item/_show.html.erb +5 -3
- data/app/views/promethee/components/column/_show.html.erb +2 -1
- data/app/views/promethee/components/cover/_show.html.erb +3 -1
- data/app/views/promethee/components/faq/_show.html.erb +2 -1
- data/app/views/promethee/components/faq_item/_show.html.erb +2 -1
- data/app/views/promethee/components/image/_show.html.erb +2 -1
- data/app/views/promethee/components/page/_show.html.erb +2 -1
- data/app/views/promethee/components/row/_show.html.erb +1 -0
- data/app/views/promethee/components/slider/_show.html.erb +11 -7
- data/app/views/promethee/components/slider_item/_show.html.erb +3 -2
- data/app/views/promethee/components/table/_edit.inspect.html.erb +1 -3
- data/app/views/promethee/components/table/_edit.move.html.erb +2 -2
- data/app/views/promethee/components/table/_show.html.erb +10 -3
- data/app/views/promethee/components/table_cell/_edit.define.html.erb +1 -1
- data/app/views/promethee/components/table_cell/_edit.inspect.html.erb +1 -0
- data/app/views/promethee/components/table_cell/_edit.move.html.erb +1 -0
- data/app/views/promethee/components/table_cell/_localize.html.erb +2 -2
- data/app/views/promethee/components/table_cell/_show.html.erb +1 -0
- data/app/views/promethee/components/text/_show.html.erb +2 -1
- data/app/views/promethee/components/video/_show.html.erb +2 -1
- data/app/views/promethee/presets/_image-with-text.html.erb +1 -1
- data/lib/promethee/core_ext/tags.rb +12 -10
- data/lib/promethee/rails/helper.rb +9 -1
- data/lib/promethee/rails/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: a0f9aa0e77a8e849cdd8342fe18743536c033f23799c5d9102b2b385dabaae32
|
|
4
|
+
data.tar.gz: ff506afde6c8864d8044157b6975e5af4dad9b149f96152ca493b0557f90cfaf
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: be067209b5e1bdcb607bdfa54af4e929369f2d3a66b3d395bd12ea1c23f6088fb658527a762638acf8f3ea6c27a0067cd05895663af81ff99b2b12a5d826e9b3
|
|
7
|
+
data.tar.gz: 260e42af1d557b4d78cfe26cc549b7921e51b3ed65561646a13b0cbd64de25bd2a7f123e0ec720156c5dd1b7736933607a0c607a69aeb59e4129c9e6480e6ee6
|
|
@@ -160,6 +160,17 @@ $black: #000000 !default
|
|
|
160
160
|
.fontawesome-carousel-control .fa
|
|
161
161
|
font-size: 30px
|
|
162
162
|
|
|
163
|
+
&__table
|
|
164
|
+
tr
|
|
165
|
+
p
|
|
166
|
+
margin-bottom: 0
|
|
167
|
+
&.empty
|
|
168
|
+
background-color: #EEEEEE
|
|
169
|
+
td
|
|
170
|
+
line-height: 1px
|
|
171
|
+
padding-bottom: 1px
|
|
172
|
+
padding-top: 1px
|
|
173
|
+
|
|
163
174
|
|
|
164
175
|
// component direct in root
|
|
165
176
|
&__page > &__blockquote,
|
|
@@ -5,7 +5,8 @@
|
|
|
5
5
|
open_label_position = component[:attributes].dig(:open_label_position, :value)&.to_s
|
|
6
6
|
%>
|
|
7
7
|
|
|
8
|
-
<aside
|
|
8
|
+
<aside class="<%= promethee_class_for component %> aside"
|
|
9
|
+
id="<%= promethee_id_for component %>">
|
|
9
10
|
<div class="promethee__component__row">
|
|
10
11
|
<div class="promethee__component__content">
|
|
11
12
|
<div class="aside__content">
|
|
@@ -3,7 +3,8 @@
|
|
|
3
3
|
author = component[:attributes].dig(:author, :value)&.to_s
|
|
4
4
|
%>
|
|
5
5
|
|
|
6
|
-
<div
|
|
6
|
+
<div class="<%= promethee_class_for(component) %>"
|
|
7
|
+
id="<%= promethee_id_for component %>">
|
|
7
8
|
<div class="promethee__component__row">
|
|
8
9
|
<div class="promethee__component__content">
|
|
9
10
|
<blockquote class="blockquote">
|
|
@@ -12,7 +12,8 @@
|
|
|
12
12
|
end
|
|
13
13
|
%>
|
|
14
14
|
|
|
15
|
-
<div
|
|
15
|
+
<div class="row <%= promethee_class_for component %>"
|
|
16
|
+
id="<%= promethee_id_for component %>">
|
|
16
17
|
<% component[:children].each.with_index do |child, n| %>
|
|
17
18
|
<div class="<%= col_classes %>">
|
|
18
19
|
<%= render 'promethee/show/component', component: child %>
|
|
@@ -17,8 +17,8 @@ when 'video'
|
|
|
17
17
|
end
|
|
18
18
|
end
|
|
19
19
|
%>
|
|
20
|
-
<div
|
|
21
|
-
|
|
20
|
+
<div class="<%= promethee_class_for component %> collection-item__content"
|
|
21
|
+
id="<%= promethee_id_for component %>">
|
|
22
22
|
<% if iframe_src.present? %>
|
|
23
23
|
<div class="embed-responsive embed-responsive-16by9">
|
|
24
24
|
<iframe frameborder="0" webkitallowfullscreen="" mozallowfullscreen="" allowfullscreen="allowfullscreen" src="<%= iframe_src %>"></iframe>
|
|
@@ -26,5 +26,7 @@ end
|
|
|
26
26
|
<% elsif image_blob.present? %>
|
|
27
27
|
<%= render 'promethee/show/image.srcset', blob: image_blob, alt: '', caption: caption %>
|
|
28
28
|
<% end %>
|
|
29
|
-
|
|
29
|
+
<div class="collection-item__content__caption">
|
|
30
|
+
<%= caption %>
|
|
31
|
+
</div>
|
|
30
32
|
</div>
|
|
@@ -41,6 +41,7 @@ if component[:attributes].dig(:mobile, :value, :enabled, :value)
|
|
|
41
41
|
classes += " col-xs-#{size} col-xs-offset-#{offset}" # BS3, does nothing for BS4
|
|
42
42
|
end
|
|
43
43
|
%>
|
|
44
|
-
<div
|
|
44
|
+
<div class="<%= classes %> <%= promethee_class_for component %>"
|
|
45
|
+
id="<%= promethee_id_for component %>">
|
|
45
46
|
<%= render 'promethee/show/components', components: component[:children] %>
|
|
46
47
|
</div>
|
|
@@ -5,7 +5,9 @@ surtitle = component[:attributes].dig(:surtitle, :value)&.to_s
|
|
|
5
5
|
title = component[:attributes].dig(:title, :value)&.to_s
|
|
6
6
|
subtitle = component[:attributes].dig(:subtitle, :value)&.to_s
|
|
7
7
|
%>
|
|
8
|
-
<div
|
|
8
|
+
<div class="<%= promethee_class_for(component) %>"
|
|
9
|
+
id="<%= promethee_id_for component %>"
|
|
10
|
+
style="background-image: url(<%= url_for(blob.variant(resize: '1920>', quality: 95)) if blob %>)">
|
|
9
11
|
<div class="container">
|
|
10
12
|
<div class="promethee__component__row">
|
|
11
13
|
<div class="promethee__component__content">
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
<div
|
|
1
|
+
<div class="<%= promethee_class_for component %>"
|
|
2
|
+
id="<%= promethee_id_for component %>">
|
|
2
3
|
<div class="promethee__component__row">
|
|
3
4
|
<div class="promethee__component__content">
|
|
4
5
|
<% component[:children].each do |child| %>
|
|
@@ -6,7 +6,8 @@ special_question = component[:attributes].dig(:special_question, :value)
|
|
|
6
6
|
image_blob = blob_from_data component[:attributes].dig(:image, :value)
|
|
7
7
|
%>
|
|
8
8
|
|
|
9
|
-
<div
|
|
9
|
+
<div class="<%= promethee_class_for component %> <%= 'promethee__component__faq_item--special' if special_question %>"
|
|
10
|
+
id="<%= promethee_id_for component %>">
|
|
10
11
|
<h4 data-toggle="collapse"
|
|
11
12
|
data-target="#collapse-faq-<%= component[:id] %>"
|
|
12
13
|
aria-expanded="false"
|
|
@@ -4,7 +4,8 @@ blob = blob_from_data component[:attributes].dig(:image, :value)
|
|
|
4
4
|
alt = component[:attributes].dig(:alt, :value)&.to_s
|
|
5
5
|
caption = component[:attributes].dig(:caption, :value)&.to_s
|
|
6
6
|
%>
|
|
7
|
-
<figure class="<%= promethee_class_for component %>"
|
|
7
|
+
<figure class="<%= promethee_class_for component %>"
|
|
8
|
+
id="<%= promethee_id_for component %>">
|
|
8
9
|
<div class="promethee__component__row">
|
|
9
10
|
<div class="promethee__component__content">
|
|
10
11
|
<%= render 'promethee/show/image.srcset', blob: blob, alt: alt, caption: caption if blob %>
|
|
@@ -11,6 +11,7 @@
|
|
|
11
11
|
<script><%= javascripts %></script>
|
|
12
12
|
<% end %>
|
|
13
13
|
|
|
14
|
-
<div
|
|
14
|
+
<div class="<%= promethee_class_for component %>"
|
|
15
|
+
id="<%= promethee_id_for component %>">
|
|
15
16
|
<%= render 'promethee/show/components', components: component[:children] %>
|
|
16
17
|
</div>
|
|
@@ -22,6 +22,7 @@ end
|
|
|
22
22
|
%>
|
|
23
23
|
|
|
24
24
|
<div class="row <%= promethee_class_for component %><%= ' promethee__component__row--background' if has_background %>"
|
|
25
|
+
id="<%= promethee_id_for component %>"
|
|
25
26
|
style="background-color: <%= background_color %>; <%= background_images.count > 0 ? "background-repeat: no-repeat; background-image: #{background_images.join(', ')}; background-position: #{background_positions.join(', ')}; background-size: #{background_sizes.join(', ')};" : '' %>">
|
|
26
27
|
<%= render 'promethee/show/components', components: component[:children] %>
|
|
27
28
|
</div>
|
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
<div
|
|
1
|
+
<div class="carousel slide <%= promethee_class_for component %>"
|
|
2
|
+
id="<%= promethee_id_for component %>"
|
|
3
|
+
data-ride="carousel">
|
|
2
4
|
<div class="carousel-inner">
|
|
3
5
|
<% component[:children].each.with_index do |item, n| %>
|
|
4
6
|
<div class="carousel-item item<%= ' active' if n.zero? %>">
|
|
@@ -7,10 +9,12 @@
|
|
|
7
9
|
<% end %>
|
|
8
10
|
</div>
|
|
9
11
|
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
12
|
+
<% if component[:children].many? %>
|
|
13
|
+
<a class="left carousel-control fontawesome-carousel-control carousel-control-prev" href="#<%= promethee_id_for component %>" data-slide="prev">
|
|
14
|
+
<%= icon('fa', 'chevron-left') %>
|
|
15
|
+
</a>
|
|
16
|
+
<a class="right carousel-control fontawesome-carousel-control carousel-control-next" href="#<%= promethee_id_for component %>" data-slide="next">
|
|
17
|
+
<%= icon('fa', 'chevron-right') %>
|
|
18
|
+
</a>
|
|
19
|
+
<% end %>
|
|
16
20
|
</div>
|
|
@@ -17,13 +17,14 @@ when 'video'
|
|
|
17
17
|
end
|
|
18
18
|
end
|
|
19
19
|
%>
|
|
20
|
-
<div class="carousel-item__content"
|
|
20
|
+
<div class="<%= promethee_class_for component %> carousel-item__content"
|
|
21
|
+
id="<%= promethee_id_for component %>">
|
|
21
22
|
<% if iframe_src.present? %>
|
|
22
23
|
<div class="embed-responsive embed-responsive-16by9">
|
|
23
24
|
<iframe frameborder="0" webkitallowfullscreen="" mozallowfullscreen="" allowfullscreen="allowfullscreen" src="<%= iframe_src %>"></iframe>
|
|
24
25
|
</div>
|
|
25
26
|
<% elsif image_blob.present? %>
|
|
26
|
-
<%= render 'promethee/show/image.srcset', blob: image_blob, alt: '', caption: caption %>
|
|
27
|
+
<%= render 'promethee/show/image.srcset', blob: image_blob, alt: '', caption: caption, image_zoomable: false %>
|
|
27
28
|
<% end %>
|
|
28
29
|
<div class="carousel-item__content__caption">
|
|
29
30
|
<%= caption %>
|
|
@@ -48,9 +48,7 @@
|
|
|
48
48
|
{{ getTableCell(getHeaderCellUids()[$index]).attributes.text.value }}
|
|
49
49
|
</span>
|
|
50
50
|
<br/>
|
|
51
|
-
<
|
|
52
|
-
ng-model="getTableCell(cellUid).attributes.text.value"
|
|
53
|
-
class="form-control" />
|
|
51
|
+
<summernote config="summernoteConfig" ng-model="getTableCell(cellUid).attributes.text.value"></summernote>
|
|
54
52
|
</div>
|
|
55
53
|
</div>
|
|
56
54
|
<hr>
|
|
@@ -5,14 +5,14 @@
|
|
|
5
5
|
<thead>
|
|
6
6
|
<tr>
|
|
7
7
|
<th ng-repeat="cellUid in component.attributes.structure.value[0]">
|
|
8
|
-
|
|
8
|
+
<div ng-bind-html="getTableCell(cellUid).attributes.text.value | htmlSafe"></div>
|
|
9
9
|
</th>
|
|
10
10
|
</tr>
|
|
11
11
|
</thead>
|
|
12
12
|
<tbody>
|
|
13
13
|
<tr ng-repeat="row in component.attributes.structure.value" ng-if="$index > 0">
|
|
14
14
|
<td ng-repeat="cellUid in row">
|
|
15
|
-
|
|
15
|
+
<div ng-bind-html="getTableCell(cellUid).attributes.text.value | htmlSafe"></div>
|
|
16
16
|
</td>
|
|
17
17
|
</tr>
|
|
18
18
|
</tbody>
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
row.map { |cellUid|
|
|
5
5
|
{
|
|
6
6
|
uid: cellUid,
|
|
7
|
-
text: cells.find { |cell| cell[:id] == cellUid }.dig(:attributes, :text, :value)
|
|
7
|
+
text: cells.find { |cell| cell[:id] == cellUid }.dig(:attributes, :text, :value)&.html_safe
|
|
8
8
|
}
|
|
9
9
|
}
|
|
10
10
|
}
|
|
@@ -12,7 +12,8 @@
|
|
|
12
12
|
headerRow = rows.shift
|
|
13
13
|
%>
|
|
14
14
|
|
|
15
|
-
<div
|
|
15
|
+
<div class="<%= promethee_class_for(component) %>"
|
|
16
|
+
id="<%= promethee_id_for component %>">
|
|
16
17
|
<% unless headerRow.nil? %>
|
|
17
18
|
<div class="table-responsive">
|
|
18
19
|
<table class="table">
|
|
@@ -25,7 +26,13 @@
|
|
|
25
26
|
</thead>
|
|
26
27
|
<tbody>
|
|
27
28
|
<% rows.each do |row| %>
|
|
28
|
-
|
|
29
|
+
<%
|
|
30
|
+
row_class = 'empty'
|
|
31
|
+
row.each do |cell|
|
|
32
|
+
row_class = '' unless cell[:text].blank?
|
|
33
|
+
end
|
|
34
|
+
%>
|
|
35
|
+
<tr class="<%= row_class %>">
|
|
29
36
|
<% row.each do |cell| %>
|
|
30
37
|
<td><%= cell[:text] %></td>
|
|
31
38
|
<% end %>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<%# Defined in components/table/_edit.inspect.html.erb %>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<%# Defined in components/table/_edit.move.html.erb %>
|
|
@@ -2,11 +2,11 @@
|
|
|
2
2
|
<div class="row mt-2" ng-show="master.attributes.text.value || frozen_component.attributes.text.value">
|
|
3
3
|
<div class="col-md-6">
|
|
4
4
|
<b>Text</b>
|
|
5
|
-
<
|
|
5
|
+
<div ng-bind-html="master.attributes.text.value | htmlSafe"></div>
|
|
6
6
|
</div>
|
|
7
7
|
<div class="col-md-6">
|
|
8
8
|
<b>Text</b>
|
|
9
|
-
<
|
|
9
|
+
<summernote config="summernoteConfig" ng-model="component.attributes.text.value"></summernote>
|
|
10
10
|
</div>
|
|
11
11
|
</div>
|
|
12
12
|
</script>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<%# Defined in components/table/_show.html.erb %>
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
<%
|
|
2
2
|
body = component[:attributes].dig(:body, :value)&.to_s&.html_safe
|
|
3
3
|
%>
|
|
4
|
-
<div
|
|
4
|
+
<div class="<%= promethee_class_for component %>"
|
|
5
|
+
id="<%= promethee_id_for component %>">
|
|
5
6
|
<div class="promethee__component__row">
|
|
6
7
|
<div class="promethee__component__content">
|
|
7
8
|
<%= body %>
|
|
@@ -14,7 +14,8 @@ else
|
|
|
14
14
|
iframe_src = url
|
|
15
15
|
end
|
|
16
16
|
%>
|
|
17
|
-
<div
|
|
17
|
+
<div class="<%= promethee_class_for component %>"
|
|
18
|
+
id="<%= promethee_id_for component %>">
|
|
18
19
|
<div class="promethee__component__row">
|
|
19
20
|
<div class="promethee__component__content">
|
|
20
21
|
<div class="embed-responsive embed-responsive-16by9">
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<script>
|
|
2
2
|
angular.injector(['ng', 'Promethee']).get('presets').push({
|
|
3
3
|
name: 'Image with text',
|
|
4
|
-
icon: <%=
|
|
4
|
+
icon: <%= promethee_preset_render_icon 'image-with-text' %>,
|
|
5
5
|
position: 1,
|
|
6
6
|
components: [
|
|
7
7
|
{
|
|
@@ -9,7 +9,8 @@ module ActionView
|
|
|
9
9
|
@options[:master_data] = object.send @method_name unless object.nil?
|
|
10
10
|
@options[:master_data] = @options[:value] if @options.key?(:value)
|
|
11
11
|
@options[:disable_page_attributes] ||= false
|
|
12
|
-
|
|
12
|
+
|
|
13
|
+
@template_object.render partial: 'promethee/edit', locals: @options
|
|
13
14
|
end
|
|
14
15
|
end
|
|
15
16
|
|
|
@@ -18,15 +19,16 @@ module ActionView
|
|
|
18
19
|
localization_data = object.send @method_name unless object.nil?
|
|
19
20
|
localization_data = @options[:value] if @options.include? :value
|
|
20
21
|
@options[:disable_page_attributes] ||= false
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
22
|
+
|
|
23
|
+
@template_object.render partial: 'promethee/localize',
|
|
24
|
+
locals: {
|
|
25
|
+
object_name: @object_name,
|
|
26
|
+
method_name: @method_name,
|
|
27
|
+
localization_data: localization_data,
|
|
28
|
+
master_data: @options[:master],
|
|
29
|
+
other_data: @options[:other],
|
|
30
|
+
disable_page_attributes: @options[:disable_page_attributes]
|
|
31
|
+
}
|
|
30
32
|
end
|
|
31
33
|
end
|
|
32
34
|
end
|
|
@@ -3,7 +3,7 @@ module Promethee::Rails::Helper
|
|
|
3
3
|
render partial: 'promethee/show', locals: { master_data: data, localization_data: options[:l] }
|
|
4
4
|
end
|
|
5
5
|
|
|
6
|
-
def promethee_class_for
|
|
6
|
+
def promethee_class_for(component, *modifiers)
|
|
7
7
|
base = "promethee__component"
|
|
8
8
|
component_base = "#{base}__#{component[:type]}"
|
|
9
9
|
|
|
@@ -14,6 +14,10 @@ module Promethee::Rails::Helper
|
|
|
14
14
|
].flatten.select(&:present?).join ' '
|
|
15
15
|
end
|
|
16
16
|
|
|
17
|
+
def promethee_id_for(component)
|
|
18
|
+
"promethee-component-#{component[:id]}"
|
|
19
|
+
end
|
|
20
|
+
|
|
17
21
|
def promethee_component_partials
|
|
18
22
|
promethee_partials_for 'components/*/_edit.*.html.erb'
|
|
19
23
|
end
|
|
@@ -22,6 +26,10 @@ module Promethee::Rails::Helper
|
|
|
22
26
|
render("promethee/components/#{icon}/icon.svg").to_json.html_safe
|
|
23
27
|
end
|
|
24
28
|
|
|
29
|
+
def promethee_preset_render_icon(icon)
|
|
30
|
+
render("promethee/presets/icon.#{icon}.svg").to_json.html_safe
|
|
31
|
+
end
|
|
32
|
+
|
|
25
33
|
def promethee_util_partials
|
|
26
34
|
promethee_partials_for 'utils/_*.html.erb'
|
|
27
35
|
end
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: promethee
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 4.1.
|
|
4
|
+
version: 4.1.14
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Sébastien Gaya
|
|
@@ -14,7 +14,7 @@ authors:
|
|
|
14
14
|
autorequire:
|
|
15
15
|
bindir: bin
|
|
16
16
|
cert_chain: []
|
|
17
|
-
date: 2020-
|
|
17
|
+
date: 2020-10-02 00:00:00.000000000 Z
|
|
18
18
|
dependencies:
|
|
19
19
|
- !ruby/object:Gem::Dependency
|
|
20
20
|
name: rails
|