survey-react 1.9.86 → 1.9.88

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/survey.react.d.ts CHANGED
@@ -1,5 +1,12 @@
1
1
  /// <reference types="react" />
2
2
  declare module "settings" {
3
+ export type ISurveyEnvironment = {
4
+ root: Document | ShadowRoot;
5
+ rootElement: HTMLElement | ShadowRoot;
6
+ popupMountContainer: HTMLElement | string;
7
+ svgMountContainer: HTMLElement | string;
8
+ stylesSheetsMountContainer: HTMLElement;
9
+ };
3
10
  /**
4
11
  * Global settings that apply to all surveys on the page. To specify one of the settings, use the code below:
5
12
  *
@@ -369,6 +376,10 @@ declare module "settings" {
369
376
  * - `"icon"` - Users can only use the choice item icon as a drag handle.
370
377
  */
371
378
  rankingDragHandleArea: string;
379
+ /**
380
+ * Specifies environment in which SurveyJS will exist
381
+ */
382
+ environment: ISurveyEnvironment;
372
383
  titleTags: {
373
384
  survey: string;
374
385
  page: string;
@@ -387,6 +398,9 @@ declare module "settings" {
387
398
  * - `columnWidthsByType`: `Object`\
388
399
  * An object that specifies fixed and minimum column width based on the column type.\
389
400
  * Example: `settings.matrix.columnWidthsByType = { "tagbox": { minWidth: "240px", width: "300px" } }`
401
+ *
402
+ * - `rateSize`: `"small"` (default) | `"normal"`\
403
+ * Specifies the size of rate values. Applies to [Rating Scale](https://surveyjs.io/form-library/examples/rating-scale/) questions within matrixes.
390
404
  */
391
405
  matrix: {
392
406
  columnWidthsByType: {
@@ -395,6 +409,7 @@ declare module "settings" {
395
409
  width?: string;
396
410
  };
397
411
  };
412
+ rateSize: "small" | "normal";
398
413
  };
399
414
  };
400
415
  }
@@ -1380,6 +1395,8 @@ declare module "utils/utils" {
1380
1395
  function detectIEOrEdge(): any;
1381
1396
  function loadFileFromBase64(b64Data: string, fileName: string): void;
1382
1397
  function isMobile(): boolean;
1398
+ const isShadowDOM: (rootElement: Document | ShadowRoot | HTMLElement) => rootElement is ShadowRoot;
1399
+ const getElement: (element: HTMLElement | string) => HTMLElement;
1383
1400
  function isElementVisible(element: HTMLElement, threshold?: number): boolean;
1384
1401
  function findScrollableParent(element: HTMLElement): HTMLElement;
1385
1402
  function scrollElementByChildId(id: string): void;
@@ -1409,7 +1426,7 @@ declare module "utils/utils" {
1409
1426
  log(action: string): void;
1410
1427
  get result(): string;
1411
1428
  }
1412
- export { mergeValues, getElementWidth, isContainerVisible, classesToSelector, compareVersions, confirmAction, detectIEOrEdge, detectIEBrowser, loadFileFromBase64, isMobile, isElementVisible, findScrollableParent, scrollElementByChildId, navigateToUrl, createSvg, getIconNameFromProxy, increaseHeightByContent, getOriginalEvent, preventDefaults, findParentByClassNames, };
1429
+ export { mergeValues, getElementWidth, isContainerVisible, classesToSelector, compareVersions, confirmAction, detectIEOrEdge, detectIEBrowser, loadFileFromBase64, isMobile, isShadowDOM, getElement, isElementVisible, findScrollableParent, scrollElementByChildId, navigateToUrl, createSvg, getIconNameFromProxy, increaseHeightByContent, getOriginalEvent, preventDefaults, findParentByClassNames, };
1413
1430
  }
1414
1431
  declare module "actions/container" {
1415
1432
  import { Base } from "base";
@@ -1664,6 +1681,7 @@ declare module "popup" {
1664
1681
  onVisibilityChanged: EventBase<PopupModel>;
1665
1682
  onFooterActionsCreated: EventBase<Base>;
1666
1683
  onRecalculatePosition: EventBase<Base>;
1684
+ private refreshInnerModel;
1667
1685
  constructor(contentComponentName: string, contentComponentData: T, verticalPosition?: VerticalPosition, horizontalPosition?: HorizontalPosition, showPointer?: boolean, isModal?: boolean, onCancel?: () => void, onApply?: () => boolean, onHide?: () => void, onShow?: () => void, cssClass?: string, title?: string);
1668
1686
  get isVisible(): boolean;
1669
1687
  set isVisible(value: boolean);
@@ -1681,12 +1699,16 @@ declare module "actions/action" {
1681
1699
  export type actionModeType = "large" | "small" | "popup" | "removed";
1682
1700
  /**
1683
1701
  * An action item.
1702
+ *
1684
1703
  * Action items are used in the Toolbar, matrix rows, titles of pages, panels, questions, and other survey elements.
1685
-
1704
+ *
1705
+ * [View Demo](/form-library/examples/add-custom-navigation-button/ (linkStyle))
1686
1706
  */
1687
1707
  export interface IAction {
1688
1708
  /**
1689
1709
  * A unique action item identifier.
1710
+ *
1711
+ * [View Demo](/form-library/examples/add-custom-navigation-button/ (linkStyle))
1690
1712
  */
1691
1713
  id?: string;
1692
1714
  /**
@@ -1697,6 +1719,8 @@ declare module "actions/action" {
1697
1719
  visible?: boolean;
1698
1720
  /**
1699
1721
  * The action item's title.
1722
+ *
1723
+ * [View Demo](/form-library/examples/add-custom-navigation-button/ (linkStyle))
1700
1724
  * @see showTitle
1701
1725
  * @see disableShrink
1702
1726
  */
@@ -1722,19 +1746,29 @@ declare module "actions/action" {
1722
1746
  showTitle?: boolean;
1723
1747
  /**
1724
1748
  * A function that is executed when users click the action item.
1749
+ *
1750
+ * [View Demo](/form-library/examples/add-custom-navigation-button/ (linkStyle))
1725
1751
  */
1726
1752
  action?: (context?: any) => void;
1727
1753
  /**
1728
1754
  * One or several CSS classes that you want to apply to the outer `<div>` element.
1755
+ *
1729
1756
  * In the markup, an action item is rendered as an `<input>` wrapped in a `<div>`. The `css` property applies classes to the `<div>`.
1730
- * To apply several classes, separate them with a space character: "myclass1 myclass2".
1757
+ *
1758
+ * To apply several classes, separate them with a space character: `"myclass1 myclass2"`.
1759
+ *
1760
+ * [View Demo](/form-library/examples/add-custom-navigation-button/ (linkStyle))
1731
1761
  * @see innerCss
1732
1762
  */
1733
1763
  css?: string;
1734
1764
  /**
1735
1765
  * One or several CSS classes that you want to apply to the inner `<input>` element.
1766
+ *
1736
1767
  * In the markup, an action item is rendered as an `<input>` wrapped in a `<div>`. The `innerCss` property applies classes to the `<input>`.
1737
- * To apply several classes, separate them with a space character: "myclass1 myclass2".
1768
+ *
1769
+ * To apply several classes, separate them with a space character: `"myclass1 myclass2"`.
1770
+ *
1771
+ * [View Demo](/form-library/examples/add-custom-navigation-button/ (linkStyle))
1738
1772
  * @see css
1739
1773
  */
1740
1774
  innerCss?: string;
@@ -1746,7 +1780,8 @@ declare module "actions/action" {
1746
1780
  needSeparator?: boolean;
1747
1781
  /**
1748
1782
  * Specifies whether the action item is active.
1749
- * Use it as a flag to specify different action item appearances in different states.
1783
+ *
1784
+ * Use this property as a flag to specify different action item appearances in different states.
1750
1785
  * @see enabled
1751
1786
  * @see visible
1752
1787
  */
@@ -1793,6 +1828,11 @@ declare module "actions/action" {
1793
1828
  disableShrink?: boolean;
1794
1829
  disableHide?: boolean;
1795
1830
  mode?: actionModeType;
1831
+ /**
1832
+ * A number that specifies the action's position relative to other actions.
1833
+ *
1834
+ * [View Demo](/form-library/examples/add-custom-navigation-button/ (linkStyle))
1835
+ */
1796
1836
  visibleIndex?: number;
1797
1837
  needSpace?: boolean;
1798
1838
  ariaChecked?: boolean;
@@ -2448,6 +2488,7 @@ declare module "defaultCss/defaultV2Css" {
2448
2488
  itemStarDisabled: string;
2449
2489
  itemStarHighlighted: string;
2450
2490
  itemStarUnhighlighted: string;
2491
+ itemStarSmall: string;
2451
2492
  itemSmiley: string;
2452
2493
  itemSmileyOnError: string;
2453
2494
  itemSmileyHover: string;
@@ -2456,12 +2497,14 @@ declare module "defaultCss/defaultV2Css" {
2456
2497
  itemSmileyHighlighted: string;
2457
2498
  itemSmileyScaleColored: string;
2458
2499
  itemSmileyRateColored: string;
2500
+ itemSmileySmall: string;
2459
2501
  minText: string;
2460
2502
  itemText: string;
2461
2503
  maxText: string;
2462
2504
  itemDisabled: string;
2463
2505
  itemFixedSize: string;
2464
2506
  control: string;
2507
+ itemSmall: string;
2465
2508
  controlValue: string;
2466
2509
  controlDisabled: string;
2467
2510
  controlEmpty: string;
@@ -2628,6 +2671,10 @@ declare module "defaultCss/defaultV2Css" {
2628
2671
  controlLabel: string;
2629
2672
  filterStringInput: string;
2630
2673
  materialDecorator: string;
2674
+ hint: string;
2675
+ hintPrefix: string;
2676
+ hintSuffix: string;
2677
+ hintSuffixWrapper: string;
2631
2678
  };
2632
2679
  };
2633
2680
  export const defaultV2ThemeName = "defaultV2";
@@ -2642,12 +2689,15 @@ declare module "trigger" {
2642
2689
  * Please note, it runs only one changing the expression result.
2643
2690
  */
2644
2691
  export class Trigger extends Base {
2692
+ static idCounter: number;
2645
2693
  static operatorsValue: HashTable<Function>;
2646
2694
  static get operators(): HashTable<Function>;
2647
2695
  private conditionRunner;
2648
2696
  private usedNames;
2649
2697
  private hasFunction;
2698
+ private idValue;
2650
2699
  constructor();
2700
+ get id(): number;
2651
2701
  getType(): string;
2652
2702
  toString(): string;
2653
2703
  get operator(): string;
@@ -2679,7 +2729,7 @@ declare module "trigger" {
2679
2729
  export interface ISurveyTriggerOwner {
2680
2730
  getObjects(pages: string[], questions: string[]): any[];
2681
2731
  setCompleted(): void;
2682
- canBeCompleted(): void;
2732
+ canBeCompleted(trigger: Trigger, isCompleted: boolean): void;
2683
2733
  triggerExecuted(trigger: Trigger): void;
2684
2734
  setTriggerValue(name: string, value: any, isVariable: boolean): any;
2685
2735
  copyTriggerValue(name: string, fromName: string): any;
@@ -2720,6 +2770,7 @@ declare module "trigger" {
2720
2770
  getType(): string;
2721
2771
  protected isRealExecution(): boolean;
2722
2772
  protected onSuccess(values: HashTable<any>, properties: HashTable<any>): void;
2773
+ protected onFailure(): void;
2723
2774
  }
2724
2775
  /**
2725
2776
  * If expression returns true, the value from property **setValue** will be set to **setToName**
@@ -3847,6 +3898,7 @@ declare module "question_baseselect" {
3847
3898
  private newItemValue;
3848
3899
  private canShowOptionItemCallback;
3849
3900
  private isUsingCarrayForward;
3901
+ private waitingGetChoiceDisplayValueResponse;
3850
3902
  protected selectedItemValues: any;
3851
3903
  constructor(name: string);
3852
3904
  getType(): string;
@@ -5081,6 +5133,7 @@ declare module "question_paneldynamic" {
5081
5133
  import { IAction } from "actions/action";
5082
5134
  export interface IQuestionPanelDynamicData {
5083
5135
  getItemIndex(item: ISurveyData): number;
5136
+ getVisibleItemIndex(item: ISurveyData): number;
5084
5137
  getPanelItemData(item: ISurveyData): any;
5085
5138
  setPanelItemData(item: ISurveyData, name: string, val: any): any;
5086
5139
  getSharedQuestionFromArray(name: string, panelIndex: number): Question;
@@ -5091,6 +5144,7 @@ declare module "question_paneldynamic" {
5091
5144
  static ItemVariableName: string;
5092
5145
  static ParentItemVariableName: string;
5093
5146
  static IndexVariableName: string;
5147
+ static VisibleIndexVariableName: string;
5094
5148
  private panelValue;
5095
5149
  private data;
5096
5150
  private textPreProcessor;
@@ -5164,6 +5218,11 @@ declare module "question_paneldynamic" {
5164
5218
  get templateElements(): Array<IElement>;
5165
5219
  /**
5166
5220
  * A template for panel titles.
5221
+ *
5222
+ * The template can contain the following placeholders:
5223
+ *
5224
+ * - `{panelIndex}` - A zero-based index of a panel in the [`panels`](https://surveyjs.io/form-library/documentation/api-reference/dynamic-panel-model#panels) array.
5225
+ * - `{visiblePanelIndex}` - A zero-based index of a panel in the [`visiblePanels`](https://surveyjs.io/form-library/documentation/api-reference/dynamic-panel-model#visiblePanels) array.
5167
5226
  * @see template
5168
5227
  * @see templateDescription
5169
5228
  * @see templateElements
@@ -5175,6 +5234,11 @@ declare module "question_paneldynamic" {
5175
5234
  get locTemplateTitle(): LocalizableString;
5176
5235
  /**
5177
5236
  * A template for tab titles. Applies when [`renderMode`](https://surveyjs.io/form-library/documentation/api-reference/dynamic-panel-model#renderMode) is `"tab"`.
5237
+ *
5238
+ * The template can contain the following placeholders:
5239
+ *
5240
+ * - `{panelIndex}` - A zero-based index of a panel in the [`panels`](https://surveyjs.io/form-library/documentation/api-reference/dynamic-panel-model#panels) array.
5241
+ * - `{visiblePanelIndex}` - A zero-based index of a panel in the [`visiblePanels`](https://surveyjs.io/form-library/documentation/api-reference/dynamic-panel-model#visiblePanels) array.
5178
5242
  * @see templateTitle
5179
5243
  * @see renderMode
5180
5244
  */
@@ -5192,6 +5256,19 @@ declare module "question_paneldynamic" {
5192
5256
  get templateDescription(): string;
5193
5257
  set templateDescription(newValue: string);
5194
5258
  get locTemplateDescription(): LocalizableString;
5259
+ /**
5260
+ * A Boolean expression that is evaluated against each panel. If the expression evaluates to `false`, the panel becomes hidden.
5261
+ *
5262
+ * A survey parses and runs all expressions on startup. If any values used in the expression change, the survey re-evaluates it.
5263
+ *
5264
+ * Use the `{panel}` placeholder to reference the current panel in the expression.
5265
+ *
5266
+ * Refer to the following help topic for more information: [Conditional Visibility](https://surveyjs.io/form-library/documentation/design-survey/conditional-logic#conditional-visibility).
5267
+ * @see visibleIf
5268
+ * @see visiblePanels
5269
+ */
5270
+ get templateVisibleIf(): string;
5271
+ set templateVisibleIf(val: string);
5195
5272
  protected get items(): Array<ISurveyData>;
5196
5273
  /**
5197
5274
  * An array of `PanelModel` objects created based on a panel template.
@@ -5200,6 +5277,14 @@ declare module "question_paneldynamic" {
5200
5277
  * @see panelCount
5201
5278
  */
5202
5279
  get panels(): Array<PanelModel>;
5280
+ /**
5281
+ * An array of currently visible panels ([`PanelModel`](https://surveyjs.io/form-library/documentation/api-reference/panel-model) objects).
5282
+ * @see templateVisibleIf
5283
+ */
5284
+ get visiblePanels(): Array<PanelModel>;
5285
+ private onPanelAdded;
5286
+ private onPanelRemoved;
5287
+ private onPanelRemovedCore;
5203
5288
  /**
5204
5289
  * A zero-based index of the currently displayed panel.
5205
5290
  *
@@ -5211,8 +5296,6 @@ declare module "question_paneldynamic" {
5211
5296
  */
5212
5297
  get currentIndex(): number;
5213
5298
  set currentIndex(val: number);
5214
- private get currentIndexValue();
5215
- private set currentIndexValue(value);
5216
5299
  /**
5217
5300
  * A `PanelModel` object that is the currently displayed panel.
5218
5301
  *
@@ -5223,6 +5306,7 @@ declare module "question_paneldynamic" {
5223
5306
  * @see renderMode
5224
5307
  */
5225
5308
  get currentPanel(): PanelModel;
5309
+ set currentPanel(val: PanelModel);
5226
5310
  /**
5227
5311
  * Specifies whether to display a confirmation dialog when a respondent wants to delete a panel.
5228
5312
  * @see confirmDeleteText
@@ -5305,7 +5389,7 @@ declare module "question_paneldynamic" {
5305
5389
  get isNextButtonVisible(): boolean;
5306
5390
  get isNextButtonShowing(): boolean;
5307
5391
  /**
5308
- * Returns true when showRangeInProgress equals to true, renderMode doesn't equal to "list" and panelCount is >= 2.
5392
+ * Returns true when showRangeInProgress equals to true, renderMode doesn't equal to "list" and visiblePanelCount is >= 2.
5309
5393
  */
5310
5394
  get isRangeShowing(): boolean;
5311
5395
  getElementsInDesign(includeHidden?: boolean): Array<IElement>;
@@ -5324,6 +5408,11 @@ declare module "question_paneldynamic" {
5324
5408
  */
5325
5409
  get panelCount(): number;
5326
5410
  set panelCount(val: number);
5411
+ /**
5412
+ * Returns the number of visible panels in Dynamic Panel.
5413
+ * @see templateVisibleIf
5414
+ */
5415
+ get visiblePanelCount(): number;
5327
5416
  /**
5328
5417
  * Specifies whether users can expand and collapse panels. Applies if `renderMode` is `"list"` and the `templateTitle` property is specified.
5329
5418
  *
@@ -5532,7 +5621,7 @@ declare module "question_paneldynamic" {
5532
5621
  * @see template
5533
5622
  */
5534
5623
  removePanel(value: any): void;
5535
- private getPanelIndex;
5624
+ private getVisualPanelIndex;
5536
5625
  private getPanelIndexById;
5537
5626
  locStrsChanged(): void;
5538
5627
  clearIncorrectValues(): void;
@@ -5580,6 +5669,7 @@ declare module "question_paneldynamic" {
5580
5669
  recalculateIsReadyValue(): void;
5581
5670
  protected onSetData(): void;
5582
5671
  getItemIndex(item: ISurveyData): number;
5672
+ getVisibleItemIndex(item: ISurveyData): number;
5583
5673
  getPanelItemData(item: ISurveyData): any;
5584
5674
  private isSetPanelItemData;
5585
5675
  private static maxCheckCount;
@@ -7670,23 +7760,33 @@ declare module "survey" {
7670
7760
  */
7671
7761
  onProcessTextValue: EventBase<SurveyModel, ProcessTextValueEvent>;
7672
7762
  /**
7673
- * An event that is raised before rendering a question. Use it to override the default question CSS classes.
7763
+ * An event that is raised before rendering a question. Use it to override default question CSS classes.
7674
7764
  *
7675
7765
  * For information on event handler parameters, refer to descriptions within the interface.
7676
7766
  *
7677
- * [View Demo](https://surveyjs.io/form-library/examples/survey-cssclasses/ (linkStyle))
7767
+ * [View Demo](/form-library/examples/customize-survey-with-css/ (linkStyle))
7768
+ * @see css
7678
7769
  */
7679
7770
  onUpdateQuestionCssClasses: EventBase<SurveyModel, UpdateQuestionCssClassesEvent>;
7680
7771
  /**
7681
- * An event that is raised before rendering a panel. Use it to override the default panel CSS classes.
7772
+ * An event that is raised before rendering a panel. Use it to override default panel CSS classes.
7773
+ *
7774
+ * [View Demo](/form-library/examples/customize-survey-with-css/ (linkStyle))
7775
+ * @see css
7682
7776
  */
7683
7777
  onUpdatePanelCssClasses: EventBase<SurveyModel, UpdatePanelCssClassesEvent>;
7684
7778
  /**
7685
- * An event that is raised before rendering a page. Use it to override the default page CSS classes.
7779
+ * An event that is raised before rendering a page. Use it to override default page CSS classes.
7780
+ *
7781
+ * [View Demo](/form-library/examples/customize-survey-with-css/ (linkStyle))
7782
+ * @see css
7686
7783
  */
7687
7784
  onUpdatePageCssClasses: EventBase<SurveyModel, UpdatePageCssClassesEvent>;
7688
7785
  /**
7689
- * An event that is raised before rendering a choice item in radiogroup, checkbox or dropdown questions. Use it to override the default choice item css.
7786
+ * An event that is raised before rendering a choice item in Radio Button Group, Checkboxes, and Dropdown questions. Use it to override default CSS classes applied to choice items.
7787
+ *
7788
+ * [View Demo](/form-library/examples/customize-survey-with-css/ (linkStyle))
7789
+ * @see css
7690
7790
  */
7691
7791
  onUpdateChoiceItemCss: EventBase<SurveyModel, UpdateChoiceItemCssEvent>;
7692
7792
  /**
@@ -7957,6 +8057,11 @@ declare module "survey" {
7957
8057
  private cssValue;
7958
8058
  private updateCompletedPageCss;
7959
8059
  private updateCss;
8060
+ /**
8061
+ * Gets or sets an object in which keys are UI elements and values are CSS classes applied to them.
8062
+ *
8063
+ * [View Demo](/form-library/examples/customize-survey-with-css/ (linkStyle))
8064
+ */
7960
8065
  get css(): any;
7961
8066
  set css(value: any);
7962
8067
  setCss(value: any, needMerge?: boolean): void;
@@ -8869,7 +8974,7 @@ declare module "survey" {
8869
8974
  get areInvisibleElementsShowing(): boolean;
8870
8975
  get areEmptyElementsHidden(): boolean;
8871
8976
  /**
8872
- * Returns `true`, if a user has already completed the survey in this browser and there is a cookie about it. Survey goes to `completed` state if the function returns `true`.
8977
+ * Returns `true`, if a user has already completed the survey in this browser and there is a cookie about it. Survey goes to `completedbefore` state if the function returns `true`.
8873
8978
  * @see cookieName
8874
8979
  * @see setCookie
8875
8980
  * @see deleteCookie
@@ -9119,7 +9224,9 @@ declare module "survey" {
9119
9224
  private completeServerValidation;
9120
9225
  protected doNextPage(): void;
9121
9226
  setCompleted(): void;
9122
- canBeCompleted(): void;
9227
+ canBeCompleted(trigger: Trigger, isCompleted: boolean): void;
9228
+ private completedByTriggers;
9229
+ private get canBeCompletedByTrigger();
9123
9230
  /**
9124
9231
  * Returns the HTML content for the complete page.
9125
9232
  * @see completedHtml
@@ -9929,11 +10036,13 @@ declare module "survey-element" {
9929
10036
  *
9930
10037
  * Use the following events of the [`SurveyModel`](https://surveyjs.io/form-library/documentation/surveymodel) object to override CSS classes:
9931
10038
  *
9932
- * - [`onUpdatePageCssClasses`](https://surveyjs.io/form-library/documentation/surveymodel#onUpdatePageCssClasses)
9933
- * - [`onUpdatePanelCssClasses`](https://surveyjs.io/form-library/documentation/surveymodel#onUpdatePanelCssClasses)
9934
10039
  * - [`onUpdateQuestionCssClasses`](https://surveyjs.io/form-library/documentation/surveymodel#onUpdateQuestionCssClasses)
10040
+ * - [`onUpdatePanelCssClasses`](https://surveyjs.io/form-library/documentation/surveymodel#onUpdatePanelCssClasses)
10041
+ * - [`onUpdatePageCssClasses`](https://surveyjs.io/form-library/documentation/surveymodel#onUpdatePageCssClasses)
10042
+ * - [`onUpdateChoiceItemCss`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#onUpdateChoiceItemCss)
9935
10043
  */
9936
10044
  get cssClasses(): any;
10045
+ get cssTitleNumber(): any;
9937
10046
  protected calcCssClasses(css: any): any;
9938
10047
  protected updateElementCssCore(cssClasses: any): void;
9939
10048
  get cssError(): string;
@@ -10225,6 +10334,7 @@ declare module "question" {
10225
10334
  isReadOnlyRenderDiv(): boolean;
10226
10335
  protected setIsMobile(val: boolean): void;
10227
10336
  isMobile: boolean;
10337
+ forceIsInputReadOnly: boolean;
10228
10338
  constructor(name: string);
10229
10339
  protected createLocTitleProperty(): LocalizableString;
10230
10340
  getSurvey(live?: boolean): ISurvey;
@@ -10865,6 +10975,7 @@ declare module "question" {
10865
10975
  getComponentName(): string;
10866
10976
  isDefaultRendering(): boolean;
10867
10977
  renderAs: string;
10978
+ inMatrixMode: boolean;
10868
10979
  getErrorCustomText(text: string, error: SurveyError): string;
10869
10980
  getValidatorTitle(): string;
10870
10981
  get validatedValue(): any;
@@ -11748,6 +11859,13 @@ declare module "base-interfaces" {
11748
11859
  element: Base;
11749
11860
  str: LocalizableString;
11750
11861
  }
11862
+ export type ISurveyEnvironment = {
11863
+ root: Document | ShadowRoot;
11864
+ rootElement: HTMLElement | ShadowRoot;
11865
+ popupMountContainer: HTMLElement | string;
11866
+ svgMountContainer: HTMLElement | string;
11867
+ stylesSheetsMountContainer: HTMLElement;
11868
+ };
11751
11869
  export type LayoutElementContainer = "header" | "footer" | "left" | "right" | "contentTop" | "contentBottom";
11752
11870
  export interface ISurveyLayoutElement {
11753
11871
  id: string;
@@ -11929,7 +12047,8 @@ declare module "dropdownListModel" {
11929
12047
  showInputFieldComponent: boolean;
11930
12048
  ariaActivedescendant: string;
11931
12049
  private applyInputString;
11932
- private applyHintString;
12050
+ protected fixInputCase(): void;
12051
+ protected applyHintString(item: ItemValue): void;
11933
12052
  get inputStringRendered(): string;
11934
12053
  set inputStringRendered(val: string);
11935
12054
  get placeholderRendered(): any;
@@ -11942,6 +12061,7 @@ declare module "dropdownListModel" {
11942
12061
  get hintStringPrefix(): string;
11943
12062
  get showHintString(): boolean;
11944
12063
  get hintStringSuffix(): string;
12064
+ get hintStringMiddle(): string;
11945
12065
  constructor(question: Question, onSelectionChanged?: (item: IAction, ...params: any[]) => void);
11946
12066
  get popupModel(): PopupModel;
11947
12067
  get inputReadOnly(): boolean;
@@ -11950,10 +12070,14 @@ declare module "dropdownListModel" {
11950
12070
  setSearchEnabled(newValue: boolean): void;
11951
12071
  updateItems(): void;
11952
12072
  onClick(event: any): void;
12073
+ protected focusItemOnClickAndPopup(): void;
11953
12074
  onClear(event: any): void;
11954
12075
  getSelectedAction(): ItemValue;
11955
12076
  changeSelectionWithKeyboard(reverse: boolean): void;
12077
+ protected beforeScrollToFocusedItem(focusedItem: ItemValue): void;
12078
+ protected afterScrollToFocusedItem(): void;
11956
12079
  keyHandler(event: any): void;
12080
+ protected onEscape(): void;
11957
12081
  onScroll(event: Event): void;
11958
12082
  onBlur(event: any): void;
11959
12083
  onFocus(event: any): void;
@@ -11980,9 +12104,9 @@ declare module "question_rating" {
11980
12104
  constructor(itemValue: ItemValue, locString?: LocalizableString);
11981
12105
  }
11982
12106
  /**
11983
- * A Model for a rating question.
12107
+ * A class that describes the Rating Scale question type.
11984
12108
  *
11985
- * [View Demo](https://surveyjs.io/form-library/examples/questiontype-rating/ (linkStyle))
12109
+ * [View Demo](https://surveyjs.io/form-library/examples/rating-scale/ (linkStyle))
11986
12110
  */
11987
12111
  export class QuestionRatingModel extends Question {
11988
12112
  constructor(name: string);
@@ -12181,7 +12305,10 @@ declare module "question_rating" {
12181
12305
  setValueFromClick(value: any): void;
12182
12306
  onItemMouseIn(item: RenderedRatingItem): void;
12183
12307
  onItemMouseOut(item: RenderedRatingItem): void;
12308
+ get itemSmallMode(): boolean;
12184
12309
  get ratingRootCss(): string;
12310
+ get itemStarIcon(): string;
12311
+ get itemStarIconAlt(): string;
12185
12312
  getItemSmiley(item: ItemValue): string;
12186
12313
  getItemSmileyIconName(item: ItemValue): string;
12187
12314
  getItemClassByText(item: ItemValue, text: string): string;
@@ -13206,6 +13333,10 @@ declare module "dropdownMultiSelectListModel" {
13206
13333
  constructor(question: Question, onSelectionChanged?: (item: IAction, ...params: any[]) => void);
13207
13334
  inputKeyHandler(event: any): void;
13208
13335
  setInputStringFromSelectedItem(newValue: any): void;
13336
+ protected focusItemOnClickAndPopup(): void;
13337
+ protected onEscape(): void;
13338
+ protected beforeScrollToFocusedItem(focusedItem: ItemValue): void;
13339
+ protected afterScrollToFocusedItem(): void;
13209
13340
  }
13210
13341
  }
13211
13342
  declare module "question_tagbox" {
@@ -14535,7 +14666,7 @@ declare module "dragdrop/survey-elements" {
14535
14666
  declare module "entries/chunks/model" {
14536
14667
  export var Version: string;
14537
14668
  export function checkLibraryVersion(ver: string, libraryName: string): void;
14538
- export { settings } from "settings";
14669
+ export { settings, ISurveyEnvironment } from "settings";
14539
14670
  export { Helpers, HashTable } from "helpers";
14540
14671
  export { AnswerCountValidator, EmailValidator, NumericValidator, RegexValidator, SurveyValidator, TextValidator, ValidatorResult, ExpressionValidator, ValidatorRunner } from "validator";
14541
14672
  export { ItemValue } from "itemvalue";
@@ -15001,6 +15132,10 @@ declare module "defaultCss/cssstandard" {
15001
15132
  controlEmpty: string;
15002
15133
  placeholderInput: string;
15003
15134
  filterStringInput: string;
15135
+ hint: string;
15136
+ hintPrefix: string;
15137
+ hintSuffix: string;
15138
+ hintSuffixWrapper: string;
15004
15139
  };
15005
15140
  };
15006
15141
  }
@@ -15467,7 +15602,7 @@ declare module "entries/core-wo-model" {
15467
15602
  export * from "svgbundle";
15468
15603
  export * from "rendererFactory";
15469
15604
  export * from "utils/responsivity-manager";
15470
- export { unwrap, getOriginalEvent } from "utils/utils";
15605
+ export { unwrap, getOriginalEvent, getElement } from "utils/utils";
15471
15606
  export * from "actions/action";
15472
15607
  export * from "actions/adaptive-container";
15473
15608
  export * from "actions/container";
@@ -21328,10 +21463,9 @@ declare module "react/reactquestion_dropdown" {
21328
21463
  }
21329
21464
  declare module "react/tagbox-item" {
21330
21465
  import { ReactSurveyElement } from "react/reactquestion_element";
21331
- import { Base, QuestionTagboxModel, ItemValue } from "entries/core";
21466
+ import { QuestionTagboxModel, ItemValue } from "entries/core";
21332
21467
  export class SurveyQuestionTagboxItem extends ReactSurveyElement {
21333
21468
  constructor(props: any);
21334
- protected getStateElement(): Base;
21335
21469
  protected get question(): QuestionTagboxModel;
21336
21470
  protected get item(): ItemValue;
21337
21471
  protected canRender(): boolean;