@weavy/uikit-react 12.1.0 → 14.0.0

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.
Files changed (280) hide show
  1. package/changelog.md +60 -0
  2. package/dist/cjs/index.js +28 -6
  3. package/dist/cjs/index.js.map +1 -1
  4. package/dist/cjs/types/client/WeavyClient.d.ts +8 -1
  5. package/dist/cjs/types/components/Attachment.d.ts +2 -1
  6. package/dist/cjs/types/components/Chat.d.ts +1 -1
  7. package/dist/cjs/types/components/Messages.d.ts +3 -1
  8. package/dist/cjs/types/components/PdfViewer.d.ts +3 -1
  9. package/dist/cjs/types/components/Preview.d.ts +8 -10
  10. package/dist/cjs/types/contexts/PreviewContext.d.ts +2 -1
  11. package/dist/cjs/types/contexts/WeavyContext.d.ts +2 -3
  12. package/dist/cjs/types/hooks/useConversations.d.ts +1 -1
  13. package/dist/cjs/types/hooks/useMutateMessage.d.ts +1 -1
  14. package/dist/cjs/types/hooks/useMutateRead.d.ts +1 -0
  15. package/dist/cjs/types/types/Chat.d.ts +2 -1
  16. package/dist/cjs/types/types/Message.d.ts +2 -0
  17. package/dist/cjs/types/types/types.d.ts +63 -9
  18. package/dist/cjs/types/ui/Spinner.d.ts +10 -0
  19. package/dist/cjs/types/utils/fileUtilities.d.ts +1 -4
  20. package/dist/css/weavy-chat.css +1803 -1041
  21. package/dist/css/weavy-messenger.css +2141 -1360
  22. package/dist/css/weavy.css +1943 -1162
  23. package/dist/esm/index.js +28 -6
  24. package/dist/esm/index.js.map +1 -1
  25. package/dist/esm/types/client/WeavyClient.d.ts +8 -1
  26. package/dist/esm/types/components/Attachment.d.ts +2 -1
  27. package/dist/esm/types/components/Chat.d.ts +1 -1
  28. package/dist/esm/types/components/Messages.d.ts +3 -1
  29. package/dist/esm/types/components/PdfViewer.d.ts +3 -1
  30. package/dist/esm/types/components/Preview.d.ts +8 -10
  31. package/dist/esm/types/contexts/PreviewContext.d.ts +2 -1
  32. package/dist/esm/types/contexts/WeavyContext.d.ts +2 -3
  33. package/dist/esm/types/hooks/useConversations.d.ts +1 -1
  34. package/dist/esm/types/hooks/useMutateMessage.d.ts +1 -1
  35. package/dist/esm/types/hooks/useMutateRead.d.ts +1 -0
  36. package/dist/esm/types/types/Chat.d.ts +2 -1
  37. package/dist/esm/types/types/Message.d.ts +2 -0
  38. package/dist/esm/types/types/types.d.ts +63 -9
  39. package/dist/esm/types/ui/Spinner.d.ts +10 -0
  40. package/dist/esm/types/utils/fileUtilities.d.ts +1 -4
  41. package/dist/index.d.ts +15 -7
  42. package/package.json +2 -2
  43. package/rollup.config.js +3 -1
  44. package/src/client/WeavyClient.ts +105 -29
  45. package/src/components/Attachment.tsx +8 -7
  46. package/src/components/Chat.tsx +8 -7
  47. package/src/components/Conversation.tsx +29 -23
  48. package/src/components/ConversationBadge.tsx +7 -5
  49. package/src/components/ConversationForm.tsx +1 -1
  50. package/src/components/ConversationList.tsx +59 -11
  51. package/src/components/ConversationListItem.tsx +71 -54
  52. package/src/components/FileBrowser.tsx +53 -50
  53. package/src/components/MeetingCard.tsx +35 -13
  54. package/src/components/Meetings.tsx +1 -1
  55. package/src/components/Message.tsx +41 -41
  56. package/src/components/Messages.tsx +62 -61
  57. package/src/components/Messenger.tsx +7 -2
  58. package/src/components/NewConversation.tsx +1 -1
  59. package/src/components/PdfViewer.tsx +93 -88
  60. package/src/components/Preview.tsx +115 -54
  61. package/src/components/Reactions.tsx +11 -5
  62. package/src/components/SearchUsers.tsx +21 -11
  63. package/src/components/SeenBy.tsx +13 -7
  64. package/src/components/Typing.tsx +11 -12
  65. package/src/contexts/PreviewContext.tsx +90 -16
  66. package/src/contexts/UserContext.tsx +1 -1
  67. package/src/contexts/WeavyContext.tsx +10 -7
  68. package/src/hooks/useBadge.ts +2 -6
  69. package/src/hooks/useChat.ts +3 -14
  70. package/src/hooks/useConversation.ts +1 -7
  71. package/src/hooks/useConversations.ts +15 -11
  72. package/src/hooks/useFileUploader.ts +6 -8
  73. package/src/hooks/useMembers.ts +1 -7
  74. package/src/hooks/useMessages.ts +1 -7
  75. package/src/hooks/useMutateChat.ts +6 -11
  76. package/src/hooks/useMutateConversation.ts +7 -10
  77. package/src/hooks/useMutateConversationName.ts +10 -12
  78. package/src/hooks/useMutateDeleteReaction.ts +3 -8
  79. package/src/hooks/useMutateExternalBlobs.ts +6 -11
  80. package/src/hooks/useMutateMeeting.ts +6 -11
  81. package/src/hooks/useMutateMembers.ts +8 -13
  82. package/src/hooks/useMutateMessage.ts +9 -18
  83. package/src/hooks/useMutatePinned.ts +3 -8
  84. package/src/hooks/useMutateReaction.ts +6 -12
  85. package/src/hooks/useMutateRead.ts +5 -12
  86. package/src/hooks/useMutateRemoveMembers.ts +7 -12
  87. package/src/hooks/useMutateTyping.ts +6 -11
  88. package/src/hooks/usePresence.ts +2 -3
  89. package/src/hooks/useReactions.ts +11 -12
  90. package/src/hooks/useSearchUsers.ts +1 -6
  91. package/src/hooks/useUser.ts +3 -14
  92. package/src/scss/theme/_alert.scss +61 -63
  93. package/src/scss/theme/_appbar.scss +105 -28
  94. package/src/scss/theme/_avatar.scss +23 -28
  95. package/src/scss/theme/_badge.scss +26 -18
  96. package/src/scss/theme/_buttons.scss +107 -52
  97. package/src/scss/theme/_card.scss +102 -4
  98. package/src/scss/theme/_checkbox.scss +16 -20
  99. package/src/scss/theme/_code-vscode-dark.scss +184 -0
  100. package/src/scss/theme/_code-vscode-light.scss +179 -0
  101. package/src/scss/theme/_code.scss +9 -114
  102. package/src/scss/theme/_comment-editor-cm.scss +97 -0
  103. package/src/scss/theme/_comment-editor.scss +129 -0
  104. package/src/scss/theme/_comments.scss +66 -0
  105. package/src/scss/theme/_content.scss +33 -5
  106. package/src/scss/theme/_conversations.scss +19 -78
  107. package/src/scss/theme/_dropdown.scss +102 -15
  108. package/src/scss/theme/_embed.scss +135 -0
  109. package/src/scss/theme/_facepile.scss +11 -0
  110. package/src/scss/theme/_filebrowser.scss +1 -1
  111. package/src/scss/theme/_files.scss +77 -48
  112. package/src/scss/theme/_grid.scss +8 -0
  113. package/src/scss/theme/_icons.scss +155 -19
  114. package/src/scss/theme/_image-grid.scss +7 -10
  115. package/src/scss/theme/_input.scss +160 -0
  116. package/src/scss/theme/_item.scss +169 -0
  117. package/src/scss/theme/_list.scss +57 -0
  118. package/src/scss/theme/_meeting.scss +11 -0
  119. package/src/scss/theme/_message-editor-cm.scss +95 -0
  120. package/src/scss/theme/_message-editor.scss +66 -20
  121. package/src/scss/theme/_messages.scss +51 -105
  122. package/src/scss/theme/_meta.scss +12 -0
  123. package/src/scss/theme/_overlays.scss +31 -76
  124. package/src/scss/theme/_pager.scss +5 -1
  125. package/src/scss/theme/_pane.scss +13 -2
  126. package/src/scss/theme/_panels.scss +34 -25
  127. package/src/scss/theme/_picker-list.scss +5 -3
  128. package/src/scss/theme/_placeholder.scss +19 -0
  129. package/src/scss/theme/_poll.scss +49 -0
  130. package/src/scss/theme/_post-editor-cm.scss +100 -0
  131. package/src/scss/theme/_post-editor.scss +127 -0
  132. package/src/scss/theme/_post.scss +83 -0
  133. package/src/scss/theme/_preview-code.scss +14 -0
  134. package/src/scss/theme/_preview-embed.scss +11 -5
  135. package/src/scss/theme/_preview-image.scss +8 -26
  136. package/src/scss/theme/_preview-media.scss +1 -0
  137. package/src/scss/theme/_preview-pdf.scss +10 -15
  138. package/src/scss/theme/_preview-text.scss +1 -1
  139. package/src/scss/theme/_preview.scss +59 -76
  140. package/src/scss/theme/_reactions.scss +48 -17
  141. package/src/scss/theme/_sheet.scss +59 -0
  142. package/src/scss/theme/_sidebar.scss +86 -0
  143. package/src/scss/theme/_spinner.scss +11 -7
  144. package/src/scss/theme/_tab.scss +72 -0
  145. package/src/scss/theme/_tables.scss +70 -23
  146. package/src/scss/theme/_toasts.scss +56 -26
  147. package/src/scss/theme/_type.scss +41 -0
  148. package/src/scss/theme/{mixins → base}/_backdrop.scss +0 -0
  149. package/src/scss/theme/{bootstrap/mixins → base}/_breakpoints.scss +9 -0
  150. package/src/scss/theme/base/_colors.scss +315 -0
  151. package/src/scss/theme/base/_md.scss +19 -0
  152. package/src/scss/theme/base/_palette.scss +130 -0
  153. package/src/scss/theme/{mixins → base}/_position.scss +5 -5
  154. package/src/scss/theme/base/_reboot.scss +51 -0
  155. package/src/scss/theme/base/_scroll.scss +180 -0
  156. package/src/scss/theme/base/_svg.scss +49 -0
  157. package/src/scss/theme/base/_text.scss +23 -0
  158. package/src/scss/theme/base/_vars.scss +203 -0
  159. package/src/scss/theme/{fonts → base/fonts}/_fontmapping-roboto.scss +0 -0
  160. package/src/scss/theme/{fonts → base/fonts}/_fontmapping-segoe-ui.scss +0 -0
  161. package/src/scss/theme/base/fonts/_index.scss +2 -0
  162. package/src/scss/weavy-chat.scss +11 -4
  163. package/src/scss/weavy-messenger.scss +38 -21
  164. package/src/types/Chat.ts +2 -1
  165. package/src/types/Message.ts +3 -1
  166. package/src/types/types.ts +72 -10
  167. package/src/ui/Icon.tsx +1 -1
  168. package/src/ui/Spinner.tsx +19 -0
  169. package/src/utils/fileUtilities.ts +11 -125
  170. package/src/utils/infiniteScroll.js +11 -2
  171. package/src/utils/postal-parent.js +398 -0
  172. package/src/utils/promise.js +187 -0
  173. package/src/utils/scrollbarDetection.js +68 -9
  174. package/src/utils/utils.js +547 -0
  175. package/src/scss/theme/_attachments.scss +0 -74
  176. package/src/scss/theme/_cm-editor.scss +0 -42
  177. package/src/scss/theme/_colors.scss +0 -520
  178. package/src/scss/theme/_config.scss +0 -6
  179. package/src/scss/theme/_inputs.scss +0 -28
  180. package/src/scss/theme/_nav.scss +0 -52
  181. package/src/scss/theme/_palette.scss +0 -165
  182. package/src/scss/theme/_preview-icon.scss +0 -41
  183. package/src/scss/theme/_reboot.scss +0 -41
  184. package/src/scss/theme/_root.scss +0 -2
  185. package/src/scss/theme/_scroll.scss +0 -55
  186. package/src/scss/theme/_search.scss +0 -68
  187. package/src/scss/theme/_turbo.scss +0 -17
  188. package/src/scss/theme/_variables.scss +0 -139
  189. package/src/scss/theme/bootstrap/_accordion.scss +0 -146
  190. package/src/scss/theme/bootstrap/_alert.scss +0 -71
  191. package/src/scss/theme/bootstrap/_badge.scss +0 -38
  192. package/src/scss/theme/bootstrap/_breadcrumb.scss +0 -40
  193. package/src/scss/theme/bootstrap/_button-group.scss +0 -142
  194. package/src/scss/theme/bootstrap/_buttons.scss +0 -186
  195. package/src/scss/theme/bootstrap/_card.scss +0 -234
  196. package/src/scss/theme/bootstrap/_carousel.scss +0 -229
  197. package/src/scss/theme/bootstrap/_close.scss +0 -40
  198. package/src/scss/theme/bootstrap/_containers.scss +0 -41
  199. package/src/scss/theme/bootstrap/_dropdown.scss +0 -248
  200. package/src/scss/theme/bootstrap/_forms.scss +0 -9
  201. package/src/scss/theme/bootstrap/_functions.scss +0 -302
  202. package/src/scss/theme/bootstrap/_grid.scss +0 -33
  203. package/src/scss/theme/bootstrap/_helpers.scss +0 -10
  204. package/src/scss/theme/bootstrap/_images.scss +0 -42
  205. package/src/scss/theme/bootstrap/_list-group.scss +0 -191
  206. package/src/scss/theme/bootstrap/_maps.scss +0 -54
  207. package/src/scss/theme/bootstrap/_mixins.scss +0 -43
  208. package/src/scss/theme/bootstrap/_modal.scss +0 -237
  209. package/src/scss/theme/bootstrap/_nav.scss +0 -172
  210. package/src/scss/theme/bootstrap/_navbar.scss +0 -276
  211. package/src/scss/theme/bootstrap/_offcanvas.scss +0 -143
  212. package/src/scss/theme/bootstrap/_pagination.scss +0 -109
  213. package/src/scss/theme/bootstrap/_placeholders.scss +0 -51
  214. package/src/scss/theme/bootstrap/_popover.scss +0 -196
  215. package/src/scss/theme/bootstrap/_progress.scss +0 -59
  216. package/src/scss/theme/bootstrap/_reboot.scss +0 -610
  217. package/src/scss/theme/bootstrap/_root.scss +0 -73
  218. package/src/scss/theme/bootstrap/_spinners.scss +0 -85
  219. package/src/scss/theme/bootstrap/_tables.scss +0 -164
  220. package/src/scss/theme/bootstrap/_toasts.scss +0 -70
  221. package/src/scss/theme/bootstrap/_tooltip.scss +0 -120
  222. package/src/scss/theme/bootstrap/_transitions.scss +0 -27
  223. package/src/scss/theme/bootstrap/_type.scss +0 -106
  224. package/src/scss/theme/bootstrap/_utilities.scss +0 -647
  225. package/src/scss/theme/bootstrap/_variables.scss +0 -1633
  226. package/src/scss/theme/bootstrap/forms/_floating-labels.scss +0 -74
  227. package/src/scss/theme/bootstrap/forms/_form-check.scss +0 -175
  228. package/src/scss/theme/bootstrap/forms/_form-control.scss +0 -194
  229. package/src/scss/theme/bootstrap/forms/_form-range.scss +0 -91
  230. package/src/scss/theme/bootstrap/forms/_form-select.scss +0 -71
  231. package/src/scss/theme/bootstrap/forms/_form-text.scss +0 -11
  232. package/src/scss/theme/bootstrap/forms/_input-group.scss +0 -129
  233. package/src/scss/theme/bootstrap/forms/_labels.scss +0 -36
  234. package/src/scss/theme/bootstrap/forms/_validation.scss +0 -12
  235. package/src/scss/theme/bootstrap/helpers/_clearfix.scss +0 -3
  236. package/src/scss/theme/bootstrap/helpers/_color-bg.scss +0 -10
  237. package/src/scss/theme/bootstrap/helpers/_colored-links.scss +0 -12
  238. package/src/scss/theme/bootstrap/helpers/_position.scss +0 -36
  239. package/src/scss/theme/bootstrap/helpers/_ratio.scss +0 -26
  240. package/src/scss/theme/bootstrap/helpers/_stacks.scss +0 -15
  241. package/src/scss/theme/bootstrap/helpers/_stretched-link.scss +0 -15
  242. package/src/scss/theme/bootstrap/helpers/_text-truncation.scss +0 -7
  243. package/src/scss/theme/bootstrap/helpers/_visually-hidden.scss +0 -8
  244. package/src/scss/theme/bootstrap/helpers/_vr.scss +0 -8
  245. package/src/scss/theme/bootstrap/mixins/_alert.scss +0 -15
  246. package/src/scss/theme/bootstrap/mixins/_backdrop.scss +0 -14
  247. package/src/scss/theme/bootstrap/mixins/_banner.scss +0 -9
  248. package/src/scss/theme/bootstrap/mixins/_border-radius.scss +0 -78
  249. package/src/scss/theme/bootstrap/mixins/_box-shadow.scss +0 -18
  250. package/src/scss/theme/bootstrap/mixins/_buttons.scss +0 -70
  251. package/src/scss/theme/bootstrap/mixins/_caret.scss +0 -64
  252. package/src/scss/theme/bootstrap/mixins/_clearfix.scss +0 -9
  253. package/src/scss/theme/bootstrap/mixins/_color-scheme.scss +0 -7
  254. package/src/scss/theme/bootstrap/mixins/_container.scss +0 -11
  255. package/src/scss/theme/bootstrap/mixins/_deprecate.scss +0 -10
  256. package/src/scss/theme/bootstrap/mixins/_forms.scss +0 -152
  257. package/src/scss/theme/bootstrap/mixins/_gradients.scss +0 -47
  258. package/src/scss/theme/bootstrap/mixins/_grid.scss +0 -151
  259. package/src/scss/theme/bootstrap/mixins/_image.scss +0 -16
  260. package/src/scss/theme/bootstrap/mixins/_list-group.scss +0 -24
  261. package/src/scss/theme/bootstrap/mixins/_lists.scss +0 -7
  262. package/src/scss/theme/bootstrap/mixins/_pagination.scss +0 -10
  263. package/src/scss/theme/bootstrap/mixins/_reset-text.scss +0 -17
  264. package/src/scss/theme/bootstrap/mixins/_resize.scss +0 -6
  265. package/src/scss/theme/bootstrap/mixins/_table-variants.scss +0 -24
  266. package/src/scss/theme/bootstrap/mixins/_text-truncate.scss +0 -8
  267. package/src/scss/theme/bootstrap/mixins/_transition.scss +0 -26
  268. package/src/scss/theme/bootstrap/mixins/_utilities.scss +0 -97
  269. package/src/scss/theme/bootstrap/mixins/_visually-hidden.scss +0 -29
  270. package/src/scss/theme/bootstrap/utilities/_api.scss +0 -47
  271. package/src/scss/theme/bootstrap/vendor/_rfs.scss +0 -354
  272. package/src/scss/theme/bs/_badge.scss +0 -20
  273. package/src/scss/theme/bs/_buttons.scss +0 -185
  274. package/src/scss/theme/bs/_dropdown.scss +0 -86
  275. package/src/scss/theme/bs/_forms.scss +0 -161
  276. package/src/scss/theme/bs/_list-group.scss +0 -73
  277. package/src/scss/theme/bs/_tables.scss +0 -46
  278. package/src/scss/theme/fonts/_index.scss +0 -2
  279. package/src/scss/theme/mixins/_palette.scss +0 -165
  280. package/src/scss/theme/mixins/_scrollbar.scss +0 -110
