<div
  class="sm:absolute sm:inset-0 flex flex-col flex-auto min-w-0 sm:overflow-hidden bg-card dark:bg-transparent"
>
  <!-- Header -->
  <div
    class="relative flex flex-col sm:flex-row flex-0 sm:items-center sm:justify-between py-8 px-6 md:px-8 border-b"
  >
    <!-- Loader -->
    <div class="absolute inset-x-0 bottom-0" *ngIf="isLoading">
      <mat-progress-bar [mode]="'indeterminate'"></mat-progress-bar>
    </div>
    <!-- Title -->
    <div class="text-4xl font-extrabold tracking-tight">쿠폰발행로그</div>
    <!-- Actions -->
    <div class="flex shrink-0 items-center mt-6 sm:mt-0 sm:ml-4">
      <div
        class="relative flex flex-col sm:flex-row flex-0 sm:items-center sm:justify-between py-4 px-6 md:px-8 border-b"
      ></div>
      <!-- Search -->
      <button mat-icon-button (click)="__onClickSearch()">
        <mat-icon [svgIcon]="'heroicons_outline:search'"></mat-icon>
      </button>
      <div
        *ngIf="__isSearchOpened"
        class="relative flex flex-col sm:flex-row flex-0 sm:items-center sm:justify-between py-4 px-6 md:px-8 border-b"
      >
        <!-- Actions -->
        <div fxLayout="row wrap" class="items-center mt-6 sm:mt-0 sm:ml-0">
          <!-- Search -->
          <mat-form-field
            fxFlex
            class="fuse-mat-rounded min-w-64 bet-mat-form-field-wrapper-mb-0 mr-2"
          >
            <mat-icon
              class="icon-size-5"
              matPrefix
              [svgIcon]="'heroicons_solid:search'"
            ></mat-icon>
            <input
              matInput
              [formControl]="searchInputControl"
              [autocomplete]="'off'"
              [placeholder]="'Search ID'"
            />
          </mat-form-field>
          <!-- Add user button -->
          <button
            fxFlex
            mat-flat-button
            style="position: fixed; margin-top: 4px"
            [color]="'primary'"
            (click)="__createProduct()"
          >
            <mat-icon [svgIcon]="'heroicons_outline:search'"></mat-icon>
            <span class="ml-2 mr-1">Search</span>
          </button>
        </div>
      </div>
    </div>
  </div>
  <!-- Main -->
  <div class="flex flex-auto overflow-hidden">
    <!-- Products list -->
    <div
      class="flex flex-col flex-auto sm:mb-18 overflow-hidden sm:overflow-y-auto"
    >
      <ng-container *ngIf="couponLogs$ | async as couponLogs">
        <ng-container *ngIf="couponLogs.length > 0; else noCouponLog">
          <div class="grid">
            <!-- Header -->
            <div
              class="coupon-log-grid z-10 sticky top-0 grid gap-4 py-4 px-6 md:px-8 shadow text-md font-semibold text-secondary bg-gray-50 dark:bg-black dark:bg-opacity-5"
            >
              <div>번호</div>
              <div>발행아이디</div>
              <div>쿠폰그룹번호</div>
              <div class="hidden sm:block">쿠폰제목</div>
              <div class="hidden md:block">이전쿠폰금액</div>
              <div class="hidden md:block">발행쿠폰금액</div>
              <div class="hidden md:block">이후쿠폰금액</div>
              <div class="hidden lg:block">내용</div>
              <div class="hidden lg:block">발행시간</div>
            </div>
            <!-- Rows -->
            <ng-container *ngIf="couponLogs$ | async as couponLogs">
              <ng-container
                *ngFor="let couponLog of couponLogs; trackBy: __trackByFn"
              >
                <div
                  class="coupon-log-grid grid items-center gap-4 py-3 px-6 md:px-8 border-b"
                >
                  <div>{{ couponLog.idx }}</div>
                  <div>
                    {{ couponLog.issuedCouponId }}
                  </div>
                  <div>
                    {{ couponLog.couponGroupNumber }}
                  </div>
                  <div class="hidden sm:block">
                    {{ couponLog.couponTitle }}
                  </div>
                  <div class="hidden md:block">
                    {{ couponLog.couponBeforeMoney }}
                  </div>
                  <div class="hidden md:block">
                    {{ couponLog.issuedCouponMoney }}
                  </div>
                  <div class="hidden md:block">
                    {{ couponLog.couponAfterMoney }}
                  </div>
                  <div class="hidden lg:block">
                    {{ couponLog.couponContents }}
                  </div>
                  <div class="hidden lg:block">
                    {{ couponLog.issuedCouponDate }}
                  </div>
                </div>
              </ng-container>
            </ng-container>
          </div>

          <mat-paginator
            class="sm:absolute sm:inset-x-0 sm:bottom-0 border-b sm:border-t sm:border-b-0 z-10 bg-gray-50 dark:bg-transparent"
            [ngClass]="{ 'pointer-events-none': isLoading }"
            [length]="pagination?.length"
            [pageIndex]="pagination?.page"
            [pageSize]="pagination?.size"
            [pageSizeOptions]="[5, 10, 25, 100]"
            [showFirstLastButtons]="true"
          ></mat-paginator>
        </ng-container>
      </ng-container>

      <ng-template #noCouponLog>
        <div
          class="p-8 sm:p-16 border-t text-4xl font-semibold tracking-tight text-center"
        >
          There are no data!
        </div>
      </ng-template>
    </div>
  </div>
</div>
