mirror of
				https://github.com/crater-invoice/crater.git
				synced 2025-10-31 05:31:10 -04:00 
			
		
		
		
	Fix Invoice/Estimate template issues and Add Payment Receipt, Custom Payment Modes and Item units
This commit is contained in:
		
				
					committed by
					
						 Mohit Panjwani
						Mohit Panjwani
					
				
			
			
				
	
			
			
			
						parent
						
							56a955befd
						
					
				
				
					commit
					4c33a5d88c
				
			
							
								
								
									
										44
									
								
								resources/assets/sass/components/item-unit-modal.scss
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										44
									
								
								resources/assets/sass/components/item-unit-modal.scss
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,44 @@ | ||||
| .item-unit-modal { | ||||
|  | ||||
|     .card-footer { | ||||
|         display: flex; | ||||
|         justify-content: flex-end; | ||||
|         padding: 20px 20px; | ||||
|     } | ||||
|  | ||||
|     .input-label { | ||||
|         text-align: end; | ||||
|         padding-right: 0; | ||||
|         position: relative; | ||||
|     } | ||||
|  | ||||
|     .required { | ||||
|         position: absolute; | ||||
|         // left: -10px; | ||||
|         color: $ls-color-red; | ||||
|     } | ||||
|  | ||||
|     .compound-tax-toggle { | ||||
|         display: flex; | ||||
|         align-items: center; | ||||
|         margin-top: 9px; | ||||
|     } | ||||
|  | ||||
| } | ||||
|  | ||||
| @media(max-width: $x-small-breakpoint ) { | ||||
|  | ||||
|     .base-modal { | ||||
|  | ||||
|         .item-unit-modal { | ||||
|             width: 100vw; | ||||
|  | ||||
|             .input-label { | ||||
|                 text-align: left; | ||||
|             } | ||||
|  | ||||
|         } | ||||
|  | ||||
|     } | ||||
|  | ||||
| } | ||||
							
								
								
									
										44
									
								
								resources/assets/sass/components/mail-test-modal.scss
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										44
									
								
								resources/assets/sass/components/mail-test-modal.scss
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,44 @@ | ||||
| .mail-test-modal { | ||||
|  | ||||
|     .card-footer { | ||||
|         display: flex; | ||||
|         justify-content: flex-end; | ||||
|         padding: 20px 20px; | ||||
|     } | ||||
|  | ||||
|     .input-label { | ||||
|         text-align: end; | ||||
|         padding-right: 0; | ||||
|         position: relative; | ||||
|     } | ||||
|  | ||||
|     .required { | ||||
|         position: absolute; | ||||
|         margin-left: 4px; | ||||
|         color: $ls-color-red; | ||||
|     } | ||||
|  | ||||
|     .compound-tax-toggle { | ||||
|         display: flex; | ||||
|         align-items: center; | ||||
|         margin-top: 9px; | ||||
|     } | ||||
|  | ||||
| } | ||||
|  | ||||
| @media(max-width: $x-small-breakpoint ) { | ||||
|  | ||||
|     .base-modal { | ||||
|  | ||||
|         .mail-test-modal { | ||||
|             width: 100vw; | ||||
|  | ||||
|             .input-label { | ||||
|                 text-align: left; | ||||
|             } | ||||
|  | ||||
|         } | ||||
|  | ||||
|     } | ||||
|  | ||||
| } | ||||
							
								
								
									
										44
									
								
								resources/assets/sass/components/payment-modes-modal.scss
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										44
									
								
								resources/assets/sass/components/payment-modes-modal.scss
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,44 @@ | ||||
| .payment-modes-modal { | ||||
|  | ||||
|     .card-footer { | ||||
|         display: flex; | ||||
|         justify-content: flex-end; | ||||
|         padding: 20px 20px; | ||||
|     } | ||||
|  | ||||
|     .input-label { | ||||
|         text-align: end; | ||||
|         padding-right: 0; | ||||
|         position: relative; | ||||
|     } | ||||
|  | ||||
|     .required { | ||||
|         position: absolute; | ||||
|         // left: -10px; | ||||
|         color: $ls-color-red; | ||||
|     } | ||||
|  | ||||
|     .compound-tax-toggle { | ||||
|         display: flex; | ||||
|         align-items: center; | ||||
|         margin-top: 9px; | ||||
|     } | ||||
|  | ||||
| } | ||||
|  | ||||
| @media(max-width: $x-small-breakpoint ) { | ||||
|  | ||||
|     .base-modal { | ||||
|  | ||||
|         .payment-modes-modal-modal { | ||||
|             width: 100vw; | ||||
|  | ||||
|             .input-label { | ||||
|                 text-align: left; | ||||
|             } | ||||
|  | ||||
|         } | ||||
|  | ||||
|     } | ||||
|  | ||||
| } | ||||
							
								
								
									
										109
									
								
								resources/assets/sass/components/v-tooltips.scss
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										109
									
								
								resources/assets/sass/components/v-tooltips.scss
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,109 @@ | ||||
| .tooltip { | ||||
|     display: block !important; | ||||
|     z-index: 10000; | ||||
|  | ||||
|     .tooltip-inner { | ||||
|       background: black; | ||||
|       color: white; | ||||
|       border-radius: 16px; | ||||
|       padding: 5px 10px 4px; | ||||
|     } | ||||
|  | ||||
|     .tooltip-arrow { | ||||
|       width: 0; | ||||
|       height: 0; | ||||
|       border-style: solid; | ||||
|       position: absolute; | ||||
|       margin: 5px; | ||||
|       border-color: black; | ||||
|       z-index: 1; | ||||
|     } | ||||
|  | ||||
|     &[x-placement^="top"] { | ||||
|       margin-bottom: 5px; | ||||
|  | ||||
|       .tooltip-arrow { | ||||
|         border-width: 5px 5px 0 5px; | ||||
|         border-left-color: transparent !important; | ||||
|         border-right-color: transparent !important; | ||||
|         border-bottom-color: transparent !important; | ||||
|         bottom: -5px; | ||||
|         left: calc(50% - 5px); | ||||
|         margin-top: 0; | ||||
|         margin-bottom: 0; | ||||
|       } | ||||
|     } | ||||
|  | ||||
|     &[x-placement^="bottom"] { | ||||
|       margin-top: 5px; | ||||
|  | ||||
|       .tooltip-arrow { | ||||
|         border-width: 0 5px 5px 5px; | ||||
|         border-left-color: transparent !important; | ||||
|         border-right-color: transparent !important; | ||||
|         border-top-color: transparent !important; | ||||
|         top: -5px; | ||||
|         left: calc(50% - 5px); | ||||
|         margin-top: 0; | ||||
|         margin-bottom: 0; | ||||
|       } | ||||
|     } | ||||
|  | ||||
|     &[x-placement^="right"] { | ||||
|       margin-left: 5px; | ||||
|  | ||||
|       .tooltip-arrow { | ||||
|         border-width: 5px 5px 5px 0; | ||||
|         border-left-color: transparent !important; | ||||
|         border-top-color: transparent !important; | ||||
|         border-bottom-color: transparent !important; | ||||
|         left: -5px; | ||||
|         top: calc(50% - 5px); | ||||
|         margin-left: 0; | ||||
|         margin-right: 0; | ||||
|       } | ||||
|     } | ||||
|  | ||||
|     &[x-placement^="left"] { | ||||
|       margin-right: 5px; | ||||
|  | ||||
|       .tooltip-arrow { | ||||
|         border-width: 5px 0 5px 5px; | ||||
|         border-top-color: transparent !important; | ||||
|         border-right-color: transparent !important; | ||||
|         border-bottom-color: transparent !important; | ||||
|         right: -5px; | ||||
|         top: calc(50% - 5px); | ||||
|         margin-left: 0; | ||||
|         margin-right: 0; | ||||
|       } | ||||
|     } | ||||
|  | ||||
|     &.popover { | ||||
|       $color: #f9f9f9; | ||||
|  | ||||
|       .popover-inner { | ||||
|         background: $color; | ||||
|         color: black; | ||||
|         padding: 24px; | ||||
|         border-radius: 5px; | ||||
|         box-shadow: 0 5px 30px rgba(black, .1); | ||||
|       } | ||||
|  | ||||
|       .popover-arrow { | ||||
|         border-color: $color; | ||||
|       } | ||||
|     } | ||||
|  | ||||
|     &[aria-hidden='true'] { | ||||
|       visibility: hidden; | ||||
|       opacity: 0; | ||||
|       transition: opacity .15s, visibility .15s; | ||||
|     } | ||||
|  | ||||
|     &[aria-hidden='false'] { | ||||
|       visibility: visible; | ||||
|       opacity: 1; | ||||
|       transition: opacity .15s; | ||||
|     } | ||||
|   } | ||||
							
								
								
									
										5
									
								
								resources/assets/sass/crater.scss
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										5
									
								
								resources/assets/sass/crater.scss
									
									
									
									
										vendored
									
									
								
							| @ -49,6 +49,7 @@ | ||||
