package com.l7tech.external.assertions.gatewaygraphql.console;

import com.l7tech.console.panels.AssertionPropertiesEditorSupport;
import com.l7tech.external.assertions.gatewaygraphql.GatewayGraphQLAssertion;
import com.l7tech.gui.util.InputValidator;
import com.l7tech.gui.util.Utilities;
import com.l7tech.gui.widgets.SquigglyTextField;
import java.awt.Window;
import java.awt.event.ActionEvent;
import java.util.ResourceBundle;
import javax.swing.AbstractAction;
import javax.swing.JButton;
import javax.swing.JPanel;
import javax.swing.JRadioButton;

public class GatewayGraphQLPropertiesDialog extends AssertionPropertiesEditorSupport<GatewayGraphQLAssertion> {
   private static final ResourceBundle RESOURCE_BUNDLE;
   public static final String TITLE;
   private JPanel contentPane;
   private JButton buttonOK;
   private JButton buttonCancel;
   private SquigglyTextField queryField;
   private SquigglyTextField varsField;
   private SquigglyTextField encPassField;
   private SquigglyTextField queryOptionsField;
   private JRadioButton administratorsRadioButton;
   private JRadioButton allUsersRadioButton;
   private final transient InputValidator validator;
   private boolean confirmed;
   static final long serialVersionUID = -5915783856807964894L;
   private static final String[] b;

   public GatewayGraphQLPropertiesDialog(Window var1) {
      super(var1, TITLE);
      String var10004 = TITLE;
      this.$$$setupUI$$$();
      this.validator = new InputValidator(this, var10004);
      this.confirmed = false;
      this.initDialog();
   }

   private void initDialog() {
      this.setContentPane(this.contentPane);
      this.setModal(true);
      this.getRootPane().setDefaultButton(this.buttonOK);
      this.validator.attachToButton(this.buttonOK, var1 -> this.onOk());
      this.buttonCancel.addActionListener(new AbstractAction(b[1]) {
         static final long serialVersionUID = -8619288256301681059L;

         @Override
         public void actionPerformed(ActionEvent var1) {
            GatewayGraphQLPropertiesDialog.this.onCancel();
         }
      });
      this.setDefaultCloseOperation(0);
      this.addWindowListener(new a(this));
      Utilities.setEscKeyStrokeDisposes(this);
   }

   private void onOk() {
      this.confirmed = true;
      this.dispose();
   }

   private void onCancel() {
      this.confirmed = false;
      this.dispose();
   }

   public static void main(String[] var0) {
      GatewayGraphQLPropertiesDialog var1 = new GatewayGraphQLPropertiesDialog(null);
      var1.pack();
      var1.setVisible(true);
      System.exit(0);
   }

   public boolean isConfirmed() {
      return this.confirmed;
   }

   public void setData(GatewayGraphQLAssertion var1) {
      this.queryField.setText(var1.getQuery());
      this.varsField.setText(var1.getVariables());
      this.encPassField.setText(var1.getEncPass());
      this.queryOptionsField.setText(var1.getQueryOptions());
      switch (com.l7tech.external.assertions.gatewaygraphql.console.b.a[var1.getAuthzOption().ordinal()]) {
         case 1:
            this.administratorsRadioButton.setSelected(true);
            break;
         case 2:
            this.allUsersRadioButton.setSelected(true);
      }
   }

   public GatewayGraphQLAssertion getData(GatewayGraphQLAssertion var1) {
      var1.setQuery(this.asNullable(this.queryField.getText()));
      var1.setVariables(this.asNullable(this.varsField.getText()));
      var1.setEncPass(this.asNullable(this.encPassField.getText()));
      var1.setQueryOptions(this.asNullable(this.queryOptionsField.getText()));
      if (this.administratorsRadioButton.isSelected()) {
         var1.setAuthzOption(GatewayGraphQLAssertion.AuthorizationOption.ADMINISTRATORS);
      } else if (this.allUsersRadioButton.isSelected()) {
         var1.setAuthzOption(GatewayGraphQLAssertion.AuthorizationOption.ALL_USERS);
      }

      return var1;
   }

   private boolean isEmpty(String var1) {
      return var1 == null || var1.trim().isEmpty();
   }

   private String asNullable(String var1) {
      return this.isEmpty(var1) ? null : var1;
   }