@@ -1,11 +1,10 @@
1
1
  @use "sass:color";
2
- @use "config" as *;
3
- @use "reactions";
2
+ @use "base/vars";
3
+ @use "base/colors";
4
4
 
5
5
  .wy-messages {
6
6
  padding: 1rem 1rem 0 .75rem;
7
7
  flex: 1 1 100%;
8
-
9
8
  }
10
9
 
11
10
  .wy-message-placeholder {
@@ -13,24 +12,25 @@
13
12
  }
14
13
 
15
14
  .wy-date-separator {
16
- font-size: $font-size-xs;
15
+ font-size: vars.$font-size-xs;
17
16
  pointer-events: none;
18
17
  margin: .5rem;
19
18
  text-align: center;
20
19
  position: sticky;
21
20
  top: 1.5rem;
22
- z-index: 2;
21
+ z-index: 10;
23
22
 
24
23
  time {
25
- background: $light;
24
+ background: colors.$surface-3;
25
+ color: colors.$on-surface;
26
26
  padding: .25rem .5rem;
27
- border-radius: $border-radius;
27
+ border-radius: vars.$border-radius-sm;
28
28
  display: inline-block;
29
29
  }
30
30
  }
31
31
 
32
32
  .wy-appbars + .wy-pane-body .wy-date-separator {
33
- top: $appbar-height + 1.5rem;
33
+ top: vars.$appbar-height + 1.5rem;
34
34
  }