| @import "components/base/base-switch"; | ||||
| @import 'components/base/base-loader/index'; | ||||
| @import 'components/base/base-prefix-input'; | ||||
| @import 'components/v-tooltips.scss'; | ||||
|  | ||||
|  | ||||
| // Components | ||||
| @ -72,6 +73,9 @@ | ||||
| @import "components/item-select"; | ||||
| @import "components/tax-select"; | ||||
| @import "components/avatar-cropper"; | ||||
| @import "components/payment-modes-modal"; | ||||
| @import "components/item-unit-modal.scss"; | ||||
| @import "components/mail-test-modal.scss"; | ||||
|  | ||||
|  | ||||
| // Modals | ||||
| @ -107,5 +111,6 @@ | ||||
| @import 'pages/reports.scss'; | ||||
| @import 'pages/customers'; | ||||
| @import 'pages/payments.scss'; | ||||
| @import 'pages/payment-view.scss'; | ||||
| @import 'pages/items.scss'; | ||||
| @import 'pages/statuses.scss'; | ||||
|  | ||||
							
								
								
									
										15
									
								
								resources/assets/sass/pages/estimates/view.scss
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										15
									
								
								resources/assets/sass/pages/estimates/view.scss
									
									
									
									
										vendored
									
									
								
							| @ -158,6 +158,7 @@ | ||||
