ode-csslib-panda-cg77 3.3.11 → 3.3.13

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.
@@ -68,100 +68,54 @@
68
68
  </article> -->
69
69
 
70
70
  <div data-ng-controller="FlashMessages" class="twelve cell">
71
- <div
72
- class="flashmsg"
73
- ng-repeat="message in messages.all"
74
- ng-class="message.color"
75
- ng-style="{ 'background-color': message.customColor }"
76
- >
77
- <i
78
- class="close-2x right-magnet"
79
- tooltip="timeline.mark.flashmsg"
80
- ng-click="markMessage(message)"
81
- ></i>
82
- <div bind-html="message.contents[currentLanguage]"></div>
83
- <div
84
- ng-if="message.signature"
85
- style="font-style: italic"
86
- ng-style="{'color': message.signatureColor}"
87
- >
88
- <p></p>
89
- [[ message.signature ]]
90
- </div>
91
- </div>
71
+ <flash-msg ng-repeat="message in messages.all track by message.id" mark-message="markMessage(message)" message="message"
72
+ current-language="currentLanguage">
73
+ </flash-msg>
92
74
  </div>
93
75
 
94
76
  <app-title>
95
77
  <h1 data-reload class="application-title">
96
78
  <i class="exclamation-mark"></i>
97
79
  <i18n
98
- pulsar="{ index: 0, i18n: 'timeline.pulsar.notifications', position: 'center right', className: 'pulse-notifications'}"
99
- >timeline.title</i18n
100
- >
80
+ pulsar="{ index: 0, i18n: 'timeline.pulsar.notifications', position: 'center right', className: 'pulse-notifications'}">
81
+ timeline.title</i18n>
101
82
  </h1>
102
83
  </app-title>
103
84
 
104
85
  <div data-ng-controller="Timeline" class="twelve cell">
105
- <div
106
- ng-if="!isEmpty()"
107
- class="row drop-down-block"
108
- ng-class="{slided: display.slide}"
109
- >
110
- <div
111
- class="drop-down-label"
112
- ng-if="filtered.notificationTypes.length > 0"
113
- ng-click="display.slide = !display.slide"
114
- pulsar-highlight="1"
115
- >
86
+ <div ng-if="!isEmpty()" class="row drop-down-block" ng-class="{slided: display.slide}">
87
+ <div class="drop-down-label" ng-if="filtered.notificationTypes.length > 0" ng-click="display.slide = !display.slide"
88
+ pulsar-highlight="1">
116
89
  <i class="arrow"></i>
117
90
  <label
118
- pulsar="{ index: 1, i18n: 'timeline.pulsar.filters', position: 'bottom center', className: 'pulse-filters'}"
119
- >
91
+ pulsar="{ index: 1, i18n: 'timeline.pulsar.filters', position: 'bottom center', className: 'pulse-filters'}">
120
92
  <i18n>filters.title</i18n>
121
93
  </label>
122
94
  </div>
123
95
 
124
- <div
125
- class="drop-down-info"
126
- ng-model="notificationTypes"
127
- ng-if="filtered.notificationTypes.length > 0"
128
- >
129
- <span><i18n>filters.unactives</i18n></span
130
- ><span> [[unactivesFilters()]]</span>
96
+ <div class="drop-down-info" ng-model="notificationTypes" ng-if="filtered.notificationTypes.length > 0">
97
+ <span>
98
+ <i18n>filters.unactives</i18n>
99
+ </span><span> [[unactivesFilters()]]</span>
131
100
  </div>
132
101
 
133
102
  <div class="drop-down-content" slide="display.slide">
134
103
  <div class="chips">
135
- <label
136
- class="chip multiselect"
137
- ng-if="filtered.notificationTypes.length > 0"
138
- >
139
- <span><i18n>filters.all.none</i18n></span>
140
- <input
141
- type="checkbox"
142
- ng-model="notificationTypes"
143
- ng-change="allFilters()"
144
- />
104
+ <label class="chip multiselect" ng-if="filtered.notificationTypes.length > 0">
105
+ <span>
106
+ <i18n>filters.all.none</i18n>
107
+ </span>
108
+ <input type="checkbox" ng-model="notificationTypes" ng-change="allFilters()" />
145
109
  </label>
