decidim-core 0.13.1 → 0.14.1

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of decidim-core might be problematic. Click here for more details.

Files changed (236) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/config/decidim_core_manifest.js +1 -1
  3. data/app/assets/images/decidim/gamification/badges/invitations.svg +117 -0
  4. data/app/assets/javascripts/decidim.js.es6 +4 -1
  5. data/app/assets/javascripts/decidim/ajax_modals.js.es6 +17 -0
  6. data/app/assets/javascripts/decidim/conferences.js.es6 +16 -0
  7. data/app/assets/javascripts/decidim/input_hashtags.js.es6 +115 -0
  8. data/app/assets/javascripts/decidim/input_mentions.js.es6 +2 -3
  9. data/app/assets/javascripts/decidim/vizzs/areachart.js.es6 +226 -0
  10. data/app/assets/javascripts/decidim/vizzs/metrics.js.es6 +26 -0
  11. data/app/assets/javascripts/decidim/vizzs/orgchart.js.es6 +701 -0
  12. data/app/assets/javascripts/decidim/vizzs/renders.js.es6 +11 -0
  13. data/app/assets/stylesheets/decidim/extras/_proposal_form.scss +3 -1
  14. data/app/assets/stylesheets/decidim/layouts/_home.scss +1 -1
  15. data/app/assets/stylesheets/decidim/modules/_areachart.scss +74 -0
  16. data/app/assets/stylesheets/decidim/modules/_badges.scss +116 -0
  17. data/app/assets/stylesheets/decidim/modules/_buttons.scss +5 -0
  18. data/app/assets/stylesheets/decidim/modules/_cards.scss +21 -4
  19. data/app/assets/stylesheets/decidim/modules/_chart-tooltip.scss +42 -0
  20. data/app/assets/stylesheets/decidim/modules/_collapsible-list.scss +12 -8
  21. data/app/assets/stylesheets/decidim/modules/_conference-nav.scss +31 -0
  22. data/app/assets/stylesheets/decidim/modules/_conference-programme.scss +110 -0
  23. data/app/assets/stylesheets/decidim/modules/_conference-speaker.scss +86 -0
  24. data/app/assets/stylesheets/decidim/modules/_conversation.scss +58 -0
  25. data/app/assets/stylesheets/decidim/modules/_help.scss +38 -0
  26. data/app/assets/stylesheets/decidim/modules/_hover-section.scss +29 -0
  27. data/app/assets/stylesheets/decidim/modules/_icons.scss +10 -4
  28. data/app/assets/stylesheets/decidim/modules/_input-hashtags.scss +124 -0
  29. data/app/assets/stylesheets/decidim/modules/_loading-spinner.scss +12 -0
  30. data/app/assets/stylesheets/decidim/modules/_margins.scss +2 -2
  31. data/app/assets/stylesheets/decidim/modules/_modules.scss +15 -0
  32. data/app/assets/stylesheets/decidim/modules/_navbar.scss +9 -0
  33. data/app/assets/stylesheets/decidim/modules/_orgchart.scss +62 -0
  34. data/app/assets/stylesheets/decidim/modules/_status-labels.scss +2 -1
  35. data/app/assets/stylesheets/decidim/modules/_typography.scss +9 -0
  36. data/app/assets/stylesheets/decidim/utils/_helpers.scss +28 -0
  37. data/app/assets/stylesheets/decidim/utils/_mixins.scss +63 -0
  38. data/app/cells/decidim/author/withdraw.erb +1 -1
  39. data/app/cells/decidim/author_cell.rb +1 -1
  40. data/app/cells/decidim/badge/show.erb +36 -0
  41. data/app/cells/decidim/badge_cell.rb +53 -0
  42. data/app/cells/decidim/badges/show.erb +6 -0
  43. data/app/cells/decidim/badges_cell.rb +14 -0
  44. data/app/cells/decidim/card_m/header.erb +1 -1
  45. data/app/cells/decidim/card_m/show.erb +1 -2
  46. data/app/cells/decidim/card_m/top.erb +7 -0
  47. data/app/cells/decidim/card_m_cell.rb +14 -17
  48. data/app/cells/decidim/coauthorships_cell.rb +77 -0
  49. data/app/cells/decidim/collapsible_authors/show.erb +0 -1
  50. data/app/cells/decidim/collapsible_authors_cell.rb +4 -4
  51. data/app/cells/decidim/collapsible_list/show.erb +12 -4
  52. data/app/cells/decidim/collapsible_list_cell.rb +14 -12
  53. data/app/cells/decidim/content_blocks/footer_sub_hero/show.erb +14 -0
  54. data/app/cells/decidim/content_blocks/footer_sub_hero_cell.rb +12 -0
  55. data/app/{views/decidim/pages/home/_hero.html.erb → cells/decidim/content_blocks/hero/show.erb} +4 -4
  56. data/app/cells/decidim/content_blocks/hero_cell.rb +25 -0
  57. data/app/cells/decidim/content_blocks/hero_settings_form/show.erb +7 -0
  58. data/app/cells/decidim/content_blocks/hero_settings_form_cell.rb +13 -0
  59. data/app/cells/decidim/content_blocks/highlighted_content_banner/show.erb +24 -0
  60. data/app/cells/decidim/content_blocks/highlighted_content_banner_cell.rb +16 -0
  61. data/app/{views/decidim/pages/home/_extended.html.erb → cells/decidim/content_blocks/how_to_participate/show.erb} +10 -10
  62. data/app/cells/decidim/content_blocks/how_to_participate_cell.rb +9 -0
  63. data/app/{views/decidim/pages/home/_statistics.html.erb → cells/decidim/content_blocks/stats/show.erb} +2 -2
  64. data/app/cells/decidim/content_blocks/stats_cell.rb +18 -0
  65. data/app/{views/decidim/pages/home/_sub_hero.html.erb → cells/decidim/content_blocks/sub_hero/show.erb} +2 -2
  66. data/app/cells/decidim/content_blocks/sub_hero_cell.rb +17 -0
  67. data/app/cells/decidim/conversation/show.erb +18 -0
  68. data/app/cells/decidim/conversation_cell.rb +23 -0
  69. data/app/cells/decidim/conversation_header/show.erb +17 -0
  70. data/app/cells/decidim/conversation_header_cell.rb +16 -0
  71. data/app/cells/decidim/conversations/show.erb +45 -0
  72. data/app/cells/decidim/conversations_cell.rb +24 -0
  73. data/app/cells/decidim/follow_button/show.erb +3 -3
  74. data/app/cells/decidim/follow_button_cell.rb +1 -5
  75. data/app/cells/decidim/following_cell.rb +1 -7
  76. data/app/cells/decidim/message/show.erb +15 -0
  77. data/app/cells/decidim/message_cell.rb +23 -0
  78. data/app/cells/decidim/new_conversation/show.erb +19 -0
  79. data/app/cells/decidim/new_conversation_cell.rb +19 -0
  80. data/app/cells/decidim/notifications/show.erb +1 -1
  81. data/app/cells/decidim/profile/show.erb +27 -0
  82. data/app/cells/decidim/profile_cell.rb +33 -0
  83. data/app/cells/decidim/profile_sidebar/show.erb +57 -0
  84. data/app/cells/decidim/profile_sidebar_cell.rb +31 -0
  85. data/app/cells/decidim/tos_page_cell.rb +0 -4
  86. data/app/cells/decidim/user_profile/header.erb +1 -1
  87. data/app/controllers/concerns/decidim/action_authorization.rb +13 -38
  88. data/app/controllers/concerns/decidim/needs_permission.rb +15 -6
  89. data/app/controllers/decidim/application_controller.rb +1 -0
  90. data/app/controllers/decidim/authorization_modals_controller.rb +35 -0
  91. data/app/controllers/decidim/components/base_controller.rb +0 -1
  92. data/app/controllers/decidim/devise/invitations_controller.rb +2 -1
  93. data/app/controllers/decidim/messaging/conversations_controller.rb +2 -11
  94. data/app/controllers/decidim/newsletters_controller.rb +4 -6
  95. data/app/controllers/decidim/notifications_controller.rb +4 -0
  96. data/app/controllers/decidim/pages_controller.rb +3 -7
  97. data/app/controllers/decidim/profiles_controller.rb +17 -7
  98. data/app/forms/decidim/notifications_settings_form.rb +1 -1
  99. data/app/forms/decidim/registration_form.rb +1 -1
  100. data/app/helpers/decidim/action_authorization_helper.rb +51 -46
  101. data/app/helpers/decidim/application_helper.rb +18 -0
  102. data/app/helpers/decidim/card_helper.rb +1 -1
  103. data/app/helpers/decidim/cells_helper.rb +6 -2
  104. data/app/helpers/decidim/resource_helper.rb +8 -1
  105. data/app/helpers/decidim/searches_helper.rb +5 -4
  106. data/app/helpers/decidim/traceability_helper.rb +5 -1
  107. data/app/models/decidim/authorization.rb +2 -2
  108. data/app/models/decidim/content_block.rb +144 -0
  109. data/app/models/decidim/gamification/badge_score.rb +13 -0
  110. data/app/models/decidim/messaging/message.rb +1 -1
  111. data/app/models/decidim/messaging/receipt.rb +1 -1
  112. data/app/models/decidim/organization.rb +1 -5
  113. data/app/models/decidim/resource_permission.rb +8 -0
  114. data/app/models/decidim/searchable_resource.rb +1 -1
  115. data/app/models/decidim/user.rb +17 -1
  116. data/app/permissions/decidim/default_permissions.rb +4 -3
  117. data/app/permissions/decidim/permissions.rb +33 -1
  118. data/app/presenters/decidim/hashtag_presenter.rb +32 -0
  119. data/app/presenters/decidim/resource_locator_presenter.rb +13 -0
  120. data/app/presenters/decidim/user_presenter.rb +1 -1
  121. data/app/queries/decidim/messaging/user_conversations.rb +1 -1
  122. data/app/resolvers/decidim/hashtags_resolver.rb +15 -0
  123. data/app/services/decidim/action_authorizer.rb +9 -8
  124. data/app/types/decidim/core/date_time_type.rb +1 -1
  125. data/app/types/decidim/core/hashtag_type.rb +13 -0
  126. data/app/uploaders/decidim/homepage_image_uploader.rb +1 -1
  127. data/app/uploaders/decidim/image_uploader.rb +1 -0
  128. data/app/views/decidim/authorization_modals/show.html.erb +32 -0
  129. data/app/views/decidim/messaging/conversations/create.js.erb +1 -1
  130. data/app/views/decidim/messaging/conversations/index.html.erb +1 -51
  131. data/app/views/decidim/messaging/conversations/new.html.erb +1 -5
  132. data/app/views/decidim/messaging/conversations/show.html.erb +1 -9
  133. data/app/views/decidim/messaging/conversations/update.js.erb +1 -1
  134. data/app/views/decidim/notifications/index.html.erb +1 -0
  135. data/app/views/decidim/pages/decidim_page.html.erb +9 -0
  136. data/app/views/decidim/pages/home.html.erb +12 -16
  137. data/app/views/decidim/pages/index.html.erb +8 -0
  138. data/app/views/decidim/profiles/_user_follow.erb +2 -2
  139. data/app/views/decidim/profiles/show.html.erb +1 -37
  140. data/app/views/decidim/searches/_results.html.erb +1 -1
  141. data/app/views/decidim/shared/_author_reference.html.erb +1 -1
  142. data/app/views/decidim/shared/_authorization_modal.html.erb +1 -0
  143. data/app/views/decidim/shared/_tags.html.erb +1 -1
  144. data/app/views/kaminari/decidim/_page.html.erb +1 -1
  145. data/app/views/layouts/decidim/_application.html.erb +6 -1
  146. data/app/views/layouts/decidim/_edit_link.html.erb +8 -0
  147. data/app/views/layouts/decidim/_impersonation_warning.html.erb +1 -1
  148. data/app/views/layouts/decidim/_user_menu.html.erb +2 -2
  149. data/app/views/layouts/decidim/_wrapper.html.erb +14 -1
  150. data/config/initializers/carrierwave.rb +15 -0
  151. data/config/locales/ca.yml +78 -30
  152. data/config/locales/en.yml +78 -30
  153. data/config/locales/es-PY.yml +78 -30
  154. data/config/locales/es.yml +78 -30
  155. data/config/locales/eu.yml +78 -30
  156. data/config/locales/fi.yml +262 -214
  157. data/config/locales/fr.yml +78 -30
  158. data/config/locales/gl.yml +78 -30
  159. data/config/locales/hu.yml +781 -0
  160. data/config/locales/it.yml +78 -30
  161. data/config/locales/nl.yml +78 -30
  162. data/config/locales/pl.yml +78 -30
  163. data/config/locales/pt-BR.yml +106 -58
  164. data/config/locales/pt.yml +78 -30
  165. data/config/locales/ru.yml +52 -32
  166. data/config/locales/sv.yml +183 -135
  167. data/config/locales/uk.yml +60 -40
  168. data/config/routes.rb +8 -6
  169. data/db/migrate/20180705091019_create_decidim_resource_permissions.rb +12 -0
  170. data/db/migrate/20180706104107_add_nickname_to_managed_users.rb +14 -0
  171. data/db/migrate/20180706111847_fix_result_follows.rb +9 -0
  172. data/db/migrate/20180724103814_add_content_blocks.rb +22 -0
  173. data/db/migrate/20180726112510_create_decidim_hashtags.rb +17 -0
  174. data/db/migrate/20180730071851_add_core_content_blocks.rb +28 -0
  175. data/db/migrate/20180802132147_rename_content_block_options_to_settings.rb +7 -0
  176. data/db/migrate/20180806095628_add_badge_scores.rb +11 -0
  177. data/db/migrate/20180808135006_add_images_to_content_blocks.rb +7 -0
  178. data/db/migrate/20180810092428_move_organization_fields_to_hero_content_block.rb +23 -0
  179. data/db/seeds.rb +10 -2
  180. data/lib/decidim/api/authorable_interface.rb +1 -1
  181. data/lib/decidim/coauthorable.rb +1 -0
  182. data/lib/decidim/content_block_manifest.rb +58 -0
  183. data/lib/decidim/content_block_registry.rb +87 -0
  184. data/lib/decidim/content_parsers.rb +1 -0
  185. data/lib/decidim/content_parsers/hashtag_parser.rb +36 -0
  186. data/lib/decidim/content_processor.rb +11 -0
  187. data/lib/decidim/content_renderers.rb +1 -0
  188. data/lib/decidim/content_renderers/hashtag_renderer.rb +43 -0
  189. data/lib/decidim/core.rb +28 -6
  190. data/lib/decidim/core/api.rb +1 -0
  191. data/lib/decidim/core/engine.rb +52 -1
  192. data/lib/decidim/core/test.rb +3 -0
  193. data/lib/decidim/core/test/factories.rb +32 -17
  194. data/lib/decidim/core/test/shared_examples/authorable_interface_examples.rb +10 -0
  195. data/lib/decidim/core/test/shared_examples/coauthorable.rb +3 -0
  196. data/lib/decidim/core/test/shared_examples/edit_link_shared_examples.rb +30 -0
  197. data/lib/decidim/core/test/shared_examples/has_space_in_mcell_examples.rb +15 -0
  198. data/lib/decidim/core/test/shared_examples/publicable.rb +1 -1
  199. data/lib/decidim/core/test/shared_examples/railtie_examples.rb +15 -0
  200. data/lib/decidim/core/test/shared_examples/scope_helper_examples.rb +1 -0
  201. data/lib/decidim/core/version.rb +1 -1
  202. data/lib/decidim/events/base_event.rb +2 -1
  203. data/lib/decidim/form_builder.rb +9 -3
  204. data/lib/decidim/friendly_dates.rb +1 -1
  205. data/lib/decidim/gamification.rb +109 -0
  206. data/lib/decidim/gamification/badge.rb +54 -0
  207. data/lib/decidim/gamification/badge_earned_event.rb +9 -0
  208. data/lib/decidim/gamification/badge_registry.rb +63 -0
  209. data/lib/decidim/gamification/badge_scorer.rb +118 -0
  210. data/lib/decidim/gamification/badge_status.rb +41 -0
  211. data/lib/decidim/gamification/base_event.rb +40 -0
  212. data/lib/decidim/gamification/level_up_event.rb +9 -0
  213. data/lib/decidim/hashtag.rb +15 -0
  214. data/lib/decidim/hashtaggable.rb +20 -0
  215. data/lib/decidim/query_extensions.rb +10 -0
  216. data/lib/decidim/resource_manifest.rb +10 -0
  217. data/lib/decidim/resourceable.rb +13 -0
  218. data/lib/decidim/search_resource_fields_mapper.rb +8 -3
  219. data/lib/decidim/searchable.rb +8 -0
  220. data/lib/decidim/translatable_attributes.rb +6 -18
  221. data/lib/decidim/view_model.rb +6 -0
  222. data/lib/devise/models/decidim_newsletterable.rb +1 -1
  223. data/vendor/assets/javascripts/d3.js +17813 -0
  224. metadata +125 -27
  225. data/app/cells/decidim/card_m/author.erb +0 -3
  226. data/app/cells/decidim/card_m/authors.erb +0 -9
  227. data/app/views/decidim/messaging/conversations/_message.html.erb +0 -14
  228. data/app/views/decidim/messaging/conversations/_reply.html.erb +0 -11
  229. data/app/views/decidim/messaging/conversations/_show.html.erb +0 -21
  230. data/app/views/decidim/messaging/conversations/_start.html.erb +0 -12
  231. data/app/views/decidim/pages/home/_footer_sub_hero.html.erb +0 -14
  232. data/app/views/decidim/pages/home/_highlighted_content_banner.html.erb +0 -26
  233. data/app/views/decidim/pages/home/_highlighted_processes.html.erb +0 -7
  234. data/app/views/decidim/profiles/_user.html.erb +0 -59
  235. data/app/views/decidim/shared/_action_authorization_modal.html.erb +0 -39
  236. data/app/views/layouts/decidim/_component_authorization_modals.html.erb +0 -5
