<commit_before>{% import "Layout/Templates/macros.html.twig" as macro %}
<div class="modal-dialog modal-lg hidden" data-role="media-library-cropper-modal" role="dialog" tabindex="-1" aria-hidden="true" aria-labelledby="mediaLibraryCropperModalTitle">
  <div class="modal-content">
    <div class="modal-header">
      <h4 class="modal-title" id="mediaLibraryCropperModalTitle">{{ 'lbl.CropImage'|trans|ucfirst }}</h4>
    </div>
    <div class="modal-body" data-role="media-library-cropper-dialog-body">
      <div class="img-responsive" data-role="media-library-cropper-dialog-canvas-wrapper"></div>
    </div>
    <div class="modal-footer">
      <div class="btn-toolbar pull-left" role="toolbar">
        <div class="btn-group" role="group">
          <button type="button" class="btn btn-default" data-role="media-library-cropper-rotate" data-degrees="-90">
            {{ macro.icon('rotate-left') }}<span class="sr-only">{{ 'lbl.RotateLeft'|trans|ucfirst }}</span>
          </button>
          <button type="button" class="btn btn-default" data-role="media-library-cropper-rotate" data-degrees="90">
            {{ macro.icon('rotate-right') }}<span class="sr-only">{{ 'lbl.RotateRight'|trans|ucfirst }}</span>
          </button>
        </div>
        <div class="btn-group" role="group">
          <button type="button" class="btn btn-default" data-role="media-library-cropper-zoom" data-zoom="-0.05">
            {{ macro.icon('search-minus') }}<span class="sr-only">{{ 'lbl.ZoomOut'|trans|ucfirst }}</span>
          </button>
          <button type="button" class="btn btn-default" data-role="media-library-cropper-zoom" data-zoom="0.05">
            {{ macro.icon('search-plus') }}<span class="sr-only">{{ 'lbl.ZoomIn'|trans|ucfirst }}</span>
          </button>
        </div>
        <div class="btn-group" role="group">
          <button type="button" class="btn btn-default" data-role="media-library-cropper-move" data-x="-10" data-y="0">
            {{ macro.icon('arrow-left') }}<span class="sr-only">{{ 'lbl.MoveLeft'|trans|ucfirst }}</span>
          </button>
          <button type="button" class="btn btn-default" data-role="media-library-cropper-move" data-x="10" data-y="0">
            {{ macro.icon('arrow-right') }}<span class="sr-only">{{ 'lbl.MoveRight'|trans|ucfirst }}</span>
          </button><commit_msg>Rotate in 15 degrees instead of 90 to allow for more control from the keyboard<commit_after>{% import "Layout/Templates/macros.html.twig" as macro %}
<div class="modal-dialog modal-lg hidden" data-role="media-library-cropper-modal" role="dialog" tabindex="-1" aria-hidden="true" aria-labelledby="mediaLibraryCropperModalTitle">
  <div class="modal-content">
    <div class="modal-header">
      <h4 class="modal-title" id="mediaLibraryCropperModalTitle">{{ 'lbl.CropImage'|trans|ucfirst }}</h4>
    </div>
    <div class="modal-body" data-role="media-library-cropper-dialog-body">
      <div class="img-responsive" data-role="media-library-cropper-dialog-canvas-wrapper"></div>
    </div>
    <div class="modal-footer">
      <div class="btn-toolbar pull-left" role="toolbar">
        <div class="btn-group" role="group">
          <button type="button" class="btn btn-default" data-role="media-library-cropper-rotate" data-degrees="-15">
            {{ macro.icon('rotate-left') }}<span class="sr-only">{{ 'lbl.RotateLeft'|trans|ucfirst }}</span>
          </button>
          <button type="button" class="btn btn-default" data-role="media-library-cropper-rotate" data-degrees="15">
            {{ macro.icon('rotate-right') }}<span class="sr-only">{{ 'lbl.RotateRight'|trans|ucfirst }}</span>
          </button>
        </div>
        <div class="btn-group" role="group">
          <button type="button" class="btn btn-default" data-role="media-library-cropper-zoom" data-zoom="-0.05">
            {{ macro.icon('search-minus') }}<span class="sr-only">{{ 'lbl.ZoomOut'|trans|ucfirst }}</span>
          </button>
          <button type="button" class="btn btn-default" data-role="media-library-cropper-zoom" data-zoom="0.05">
            {{ macro.icon('search-plus') }}<span class="sr-only">{{ 'lbl.ZoomIn'|trans|ucfirst }}</span>
          </button>
        </div>
        <div class="btn-group" role="group">
          <button type="button" class="btn btn-default" data-role="media-library-cropper-move" data-x="-10" data-y="0">
            {{ macro.icon('arrow-left') }}<span class="sr-only">{{ 'lbl.MoveLeft'|trans|ucfirst }}</span>
          </button>
          <button type="button" class="btn btn-default" data-role="media-library-cropper-move" data-x="10" data-y="0">
            {{ macro.icon('arrow-right') }}<span class="sr-only">{{ 'lbl.MoveRight'|trans|ucfirst }}</span>
          </button>
{'fraction_non_alphanumeric': 0.2026543079839899, 'fraction_numerical': 0.008847693279966295, 'mean_word_length': 3.4919583727530745, 'pattern_counts': {'":': 0, '<': 85, '<?xml version=': 0, '>': 85, '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': '3317761', 'n_tokens_mistral': 1561, 'n_tokens_neox': 1530, 'n_words': 257}