146
- <label
147
- class="chip [[type.data.toLowerCase()]]"
148
- ng-class="{ selected: type.selected }"
149
- ng-repeat="type in (filtered.notificationTypes = notificationTypes.all)"
150
- >
110
+ <label class="chip [[type.data.toLowerCase()]]" ng-class="{ selected: type.selected }"
111
+ ng-repeat="type in (filtered.notificationTypes = notificationTypes.all)">
151
112
  <i class="[[type.data.toLowerCase()]] type"></i>
152
113
  <span>[[suffixTitle(type.data.toLowerCase())]]</span>
153
- <input
154
- type="checkbox"
155
- ng-model="type.selected"
156
- ng-change="switchFilter(type)"
157
- />
114
+ <input type="checkbox" ng-model="type.selected" ng-change="switchFilter(type)" />
158
115
  </label>
159
116
  </div>
160
- <div
161
- class="drop-up-label"
162
- ng-click="display.slide = !display.slide"
163
- ng-if="filtered.notificationTypes.length > 0"
164
- >
117
+ <div class="drop-up-label" ng-click="display.slide = !display.slide"
118
+ ng-if="filtered.notificationTypes.length > 0">
165
119
  <label>
166
120
  <i18n>filters.close</i18n>
167
121
  </label>
@@ -171,47 +125,38 @@
171
125
  </div>
172
126
 
173
127
  <!--EMPTY BUT NOT ALL FILTERS SELECTED-->
174
- <div
175
- ng-if="notifications.all.length === 0 && notificationTypes.length() !== notificationTypes.selection().length"
176
- >
128
+ <div ng-if="notifications.all.length === 0 && notificationTypes.length() !== notificationTypes.selection().length">
177
129
  <div class="emptyscreen" ng-if="isCache() && !showSeeMoreOnEmpty()">
178
130
  <h2 class="emptyscreen-header">
179
131
  <i18n>empty.timeline.notifications.noresults.title</i18n>
180
132
  </h2>
181
- <img
182
- class="emptyscreen-image__mini"
183
- src="/assets/themes/entcore-css-lib/images/empty-filters.svg"
184
- />
133
+ <img class="emptyscreen-image__mini" src="/assets/themes/entcore-css-lib/images/empty-filters.svg" />
185
134
  <p class="emptyscreen-footer">
186
135
  <i18n>empty.timeline.notifications.noresults</i18n>
187
136
  </p>
188
137
  </div>
189
138
  <div class="info tuto" ng-if="isCache() && showSeeMoreOnEmpty()">
190
- <b
191
- ><span><i></i><i18n>timeline.empty.cache</i18n></span></b
192
- >
139
+ <b><span><i></i>
140
+ <i18n>timeline.empty.cache</i18n>
141
+ </span></b>
193
142
  </div>
194
143
  </div>
195
144
  <!--EMPTY BUT ALL FILTERS SELECTED-->
196
145
  <div
197
- ng-if="notifications.all.length === 0 && notificationTypes.length() === notificationTypes.selection().length && notifications.lastPage"
198
- >
146
+ ng-if="notifications.all.length === 0 && notificationTypes.length() === notificationTypes.selection().length && notifications.lastPage">
199
147
  <div class="emptyscreen" ng-if="isCache() && !showSeeMoreOnEmpty()">
200
148
  <h2 class="emptyscreen-header">
201
149
  <i18n>empty.timeline.notifications.title</i18n>
202
150
  </h2>
203
- <img
204
- class="emptyscreen-image__mini"
205
- src="/timeline/public/img/empty-timeline.svg"
206
- />
151
+ <img class="emptyscreen-image__mini" src="/timeline/public/img/empty-timeline.svg" />
207
152
  <p class="emptyscreen-footer">
208
153
  <i18n>empty.timeline.notifications</i18n>
209
154
  </p>
210
155
  </div>
211
156
  <div class="info tuto" ng-if="isCache() && showSeeMoreOnEmpty()">
212
- <b
213
- ><span><i></i><i18n>timeline.empty.cache</i18n></span></b
214
- >
157
+ <b><span><i></i>
158
+ <i18n>timeline.empty.cache</i18n>
159
+ </span></b>
215
160
  </div>
216
161
  </div>
217
162
 
@@ -220,63 +165,42 @@
220
165
  <h2 class="emptyscreen-header">
221
166
  <i18n>empty.timeline.notifications.title</i18n>
222
167
  </h2>
