<commit_before><h1>
  {{title}}
</h1>
<div class="toolbar">
  Lanes:
  <button (click)="removeLine(gridster)">-</button>
  {{ gridsterOptions.lanes }}
  <button (click)="addLine(gridster)">+</button>

  <br>
  Direction
  <label>
    <input type="radio" [(ngModel)]="gridsterOptions.direction" value="horizontal"
           (change)="gridster.setOption('direction', 'horizontal').reload()">Horizontal
  </label>
  <label>
    <input type="radio" [(ngModel)]="gridsterOptions.direction" value="vertical"
           (change)="gridster.setOption('direction', 'vertical').reload()">Vertical
  </label>
  <br>
  <button (click)="swap()">Swap 1<->4 </button> <button (click)="addWidget(gridster)">Add widget (5 position) </button>
</div>
<div class="main-content">

  <gridster [options]="gridsterOptions" [draggableOptions]="gridsterDraggableOptions" (gridsterPositionChange)="logChanges($event)" #gridster>

    <gridster-item *ngFor="let widget of widgets; let indx = index" [(x)]="widget.x" [(y)]="widget.y" [w]="widget.w" [h]="widget.h" [pin]="widget.pin">

      <div class="panel-heading">
        <h5 class="panel-title">{{ widget.title }}</h5>
      </div>

      <div class="panel-body">
        <p>
          <button (click)="setWidth(widget, widget.w+1, $event)">width +</button>
          <button (click)="setWidth(widget, widget.w-1, $event)">width -</button>
          <button (click)="setHeight(widget, widget.h+1, $event)">height +</button>
          <button (click)="setHeight(widget, widget.h-1, $event)">height -</button>
        </p>
        <p>
          <button (click)="remove(indx,gridster)">remove</button>
          <button (click)="widget.pin = !widget.pin"><template [ngIf]="widget.pin">unpin</template><template [ngIf]="!widget.pin">pin</template></button>
        </p>
        <p>
          Position (x,y): ({{widget.x}},{{widget.y}})
        </p>
        <p>{{ widget.content }}</p>
      </div>

    </gridster-item>

  </gridster>
</div><commit_msg>- remove pin buttons from demo<commit_after><h1>
  {{title}}
</h1>
<div class="toolbar">
  Lanes:
  <button (click)="removeLine(gridster)">-</button>
  {{ gridsterOptions.lanes }}
  <button (click)="addLine(gridster)">+</button>

  <br>
  Direction
  <label>
    <input type="radio" [(ngModel)]="gridsterOptions.direction" value="horizontal"
           (change)="gridster.setOption('direction', 'horizontal').reload()">Horizontal
  </label>
  <label>
    <input type="radio" [(ngModel)]="gridsterOptions.direction" value="vertical"
           (change)="gridster.setOption('direction', 'vertical').reload()">Vertical
  </label>
  <br>
  <button (click)="swap()">Swap 1<->4 </button> <button (click)="addWidget(gridster)">Add widget (5 position) </button>
</div>
<div class="main-content">

  <gridster [options]="gridsterOptions" [draggableOptions]="gridsterDraggableOptions" (gridsterPositionChange)="logChanges($event)" #gridster>

    <gridster-item *ngFor="let widget of widgets; let indx = index" [(x)]="widget.x" [(y)]="widget.y" [w]="widget.w" [h]="widget.h">

      <div class="panel-heading">
        <h5 class="panel-title">{{ widget.title }}</h5>
      </div>

      <div class="panel-body">
        <p>
          <button (click)="setWidth(widget, widget.w+1, $event)">width +</button>
          <button (click)="setWidth(widget, widget.w-1, $event)">width -</button>
          <button (click)="setHeight(widget, widget.h+1, $event)">height +</button>
          <button (click)="setHeight(widget, widget.h-1, $event)">height -</button>
        </p>
        <p>
          <button (click)="remove(indx,gridster)">remove</button>
        </p>
        <p>
          Position (x,y): ({{widget.x}},{{widget.y}})
        </p>
        <p>{{ widget.content }}</p>
      </div>

    </gridster-item>

  </gridster>
</div>
{'fraction_non_alphanumeric': 0.21800947867298578, 'fraction_numerical': 0.005792522380200105, 'mean_word_length': 3.7251243781094527, 'pattern_counts': {'":': 0, '<': 111, '<?xml version=': 0, '>': 111, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1653937', 'n_tokens_mistral': 1324, 'n_tokens_neox': 1272, 'n_words': 224}