@@ -0,0 +1,86 @@
1
+ .conference-speaker{
2
+ margin-bottom: $global-margin * 3;
3
+
4
+ .speaker-img-wrapper{
5
+ margin-bottom: $global-margin;
6
+ position: relative;
7
+
8
+ &::before{
9
+ content: "";
10
+ display: block;
11
+ padding-bottom: 100%;
12
+ }
13
+
14
+ .speaker-img{
15
+ position: absolute;
16
+ top: 0;
17
+ left: 0;
18
+ bottom: 0;
19
+ right: 0;
20
+
21
+ img{
22
+ width: 100%;
23
+ height: 100%;
24
+ object-fit: cover;
25
+ }
26
+ }
27
+ }
28
+
29
+ .speaker-data{
30
+ .data-name{
31
+ font-weight: $global-weight-bold;
32
+ font-size: rem-calc(18);
33
+ }
34
+
35
+ .data-role,
36
+ .data-extra{
37
+ color: $muted;
38
+ }
39
+ }
40
+
41
+ .speaker-bio{
42
+ @extend .card;
43
+
44
+ display: none;
45
+ padding: $global-padding;
46
+ left: 0;
47
+ background-color: $white;
48
+ box-shadow: 0 0 20px 0 rgba($black, .2);
49
+ z-index: 1;
50
+ width: 100vw;
51
+ position: absolute;
52
+
53
+ @include breakpoint(medium){
54
+ top: 0;
55
+ width: 300%;
56
+ padding: $global-padding * 2;
57
+ transform: translateY(-10%);
58
+ }
59
+
60
+ > :first-child{
61
+ display: flex;
62
+ justify-content: stretch;
63
+ }
64
+
65
+ .bio-extended{
66
+ font-size: rem-calc(14);
67
+ }
68
+
69
+ .bio-acts{
70
+ font-weight: $global-weight-bold;
71
+ }
72
+ }
73
+
74
+ &:hover .speaker-bio{
75
+ display: block;
76
+ }
77
+
78
+ @include breakpoint(medium){
79
+ position: relative;
80
+
81
+ &:nth-of-type(4n + 3) .speaker-bio,
82
+ &:nth-of-type(4n + 4) .speaker-bio{
83
+ transform: translateY(-10%) translateX(-50%);
84
+ }
85
+ }
86
+ }
@@ -0,0 +1,58 @@
1
+ .conversation{
2
+ .conversation-header{
3
+ @extend .p-m;
4
+
5
+ border-bottom: $border;
6
+
7
+ img{
8
+ width: rem-calc(66);
9
+ height: rem-calc(66);
10
+ border-radius: 50%;
11
+ }
12
+ }
13
+
14
+ .conversation-chat{
15
+ @include flex;
16
+ @include flex-align(left, top);
17
+ @include flexgap($global-margin);
18
+
19
+ @extend .mt-s;
20
+
21
+ width: 75%;
22
+
23
+ &.conversation-chat--offset{
24
+ @include flex-direction(row-reverse);
25
+ @include flexgap($global-margin, row-reverse);
26
+
27
+ margin-left: auto;
28
+ }
29
+
30
+ > :first-child{
31
+ flex-shrink: 0;
32
+ }
33
+
34
+ img{
35
+ width: rem-calc(33px);
36
+ height: rem-calc(33px);
37
+ border-radius: 50%;
38
+ }
39
+
40
+ .card{
41
+ margin-bottom: $global-margin / 2;
42
+ }
43
+
44
+ .card:last-of-type{
45
+ margin-bottom: 0;
46
+ }
47
+ }
48
+
49
+ .conversation-reply{
50
+ @extend .mt-s;
51
+
52
+ width: 75%;
53
+
54
+ &.conversation-reply--offset{
55
+ margin-left: auto;
56
+ }
57
+ }
58
+ }
@@ -14,3 +14,41 @@
14
14
  }