223
- <img
224
- class="emptyscreen-image__mini"
225
- src="/timeline/public/img/empty-timeline.svg"
226
- />
168
+ <img class="emptyscreen-image__mini" src="/timeline/public/img/empty-timeline.svg" />
227
169
  <p class="emptyscreen-footer">
228
170
  <i18n>empty.timeline.notifications</i18n>
229
171
  </p>
230
172
  </div>
231
173
 
232
174
  <!-- Emptyscreen: no results with filters -->
233
- <div
234
- class="emptyscreen"
235
- ng-if="noResultsWithFilters() && !switchingFilters && !isCache()"
236
- >
175
+ <div class="emptyscreen" ng-if="noResultsWithFilters() && !switchingFilters && !isCache()">
237
176
  <h2 class="emptyscreen-header">
238
177
  <i18n>empty.timeline.notifications.noresults.title</i18n>
239
178
  </h2>
240
- <img
241
- class="emptyscreen-image__mini"
242
- src="/assets/themes/entcore-css-lib/images/empty-filters.svg"
243
- />
179
+ <img class="emptyscreen-image__mini" src="/assets/themes/entcore-css-lib/images/empty-filters.svg" />
244
180
  <p class="emptyscreen-footer">
245
181
  <i18n>empty.timeline.notifications.noresults</i18n>
246
182
  </p>
247
183
  </div>
248
184
 
249
185
  <!-- Emptyscreen: no filters selected -->
250
- <div
251
- class="emptyscreen"
252
- ng-if="noFiltersSelected() && !switchingFilters && !isCache()"
253
- >
186
+ <div class="emptyscreen" ng-if="noFiltersSelected() && !switchingFilters && !isCache()">
254
187
  <h2 class="emptyscreen-header">
255
188
  <i18n>empty.timeline.notifications.nofilters.title</i18n>
256
189
  </h2>
257
- <img
258
- class="emptyscreen-image__mini"
259
- src="/assets/themes/entcore-css-lib/images/empty-filters.svg"
260
- />
190
+ <img class="emptyscreen-image__mini" src="/assets/themes/entcore-css-lib/images/empty-filters.svg" />
261
191
  <p class="emptyscreen-footer">
262
192
  <i18n>empty.timeline.notifications.nofilters</i18n>
263
193
  </p>
264
194
  </div>
265
195
 
266
- <div
267
- data-notificationid="[[notification._id]]"
196
+ <div data-notificationid="[[notification._id]]"
268
197
  data-ng-repeat="notification in notifications.all track by notification._id"
269
- class="row notification [[notification.type.toLowerCase()]]"
270
- bottom-scroll="loadPage()"
271
- >
198
+ class="row notification [[notification.type.toLowerCase()]]" bottom-scroll="loadPage()">
272
199
  <article ng-class="{ 'unread': isUnRead(notification) }">
273
200
  <div class="row">
274
201
  <div class="avatar">
275
202
  <i class="system-avatar" ng-if="!notification.sender"></i>
276
- <img
277
- ng-src="/userbook/avatar/[[notification.sender]]?thumbnail=100x100"
278
- ng-if="notification.sender"
279
- />
203
+ <img ng-src="/userbook/avatar/[[notification.sender]]?thumbnail=100x100" ng-if="notification.sender" />
280
204
  <i class="sticker app type [[notification.type.toLowerCase()]]"></i>
281
205
  </div>
282
206
  <div class="content horizontal-spacing">
@@ -284,30 +208,18 @@
284
208
  </div>
285
209
  </div>
286
210
  <div class="notification-date">
287
- <em class="low-importance right-magnet"
288
- >[[formatDate(notification.date.$date)]]</em
289
- >
211
+ <em class="low-importance right-magnet">[[formatDate(notification.date.$date)]]</em>
290
212
  </div>
291
213
  </article>
292
- <div
293
- class="notification-actions"
294
- ng-class="{'opened': notification.opened}"
295
- ng-if="showActions(notification)"
296
- >
214
+ <div class="notification-actions" ng-class="{'opened': notification.opened}" ng-if="showActions(notification)">
297
215
  <div class="opener" ng-click="toggleNotification(notification,$event)">
298
216
  <i class="left-open"></i>
299
217
  </div>
300
218
  <div class="actions">
301
- <div
302
- ng-repeat="(name, action) in actions"
303
- ng-show="!action.condition || action.condition(notification)"
304
- class="action [[ name ]]"
305
- >
219
+ <div ng-repeat="(name, action) in actions" ng-show="!action.condition || action.condition(notification)"
220
+ class="action [[ name ]]">
306
221
  <i class="[[name]]"></i>
