| 
      
            Lines 95-100
          
      
      
        Link Here
      
     | 
  
        
          | 95 | 
                      </div>  | 
          95 | 
                      </div>  | 
        
        
          | 96 | 
                  </div>  | 
          96 | 
                  </div>  | 
        
        
          | 97 | 
              </div>  | 
          97 | 
              </div>  | 
        
            
               | 
               | 
              98 | 
                  <div  | 
            
            
              | 99 | 
                      class="component modal"  | 
            
            
              | 100 | 
                      role="dialog"  | 
            
            
              | 101 | 
                      v-if="componentDialog"  | 
            
            
              | 102 | 
                      id="component"  | 
            
            
              | 103 | 
                  >  | 
            
            
              | 104 | 
                      <div class="modal-dialog">  | 
            
            
              | 105 | 
                          <div class="modal-content modal-lg">  | 
            
            
              | 106 | 
                              <div class="modal-header alert-warning component">  | 
            
            
              | 107 | 
                                  <h1 v-html="componentDialog.title"></h1>  | 
            
            
              | 108 | 
                              </div>  | 
            
            
              | 109 | 
                              <div class="modal-body">  | 
            
            
              | 110 | 
                                  <component  | 
            
            
              | 111 | 
                                      v-if="requiredComponent"  | 
            
            
              | 112 | 
                                      :is="requiredComponent"  | 
            
            
              | 113 | 
                                      v-bind="componentDialog.componentProps"  | 
            
            
              | 114 | 
                                      v-on="componentDialog.componentListeners"  | 
            
            
              | 115 | 
                                  />  | 
            
            
              | 116 | 
                              </div>  | 
            
            
              | 117 | 
                              <div class="modal-footer">  | 
            
            
              | 118 | 
                                  <button  | 
            
            
              | 119 | 
                                      id="close_modal"  | 
            
            
              | 120 | 
                                      class="btn btn-default deny cancel"  | 
            
            
              | 121 | 
                                      type="button"  | 
            
            
              | 122 | 
                                      data-bs-dismiss="modal"  | 
            
            
              | 123 | 
                                      @click="removeConfirmationMessages"  | 
            
            
              | 124 | 
                                  >  | 
            
            
              | 125 | 
                                      <i class="fa fa-fw fa-remove"></i>  | 
            
            
              | 126 | 
                                      <span v-html="componentDialog.cancel_label"></span>  | 
            
            
              | 127 | 
                                  </button>  | 
            
            
              | 128 | 
                              </div>  | 
            
            
              | 129 | 
                          </div>  | 
            
            
              | 130 | 
                      </div>  | 
            
            
              | 131 | 
                  </div>  | 
            
        
          | 98 | 
           | 
          132 | 
           | 
        
        
          | 99 | 
              <div class="modal_centered" v-if="is_submitting">  | 
          133 | 
              <div class="modal_centered" v-if="is_submitting">  | 
        
        
          | 100 | 
                  <div class="spinner alert alert-warning">  | 
          134 | 
                  <div class="spinner alert alert-warning">  | 
        
  
    | 
      
            Lines 115-123
          import {
      
      
        Link Here
      
     | 
  
        
          | 115 | 
              reactive,  | 
          149 | 
              reactive,  | 
        
        
          | 116 | 
              computed,  | 
          150 | 
              computed,  | 
        
        
          | 117 | 
              useTemplateRef,  | 
          151 | 
              useTemplateRef,  | 
        
            
               | 
               | 
              152 | 
                  defineAsyncComponent,  | 
            
        
          | 118 | 
          } from "vue";  | 
          153 | 
          } from "vue";  | 
        
        
          | 119 | 
          import { storeToRefs } from "pinia"; | 
          154 | 
          import { storeToRefs } from "pinia"; | 
        
        
          | 120 | 
          import FormElement from "./FormElement.vue";  | 
          155 | 
          import FormElement from "./FormElement.vue";  | 
        
            
               | 
               | 
              156 | 
              import { loadComponent } from "@koha-vue/loaders/componentResolver"; | 
            
        
          | 121 | 
           | 
          157 | 
           | 
        
        
          | 122 | 
          export default { | 
          158 | 
          export default { | 
        
        
          | 123 | 
              setup() { | 
          159 | 
              setup() { | 
        
  
    | 
      
            Lines 127-132
          export default {
      
      
        Link Here
      
     | 
  
        
          | 127 | 
                      error,  | 
          163 | 
                      error,  | 
        
        
          | 128 | 
                      warning,  | 
          164 | 
                      warning,  | 
        
        
          | 129 | 
                      confirmation,  | 
          165 | 
                      confirmation,  | 
        
            
               | 
               | 
              166 | 
                          componentDialog,  | 
            
        
          | 130 | 
                      accept_callback,  | 
          167 | 
                      accept_callback,  | 
        
        
          | 131 | 
                      is_submitting,  | 
          168 | 
                      is_submitting,  | 
        
        
          | 132 | 
                      is_loading,  | 
          169 | 
                      is_loading,  | 
        
  
    | 
      
            Lines 186-196
          export default {
      
      
        Link Here
      
     | 
  
        
          | 186 | 
                      });  | 
          223 | 
                      });  | 
        
        
          | 187 | 
                  });  | 
          224 | 
                  });  | 
        
        
          | 188 | 
           | 
          225 | 
           | 
        
            
               | 
               | 
              226 | 
                      watch(componentDialog, newComponentDialog => { | 
            
            
              | 227 | 
                          if (!newComponentDialog) { | 
            
            
              | 228 | 
                              $("#component.modal").modal("hide"); | 
            
            
              | 229 | 
                              return;  | 
            
            
              | 230 | 
                          }  | 
            
            
              | 231 | 
                          nextTick(() => { | 
            
            
              | 232 | 
                              $("#component.modal").modal("show"); | 
            
            
              | 233 | 
                          });  | 
            
            
              | 234 | 
                      });  | 
            
            
              | 235 | 
               | 
            
            
              | 236 | 
                      const requiredComponent = computed(() => { | 
            
            
              | 237 | 
                          if (!componentDialog.value?.componentPath) return null;  | 
            
            
              | 238 | 
                          return defineAsyncComponent(  | 
            
            
              | 239 | 
                              loadComponent(componentDialog.value.componentPath)  | 
            
            
              | 240 | 
                          );  | 
            
            
              | 241 | 
                      });  | 
            
            
              | 242 | 
               | 
            
        
          | 189 | 
                  return { | 
          243 | 
                  return { | 
        
        
          | 190 | 
                      message,  | 
          244 | 
                      message,  | 
        
        
          | 191 | 
                      error,  | 
          245 | 
                      error,  | 
        
        
          | 192 | 
                      warning,  | 
          246 | 
                      warning,  | 
        
        
          | 193 | 
                      confirmation,  | 
          247 | 
                      confirmation,  | 
        
            
               | 
               | 
              248 | 
                          componentDialog,  | 
            
        
          | 194 | 
                      accept_callback,  | 
          249 | 
                      accept_callback,  | 
        
        
          | 195 | 
                      is_submitting,  | 
          250 | 
                      is_submitting,  | 
        
        
          | 196 | 
                      is_loading,  | 
          251 | 
                      is_loading,  | 
        
  
    | 
      
            Lines 199-204
          export default {
      
      
        Link Here
      
     | 
  
        
          | 199 | 
                      fp_config,  | 
          254 | 
                      fp_config,  | 
        
        
          | 200 | 
                      submit,  | 
          255 | 
                      submit,  | 
        
        
          | 201 | 
                      inputFields,  | 
          256 | 
                      inputFields,  | 
        
            
               | 
               | 
              257 | 
                          requiredComponent,  | 
            
        
          | 202 | 
                  };  | 
          258 | 
                  };  | 
        
        
          | 203 | 
              },  | 
          259 | 
              },  | 
        
        
          | 204 | 
              components: { | 
          260 | 
              components: { |