15
15
  }
16
16
  }
17
+
18
+ .help-tooltip{
19
+ @include flex;
20
+ @include flex-align(center, middle);
21
+
22
+ border: .25rem solid lighten($secondary, 25%);
23
+ border-radius: 50%;
24
+ background-color: $secondary;
25
+ color: $light-gray;
26
+ padding: .25rem;
27
+ cursor: pointer;
28
+ }
29
+
30
+ // Extend Foundation defaults
31
+ .tooltip{
32
+ &.light{
33
+ background-color: $body-background;
34
+ color: $body-font-color;
35
+ box-shadow: $prototype-box-shadow;
36
+ border-radius: $global-radius;
37
+
38
+ &.top::before{
39
+ border-color: $body-background transparent transparent;
40
+ }
41
+
42
+ &.bottom::before{
43
+ border-color: transparent transparent $body-background;
44
+ }
45
+
46
+ &.left::before{
47
+ border-color: transparent transparent transparent $body-background;
48
+ }
49
+
50
+ &.right::before{
51
+ border-color: transparent $body-background transparent transparent;
52
+ }
53
+ }
54
+ }
@@ -0,0 +1,29 @@
1
+ .hover-section{
2
+ &:hover{
3
+ background-color: $white;
4
+ border: $border;
5
+ box-shadow: 0 0 20px 0 rgba($black, .2);
6
+ display: flex;
7
+ justify-content: center;
8
+ align-items: stretch;
9
+ // transform: translate(-$global-padding, -$global-padding);
10
+ cursor: pointer;
11
+
12
+ > :first-child{
13
+ border-right: $border;
14
+ }
15
+
16
+ .hidden-section{
17
+ display: block;
18
+ align-self: center;
19
+ }
20
+ }
21
+
22
+ a{
23
+ color: inherit;
24
+ }
25
+
26
+ .hidden-section{
27
+ display: none;
28
+ }
29
+ }
@@ -1,7 +1,8 @@
1
- $icon-size: rem-calc(14);
2
- $icon-size-sm: rem-calc(10);
3
- $icon-size-l: rem-calc(24);
4
- $icon-size-xl: rem-calc(30);
1
+ // font type based on parent container
2
+ $icon-size: .875em;
3
+ $icon-size-sm: .625em;
4
+ $icon-size-l: 1.5em;
5
+ $icon-size-xl: 1.875em;
5
6
 
