<commit_before>.row.wrapper{"ng-controller" => "dialogUserController as vm"}
  .spinner{'ng-show' => "!vm.dialogLoaded"}

  .col-md-12.col-lg-12{'ng-if' => 'vm.dialog'}
    %dialog-user{"dialog" =>"vm.dialog", "refresh-field" => "vm.refreshField(field)", "on-update" => "vm.setDialogData(data)"}

    .clearfix
    .pull-right.button-group{'ng-show' => "vm.dialogLoaded"}
      %miq-button{:name      => t = _("Submit"),
                  :title     => t,
                  :alt       => t,
                  :enabled   => 'vm.saveable()',
                  'on-click' => "vm.submitButtonClicked()",
                  :primary   => 'true'}
      %miq-button{:name      => t = _("Cancel"),
                  :title     => t,
                  :alt       => t,
                  :enabled   => 'true',
                  'on-click' => "vm.cancelClicked($event)"}

:javascript
  ManageIQ.angular.app.value('resourceActionId', '#{resource_action_id}');
  ManageIQ.angular.app.value('targetId', '#{target_id}');
  ManageIQ.angular.app.value('targetType', '#{target_type}');
  ManageIQ.angular.app.value('dialogId', '#{dialog_id}');
  ManageIQ.angular.app.value('finishSubmitEndpoint', '#{finish_submit_endpoint}');
  ManageIQ.angular.app.value('apiSubmitEndpoint', '#{api_submit_endpoint}');
  ManageIQ.angular.app.value('apiAction', '#{html_escape(api_action)}');
  ManageIQ.angular.app.value('cancelEndpoint', '#{cancel_endpoint}');
  ManageIQ.angular.app.value('openUrl', '#{open_url}');
  miq_bootstrap('.wrapper');<commit_msg>Allow apostrophes in custom button names<commit_after>.row.wrapper{"ng-controller" => "dialogUserController as vm"}
  .spinner{'ng-show' => "!vm.dialogLoaded"}

  .col-md-12.col-lg-12{'ng-if' => 'vm.dialog'}
    %dialog-user{"dialog" =>"vm.dialog", "refresh-field" => "vm.refreshField(field)", "on-update" => "vm.setDialogData(data)"}

    .clearfix
    .pull-right.button-group{'ng-show' => "vm.dialogLoaded"}
      %miq-button{:name      => t = _("Submit"),
                  :title     => t,
                  :alt       => t,
                  :enabled   => 'vm.saveable()',
                  'on-click' => "vm.submitButtonClicked()",
                  :primary   => 'true'}
      %miq-button{:name      => t = _("Cancel"),
                  :title     => t,
                  :alt       => t,
                  :enabled   => 'true',
                  'on-click' => "vm.cancelClicked($event)"}

:javascript
  ManageIQ.angular.app.value('resourceActionId', '#{resource_action_id}');
  ManageIQ.angular.app.value('targetId', '#{target_id}');
  ManageIQ.angular.app.value('targetType', '#{target_type}');
  ManageIQ.angular.app.value('dialogId', '#{dialog_id}');
  ManageIQ.angular.app.value('finishSubmitEndpoint', '#{finish_submit_endpoint}');
  ManageIQ.angular.app.value('apiSubmitEndpoint', '#{api_submit_endpoint}');
  ManageIQ.angular.app.value('apiAction', '#{j_str(api_action)}');
  ManageIQ.angular.app.value('cancelEndpoint', '#{cancel_endpoint}');
  ManageIQ.angular.app.value('openUrl', '#{open_url}');
  miq_bootstrap('.wrapper');
{'fraction_non_alphanumeric': 0.2013685239491691, 'fraction_numerical': 0.002606712284131639, 'mean_word_length': 2.905852417302799, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 39, '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': '5387715', 'n_tokens_mistral': 1046, 'n_tokens_neox': 1001, 'n_words': 126}