35
35
 
36
36
 
@@ -42,70 +42,51 @@
42
42
 
43
43
  .wy-image-grid,
44
44
  .wy-attachments {
45
- border-radius: $border-radius-lg;
46
- }
47
-
48
- &:hover {
49
- .wy-message-buttons {
50
- opacity: 1;
51
- }
52
- }
53
-
54
- .wy-reaction-menu {
55
- right: 0;
45
+ border-radius: vars.$border-radius;
56
46
  }
57
47
  }
58
48
 
59
49
  .wy-message-meta {
60
- font-size: $font-size-xs;
50
+ font-size: vars.$font-size-xs;
61
51
  margin: 0 0 .25rem .25rem;
62
- color: $text-muted;
52
+ color: colors.$on-surface-variant;
63
53
  }
64
54
 
65
55
  .wy-message-bubble {
66
- background-color: $gray-50;
67
- border-radius: $border-radius-xl;
56
+ --wy-component-background-color: #{colors.$surface-variant};
57
+ --wy-component-color: #{colors.$on-surface-variant};
58
+ //--wy-component-border-radius: #{vars.$border-radius};
59
+
60
+ background-color: var(--wy-component-background-color);
61
+ color: var(--wy-component-color);
62
+ //border-radius: var(--wy-component-border-radius);
63
+
64
+ border-radius: calc(vars.$border-radius + .5rem);
68
65
  display: flex; //inline-block;
69
- flex-direction: row;
70
- flex-wrap: wrap;
66
+ flex-direction: column;
71
67
  padding: .75rem;
68
+ gap: .75rem;
72
69
  max-width: min(32rem, calc(100% - 2rem));
73
- min-width: 10rem;
74
70
 
75
71
  > div {
76
72
  // message section (images, attachments, embeds etc.)
77
- margin-bottom: .5rem;
78
73
  flex: 1 1 100%;
79
-
80
- &:last-of-type {
81
- margin-bottom: 0;
82
- }
83
- }
84
- }
85
-
86
- .wy-message-text {
87
- overflow-wrap: break-word;
88
- min-width: 0;
89
-
90
- // inline code
91
- :not(pre) > code {
92
- overflow-wrap: inherit;
93
74
  }
94
75
 
95
- // code block
96
- pre, pre > code {
97
- white-space: pre-wrap;
98
- }
99
-
100
- :last-child {
101
- margin-bottom: 0;
102
- }
76
+ .wy-reactions-line {
77
+ position: relative;
78
+ height: 0;
79
+ min-height: 0;
80
+ max-height: 0;
103
81
 
104
- &:empty {
105
- display: none;
82
+ margin: 0 -.75rem -.75rem;
83
+ flex: 0 0 0;
84
+ flex-direction: row-reverse;
85
+ justify-content: flex-end;
106
86
  }
107
87
  }
108
88
 
89
+
109
90
  .wy-message-author {
110
91
  margin: 1.375rem .5rem 0 0;
111
92
  }
@@ -118,16 +99,6 @@
118
99
  flex-wrap: wrap;
119
100
  min-width: 0;
120
101
  position: relative; // so that we can position reactions
121
-
122
- .wy-reactions {
123
- position: absolute;
124
- bottom: -.75rem;
125
- left: .75rem;
126
- background: $gray-50;
127
- border-radius: 1.5rem;
128
- border: $border-width solid $gray-50;
129
- padding: .125rem;
130
- }
131
102
  }