6
7
  .icon{
7
8
  width: $icon-size;
@@ -30,6 +31,11 @@ $icon-size-xl: rem-calc(30);
30
31
  fill: rgba(black, .2);
31
32
  }
32
33
 
34
+ .icon--container{
35
+ display: inline-flex;
36
+ align-items: center;
37
+ }
38
+
33
39
  .icon--action:hover,
34
40
  a:hover .icon--action{
35
41
  fill: currentColor;
@@ -0,0 +1,124 @@
1
+ @import "tribute";
2
+
3
+ .hashtags__container{
4
+ width: 100%;
5
+
6
+ span{
7
+ color: $secondary;
8
+ }
9
+
10
+ [type=text]{
11
+ white-space: nowrap;
12
+ overflow: hidden;
13
+
14
+ br{
15
+ display: none;
16
+ }
17
+
18
+ *{
19
+ display: inline;
20
+ white-space: nowrap;
21
+ }
22
+ }
23
+
24
+ [contenteditable=true]:empty::before{
25
+ color: $input-placeholder-color;
26
+ content: attr(placeholder);
27
+ display: block; // firefox
28
+ }
29
+
30
+ &.hashtags__container--textarea{
31
+ [contenteditable=true]{
32
+ -webkit-appearance: textfield;
33
+ -moz-appearance: textfield-multiline;
34
+ appearance: textfield;
35
+
36
+ // foundation defaults
37
+ @include form-element();
38
+
39
+ max-width: 100%;
40
+ // Min size, 3 times input textfield
41
+ min-height: 3 * (($input-font-size * unitless-calc($input-line-height)) + (get-side($input-padding, 'top') + get-side($input-padding, 'bottom')));
42
+ height: auto;
43
+
44
+ // Placeholder text
45
+ &::placeholder{
46
+ color: $input-placeholder-color;
47
+ }
48
+
49
+ // Disabled/readonly state
50
+ &:disabled,
51
+ &[readonly]{
52
+ background-color: $input-background-disabled;
53
+ cursor: $input-cursor-disabled;
54
+ }
55
+ }
56
+ }
57
+
58
+ // Override defaults
59
+ .tribute-container{
60
+ position: relative;
61
+ min-width: 100%;
62
+ top: -1rem - rem-calc(1);
63
+
64
+ ul{
65
+ //reset list
66
+ margin: 0;
67
+ list-style: none;
68
+ // input defaults
69
+ outline: none;
70
+ border: $input-border-focus;
71
+ border-radius: $input-radius;
72
+ background-color: $input-background-focus;
73
+ box-shadow: $input-shadow-focus;
74
+
75
+ @if has-value($input-transition){
76
+ transition: $input-transition;
77
+ }
78
+
79
+ li{
80
+ padding: $input-padding;
81
+ border-top: $border;
82
+ }
83
+ }
84
+
85
+ .highlight{
86
+ background-color: $input-prefix-background;
87
+ }
88
+ }
89
+
90
+ &.is-active{
91
+ [contenteditable=true],
92
+ input,
93
+ textarea{
94
+ border-bottom-left-radius: 0;
95
+ border-bottom-right-radius: 0;
96
+ }
97
+
98
+ .tribute-container{
99
+ ul{
100
+ border-top: 0;
101
+ border-top-left-radius: 0;
102
+ border-top-right-radius: 0;
103
+ }
104
+ }
105
+
106
+ // Quill.js
107
+ &.editor{
108
+ > :first-child{
109
+ border-top-left-radius: $input-radius;
110
+ border-top-right-radius: $input-radius;
111
+ border-top: $input-border-focus;
112
+ border-right: $input-border-focus;
113
+ border-left: $input-border-focus;
114
+ }
115
+
116
+ .editor-container{
117
+ border-right: $input-border-focus;
118
+ border-left: $input-border-focus;
119
+ margin-bottom: 1rem;
120
+ outline: none;
121
+ }
122
+ }
123
+ }
124
+ }
@@ -0,0 +1,12 @@
1
+ .loading-spinner{
2
+ margin: 25px !important;
3
+ height: 25px;
4
+ text-align: center;
5
+
6
+ &::before{
7
+ @include spinner(25px, $medium-gray, $primary, 800ms);
8
+
9
+ content: "";
10
+ vertical-align: middle;
11
+ }
12
+ }
@@ -43,12 +43,12 @@ $side:(
43
43
  @each $p-key, $prop in $property{
44
44
  @each $v-key, $value in $size{
45
45
  .#{$p-key}-#{$v-key}{
46
- #{$prop}: #{$value};
46
+ #{$prop}: #{$value} !important;
47
47
  }
48
48
 
49
49
  @each $s-key, $side in $side{
50
50
  .#{$p-key}#{$s-key}-#{$v-key}{
51
- #{$prop}-#{$side}: #{$value};
51
+ #{$prop}-#{$side}: #{$value} !important;
52
52
  }
53
53
  }
54
54
  }
@@ -35,6 +35,7 @@
35
35
  @import "tags";
36
36
  @import "input-tags";
37
37
  @import "input-mentions";
38
+ @import "input-hashtags";
38
39
  @import "list-docs";
39
40
  @import "datepicker";
40
41
  @import "pagination";
@@ -42,6 +43,10 @@
42
43
  @import "progress-bar";
43
44
  @import "docs-manager";
44
45
  @import "horizontal-tabs";
46
+ @import "conversation";
47
+ @import "orgchart";
48
+ @import "badges";
49
+ @import "hover-section";
45
50
 
46
51
  //Process elements
47
52
  @import "process-header";
@@ -55,10 +60,19 @@
55
60
  @import "reference";
56
61
  @import "status-labels";
57
62
 
63
+ //Conference elements
64
+ @import "conference-nav";
65
+ @import "conference-speaker";
66
+ @import "conference-programme";
67
+
58
68
  //User interface
59
69
  @import "user-form";
60
70
  @import "signup";
61
71
 
72
+ //Visualizations
73
+ @import "areachart";
74
+ @import "chart-tooltip";
75
+
62
76
  //Additional elements
63
77
  @import "share";
64
78
  @import "help";
@@ -70,3 +84,4 @@
70
84
  @import "block-banner";
71
85
  @import "fingerprint";
72
86
  @import "toggle";
87
+ @import "loading-spinner";
@@ -344,6 +344,15 @@ $navbar-active-shadow-medium: inset 0 4px 0 0 $primary;
344
344
  }
345
345
  }
346
346
 
347
+ .topbar__edit__link a{
348
+ color: $medium-gray;
349
+
350
+ &:hover{
351
+ background: $navbar-bg-hover;
352
+ color: $navbar-color-hover;
353
+ }
354
+ }
355
+
347
356
  .usermenu-off-canvas-holder .usermenu-off-canvas{
348
357
  border-top: 1px solid;
349
358
  border-bottom: 1px solid;