   static {
      String[] var5 = new String[18];
      int var3 = 0;
      String var2 = "#R\u000e\nUHZjP\u001d\u0015M\\D0I\n\t\u0013M_0L\n\u0006'A\u0001\u0019XU\r5U\n\bD\u0017B+O\u0003\u000eTIT'O\u0002UQ\u000eB!C\u0007UXAB!R\u0001\u001bQ\u0016W7S\n\bIPY*S@\u001d\\MS3A\u0016\u001dOXF,Q\u0003U^VX7O\u0003\u001f\u0012~W0E\u0018\u001bD~D%P\u0007+qiD+P\n\bIPS7d\u0006\u001bQVQ\u000f!N\f\n\\JEjT\u0000\u0015QM_4\u000e\u0005D\u0002\u0013SPE0R\u000e\u000eRKE\f%U\u001b\u0012G\u0017W M\u0006\u0014N\u00145U\n\bDvF0I\u0000\u0014N\u0017B+O\u0003\u000eTI\u000e2A\u001d\u0013\\[Z!\u000e\t\u0013XUR\u0015\u0001N\f\bDIB-O\u0001ZmXE7P\u0007\b\\JS\t\u0005L\u0003ZhJS6S\u00102A\u001d\u0013\\[Z!\u000e\u001b\u0015RUB-P\t+KA8HMB+N\r\u0005U\u001b\u0012RK_>A\u001b\u0013RWT'O\u0002UQ\u000eB!C\u0007UXAB!R\u0001\u001bQ\u0016W7S\n\bIPY*S@\u001d\\MS3A\u0016\u001dOXF,Q\u0003U^VX7O\u0003\u001f\u0012~W0E\u0018\u001bD~D%P\u0007+qiD+P\n\bIPS7d\u0006\u001bQVQ\u000b5U\n\bD\u0017P-E\u0003\u001e";
      int var4 = "#R\u000e\nUHZjP\u001d\u0015M\\D0I\n\t\u0013M_0L\n\u0006'A\u0001\u0019XU\r5U\n\bD\u0017B+O\u0003\u000eTIT'O\u0002UQ\u000eB!C\u0007UXAB!R\u0001\u001bQ\u0016W7S\n\bIPY*S@\u001d\\MS3A\u0016\u001dOXF,Q\u0003U^VX7O\u0003\u001f\u0012~W0E\u0018\u001bD~D%P\u0007+qiD+P\n\bIPS7d\u0006\u001bQVQ\u000f!N\f\n\\JEjT\u0000\u0015QM_4\u000e\u0005D\u0002\u0013SPE0R\u000e\u000eRKE\f%U\u001b\u0012G\u0017W M\u0006\u0014N\u00145U\n\bDvF0I\u0000\u0014N\u0017B+O\u0003\u000eTI\u000e2A\u001d\u0013\\[Z!\u000e\t\u0013XUR\u0015\u0001N\f\bDIB-O\u0001ZmXE7P\u0007\b\\JS\t\u0005L\u0003ZhJS6S\u00102A\u001d\u0013\\[Z!\u000e\u001b\u0015RUB-P\t+KA8HMB+N\r\u0005U\u001b\u0012RK_>A\u001b\u0013RWT'O\u0002UQ\u000eB!C\u0007UXAB!R\u0001\u001bQ\u0016W7S\n\bIPY*S@\u001d\\MS3A\u0016\u001dOXF,Q\u0003U^VX7O\u0003\u001f\u0012~W0E\u0018\u001bD~D%P\u0007+qiD+P\n\bIPS7d\u0006\u001bQVQ\u000b5U\n\bD\u0017P-E\u0003\u001e"
         .length();
      char var1 = 24;
      int var7 = -1;

      label24:
      while (true) {
         byte var10000 = 100;
         String var10001 = var2.substring(++var7, var7 + var1);
         byte var10002 = -1;

         while (true) {
            String var8 = b(var10000, b(var10001));
            switch (var10002) {
               case 0:
                  var5[var3++] = var8;
                  if ((var7 += var1) >= var4) {
                     b = var5;
                     RESOURCE_BUNDLE = ResourceBundle.getBundle(GatewayGraphQLPropertiesDialog.class.getName());
                     TITLE = RESOURCE_BUNDLE.getString(b[0]);
                     return;
                  }

                  var1 = var2.charAt(var7);
                  break;
               default:
                  var5[var3++] = var8;
                  if ((var7 += var1) < var4) {
                     var1 = var2.charAt(var7);
                     continue label24;
                  }

                  var2 = "\"D\u0004\u001c]P\u001d#P\u001e\u000bWR\r\u0010P\u000f\rA\u001c|1Q\u0003\u0010VO";
                  var4 = "\"D\u0004\u001c]P\u001d#P\u001e\u000bWR\r\u0010P\u000f\rA\u001c|1Q\u0003\u0010VO".length();
                  var1 = '\r';
                  var7 = -1;
            }

            var10000 = 97;
            var10001 = var2.substring(++var7, var7 + var1);
            var10002 = 0;
         }
      }
   }

   private static char[] b(String var0) {
      char[] var10000 = var0.toCharArray();
      if (var10000.length < 2) {
         var10000[0] = (char)(var10000[0] ^ 82);
      }

      return var10000;
   }

   private static String b(int var0, char[] var1) {
      int var10003 = var1.length;
      int var10002 = var0;
      char[] var10001 = var1;
      int var10000 = var10003;

      for (int var2 = 0; var10000 > var2; var2++) {
         var10001[var2] = (char)(var10001[var2] ^ var10002 ^ switch (var2 % 7) {
            case 0 -> 32;
            case 1 -> 68;
            case 2 -> 11;
            case 3 -> 30;
            case 4 -> 89;
            case 5 -> 93;
            default -> 82;
         });
      }

      return new String(var10001).intern();
   }
}
