|
1 | 1 | <div> |
2 | | - <div class="modal fade" id="paperModal" tabindex="-1" role="dialog" aria-labelledby="paperModalLabel" |
| 2 | + <div wire:ignore.self class="modal fade" id="paperModal" tabindex="-1" role="dialog" aria-labelledby="paperModalLabel" |
3 | 3 | aria-hidden="true"> |
4 | 4 | <div class="modal-dialog modal-dialog-centered modal-xl" role="document"> |
5 | 5 | <div class="modal-content"> |
|
170 | 170 | @script |
171 | 171 | <script> |
172 | 172 | document.addEventListener('livewire:initialized', () => { |
173 | | - // Mostrar modal de paper |
| 173 | +
|
| 174 | + // --- Abrir modal principal --- |
174 | 175 | Livewire.on('show-paper', () => { |
175 | 176 | setTimeout(() => { |
176 | | - $('#paperModal').modal('show'); |
177 | | - }, 500); |
| 177 | + const modal = new bootstrap.Modal(document.getElementById('paperModal')); |
| 178 | + modal.show(); |
| 179 | + }, 300); |
178 | 180 | }); |
179 | 181 |
|
180 | | - // Modal de sucesso |
| 182 | + // --- Mostrar modal de sucesso --- |
181 | 183 | Livewire.on('show-success', () => { |
182 | | - $('#paperModal').modal('hide'); |
183 | | - $('#successModal').modal('show'); |
184 | | - }); |
| 184 | + const paperModalEl = document.getElementById('paperModal'); |
| 185 | + const successModalEl = document.getElementById('successModal'); |
185 | 186 |
|
186 | | - // Ao fechar modal de sucesso, reabrir o paper |
187 | | - $('#successModal').on('hidden.bs.modal', function() { |
188 | | - $('#paperModal').modal('show'); |
189 | | - }); |
| 187 | + const paperModal = bootstrap.Modal.getInstance(paperModalEl); |
| 188 | + const successModal = new bootstrap.Modal(successModalEl); |
190 | 189 |
|
191 | | - // Recarregar papers e mostrar modais |
192 | | - Livewire.on('reload-papers', () => { |
193 | | - Livewire.dispatch('show-success'); |
194 | | - }); |
195 | | -
|
196 | | - Livewire.on('show-success', () => { |
197 | | - Livewire.dispatch('show-success-quality'); |
198 | | - }); |
| 190 | + if (paperModal) paperModal.hide(); |
| 191 | + successModal.show(); |
| 192 | + }); |
199 | 193 |
|
200 | | - Livewire.on('show-sucess', () => { |
201 | | - Livewire.dispatch('show-sucess-quality'); |
202 | | - }); |
| 194 | + // --- Ao fechar o modal de sucesso, reabrir o paper (apenas se o componente ainda existir) --- |
| 195 | + const successModalEl = document.getElementById('successModal'); |
| 196 | + successModalEl.addEventListener('hidden.bs.modal', function () { |
| 197 | + if (document.getElementById('paperModal')) { |
| 198 | + const paperModal = new bootstrap.Modal(document.getElementById('paperModal')); |
| 199 | + paperModal.show(); |
| 200 | + } |
| 201 | + }); |
203 | 202 |
|
204 | | - Livewire.on('paper-modal', ({ message, type }) => |
205 | | - toasty({ message, type |
206 | | - })); |
| 203 | + // --- Recarregar papers e mostrar sucesso --- |
| 204 | + Livewire.on('reload-papers', () => { |
| 205 | + Livewire.dispatch('show-success'); |
| 206 | + }); |
207 | 207 |
|
| 208 | + // --- Toast personalizado --- |
| 209 | + Livewire.on('paper-modal', ({ message, type }) => { |
| 210 | + if (typeof toasty === 'function') { |
| 211 | + toasty({ message, type }); |
| 212 | + } else { |
| 213 | + console.log(`[${type}] ${message}`); |
| 214 | + } |
| 215 | + }); |
208 | 216 | }); |
209 | | -
|
210 | 217 | </script> |
211 | 218 | @endscript |
212 | 219 |
|
213 | 220 |
|
| 221 | + |
0 commit comments