307
- <a
308
- ng-click="action.action(notification)"
309
- ng-disabled="notification[action.doneProperty]"
310
- >
222
+ <a ng-click="action.action(notification)" ng-disabled="notification[action.doneProperty]">
311
223
  [[ notification[action.doneProperty] ?
312
224
  lang.translate(action.doneLabel) : lang.translate(action.label) ]]
313
225
  </a>
@@ -317,40 +229,35 @@
317
229
  </div>
318
230
  <!--SHOW MORE -->
319
231
  <div ng-if="showSeeMore()" style="text-align: center">
320
- <a ng-click="loadPage()"><i18n>timeline.seeold</i18n></a>
232
+ <a ng-click="loadPage()">
233
+ <i18n>timeline.seeold</i18n>
234
+ </a>
321
235
  </div>
322
- <div
323
- ng-if="showSeeMoreOnEmpty()"
324
- style="justify-content: center; display: flex"
325
- >
326
- <button ng-click="forceLoadPage()"><i18n>timeline.historyold</i18n></button>
236
+ <div ng-if="showSeeMoreOnEmpty()" style="justify-content: center; display: flex">
237
+ <button ng-click="forceLoadPage()">
238
+ <i18n>timeline.historyold</i18n>
239
+ </button>
327
240
  </div>
328
- <lightbox
329
- show="display.confirmReport"
330
- on-close="display.confirmReport = false"
331
- >
332
- <h2><i18n>timeline.confirm.report</i18n></h2>
241
+ <lightbox show="display.confirmReport" on-close="display.confirmReport = false">
242
+ <h2>
243
+ <i18n>timeline.confirm.report</i18n>
244
+ </h2>
333
245
  <p>
334
246
  <i18n>timeline.confirm.report.text</i18n>
335
247
  </p>
336
248
  <div class="row">
337
- <button
338
- ng-click="doReport(notification); display.confirmReport = false"
339
- class="right-magnet"
340
- >
249
+ <button ng-click="doReport(notification); display.confirmReport = false" class="right-magnet">
341
250
  <i18n>timeline.action.report</i18n>
342
251
  </button>
343
- <button
344
- type="button"
345
- ng-click="display.confirmReport = false"
346
- class="right-magnet cancel"
347
- >
252
+ <button type="button" ng-click="display.confirmReport = false" class="right-magnet cancel">
348
253
  <i18n>cancel</i18n>
349
254
  </button>
350
255
  </div>
351
256
  </lightbox>
352
257
 
353
258
  <div class="row notification" ng-show="notifications.loading">
354
- <h1 class="reduce-block-eight nomargin"><i18n>loading</i18n></h1>
259
+ <h1 class="reduce-block-eight nomargin">
260
+ <i18n>loading</i18n>
261
+ </h1>
355
262
  </div>
356
- </div>
263
+ </div>
package/dist/version.txt CHANGED
@@ -1,2 +1,2 @@
1
- entcore-css-lib 23/08/2024 10:06:18
2
- ode-csslib-panda-cg77 19/09/2024 16:14:08
1
+ entcore-css-lib 18/10/2024 15:17:06
2
+ ode-csslib-panda-cg77 18/10/2024 15:47:30
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ode-csslib-panda-cg77",
3
- "version": "3.3.11",
3
+ "version": "3.3.13",
4
4
  "description": "Panda theme by Edifice",
5
5
  "repository": {
6
6
  "type": "git",
@@ -47,6 +47,6 @@
47
47
  "release:dependencies": "cpr node_modules/entcore-css-lib/assets/ ${DIST_DIR}/ -o",
48
48
  "release:prepare": "npm run release:clean && npm run release:dependencies && cpr template/ ${DIST_DIR}/template/ -o && cpr portal.html ${DIST_DIR}/ -o && cpr assets/ ${DIST_DIR}/ -o",
49
49
  "release:build": "npm run release:prepare && SKIN=default npm run sass:build:release",
50
- "watch": "sass --watch --style compressed --load-path=node_modules/ --no-source-map scss/index.scss ../ode-dev-server/assets/themes/cg771d/skins/default/theme.css"
50
+ "watch": "sass --watch --style compressed --load-path=node_modules/ --no-source-map scss/index.scss ../recette/assets/themes/cg771d/skins/default/theme.css"
51
51
  }
52
52
  }