Use NcLoadingIcon from vue-lib instead of `icon-loading-small` and `icon-loading`
Open
Nobody has claimed this yet.
feature: frontend 🖌️
medium
technical debt
- Dominant language
- PHP
- Stars
- 2.2k
- Forks
- 587
- Avg merge
- 18h 27m
- Merged PRs (30d)
- 333
Description
How to use GitHub
- Please use the 👍 reaction to show that you are affected by the same issue.
- Please don't comment if you have no relevant information to add. It's just extra noise for everyone subscribed to this issue.
- Subscribe to receive notifications on status change and new comments.
Found occurrences in Directory spreed/src (35 usages found)
- LocalVideo.vue (1 usage found)
- 425
.videoWrapper.icon-loading:after {
- 425
- VideoVue.vue (1 usage found)
- 674
.videoWrapper.icon-loading:after {
- 674
- App.vue (1 usage found)
- 24
:class="{ 'icon-loading': loading, 'in-call': isInCall }"
- 24
- BotsSettings.vue (1 usage found)
- 40
<div v-if="isLoading[bot.id]" class="bots-settings__item-loader icon icon-loading-small" />
- 40
- ConversationAvatarEditor.vue (1 usage found)
- 37
<div v-else class="icon-loading" />
- 37
- ConversationPermissionsSettings.vue (2 usages found)
- 44
<span v-show="loading && radioValue === 'all'" class="icon-loading-small" /> - 60
<span v-show="loading && radioValue === 'restricted'" class="icon-loading-small" />
- 44
- EditableTextField.vue (1 usage found)
- 76
<div v-if="loading" class="icon-loading-small spinner" />
- 76
- EmptyCallView.vue (1 usage found)
- 128
return 'icon-loading'
- 128
- FilesSidebarTabApp.vue (1 usage found)
- 24
<div class="icon icon-loading" />
- 24
- LinkShareSettings.vue (1 usage found)
- 89
<span v-if="isSendingInvitations" class="icon-loading-small spinner" />
- 89
- LoadingComponent.vue (1 usage found)
- 23
<div class="icon-loading spinner" />
- 23
- LocalVideo.vue (2 usages found)
- 215
'icon-loading': this.isNotConnected, - 231
'icon-loading': this.isNotConnected,
- 215
- MatterbridgeIntegration.vue (1 usage found)
- 55
<span class="icon icon-loading-small" />
- 55
- MediaDevicesPreview.vue (2 usages found)
- 39
class="icon icon-loading" /> - 67
class="icon icon-loading" />
- 39
- Message.spec.js (3 usages found)
- 686
expect(wrapper.find('.icon-loading-small').exists()).toBe(true) - 692
expect(wrapper.find('.icon-loading-small').exists()).toBe(false) - 747
expect(wrapper.find('.icon-loading-small').exists()).toBe(true)
- 686
- MessageBody.vue (1 usage found)
- 108
class="icon-loading-small message-status"
- 108
- MessagesList.vue (1 usage found)
- 35
<ul v-if="displayMessagesLoader" class="scroller__loading icon-loading" />
- 35
- PermissionsEditor.vue (1 usage found)
- 71
<span class="icon-loading" />
- 71
- PublicShareAuthRequestPasswordButton.vue (1 usage found)
- 76
'icon-loading-small-dark': this.isRequestInProgress,
- 76
- PublicShareSidebar.vue (1 usage found)
- 34
<span v-if="joiningConversation" class="icon icon-loading-small" />
- 34
- RecordingServers.vue (1 usage found)
- 54
<span v-if="loading" class="icon icon-loading-small" />
- 54
- SignalingServers.vue (1 usage found)
- 57
<span v-if="loading" class="icon icon-loading-small" />
- 57
- StunServers.vue (1 usage found)
- 50
<span v-if="loading" class="icon icon-loading-small" />
- 50
- TurnServer.vue (2 usages found)
- 76
<span v-if="testing" class="icon icon-loading-small" /> - 196
'icon-loading-small': this.testing,
- 76
- TurnServers.vue (1 usage found)
- 55
<span v-if="loading" class="icon icon-loading-small" />
- 55
- VideoVue.spec.js (1 usage found)
- 160
const loadingIcon = wrapper.find('.icon-loading')
- 160
- VideoVue.vue (2 usages found)
- 318
'icon-loading': this.isLoading, - 335
'icon-loading': this.isLoading,
- 318
- WebServerSetupChecks.vue (1 usage found)
- 44
<span v-else class="icon icon-loading-small" />
- 44
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reviewing the listed components under spreed/src and the existing loading assertions in Message.spec.js and VideoVue.spec.js. Replace the listed icon-loading and icon-loading-small usages with NcLoadingIcon from vue-lib, preserving each loading state and styling context. Update the affected tests so they verify the new loading component and confirm all listed occurrences are addressed.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript
- Domain
- frontend
- Issue type
- Refactor
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100