132
103
 
133
104
  .wy-message-content-row {
@@ -137,14 +108,6 @@
137
108
  max-width: 100%;
138
109
  }
139
110
 
140
- .wy-message-buttons {
141
- display: flex;
142
- flex-direction: row;
143
- column-gap: .25rem;
144
- margin: .25rem;
145
- opacity: 0;
146
- }
147
-
148
111
  // override some styles for message by current user
149
112
  .wy-message-me {
150
113
  margin-right: 0;
@@ -163,24 +126,21 @@
163
126
  flex-direction: row-reverse;
164
127
  }
165
128
 
166
- .wy-message-buttons {
167
- flex-direction: row-reverse;
168
- }
169
-
170
129
  .wy-message-bubble {
171
- background-color: $primary-50;
172
- }
130
+ --wy-component-background-color: #{colors.$primary-container};
131
+ --wy-component-color: #{colors.$on-primary-container};
132
+ //--wy-component-border-radius: #{vars.$border-radius};
173
133
 
174
- .wy-reaction-menu {
175
- justify-content: flex-start;
176
- right: auto;
134
+ background-color: var(--wy-component-background-color);
135
+ color: var(--wy-component-color);
136
+ //border-radius: var(--wy-component-border-radius);
177
137
  }
178
138
 
179
- .wy-reactions {
180
- background: $primary-50;
181
- border-color: $primary-50;
182
- left: auto;
183
- right: .75rem;
139
+ .wy-reactions-line {
140
+ flex-direction: row;
141
+ .wy-dropdown-menu {
142
+ right: 0;
143
+ }
184
144
  }
185
145
  }
