<commit_before>/**
 * This document describes the interface of the Acrolinx Sidebar.
 *
 * Let's understand how the typical bootstrapping of an integration and the Acrolinx Sidebar works:
 *
 * 1) Load host editor of your integration
 * 2) Load your integration code
 * 3) Register your integration as acrolinxPlugin (var acrolinxPlugin = {...})
 *    @see AcrolinxPlugin interface for required methods
 * 4) Load sidebar and referenced libs code (usually sidebar.js, libs.js, sidebar.css)
 * 5) Once the sidebar has finished loading it will request the integration to initialize.
 *    acrolinxPlugin.requestInit() will be called.
 * 6) The acrolinxPlugin must call acrolinxSidebar.init(InitParameter).
 * 7) Once the init has finished, the plug-in will be notified: acrolinxPlugin.onInitFinished() is called.
 * 8) From time to time, the sidebar will call acrolinxPlugin.Configure() to push the latest configuration to the
 *    plug-in.
 * 9) If the user pushes the button "Check", acrolinxPlugin.requestGlobalCheck() is called.
 * 10) The acrolinxPlugin must call acrolinxSidebar.checkGlobal() to perform a check.
 *     @see acrolinxSidebar.checkGlobal()
 * 11) When the check finished, acrolinxPlugin.onCheckResult() is called and the sidebar displays cards for the issues.
 * 12) If the user clicks a card acrolinxPlugin.selectRanges() is called
 * 13) When the user selects a replacement acrolinxPlugin.replaceRanges() is called.
 * 14) ... @see method description on AcrolinxPlugin
 *
 * For a minimal integration (not feature complete) you must implement requestInit, requestGlobalCheck, configure,
 *   selectRanges, replaceRanges and download.
 */
namespace acrolinx.sidebar {
  'use strict';

  export interface InitParameters {

    /**
     * Provides information about your integration and other client software components for the about dialog and
     * analytics.
     */
    clientComponents?: SoftwareComponent[];

    /**
     * Should be equal to or start with "en" or "de".
     */
    clientLocale?: string;

    /**
     *  The integration specific clientSignature. To get one, ask your Acrolinx contact.
     */
    clientSignature?: string;

    /**
     * Default value is '' which means the base URL of the host that it runs from.
     */
    serverAddress?: string;

    /**
     * Enables user to manually change the serverAddress on the sign in screen.
     */
    showServerSelector?: boolean;

    inlineRuleHelp?: boolean;

    /**
     * This settings will overwrite the saved settings of the user.
     */
    checkSettings?: CheckSettings;

    /**
     * This settings will be used as initial default settings when the user uses the sidebar for the first time.
     * If checkSettings is defined then the defaultCheckSettings will be ignored.
     */
    defaultCheckSettings?: CheckSettings;

    enableSingleSignOn?: boolean;

    /**
     * This setting will render cards with suggestions in read-only mode. This means the sidebar won't trigger
     * suggestion replacements in the document. The cards will still work for navigation.
     */
    readOnlySuggestions?: boolean;
  }

  interface CheckSettings {
    language: string;<commit_msg>DEV-7802 New plugin init parameter "enforceHTTPS"<commit_after>/**
 * This document describes the interface of the Acrolinx Sidebar.
 *
 * Let's understand how the typical bootstrapping of an integration and the Acrolinx Sidebar works:
 *
 * 1) Load host editor of your integration
 * 2) Load your integration code
 * 3) Register your integration as acrolinxPlugin (var acrolinxPlugin = {...})
 *    @see AcrolinxPlugin interface for required methods
 * 4) Load sidebar and referenced libs code (usually sidebar.js, libs.js, sidebar.css)
 * 5) Once the sidebar has finished loading it will request the integration to initialize.
 *    acrolinxPlugin.requestInit() will be called.
 * 6) The acrolinxPlugin must call acrolinxSidebar.init(InitParameter).
 * 7) Once the init has finished, the plug-in will be notified: acrolinxPlugin.onInitFinished() is called.
 * 8) From time to time, the sidebar will call acrolinxPlugin.Configure() to push the latest configuration to the
 *    plug-in.
 * 9) If the user pushes the button "Check", acrolinxPlugin.requestGlobalCheck() is called.
 * 10) The acrolinxPlugin must call acrolinxSidebar.checkGlobal() to perform a check.
 *     @see acrolinxSidebar.checkGlobal()
 * 11) When the check finished, acrolinxPlugin.onCheckResult() is called and the sidebar displays cards for the issues.
 * 12) If the user clicks a card acrolinxPlugin.selectRanges() is called
 * 13) When the user selects a replacement acrolinxPlugin.replaceRanges() is called.
 * 14) ... @see method description on AcrolinxPlugin
 *
 * For a minimal integration (not feature complete) you must implement requestInit, requestGlobalCheck, configure,
 *   selectRanges, replaceRanges and download.
 */
namespace acrolinx.sidebar {
  'use strict';

  export interface InitParameters {

    /**
     * Provides information about your integration and other client software components for the about dialog and
     * analytics.
     */
    clientComponents?: SoftwareComponent[];

    /**
     * Should be equal to or start with "en" or "de".
     */
    clientLocale?: string;

    /**
     *  The integration specific clientSignature. To get one, ask your Acrolinx contact.
     */
    clientSignature?: string;

    /**
     * Default value is '' which means the base URL of the host that it runs from.
     */
    serverAddress?: string;

    /**
     * Enables user to manually change the serverAddress on the sign in screen.
     */
    showServerSelector?: boolean;

    inlineRuleHelp?: boolean;

    /**
     * This settings will overwrite the saved settings of the user.
     */
    checkSettings?: CheckSettings;

    /**
     * This settings will be used as initial default settings when the user uses the sidebar for the first time.
     * If checkSettings is defined then the defaultCheckSettings will be ignored.
     */
    defaultCheckSettings?: CheckSettings;

    enableSingleSignOn?: boolean;

    /**
     * This setting will render cards with suggestions in read-only mode. This means the sidebar won't trigger
     * suggestion replacements in the document. The cards will still work for navigation.
     */
    readOnlySuggestions?: boolean;

    /**
     * This setting will prevent connection with server via other than HTTPS protocol.
     */
    enforceHTTPS?: boolean;

  }

  interface CheckSettings {
    language: string;
{'fraction_non_alphanumeric': 0.07537073841920196, 'fraction_numerical': 0.006421036538755542, 'mean_word_length': 3.411328388401888, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 2, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5093195', 'n_tokens_mistral': 1749, 'n_tokens_neox': 1644, 'n_words': 740}