|             border: 1px solid #eaf1fb; | ||||
|             box-sizing: border-box; | ||||
|             color: $ls-color-gray--dark; | ||||
|             box-shadow: none !important; | ||||
|         } | ||||
|     } | ||||
|  | ||||
| @ -190,8 +191,17 @@ | ||||
|  | ||||
|     .filter-container { | ||||
|         margin-left: 12px; | ||||
|  | ||||
|         .filter-title { | ||||
|             padding: 5px 10px; | ||||
|             border-bottom: 1px solid rgba(185, 193, 209, 0.41); | ||||
|             margin-bottom: 10px; | ||||
|         } | ||||
|  | ||||
|         .filter-items { | ||||
|             display: flex; | ||||
|             padding: 4px 9px; | ||||
|             cursor: pointer; | ||||
|  | ||||
|             &:first-child { | ||||
|                 margin-top: auto; | ||||
| @ -202,11 +212,12 @@ | ||||
|             font-style: normal; | ||||
|             font-weight: normal; | ||||
|             font-size: 14px; | ||||
|             line-height: 18px; | ||||
|             line-height: 12px; | ||||
|             text-transform: capitalize; | ||||
|             color: $ls-color-black; | ||||
|             margin-bottom: 6px; | ||||
|             margin-left: 10px; | ||||
|             cursor: pointer; | ||||
|         } | ||||
|  | ||||
|         .base-input { | ||||
| @ -214,7 +225,7 @@ | ||||
|         } | ||||
|  | ||||
|         .dropdown-container { | ||||
|             padding: 11px; | ||||
|             padding: 0px !important; | ||||
|             left: auto; | ||||
|             right: 0px; | ||||
|             width: 166px; | ||||
|  | ||||
| @ -87,7 +87,7 @@ | ||||
|             font-size: 14px; | ||||
|             font-weight: 500; | ||||
|             color: $ls-color-primary; | ||||
|             margin: 0 0 0 0; | ||||
|             margin: 0 9px 0 0; | ||||
|             position: relative; | ||||
|         } | ||||
|     } | ||||
|  | ||||
							
								
								
									
										15
									
								
								resources/assets/sass/pages/invoices/view.scss
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										15
									
								
								resources/assets/sass/pages/invoices/view.scss
									
									
									
									
										vendored
									
									
								
							| @ -113,6 +113,7 @@ | ||||
|             border: 1px solid $ls-color-gray--light; | ||||
|             box-sizing: border-box; | ||||
|             color: $ls-color-gray; | ||||
|             box-shadow: none !important; | ||||
|         } | ||||
|  | ||||
|     } | ||||
| @ -148,9 +149,18 @@ | ||||
|  | ||||
|     .filter-container { | ||||
|         margin-left: 12px; | ||||
|  | ||||
|         .filter-title { | ||||
|             padding: 5px 10px; | ||||
|             border-bottom: 1px solid rgba(185, 193, 209, 0.41); | ||||
|             margin-bottom: 10px; | ||||
|         } | ||||
|  | ||||
|         .filter-items { | ||||
|             // margin-top: 10px; | ||||
|             display: flex; | ||||
|             padding: 4px 9px; | ||||
|             cursor: pointer; | ||||
|  | ||||
|             &:first-child { | ||||
|                 margin-top: auto; | ||||
| @ -162,11 +172,12 @@ | ||||
|             font-style: normal; | ||||
|             font-weight: normal; | ||||
|             font-size: 14px; | ||||
|             line-height: 18px; | ||||
|             line-height: 12px; | ||||
|             text-transform: capitalize; | ||||
|             color: $ls-color-black; | ||||
|             margin-bottom: 6px; | ||||
|             margin-left: 10px; | ||||
|             cursor: pointer; | ||||
|         } | ||||
|  | ||||
|         .base-input { | ||||
| @ -174,7 +185,7 @@ | ||||
|         } | ||||
|  | ||||
|         .dropdown-container { | ||||
|             padding: 11px; | ||||
|             padding: 0px !important; | ||||
|             left: auto; | ||||
|             right: 0px; | ||||
|             width: 155px; | ||||
|  | ||||
							
								
								
									
										238
									
								
								resources/assets/sass/pages/payment-view.scss
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										238
									
								
								resources/assets/sass/pages/payment-view.scss
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,238 @@ | ||||
| // Payments - View | ||||
| // ------------------------- | ||||
|  | ||||
| .payment-view-page { | ||||
|     padding-left: 570px !important; | ||||
|  | ||||
|     .payment-sidebar { | ||||
|         width: 300px; | ||||
|         height: 100vh; | ||||
|         height: 100%; | ||||
|         left: 240px; | ||||
|         padding: 60px 0 10px; | ||||
|         position: fixed; | ||||
|         top: 0; | ||||
|         width: 300px; | ||||
|         z-index: 25; | ||||
|         background: #FFFFFF; | ||||
|     } | ||||
|  | ||||
|     .inv-search { | ||||
|         background: $ls-color-gray--very-light !important; | ||||
|     } | ||||
|  | ||||
|     .side-payment { | ||||
|         padding: 12px 16px; | ||||
|         display: flex; | ||||
|         justify-content: space-between; | ||||
|         border-bottom: 1px solid rgba(185, 193, 209, 0.41); | ||||
|         cursor: pointer; | ||||
|  | ||||
|         &:last-child { | ||||
|             margin-bottom: 98px; | ||||
|         } | ||||
|  | ||||
|         &:hover { | ||||
|             background-color: $ls-color-gray--very-light; | ||||
|         } | ||||
|  | ||||
|         .left { | ||||
|  | ||||
|             .inv-name { | ||||
|                 font-style: normal; | ||||
|                 font-weight: normal; | ||||
|                 font-size: 14px; | ||||
|                 line-height: 21px; | ||||
|                 text-transform: capitalize; | ||||
|                 color: $ls-color-black; | ||||
|                 margin-bottom: 6px; | ||||
|             } | ||||
|  | ||||
|             .inv-number { | ||||
|                 font-style: normal; | ||||
|                 font-weight: 500; | ||||
|                 font-size: 12px; | ||||
|                 line-height: 18px; | ||||
|                 color: $ls-color-gray--dark; | ||||
|                 margin-bottom: 6px; | ||||
|             } | ||||
|  | ||||
|             .inv-status { | ||||
|                 font-style: normal; | ||||
|                 font-weight: normal; | ||||
|                 font-size: 10px; | ||||
|                 line-height: 15px; | ||||
|                 padding: 2px 10px; | ||||
|                 display: inline-block; | ||||
|             } | ||||
|  | ||||
|         } | ||||
|  | ||||
|         .right { | ||||
|  | ||||
|             .inv-amount { | ||||
|                 font-style: normal; | ||||
|                 font-weight: 600; | ||||
|                 font-size: 20px; | ||||
|                 line-height: 30px; | ||||
|                 text-align: right; | ||||
|                 color: $ls-color-black--light; | ||||
|             } | ||||
|  | ||||
|             .inv-date { | ||||
|                 font-style: normal; | ||||
|                 font-weight: normal; | ||||
|                 font-size: 14px; | ||||
|                 line-height: 21px; | ||||
|                 text-align: right; | ||||
|                 color: $ls-color-gray--dark; | ||||
|             } | ||||
|  | ||||
|         } | ||||
|  | ||||
|     } | ||||
|  | ||||
|     .no-result { | ||||
|         color: $ls-color-gray; | ||||
|         display: flex; | ||||
|         justify-content: center; | ||||
|         margin-top: 20px; | ||||
|     } | ||||
|  | ||||
|     .side-header { | ||||
|  | ||||
|         height: 100px; | ||||
|         display: flex; | ||||
|         justify-content: space-between; | ||||
|         align-items: center; | ||||
|         padding: 30px 15px; | ||||
|         border-bottom: 1px solid rgba(185, 193, 209, 0.41); | ||||
|  | ||||
|         .inv-button { | ||||
|             background: $ls-color-gray--very-light; | ||||
|             border: 1px solid $ls-color-gray--light; | ||||
|             box-sizing: border-box; | ||||
|             color: $ls-color-gray; | ||||
|             box-shadow: none !important; | ||||
|         } | ||||
|  | ||||
|     } | ||||
|  | ||||
|     .side-content { | ||||
|         overflow-y: scroll; | ||||
|         height: 100%; | ||||
|     } | ||||
|  | ||||
|     .payment-view-page-container { | ||||
|         display: flex; | ||||
|         flex-direction: column; | ||||
|         height: 75vh; | ||||
|         min-height: 0; | ||||
|         overflow:hidden; | ||||
|     } | ||||
|  | ||||
|     .frame-style { | ||||
|         flex: 1 1 auto; | ||||
|         border: 1px solid $ls-color-gray; | ||||
|         border-radius: 7px; | ||||
|     } | ||||
|  | ||||
|     .inv-filter-fields-btn, .inv-filter-sorting-btn { | ||||
|  | ||||
|         &:focus { | ||||
|             border-color: inherit; | ||||
|             box-shadow: none; | ||||
|             outline: none !important; | ||||
|         } | ||||
|  | ||||
|     } | ||||
|  | ||||
|     .filter-container { | ||||
|         margin-left: 12px; | ||||
|  | ||||
|         .filter-title { | ||||
|             padding: 5px 10px; | ||||
|             border-bottom: 1px solid rgba(185, 193, 209, 0.41); | ||||
|             margin-bottom: 10px; | ||||
|         } | ||||
|  | ||||
|         .filter-items { | ||||
|             // margin-top: 10px; | ||||
|             display: flex; | ||||
|             padding: 4px 9px; | ||||
|             cursor: pointer; | ||||
|  | ||||
|             &:first-child { | ||||
|                 margin-top: auto; | ||||
|             } | ||||
|  | ||||
|         } | ||||
|  | ||||
|         .inv-label { | ||||
|             font-style: normal; | ||||
|             font-weight: normal; | ||||
|             font-size: 14px; | ||||
|             line-height: 12px; | ||||
|             text-transform: capitalize; | ||||
|             color: $ls-color-black; | ||||
|             margin-bottom: 6px; | ||||
|             margin-left: 10px; | ||||
|             cursor: pointer; | ||||
|         } | ||||
|  | ||||
|         .base-input { | ||||
|             width: 20%; | ||||
|         } | ||||
|  | ||||
|         .dropdown-container { | ||||
|             padding: 0px !important; | ||||
|             left: auto; | ||||
|             right: 0px; | ||||
|             width: 167px; | ||||
|         } | ||||
|  | ||||
|     } | ||||
|  | ||||
|     .filter-payment-date { | ||||
|  | ||||
|         .vdp-datepicker { | ||||
|  | ||||
|             div { | ||||
|  | ||||
|                 .vdp-datepicker__clear-button { | ||||
|                     margin-left: -21px; | ||||
|                     margin-top: 2px; | ||||
|                     font-size: 20px; | ||||
|                     font-weight: 800; | ||||
|                 } | ||||
|  | ||||
|             } | ||||
|  | ||||
|         } | ||||
|  | ||||
|     } | ||||
|  | ||||
|     .date-group { | ||||
|         display: flex | ||||
|     } | ||||
|  | ||||
|     .to-text { | ||||
|         padding: 8px; | ||||
|     } | ||||
|  | ||||
| } | ||||
|  | ||||
| @media (max-width: $small-breakpoint) { | ||||
|  | ||||
|     .payment-view-page { | ||||
|         padding-left: 310px !important; | ||||
|     } | ||||
|  | ||||
|     .payment-sidebar { | ||||
|         transition: .2s all; | ||||
|         left: 0px !important; | ||||
|     } | ||||
|  | ||||
| } | ||||
|  | ||||
|  | ||||
							
								
								
									
										19
									
								
								resources/assets/sass/pages/settings.scss
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										19
									
								
								resources/assets/sass/pages/settings.scss
									
									
									
									
										vendored
									
									
								
							| @ -104,9 +104,28 @@ | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     .payment-tab { | ||||
|  | ||||
|         .dropdown-container { | ||||
|             right: 0; | ||||
|             left: auto; | ||||
|         } | ||||
|  | ||||
|     } | ||||
|  | ||||
|     .item-tab { | ||||
|  | ||||
|         .dropdown-container { | ||||
|             right: 0; | ||||
|             left: auto; | ||||
|         } | ||||
|  | ||||
|     } | ||||
|  | ||||
|     .add-new-tax { | ||||
|         height: 45px; | ||||
|         white-space: nowrap; | ||||
|         z-index: 1; | ||||
|     } | ||||
|  | ||||
|     .flex-box { | ||||
|  | ||||
		Reference in New Issue
	
	Block a user