186
146
 
@@ -188,16 +148,22 @@
188
148
  .wy-message-emoji {
189
149
  .wy-message-bubble {
190
150
  background: none;
191
- padding: 0;
151
+ padding: 0 0 .75rem;
192
152
  }
193
153
 
194
- .wy-message-text {
154
+ .wy-content {
195
155
  .wy-emoji {
196
156
  width: 3rem;
197
157
  height: 3rem;
198
158
  margin: 0;
199
159
  }
200
160
  }
161
+
162
+ &.wy-message-me {
163
+ .wy-content {
164
+ text-align: end;
165
+ }
166
+ }
201
167
  }
202
168
 
203
169
  // message status indicator (sending, sent, delivered, read)
@@ -212,26 +178,6 @@
212
178
  }
213
179
  }
214
180
 
215
- .wy-message-toaster {
216
- position: sticky;
217
- top: 3.5rem;
218
- bottom: 3.5rem;
219
- cursor: pointer;
220
- z-index: 3;
221
- border-radius: 50rem;
222
- background-color: $primary;
223
- color: $white;
224
- padding: .5rem 1rem;
225
- margin-left: auto;
226
- margin-right: auto;
227
- margin-bottom: .5rem;
228
- font-size: $font-size-sm;
229
- width: max-content;
230
- align-self: center;
231
- text-align: center;
232
- color: $white;
233
- }
234
-
235
181
  .wy-message-readmore {
236
182
  justify-self: center;
237
183
  text-align: center;
@@ -0,0 +1,12 @@
1
+ @use "base/vars";
2
+ @use "base/colors";
3
+
4
+ // A component for item metadata such as dates, times etc.
5
+ .wy-meta {
6
+ color: colors.$outline;
7
+ font-size: vars.$font-size-sm;
8
+ }
9
+
10
+ .wy-meta-sm {
11
+ font-size: vars.$font-size-xs;
12
+ }
@@ -1,4 +1,6 @@
1
- @use "config" as *;
1
+ @use "base/vars";
2
+ @use "base/colors";
3
+ @use "base/breakpoints";
2
4
 
3
5
  .wy-viewport {
4
6
  position: fixed;
@@ -6,7 +8,7 @@
6
8
  right: 0;
7
9
  bottom: 0;
8
10
  left: 0;
9
- z-index: 2147483647; /* max possible z-index */;
11
+ z-index: vars.$zindex-max; /* max possible z-index */;
10
12
  pointer-events: none;
11
13
  }
12
14
 
@@ -30,7 +32,7 @@
30
32
  perspective-origin: center center;
31
33
 
32
34
  .wy-panel {
33
- background-color: rgba(mix($white, #FFF), $opacity-backdrop);
35
+ background-color: colors.$background;
34
36
  //max-height: 100vh; // Causes height error in safari
35
37
 
36
38
  &:not(.wy-transition) {
@@ -42,10 +44,10 @@
42
44
  border-bottom: none;
43
45
  flex-direction: row;
44
46
  transition: opacity .1s .2s step-end;
45
-
47
+ //background: colors.$surface-1;
46
48
 
47
49
  .wy-icon {
48
- color: $icon-color;
50
+ color: colors.$on-surface;
49
51
  }
50
52
  }
51
53
 
@@ -60,74 +62,9 @@
60
62
  background-color: transparent;
61
63
  }
62
64
 
63
- &.wy-controls-light {
64
- .wy-icon {
65
- color: $icon-color;
66
- }
67
- }
68
-
69
- &.wy-light {
70
- background-color: rgba(mix($white, #FFF), $opacity-backdrop);
71
-
72
- .wy-icon {
73
- color: $icon-color;
74
- }
75
- }
76
-
77
- &.wy-controls-dark {
78
- .wy-icon {
79
- color: $navbar-dark-color;
80
-
81
- &:hover, &:focus {
82
- color: $navbar-dark-hover-color;
83
- }
84
-
85
- &:active {
86
- color: $navbar-dark-active-color;
87
- }
88
- }
89
- }
90
-
91
- &.wy-dark {
92
- background-color: rgba(mix($dark, #000), $opacity-backdrop);
93
-
94
- .wy-icon {
95
- color: $navbar-dark-color;
96
-
97
- &:hover, &:focus {
98
- color: $navbar-dark-hover-color;
99
- }
100
-
101
- &:active {
102
- color: $navbar-dark-active-color;
103
- }
104
- }
105
-
106
- &.wy-open[data-title]::before {
107
- background: rgba($dark, $opacity-backdrop);
108
- color: $navbar-dark-color;
109
- border-bottom: $border-width #000 solid;
110
- }
111
- }
112
-
113
- &.wy-floating {
114
- @include media-breakpoint-up(md, $grid-breakpoints) {
115
- left: 1rem;
116
- top: 1rem;
117
- right: 1rem;
118
- bottom: 1rem;
119
- border-radius: .1875rem;
120
- box-shadow: $md-shadow-16dp;
121
- &:not(.wy-scroll-y) {
122
- overflow: hidden;
123
- }
124
- }
125
- }
126
-
127
65
  &.wy-modal {
128
- background-color: rgba(mix($white, #FFF), $opacity-backdrop);
129
-
130
- @include media-breakpoint-up(md, $grid-breakpoints) {
66
+ // TODO: REMOVE BREAKPOINTS
67
+ @include breakpoints.media-breakpoint-up(md) {
131
68
  left: auto;
132
69
  right: auto;
133
70
  top: 2rem;
@@ -136,8 +73,8 @@
136
73
  margin-top: auto;
137
74
  margin-right: 4rem;
138
75
  margin-bottom: auto;
139
- border-radius: .25rem;
140
- box-shadow: $md-shadow-16dp;
76
+ border-radius: vars.$border-radius; //.25rem;
77
+ box-shadow: vars.$shadow-level4;
141
78
  width: 32rem;
142
79
  max-height: 32rem;
143
80
  &:not(.wy-scroll-y) {
@@ -146,10 +83,28 @@
146
83
  }
147
84
  }
148
85
 
86
+ &.wy-modal-full {
87
+ // TODO: REMOVE BREAKPOINTS
88
+ @include breakpoints.media-breakpoint-up(md) {
89
+ left: 1rem;
90
+ top: 1rem;
91
+ right: 1rem;
92
+ bottom: 1rem;
93
+ margin: 0;
94
+ border-radius: vars.$border-radius; //.1875rem;
95
+ box-shadow: vars.$shadow-level4;
96
+ width: auto;
97
+ max-height: none;
98
+ &:not(.wy-scroll-y) {
99
+ overflow: hidden;
100
+ }
101
+ }
102
+ }
103
+
149
104
  &.wy-loading {
150
105
  .wy-controls {
151
- transition: opacity $md-animation-duration $md-animation-curve-default;
152
- //transition: opacity .2s .2s variables.$md-animation-curve-default;
106
+ transition: opacity vars.$transition;
107
+ //transition: opacity variables.$transition .2s;
153
108
  opacity: 1;
154
109
  }
155
110
  }
@@ -2,7 +2,7 @@
2
2
  pointer-events: none;
3
3
  }
4
4
 
5
- a.wy-pager {
5
+ :not(tr).wy-pager {
6
6
  display: block;
7
7
  text-align: center;
8
8
  margin: 1rem auto;
@@ -17,3 +17,7 @@ tr.wy-pager td {
17
17
  margin: 1rem auto;
18
18
  }
19
19
  }
20
+
21
+ .wy-grid .wy-pager {
22
+ display: flex;
23
+ }
@@ -1,8 +1,12 @@
1
+ @use "base/colors";
2
+
1
3
  .wy-pane {
2
- min-height: 100vh;
3
4
  display: flex;
4
5
  flex-direction: column;
5
6
  position: relative;
7
+ min-height: 0;
8
+ height: 100%;
9
+ flex: 1 1 auto;
6
10
  }
7
11
 
8
12
  .wy-pane-body {
@@ -12,5 +16,12 @@
12
16
  }
13
17
 
14
18
  .wy-pane-group {
15
- padding: .5rem;
19
+ padding: .75rem;
20
+ }
21
+
22
+ .wy-pane-background {
23
+ --wy-component-background-color: #{colors.$background};
24
+ --wy-component-color: #{colors.$on-background};
25
+ background-color: var(--wy-component-background-color);
26
+ color: var(--wy-component-color);
16
27
  }
@@ -1,5 +1,8 @@
1
- @use "config" as *;
2
- @use "mixins/backdrop";
1
+ @use "sass:color";
2
+ @use "base/vars";
3
+ @use "base/colors";
4
+ @use "base/backdrop";
5
+ @use "base/svg";
3
6
 
4
7
  .wy-panels {
5
8
  position: absolute;
@@ -20,14 +23,14 @@
20
23
  left: 0;
21
24
  pointer-events: none;
22
25
  overflow: hidden;
23
- background-color: rgba(mix($white, #FFF), $opacity-backdrop);
26
+ background-color: colors.$background;
24
27
  display: flex;
25
28
  flex-direction: column;
26
29
 
27
30
  .wy-controls {
28
- top: .5rem;
29
- left: .5rem;
30
- min-width: 2rem;
31
+ top: .25rem;
32
+ left: .25rem;
33
+ min-width: 2.5rem;
31
34
  width: auto;
32
35
  display: flex;
33
36
  z-index: 10000;
@@ -39,20 +42,22 @@
39
42
  }
40
43
 
41
44
  .wy-icon {
42
- color: $icon-color;
45
+ color: colors.$on-background;
43
46
  }
44
47
 
45
- border-bottom: 1px solid $border-color;
48
+ border-bottom: 1px solid colors.$outline-variant;
46
49
  }
47
50
 
48
51
  .wy-panel-frame {
49
- transition: opacity .1s .2s $md-animation-curve-default;
52
+ transition: opacity vars.$transition-fast;
53
+ transition-delay: .2s;
50
54
  opacity: 1;
51
55
  }
52
56
 
53
57
  &:not(.wy-loaded) .wy-panel-frame {
54
58
  opacity: 0;
55
- transition: opacity .2s .1s step-start;
59
+ transition: opacity .2s step-start;
60
+ transition-delay: .1s;
56
61
  }
57
62
 
58
63
  &.wy-open {
@@ -65,19 +70,22 @@
65
70
  top: 0;
66
71
  left: 0;
67
72
  right: 0;
68
- height: ($appbar-height - .0625rem);
73
+ height: vars.$appbar-height;
74
+ padding: .25rem;
69
75
  opacity: 0;
70
76
  pointer-events: none;
71
77
  display: flex;
72
78
  align-items: center;
73
79
  justify-content: center;
74
- background-color: rgba($gray-50, $opacity-backdrop);
75
- color: $navbar-light-color;
76
- border-bottom: $border-width solid $border-color;
77
- transition: opacity .1s .2s step-end;
78
- font-family: $font-family-base;
79
- line-height: $line-height-base;
80
- font-weight: $font-weight-base;
80
+ transition: opacity .1s step-end;
81
+ transition-delay: .2s;
82
+ font-family: inherit;
83
+ line-height: vars.$line-height-base;
84
+ font-weight: vars.$font-weight-base;
85
+
86
+ background-color: colors.$surface-1;
87
+ color: colors.$on-surface;
88
+ box-shadow: #{colors.$outline-variant} 0px -1px 0px 0px inset;
81
89
 
82
90
  @include backdrop.filter;
83
91
  }
@@ -91,20 +99,21 @@
91
99
  right: 0;
92
100
  pointer-events: none;
93
101
  opacity: 0;
94
- transition: opacity $md-animation-duration $md-animation-curve-default 0s;
102
+ transition: opacity vars.$transition;
103
+ transition-duration: 0s;
95
104
  }
96
105
 
97
106
  &.wy-loading {
98
107
  &[data-title]::before {
99
- transition: opacity $md-animation-duration $md-animation-curve-default;
108
+ //transition: opacity vars.$transition;
100
109
  opacity: 1;
101
110
  }
102
111
 
103
112
  &::after {
104
- transition: opacity $md-animation-duration $md-animation-curve-default .5s;
113
+ transition: opacity vars.$transition;
114
+ transition-duration: .5s;
105
115
  opacity: 1;
106
- // spinner.svg encoded with https://codepen.io/jakob-e/pen/doMoML
107
- background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' width='24' height='24' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cstyle type='text/css'%3Eg%7Banimation:rotate 2s linear infinite;transform-origin:center center%7Dcircle%7Bstroke-dasharray:1,100;stroke-dashoffset:0;animation:dash 1.5s ease-in-out infinite,color 6s ease-in-out infinite%7D@keyframes rotate%7B100%25%7Btransform:rotate(360deg)%7D%7D@keyframes dash%7B0%25%7Bstroke-dasharray:1,100;stroke-dashoffset:0%7D50%25%7Bstroke-dasharray:44.5,100;stroke-dashoffset:-17.5px%7D100%25%7Bstroke-dasharray:44.5,100;stroke-dashoffset:-62px%7D%7D@keyframes color%7B0%25,100%25%7Bstroke:%23216eb4%7D40%25%7Bstroke:%2328b7cf%7D66%25%7Bstroke:%23216eb4%7D80%25,90%25%7Bstroke:%2328b7cf%7D%7D%3C/style%3E%3Cg%3E%3Ccircle fill='none' cx='12' cy='12' r='11' stroke-linecap='butt' stroke-width='2' /%3E%3C/g%3E%3C/svg%3E");
116
+ background-image: svg.$spinner;
108
117
  background-repeat: no-repeat;
109
118
  background-position: 50%;
110
119
  background-size: rem(2);
@@ -118,10 +127,10 @@
118
127
  .wy-panel {
119
128
  opacity: 0;
120
129
  visibility: hidden;
121
- transition: opacity $md-animation-duration-fast $md-animation-curve-default .01s, transform $md-animation-duration-fast $md-animation-curve-default .01s, visibility .01s step-end $md-animation-duration-fast;
130
+ transition: opacity vars.$transition-fast .01s, transform vars.$transition-fast .01s, visibility .01s step-end vars.$transition-duration-fast;
122
131
 
123
132
  &.wy-open {
124
- transition: opacity $md-animation-duration $md-animation-curve-default, transform $md-animation-duration $md-animation-curve-default, visibility $md-animation-duration step-start;
133
+ transition: opacity vars.$transition, transform vars.$transition, visibility vars.$transition-duration step-start;
125
134
  visibility: visible;
126
135
 
127
136
  &.wy-transition {
@@ -1,7 +1,9 @@
1
- @use "config" as *;
2
-
1
+ @use "base/text";
3
2
 
4
3
  .wy-picker-list {
4
+ background: var(--wy-component-background-color);
5
+ color: var(--wy-component-color);
6
+
5
7
  border: none;
6
8
 
7
9
  > .wy-picker-list-item:first-child, > :first-child .wy-picker-list-item {
@@ -33,5 +35,5 @@
33
35
 
34
36
  .wy-picker-list-item-title {
35
37
  flex-grow: 1;
36
- @include text-truncate();
38
+ @include text.truncate;
37
39
  }
@@ -0,0 +1,19 @@
1
+ @use "base/colors";
2
+
3
+ $placeholder-opacity-max: .5;
4
+ $placeholder-opacity-min: .2;
5
+
6
+ .wy-placeholder {
7
+ cursor: wait;
8
+ color: var(--wy-outline);
9
+ background-color: var(--wy-outline);
10
+ opacity: $placeholder-opacity-max;
11
+ animation: wy-placeholder-glow 2s ease-in-out infinite;
12
+ }
13
+
14
+ @keyframes wy-placeholder-glow {
15
+ 50% {
16
+ opacity: $placeholder-opacity-min;
17
+ }
18
+ }
19
+
@@ -0,0 +1,49 @@
1
+ @use "base/colors";
2
+ @use "base/vars";
3
+
4
+ .wy-poll {
5
+ flex: 1 1 100%;
6
+ min-width: 0;
7
+ }
8
+
9
+ .wy-poll-form {
10
+ background: var(--wy-component-background-color);
11
+ color: var(--wy-component-color);
12
+ padding: .5rem;
13
+
14
+ &:empty {
15
+ display: none;
16
+ }
17
+
18
+ input:not(:first-child) {
19
+ margin-top: .5rem;
20
+ }
21
+ }
22
+
23
+ .wy-poll-option {
24
+ position: relative;
25
+ background-color: #{colors.$background};
26
+ border: 1px solid #{colors.$outline-variant};
27
+ border-radius: vars.$border-radius-sm;
28
+ margin-bottom: .25rem;
29
+ padding: 0.25rem 1rem;
30
+ min-height: 2.5rem;
31
+ cursor: pointer;
32
+
33
+ .wy-progress {
34
+ position: absolute;
35
+ top: 0;
36
+ left: 0;
37
+ bottom: 0;
38
+ background-color: #{colors.$primary-container};
39
+ }
40
+
41
+ > :not(.wy-progress) {
42
+ z-index: 1;
43
+ }
44
+
45
+ .wy-facepile {
46
+ margin-right: -.5rem;
47
+ }
48
+ }
49
+