@itwin/appui-abstract 4.0.0-dev.54 → 4.0.0-dev.55

Sign up to get free protection for your applications and to get access to all the features.
Files changed (103) hide show
  1. package/lib/cjs/appui-abstract/BaseUiItemsProvider.js.map +1 -1
  2. package/lib/cjs/appui-abstract/UiAdmin.js.map +1 -1
  3. package/lib/cjs/appui-abstract/UiItemsManager.js.map +1 -1
  4. package/lib/cjs/appui-abstract/UiItemsProvider.js.map +1 -1
  5. package/lib/cjs/appui-abstract/backstage/BackstageItem.js.map +1 -1
  6. package/lib/cjs/appui-abstract/backstage/BackstageItemsManager.js.map +1 -1
  7. package/lib/cjs/appui-abstract/common/KeyboardKey.js.map +1 -1
  8. package/lib/cjs/appui-abstract/content/ContentLayoutProps.js.map +1 -1
  9. package/lib/cjs/appui-abstract/content/StandardContentLayouts.js.map +1 -1
  10. package/lib/cjs/appui-abstract/dialogs/DialogItem.js.map +1 -1
  11. package/lib/cjs/appui-abstract/dialogs/UiDataProvider.js.map +1 -1
  12. package/lib/cjs/appui-abstract/dialogs/UiLayoutDataProvider.js.map +1 -1
  13. package/lib/cjs/appui-abstract/items/AbstractItemProps.js.map +1 -1
  14. package/lib/cjs/appui-abstract/items/AbstractMenuItemProps.js.map +1 -1
  15. package/lib/cjs/appui-abstract/items/AbstractToolbarProps.js.map +1 -1
  16. package/lib/cjs/appui-abstract/items/BadgeType.js.map +1 -1
  17. package/lib/cjs/appui-abstract/items/ConditionalBooleanValue.js.map +1 -1
  18. package/lib/cjs/appui-abstract/items/ConditionalStringValue.js.map +1 -1
  19. package/lib/cjs/appui-abstract/items/ProvidedItem.js.map +1 -1
  20. package/lib/cjs/appui-abstract/items/RelativePosition.js.map +1 -1
  21. package/lib/cjs/appui-abstract/items/StageUsage.js.map +1 -1
  22. package/lib/cjs/appui-abstract/notification/MessagePresenter.js.map +1 -1
  23. package/lib/cjs/appui-abstract/notification/MessageSeverity.js.map +1 -1
  24. package/lib/cjs/appui-abstract/properties/Description.js.map +1 -1
  25. package/lib/cjs/appui-abstract/properties/EditorParams.js.map +1 -1
  26. package/lib/cjs/appui-abstract/properties/PrimitiveTypes.js.map +1 -1
  27. package/lib/cjs/appui-abstract/properties/Record.js.map +1 -1
  28. package/lib/cjs/appui-abstract/properties/StandardEditorNames.js.map +1 -1
  29. package/lib/cjs/appui-abstract/properties/StandardTypeNames.js.map +1 -1
  30. package/lib/cjs/appui-abstract/properties/Value.js.map +1 -1
  31. package/lib/cjs/appui-abstract/quantity/BaseQuantityDescription.js.map +1 -1
  32. package/lib/cjs/appui-abstract/statusbar/StatusBarItem.js.map +1 -1
  33. package/lib/cjs/appui-abstract/statusbar/StatusBarItemsManager.js.map +1 -1
  34. package/lib/cjs/appui-abstract/toolbars/ToolbarItem.js.map +1 -1
  35. package/lib/cjs/appui-abstract/toolbars/ToolbarItemsManager.js.map +1 -1
  36. package/lib/cjs/appui-abstract/utils/IconSpecUtilities.js.map +1 -1
  37. package/lib/cjs/appui-abstract/utils/PointProps.js.map +1 -1
  38. package/lib/cjs/appui-abstract/utils/UiError.js.map +1 -1
  39. package/lib/cjs/appui-abstract/utils/UiEvent.js.map +1 -1
  40. package/lib/cjs/appui-abstract/utils/UiEventDispatcher.js.map +1 -1
  41. package/lib/cjs/appui-abstract/utils/callbacks.js.map +1 -1
  42. package/lib/cjs/appui-abstract/utils/filter/charCode.js.map +1 -1
  43. package/lib/cjs/appui-abstract/utils/filter/filters.js.map +1 -1
  44. package/lib/cjs/appui-abstract/utils/filter/map.js.map +1 -1
  45. package/lib/cjs/appui-abstract/utils/filter/strings.js.map +1 -1
  46. package/lib/cjs/appui-abstract/utils/isLetter.js.map +1 -1
  47. package/lib/cjs/appui-abstract/utils/misc.js.map +1 -1
  48. package/lib/cjs/appui-abstract/widget/AbstractWidgetProps.js.map +1 -1
  49. package/lib/cjs/appui-abstract/widget/StagePanel.js.map +1 -1
  50. package/lib/cjs/appui-abstract/widget/WidgetState.js.map +1 -1
  51. package/lib/cjs/appui-abstract.js.map +1 -1
  52. package/lib/esm/appui-abstract/BaseUiItemsProvider.js.map +1 -1
  53. package/lib/esm/appui-abstract/UiAdmin.js.map +1 -1
  54. package/lib/esm/appui-abstract/UiItemsManager.js.map +1 -1
  55. package/lib/esm/appui-abstract/UiItemsProvider.js.map +1 -1
  56. package/lib/esm/appui-abstract/backstage/BackstageItem.js.map +1 -1
  57. package/lib/esm/appui-abstract/backstage/BackstageItemsManager.js.map +1 -1
  58. package/lib/esm/appui-abstract/common/KeyboardKey.js.map +1 -1
  59. package/lib/esm/appui-abstract/content/ContentLayoutProps.js.map +1 -1
  60. package/lib/esm/appui-abstract/content/StandardContentLayouts.js.map +1 -1
  61. package/lib/esm/appui-abstract/dialogs/DialogItem.js.map +1 -1
  62. package/lib/esm/appui-abstract/dialogs/UiDataProvider.js.map +1 -1
  63. package/lib/esm/appui-abstract/dialogs/UiLayoutDataProvider.js.map +1 -1
  64. package/lib/esm/appui-abstract/items/AbstractItemProps.js.map +1 -1
  65. package/lib/esm/appui-abstract/items/AbstractMenuItemProps.js.map +1 -1
  66. package/lib/esm/appui-abstract/items/AbstractToolbarProps.js.map +1 -1
  67. package/lib/esm/appui-abstract/items/BadgeType.js.map +1 -1
  68. package/lib/esm/appui-abstract/items/ConditionalBooleanValue.js.map +1 -1
  69. package/lib/esm/appui-abstract/items/ConditionalStringValue.js.map +1 -1
  70. package/lib/esm/appui-abstract/items/ProvidedItem.js.map +1 -1
  71. package/lib/esm/appui-abstract/items/RelativePosition.js.map +1 -1
  72. package/lib/esm/appui-abstract/items/StageUsage.js.map +1 -1
  73. package/lib/esm/appui-abstract/notification/MessagePresenter.js.map +1 -1
  74. package/lib/esm/appui-abstract/notification/MessageSeverity.js.map +1 -1
  75. package/lib/esm/appui-abstract/properties/Description.js.map +1 -1
  76. package/lib/esm/appui-abstract/properties/EditorParams.js.map +1 -1
  77. package/lib/esm/appui-abstract/properties/PrimitiveTypes.js.map +1 -1
  78. package/lib/esm/appui-abstract/properties/Record.js.map +1 -1
  79. package/lib/esm/appui-abstract/properties/StandardEditorNames.js.map +1 -1
  80. package/lib/esm/appui-abstract/properties/StandardTypeNames.js.map +1 -1
  81. package/lib/esm/appui-abstract/properties/Value.js.map +1 -1
  82. package/lib/esm/appui-abstract/quantity/BaseQuantityDescription.js.map +1 -1
  83. package/lib/esm/appui-abstract/statusbar/StatusBarItem.js.map +1 -1
  84. package/lib/esm/appui-abstract/statusbar/StatusBarItemsManager.js.map +1 -1
  85. package/lib/esm/appui-abstract/toolbars/ToolbarItem.js.map +1 -1
  86. package/lib/esm/appui-abstract/toolbars/ToolbarItemsManager.js.map +1 -1
  87. package/lib/esm/appui-abstract/utils/IconSpecUtilities.js.map +1 -1
  88. package/lib/esm/appui-abstract/utils/PointProps.js.map +1 -1
  89. package/lib/esm/appui-abstract/utils/UiError.js.map +1 -1
  90. package/lib/esm/appui-abstract/utils/UiEvent.js.map +1 -1
  91. package/lib/esm/appui-abstract/utils/UiEventDispatcher.js.map +1 -1
  92. package/lib/esm/appui-abstract/utils/callbacks.js.map +1 -1
  93. package/lib/esm/appui-abstract/utils/filter/charCode.js.map +1 -1
  94. package/lib/esm/appui-abstract/utils/filter/filters.js.map +1 -1
  95. package/lib/esm/appui-abstract/utils/filter/map.js.map +1 -1
  96. package/lib/esm/appui-abstract/utils/filter/strings.js.map +1 -1
  97. package/lib/esm/appui-abstract/utils/isLetter.js.map +1 -1
  98. package/lib/esm/appui-abstract/utils/misc.js.map +1 -1
  99. package/lib/esm/appui-abstract/widget/AbstractWidgetProps.js.map +1 -1
  100. package/lib/esm/appui-abstract/widget/StagePanel.js.map +1 -1
  101. package/lib/esm/appui-abstract/widget/WidgetState.js.map +1 -1
  102. package/lib/esm/appui-abstract.js.map +1 -1
  103. package/package.json +4 -4
@@ -1 +1 @@
1
- {"version":3,"file":"AbstractItemProps.js","sourceRoot":"","sources":["../../../../src/appui-abstract/items/AbstractItemProps.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Item\n */\n\nimport { BadgeType } from \"./BadgeType\";\nimport { ConditionalBooleanValue } from \"./ConditionalBooleanValue\";\nimport { ConditionalStringValue } from \"./ConditionalStringValue\";\n\n/** Prototype for string getter function.\n * @public\n */\nexport type StringGetter = () => string;\n\n/** Definition that specifies properties shared between many ConfigurableUi components.\n * @public\n */\nexport interface CommonItemProps {\n /** can be used by application to store miscellaneous data. */\n applicationData?: any;\n /** Badge to be overlaid on the item. */\n badgeType?: BadgeType;\n /** if set, it is used to explicitly set the description shown by components that support a description. */\n description?: string | ConditionalStringValue;\n /** Name of icon WebFont entry or if specifying an imported SVG symbol use \"webSvg:\" prefix to imported symbol Id. */\n icon?: string | ConditionalStringValue;\n /** optional data to be used by item implementor. */\n readonly internalData?: Map<string, any>;\n\n /** if true component will be hidden - defaults to false */\n isHidden?: boolean | ConditionalBooleanValue;\n /** if true component will be disabled - defaults to false */\n isDisabled?: boolean | ConditionalBooleanValue;\n /** if set, component will be considered \"active\" an will display an \"active stripe\" - defaults to false */\n isActive?: boolean;\n /** if set, component will be considered selected but will NOT display an \"active stripe\" - defaults to false. Typically used by buttons that toggle between two states. */\n isPressed?: boolean;\n /** if set, it is used to explicitly set the label shown by a component. */\n label?: string | ConditionalStringValue;\n /** used to explicitly set the tooltip shown by a component. */\n tooltip?: string | ConditionalStringValue;\n}\n\n/** Definition for a command handler.\n * @public\n */\nexport interface CommandHandler {\n /** Function to execute */\n execute?: (args?: any) => any;\n /** Parameters passed to the function */\n parameters?: any;\n /** Function to get the parameters passed to the function */\n getCommandArgs?: () => any[];\n}\n\n/** Definition for an item that executes and action.\n * @public\n */\nexport interface AbstractActionItemProps extends CommonItemProps, CommandHandler {\n}\n"]}
1
+ {"version":3,"file":"AbstractItemProps.js","sourceRoot":"","sources":["../../../../src/appui-abstract/items/AbstractItemProps.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Item\r\n */\r\n\r\nimport { BadgeType } from \"./BadgeType\";\r\nimport { ConditionalBooleanValue } from \"./ConditionalBooleanValue\";\r\nimport { ConditionalStringValue } from \"./ConditionalStringValue\";\r\n\r\n/** Prototype for string getter function.\r\n * @public\r\n */\r\nexport type StringGetter = () => string;\r\n\r\n/** Definition that specifies properties shared between many ConfigurableUi components.\r\n * @public\r\n */\r\nexport interface CommonItemProps {\r\n /** can be used by application to store miscellaneous data. */\r\n applicationData?: any;\r\n /** Badge to be overlaid on the item. */\r\n badgeType?: BadgeType;\r\n /** if set, it is used to explicitly set the description shown by components that support a description. */\r\n description?: string | ConditionalStringValue;\r\n /** Name of icon WebFont entry or if specifying an imported SVG symbol use \"webSvg:\" prefix to imported symbol Id. */\r\n icon?: string | ConditionalStringValue;\r\n /** optional data to be used by item implementor. */\r\n readonly internalData?: Map<string, any>;\r\n\r\n /** if true component will be hidden - defaults to false */\r\n isHidden?: boolean | ConditionalBooleanValue;\r\n /** if true component will be disabled - defaults to false */\r\n isDisabled?: boolean | ConditionalBooleanValue;\r\n /** if set, component will be considered \"active\" an will display an \"active stripe\" - defaults to false */\r\n isActive?: boolean;\r\n /** if set, component will be considered selected but will NOT display an \"active stripe\" - defaults to false. Typically used by buttons that toggle between two states. */\r\n isPressed?: boolean;\r\n /** if set, it is used to explicitly set the label shown by a component. */\r\n label?: string | ConditionalStringValue;\r\n /** used to explicitly set the tooltip shown by a component. */\r\n tooltip?: string | ConditionalStringValue;\r\n}\r\n\r\n/** Definition for a command handler.\r\n * @public\r\n */\r\nexport interface CommandHandler {\r\n /** Function to execute */\r\n execute?: (args?: any) => any;\r\n /** Parameters passed to the function */\r\n parameters?: any;\r\n /** Function to get the parameters passed to the function */\r\n getCommandArgs?: () => any[];\r\n}\r\n\r\n/** Definition for an item that executes and action.\r\n * @public\r\n */\r\nexport interface AbstractActionItemProps extends CommonItemProps, CommandHandler {\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"AbstractMenuItemProps.js","sourceRoot":"","sources":["../../../../src/appui-abstract/items/AbstractMenuItemProps.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Item\n */\n\nimport { AbstractActionItemProps, CommonItemProps } from \"./AbstractItemProps\";\nimport { ConditionalStringValue } from \"./ConditionalStringValue\";\n\n/** Properties for a Menu item\n * @public\n */\nexport interface AbstractMenuItemProps extends CommonItemProps {\n /** The id for the menu item. */\n id: string;\n /** The item to execute when this item is invoked. Either 'item' or 'submenu' must be specified. */\n item?: AbstractActionItemProps;\n /** Nested array of item props. Either 'item' or 'submenu' must be specified. */\n submenu?: AbstractMenuItemProps[];\n /** Icon to display on right side of the menu item.\n * Name of icon WebFont entry or if specifying an imported SVG symbol use \"webSvg:\" prefix to imported symbol Id.\n */\n iconRight?: string | ConditionalStringValue;\n}\n"]}
1
+ {"version":3,"file":"AbstractMenuItemProps.js","sourceRoot":"","sources":["../../../../src/appui-abstract/items/AbstractMenuItemProps.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Item\r\n */\r\n\r\nimport { AbstractActionItemProps, CommonItemProps } from \"./AbstractItemProps\";\r\nimport { ConditionalStringValue } from \"./ConditionalStringValue\";\r\n\r\n/** Properties for a Menu item\r\n * @public\r\n */\r\nexport interface AbstractMenuItemProps extends CommonItemProps {\r\n /** The id for the menu item. */\r\n id: string;\r\n /** The item to execute when this item is invoked. Either 'item' or 'submenu' must be specified. */\r\n item?: AbstractActionItemProps;\r\n /** Nested array of item props. Either 'item' or 'submenu' must be specified. */\r\n submenu?: AbstractMenuItemProps[];\r\n /** Icon to display on right side of the menu item.\r\n * Name of icon WebFont entry or if specifying an imported SVG symbol use \"webSvg:\" prefix to imported symbol Id.\r\n */\r\n iconRight?: string | ConditionalStringValue;\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"AbstractToolbarProps.js","sourceRoot":"","sources":["../../../../src/appui-abstract/items/AbstractToolbarProps.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Item\n */\n\nimport { CommonToolbarItem } from \"../toolbars/ToolbarItem\";\n\n/** Definition for a Toolbar.\n * @public\n */\nexport interface AbstractToolbarProps {\n /** Id of Toolbar */\n toolbarId?: string;\n /** Items shown in the Toolbar */\n items: CommonToolbarItem[];\n}\n"]}
1
+ {"version":3,"file":"AbstractToolbarProps.js","sourceRoot":"","sources":["../../../../src/appui-abstract/items/AbstractToolbarProps.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Item\r\n */\r\n\r\nimport { CommonToolbarItem } from \"../toolbars/ToolbarItem\";\r\n\r\n/** Definition for a Toolbar.\r\n * @public\r\n */\r\nexport interface AbstractToolbarProps {\r\n /** Id of Toolbar */\r\n toolbarId?: string;\r\n /** Items shown in the Toolbar */\r\n items: CommonToolbarItem[];\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"BadgeType.js","sourceRoot":"","sources":["../../../../src/appui-abstract/items/BadgeType.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH;;GAEG;AACH,IAAY,SAOX;AAPD,WAAY,SAAS;IACnB,gBAAgB;IAChB,yCAAQ,CAAA;IACR,wCAAwC;IACxC,iEAAoB,CAAA;IACpB,kCAAkC;IAClC,uCAAO,CAAA;AACT,CAAC,EAPW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAOpB","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Item\n */\n\n/** Specifies type of badge, if any, that should be overlaid on UI component.\n * @public\n */\nexport enum BadgeType {\n /** No badge. */\n None = 0,\n /** Standard Technical Preview badge. */\n TechnicalPreview = 1,\n /** Standard New Feature badge. */\n New = 2,\n}\n"]}
1
+ {"version":3,"file":"BadgeType.js","sourceRoot":"","sources":["../../../../src/appui-abstract/items/BadgeType.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH;;GAEG;AACH,IAAY,SAOX;AAPD,WAAY,SAAS;IACnB,gBAAgB;IAChB,yCAAQ,CAAA;IACR,wCAAwC;IACxC,iEAAoB,CAAA;IACpB,kCAAkC;IAClC,uCAAO,CAAA;AACT,CAAC,EAPW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAOpB","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Item\r\n */\r\n\r\n/** Specifies type of badge, if any, that should be overlaid on UI component.\r\n * @public\r\n */\r\nexport enum BadgeType {\r\n /** No badge. */\r\n None = 0,\r\n /** Standard Technical Preview badge. */\r\n TechnicalPreview = 1,\r\n /** Standard New Feature badge. */\r\n New = 2,\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"ConditionalBooleanValue.js","sourceRoot":"","sources":["../../../../src/appui-abstract/items/ConditionalBooleanValue.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH;;;GAGG;AACH,MAAa,uBAAuB;IAGlC;;;;;OAKG;IACH,YAA4B,QAAuB,EAAkB,YAAsB,EAAE,KAAe;QAAhF,aAAQ,GAAR,QAAQ,CAAe;QAAkB,iBAAY,GAAZ,YAAY,CAAU;QACzF,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;IACtB,CAAC;IAED,oDAAoD;IACpD,IAAW,KAAK;QACd,IAAI,SAAS,KAAK,IAAI,CAAC,MAAM;YAC3B,OAAO,IAAI,CAAC,MAAM,CAAC;QAErB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC9B,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,yDAAyD;IAClD,OAAO;QACZ,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;QACjC,IAAI,QAAQ,KAAK,IAAI,CAAC,MAAM,EAAE;YAC5B,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC;YACvB,OAAO,IAAI,CAAC;SACb;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,0GAA0G;IACnG,MAAM,CAAC,YAAY,CAAC,gBAA+D,EAAE,QAAqB;QAC/G,IAAI,SAAS,KAAK,gBAAgB,IAAI,CAAC,CAAC,gBAAgB,YAAY,uBAAuB,CAAC;YAC1F,OAAO,KAAK,CAAC;QAEf,IAAI,gBAAgB,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,KAAa,EAAW,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;YACnG,OAAO,gBAAgB,CAAC,OAAO,EAAE,CAAC;QAEpC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,0FAA0F;IACnF,MAAM,CAAC,QAAQ,CAAC,gBAA+D;QACpF,IAAI,SAAS,KAAK,gBAAgB;YAChC,OAAO,KAAK,CAAC;QAEf,IAAI,gBAAgB,YAAY,uBAAuB;YACrD,OAAO,gBAAgB,CAAC,KAAK,CAAC;QAEhC,OAAO,gBAAgB,CAAC;IAC1B,CAAC;CACF;AArDD,0DAqDC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Item\n */\n\n/** Class used to return a boolean value. The boolean value is refreshed by using the specified function. The syncEventIds define one or more\n * eventIds that would require the testFunc to be rerun.\n * @public\n */\nexport class ConditionalBooleanValue {\n private _value?: boolean;\n\n /**\n * Constructor for ConditionalBooleanValue. It is important that the same ConditionalBooleanValue instance is not used by multiple UI item definitions in order that the control's state is always rendered correctly.\n * @param testFunc Function to run to retrieve the value for the conditional. This function is run when refresh method is called or if the value is not defined in the constructor.\n * @param syncEventIds An array of eventId that should be monitored to determine when to run the refresh method.\n * @param value The default value for the conditional value. If not specified then the function is run to set the value when the value is retrieved.\n */\n constructor(public readonly testFunc: () => boolean, public readonly syncEventIds: string[], value?: boolean) {\n this._value = value;\n }\n\n /** The current boolean value of the conditional. */\n public get value(): boolean {\n if (undefined !== this._value)\n return this._value;\n\n this._value = this.testFunc();\n return this._value;\n }\n\n /** Called to update the value by running the testFunc */\n public refresh(): boolean {\n const newValue = this.testFunc();\n if (newValue !== this._value) {\n this._value = newValue;\n return true;\n }\n return false;\n }\n\n /** helper function to process properties defined as type ConditionalBooleanValue | boolean | undefined */\n public static refreshValue(conditionalValue: ConditionalBooleanValue | boolean | undefined, eventIds: Set<string>): boolean {\n if (undefined === conditionalValue || !(conditionalValue instanceof ConditionalBooleanValue))\n return false;\n\n if (conditionalValue.syncEventIds.some((value: string): boolean => eventIds.has(value.toLowerCase())))\n return conditionalValue.refresh();\n\n return false;\n }\n\n /** helper function to get boolean from a ConditionalBooleanValue | boolean | undefined */\n public static getValue(conditionalValue: ConditionalBooleanValue | boolean | undefined): boolean {\n if (undefined === conditionalValue)\n return false;\n\n if (conditionalValue instanceof ConditionalBooleanValue)\n return conditionalValue.value;\n\n return conditionalValue;\n }\n}\n"]}
1
+ {"version":3,"file":"ConditionalBooleanValue.js","sourceRoot":"","sources":["../../../../src/appui-abstract/items/ConditionalBooleanValue.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH;;;GAGG;AACH,MAAa,uBAAuB;IAGlC;;;;;OAKG;IACH,YAA4B,QAAuB,EAAkB,YAAsB,EAAE,KAAe;QAAhF,aAAQ,GAAR,QAAQ,CAAe;QAAkB,iBAAY,GAAZ,YAAY,CAAU;QACzF,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;IACtB,CAAC;IAED,oDAAoD;IACpD,IAAW,KAAK;QACd,IAAI,SAAS,KAAK,IAAI,CAAC,MAAM;YAC3B,OAAO,IAAI,CAAC,MAAM,CAAC;QAErB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC9B,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,yDAAyD;IAClD,OAAO;QACZ,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;QACjC,IAAI,QAAQ,KAAK,IAAI,CAAC,MAAM,EAAE;YAC5B,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC;YACvB,OAAO,IAAI,CAAC;SACb;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,0GAA0G;IACnG,MAAM,CAAC,YAAY,CAAC,gBAA+D,EAAE,QAAqB;QAC/G,IAAI,SAAS,KAAK,gBAAgB,IAAI,CAAC,CAAC,gBAAgB,YAAY,uBAAuB,CAAC;YAC1F,OAAO,KAAK,CAAC;QAEf,IAAI,gBAAgB,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,KAAa,EAAW,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;YACnG,OAAO,gBAAgB,CAAC,OAAO,EAAE,CAAC;QAEpC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,0FAA0F;IACnF,MAAM,CAAC,QAAQ,CAAC,gBAA+D;QACpF,IAAI,SAAS,KAAK,gBAAgB;YAChC,OAAO,KAAK,CAAC;QAEf,IAAI,gBAAgB,YAAY,uBAAuB;YACrD,OAAO,gBAAgB,CAAC,KAAK,CAAC;QAEhC,OAAO,gBAAgB,CAAC;IAC1B,CAAC;CACF;AArDD,0DAqDC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Item\r\n */\r\n\r\n/** Class used to return a boolean value. The boolean value is refreshed by using the specified function. The syncEventIds define one or more\r\n * eventIds that would require the testFunc to be rerun.\r\n * @public\r\n */\r\nexport class ConditionalBooleanValue {\r\n private _value?: boolean;\r\n\r\n /**\r\n * Constructor for ConditionalBooleanValue. It is important that the same ConditionalBooleanValue instance is not used by multiple UI item definitions in order that the control's state is always rendered correctly.\r\n * @param testFunc Function to run to retrieve the value for the conditional. This function is run when refresh method is called or if the value is not defined in the constructor.\r\n * @param syncEventIds An array of eventId that should be monitored to determine when to run the refresh method.\r\n * @param value The default value for the conditional value. If not specified then the function is run to set the value when the value is retrieved.\r\n */\r\n constructor(public readonly testFunc: () => boolean, public readonly syncEventIds: string[], value?: boolean) {\r\n this._value = value;\r\n }\r\n\r\n /** The current boolean value of the conditional. */\r\n public get value(): boolean {\r\n if (undefined !== this._value)\r\n return this._value;\r\n\r\n this._value = this.testFunc();\r\n return this._value;\r\n }\r\n\r\n /** Called to update the value by running the testFunc */\r\n public refresh(): boolean {\r\n const newValue = this.testFunc();\r\n if (newValue !== this._value) {\r\n this._value = newValue;\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n /** helper function to process properties defined as type ConditionalBooleanValue | boolean | undefined */\r\n public static refreshValue(conditionalValue: ConditionalBooleanValue | boolean | undefined, eventIds: Set<string>): boolean {\r\n if (undefined === conditionalValue || !(conditionalValue instanceof ConditionalBooleanValue))\r\n return false;\r\n\r\n if (conditionalValue.syncEventIds.some((value: string): boolean => eventIds.has(value.toLowerCase())))\r\n return conditionalValue.refresh();\r\n\r\n return false;\r\n }\r\n\r\n /** helper function to get boolean from a ConditionalBooleanValue | boolean | undefined */\r\n public static getValue(conditionalValue: ConditionalBooleanValue | boolean | undefined): boolean {\r\n if (undefined === conditionalValue)\r\n return false;\r\n\r\n if (conditionalValue instanceof ConditionalBooleanValue)\r\n return conditionalValue.value;\r\n\r\n return conditionalValue;\r\n }\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"ConditionalStringValue.js","sourceRoot":"","sources":["../../../../src/appui-abstract/items/ConditionalStringValue.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH;;;GAGG;AACH,MAAa,sBAAsB;IAGjC;;;;;OAKG;IACH,YAA4B,YAA0B,EAAkB,YAAsB,EAAE,KAAc;QAAlF,iBAAY,GAAZ,YAAY,CAAc;QAAkB,iBAAY,GAAZ,YAAY,CAAU;QAC5F,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;IACtB,CAAC;IAED,oDAAoD;IACpD,IAAW,KAAK;QACd,IAAI,SAAS,KAAK,IAAI,CAAC,MAAM;YAC3B,OAAO,IAAI,CAAC,MAAM,CAAC;QAErB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAClC,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,6DAA6D;IACtD,OAAO;QACZ,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QACrC,IAAI,QAAQ,KAAK,IAAI,CAAC,MAAM,EAAE;YAC5B,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC;YACvB,OAAO,IAAI,CAAC;SACb;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,YAAY,CAAC,gBAA6D,EAAE,QAAqB;QAC7G,IAAI,SAAS,KAAK,gBAAgB,IAAI,CAAC,CAAC,gBAAgB,YAAY,sBAAsB,CAAC;YACzF,OAAO,KAAK,CAAC;QAEf,IAAI,gBAAgB,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,KAAa,EAAW,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;YACnG,OAAO,gBAAgB,CAAC,OAAO,EAAE,CAAC;QAEpC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,uFAAuF;IAChF,MAAM,CAAC,QAAQ,CAAC,gBAA6D;QAClF,IAAI,SAAS,KAAK,gBAAgB;YAChC,OAAO,SAAS,CAAC;QAEnB,IAAI,gBAAgB,YAAY,sBAAsB;YACpD,OAAO,gBAAgB,CAAC,KAAK,CAAC;QAEhC,OAAO,gBAAgB,CAAC;IAC1B,CAAC;CACF;AAvDD,wDAuDC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Item\n */\n\n/** Class used to return a string value. The string value is refreshed by using the specified function. The syncEventIds define one or more\n * eventIds that would require the stringGetter function to be rerun.\n * @public\n */\nexport class ConditionalStringValue {\n private _value?: string;\n\n /**\n * Constructor for ConditionalStringValue. It is important that the same ConditionalStringValue instance is not used by multiple UI item definitions in order that the control's state is always rendered correctly.\n * @param stringGetter Function to run to retrieve the value for the conditional. This function is run when refresh method is called or if the value is not defined in the constructor.\n * @param syncEventIds An array of eventId that should be monitored to determine when to run the refresh method.\n * @param value The default value for the conditional value. If not specified then the function is run to set the value when the value is retrieved.\n */\n constructor(public readonly stringGetter: () => string, public readonly syncEventIds: string[], value?: string) {\n this._value = value;\n }\n\n /** The current boolean value of the conditional. */\n public get value(): string {\n if (undefined !== this._value)\n return this._value;\n\n this._value = this.stringGetter();\n return this._value;\n }\n\n /** Called to update the value by running the stringGetter */\n public refresh(): boolean {\n const newValue = this.stringGetter();\n if (newValue !== this._value) {\n this._value = newValue;\n return true;\n }\n return false;\n }\n\n /** helper function to process properties defined as type ConditionalStringValue | string | undefined\n * Return true if the value was updated.\n */\n public static refreshValue(conditionalValue: ConditionalStringValue | string | undefined, eventIds: Set<string>): boolean {\n if (undefined === conditionalValue || !(conditionalValue instanceof ConditionalStringValue))\n return false;\n\n if (conditionalValue.syncEventIds.some((value: string): boolean => eventIds.has(value.toLowerCase())))\n return conditionalValue.refresh();\n\n return false;\n }\n\n /** helper function to get string from a ConditionalStringValue | string | undefined */\n public static getValue(conditionalValue: ConditionalStringValue | string | undefined): string | undefined {\n if (undefined === conditionalValue)\n return undefined;\n\n if (conditionalValue instanceof ConditionalStringValue)\n return conditionalValue.value;\n\n return conditionalValue;\n }\n}\n"]}
1
+ {"version":3,"file":"ConditionalStringValue.js","sourceRoot":"","sources":["../../../../src/appui-abstract/items/ConditionalStringValue.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH;;;GAGG;AACH,MAAa,sBAAsB;IAGjC;;;;;OAKG;IACH,YAA4B,YAA0B,EAAkB,YAAsB,EAAE,KAAc;QAAlF,iBAAY,GAAZ,YAAY,CAAc;QAAkB,iBAAY,GAAZ,YAAY,CAAU;QAC5F,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;IACtB,CAAC;IAED,oDAAoD;IACpD,IAAW,KAAK;QACd,IAAI,SAAS,KAAK,IAAI,CAAC,MAAM;YAC3B,OAAO,IAAI,CAAC,MAAM,CAAC;QAErB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAClC,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,6DAA6D;IACtD,OAAO;QACZ,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QACrC,IAAI,QAAQ,KAAK,IAAI,CAAC,MAAM,EAAE;YAC5B,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC;YACvB,OAAO,IAAI,CAAC;SACb;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,YAAY,CAAC,gBAA6D,EAAE,QAAqB;QAC7G,IAAI,SAAS,KAAK,gBAAgB,IAAI,CAAC,CAAC,gBAAgB,YAAY,sBAAsB,CAAC;YACzF,OAAO,KAAK,CAAC;QAEf,IAAI,gBAAgB,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,KAAa,EAAW,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;YACnG,OAAO,gBAAgB,CAAC,OAAO,EAAE,CAAC;QAEpC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,uFAAuF;IAChF,MAAM,CAAC,QAAQ,CAAC,gBAA6D;QAClF,IAAI,SAAS,KAAK,gBAAgB;YAChC,OAAO,SAAS,CAAC;QAEnB,IAAI,gBAAgB,YAAY,sBAAsB;YACpD,OAAO,gBAAgB,CAAC,KAAK,CAAC;QAEhC,OAAO,gBAAgB,CAAC;IAC1B,CAAC;CACF;AAvDD,wDAuDC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Item\r\n */\r\n\r\n/** Class used to return a string value. The string value is refreshed by using the specified function. The syncEventIds define one or more\r\n * eventIds that would require the stringGetter function to be rerun.\r\n * @public\r\n */\r\nexport class ConditionalStringValue {\r\n private _value?: string;\r\n\r\n /**\r\n * Constructor for ConditionalStringValue. It is important that the same ConditionalStringValue instance is not used by multiple UI item definitions in order that the control's state is always rendered correctly.\r\n * @param stringGetter Function to run to retrieve the value for the conditional. This function is run when refresh method is called or if the value is not defined in the constructor.\r\n * @param syncEventIds An array of eventId that should be monitored to determine when to run the refresh method.\r\n * @param value The default value for the conditional value. If not specified then the function is run to set the value when the value is retrieved.\r\n */\r\n constructor(public readonly stringGetter: () => string, public readonly syncEventIds: string[], value?: string) {\r\n this._value = value;\r\n }\r\n\r\n /** The current boolean value of the conditional. */\r\n public get value(): string {\r\n if (undefined !== this._value)\r\n return this._value;\r\n\r\n this._value = this.stringGetter();\r\n return this._value;\r\n }\r\n\r\n /** Called to update the value by running the stringGetter */\r\n public refresh(): boolean {\r\n const newValue = this.stringGetter();\r\n if (newValue !== this._value) {\r\n this._value = newValue;\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n /** helper function to process properties defined as type ConditionalStringValue | string | undefined\r\n * Return true if the value was updated.\r\n */\r\n public static refreshValue(conditionalValue: ConditionalStringValue | string | undefined, eventIds: Set<string>): boolean {\r\n if (undefined === conditionalValue || !(conditionalValue instanceof ConditionalStringValue))\r\n return false;\r\n\r\n if (conditionalValue.syncEventIds.some((value: string): boolean => eventIds.has(value.toLowerCase())))\r\n return conditionalValue.refresh();\r\n\r\n return false;\r\n }\r\n\r\n /** helper function to get string from a ConditionalStringValue | string | undefined */\r\n public static getValue(conditionalValue: ConditionalStringValue | string | undefined): string | undefined {\r\n if (undefined === conditionalValue)\r\n return undefined;\r\n\r\n if (conditionalValue instanceof ConditionalStringValue)\r\n return conditionalValue.value;\r\n\r\n return conditionalValue;\r\n }\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"ProvidedItem.js","sourceRoot":"","sources":["../../../../src/appui-abstract/items/ProvidedItem.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Item\n */\n\n/** Properties for an item provided by UiItemsProvider\n * @deprecated in 3.6. Use [ProviderItem]($appui-react) instead.\n * @public\n */\nexport interface ProvidedItem {\n /** id of UiItemsProvider */\n readonly providerId?: string;\n}\n"]}
1
+ {"version":3,"file":"ProvidedItem.js","sourceRoot":"","sources":["../../../../src/appui-abstract/items/ProvidedItem.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Item\r\n */\r\n\r\n/** Properties for an item provided by UiItemsProvider\r\n * @deprecated in 3.6. Use [ProviderItem]($appui-react) instead.\r\n * @public\r\n */\r\nexport interface ProvidedItem {\r\n /** id of UiItemsProvider */\r\n readonly providerId?: string;\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"RelativePosition.js","sourceRoot":"","sources":["../../../../src/appui-abstract/items/RelativePosition.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH;;GAEG;AACH,IAAY,gBAWX;AAXD,WAAY,gBAAgB;IAC1B,uDAAQ,CAAA;IACR,qDAAO,CAAA;IACP,yDAAS,CAAA;IACT,2DAAU,CAAA;IACV,6DAAW,CAAA;IACX,+DAAY,CAAA;IACZ,mEAAc,CAAA;IACd,qEAAe,CAAA;IACf,+DAAY,CAAA;IACZ,6DAAW,CAAA;AACb,CAAC,EAXW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAW3B","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Item\n */\n\n/** Relative Position for popups\n * @public\n */\nexport enum RelativePosition {\n Left = 0,\n Top = 1,\n Right = 2,\n Bottom = 3,\n TopLeft = 4,\n TopRight = 5,\n BottomLeft = 6,\n BottomRight = 7,\n RightTop = 8,\n LeftTop = 9,\n}\n"]}
1
+ {"version":3,"file":"RelativePosition.js","sourceRoot":"","sources":["../../../../src/appui-abstract/items/RelativePosition.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH;;GAEG;AACH,IAAY,gBAWX;AAXD,WAAY,gBAAgB;IAC1B,uDAAQ,CAAA;IACR,qDAAO,CAAA;IACP,yDAAS,CAAA;IACT,2DAAU,CAAA;IACV,6DAAW,CAAA;IACX,+DAAY,CAAA;IACZ,mEAAc,CAAA;IACd,qEAAe,CAAA;IACf,+DAAY,CAAA;IACZ,6DAAW,CAAA;AACb,CAAC,EAXW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAW3B","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Item\r\n */\r\n\r\n/** Relative Position for popups\r\n * @public\r\n */\r\nexport enum RelativePosition {\r\n Left = 0,\r\n Top = 1,\r\n Right = 2,\r\n Bottom = 3,\r\n TopLeft = 4,\r\n TopRight = 5,\r\n BottomLeft = 6,\r\n BottomRight = 7,\r\n RightTop = 8,\r\n LeftTop = 9,\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"StageUsage.js","sourceRoot":"","sources":["../../../../src/appui-abstract/items/StageUsage.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH;;;;GAIG;AACH,IAAY,UAOX;AAPD,WAAY,UAAU;IACpB,iCAAmB,CAAA;IACnB,iCAAmB,CAAA;IACnB,iCAAmB,CAAA;IACnB,mCAAqB,CAAA;IACrB,2BAAa,CAAA;IACb,mCAAqB,CAAA;AACvB,CAAC,EAPW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAOrB","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Item\n */\n\n/** Standard stage uses. Allows extension to target ui item to include on a stage without\n * knowing the stage name defined in the host application.\n * @deprecated in 3.6. Use [StageUsage]($appui-react) instead.\n * @public\n */\nexport enum StageUsage {\n Private = \"Private\",\n General = \"General\",\n Redline = \"Redline\",\n ViewOnly = \"ViewOnly\",\n Edit = \"Edit\",\n Settings = \"Settings\",\n}\n"]}
1
+ {"version":3,"file":"StageUsage.js","sourceRoot":"","sources":["../../../../src/appui-abstract/items/StageUsage.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH;;;;GAIG;AACH,IAAY,UAOX;AAPD,WAAY,UAAU;IACpB,iCAAmB,CAAA;IACnB,iCAAmB,CAAA;IACnB,iCAAmB,CAAA;IACnB,mCAAqB,CAAA;IACrB,2BAAa,CAAA;IACb,mCAAqB,CAAA;AACvB,CAAC,EAPW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAOrB","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Item\r\n */\r\n\r\n/** Standard stage uses. Allows extension to target ui item to include on a stage without\r\n * knowing the stage name defined in the host application.\r\n * @deprecated in 3.6. Use [StageUsage]($appui-react) instead.\r\n * @public\r\n */\r\nexport enum StageUsage {\r\n Private = \"Private\",\r\n General = \"General\",\r\n Redline = \"Redline\",\r\n ViewOnly = \"ViewOnly\",\r\n Edit = \"Edit\",\r\n Settings = \"Settings\",\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"MessagePresenter.js","sourceRoot":"","sources":["../../../../src/appui-abstract/notification/MessagePresenter.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAIH;;GAEG;AACH,IAAY,kBASX;AATD,WAAY,kBAAkB;IAC5B,mEAAmE;IACnE,6DAAS,CAAA;IACT,6EAA6E;IAC7E,+DAAU,CAAA;IACV,2DAA2D;IAC3D,uEAAc,CAAA;IACd,yBAAyB;IACzB,6DAAS,CAAA;AACX,CAAC,EATW,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAS7B","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Notification\n */\n\nimport { MessageSeverity } from \"./MessageSeverity\";\n\n/** Describes the type and behavior of a display message.\n * @public\n */\nexport enum DisplayMessageType {\n /** Temporary message that displays at the bottom of the screen. */\n Toast = 0,\n /** Message with a close button that displays at the bottom of the screen. */\n Sticky = 2,\n /** Message that displays near a specified HTML element. */\n InputField = 3,\n /** Modal message box. */\n Alert = 4,\n}\n\n/** MessagePresenter interface functions display messages.\n * @public\n */\nexport interface MessagePresenter {\n /**\n * Displays a message.\n * @param severity The severity of the message.\n * @param briefMessage A short message that conveys the simplest explanation of the issue.\n * @param detailedMessage An optional comprehensive message that explains the issue in detail and potentially offers a solution.\n * @param messageType The type of message. Defaults to Toast.\n */\n displayMessage(severity: MessageSeverity, briefMessage: HTMLElement | string, detailedMessage?: HTMLElement | string, messageType?: DisplayMessageType): void;\n\n /**\n * Displays an input field message.\n * @param inputField Input field to which the message pertains. The message will be shown just below this input field element.\n * @param severity The severity of the message.\n * @param briefMessage A short message that conveys the simplest explanation of the issue.\n * @param detailedMessage An optional comprehensive message that explains the issue in detail and potentially offers a solution.\n */\n displayInputFieldMessage(inputField: HTMLElement, severity: MessageSeverity, briefMessage: HTMLElement | string, detailedMessage?: HTMLElement | string): void;\n\n /**\n * Close message created with `displayInputFieldMessage`.\n */\n closeInputFieldMessage(): void;\n}\n"]}
1
+ {"version":3,"file":"MessagePresenter.js","sourceRoot":"","sources":["../../../../src/appui-abstract/notification/MessagePresenter.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAIH;;GAEG;AACH,IAAY,kBASX;AATD,WAAY,kBAAkB;IAC5B,mEAAmE;IACnE,6DAAS,CAAA;IACT,6EAA6E;IAC7E,+DAAU,CAAA;IACV,2DAA2D;IAC3D,uEAAc,CAAA;IACd,yBAAyB;IACzB,6DAAS,CAAA;AACX,CAAC,EATW,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAS7B","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Notification\r\n */\r\n\r\nimport { MessageSeverity } from \"./MessageSeverity\";\r\n\r\n/** Describes the type and behavior of a display message.\r\n * @public\r\n */\r\nexport enum DisplayMessageType {\r\n /** Temporary message that displays at the bottom of the screen. */\r\n Toast = 0,\r\n /** Message with a close button that displays at the bottom of the screen. */\r\n Sticky = 2,\r\n /** Message that displays near a specified HTML element. */\r\n InputField = 3,\r\n /** Modal message box. */\r\n Alert = 4,\r\n}\r\n\r\n/** MessagePresenter interface functions display messages.\r\n * @public\r\n */\r\nexport interface MessagePresenter {\r\n /**\r\n * Displays a message.\r\n * @param severity The severity of the message.\r\n * @param briefMessage A short message that conveys the simplest explanation of the issue.\r\n * @param detailedMessage An optional comprehensive message that explains the issue in detail and potentially offers a solution.\r\n * @param messageType The type of message. Defaults to Toast.\r\n */\r\n displayMessage(severity: MessageSeverity, briefMessage: HTMLElement | string, detailedMessage?: HTMLElement | string, messageType?: DisplayMessageType): void;\r\n\r\n /**\r\n * Displays an input field message.\r\n * @param inputField Input field to which the message pertains. The message will be shown just below this input field element.\r\n * @param severity The severity of the message.\r\n * @param briefMessage A short message that conveys the simplest explanation of the issue.\r\n * @param detailedMessage An optional comprehensive message that explains the issue in detail and potentially offers a solution.\r\n */\r\n displayInputFieldMessage(inputField: HTMLElement, severity: MessageSeverity, briefMessage: HTMLElement | string, detailedMessage?: HTMLElement | string): void;\r\n\r\n /**\r\n * Close message created with `displayInputFieldMessage`.\r\n */\r\n closeInputFieldMessage(): void;\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"MessageSeverity.js","sourceRoot":"","sources":["../../../../src/appui-abstract/notification/MessageSeverity.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH;;IAEI;AACJ,IAAY,eAQX;AARD,WAAY,eAAe;IACzB,qDAAQ,CAAA;IACR,mEAAe,CAAA;IACf,6DAAY,CAAA;IACZ,2DAAW,CAAA;IACX,uDAAS,CAAA;IACT,uDAAS,CAAA;IACT,2DAAW,CAAA;AACb,CAAC,EARW,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAQ1B","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Notification\n */\n\n/** Message Severity enum for display messages.\n * @public\n */\nexport enum MessageSeverity {\n None = 0,\n Information = 1,\n Question = 2,\n Warning = 3,\n Error = 4,\n Fatal = 5,\n Success = 6,\n}\n"]}
1
+ {"version":3,"file":"MessageSeverity.js","sourceRoot":"","sources":["../../../../src/appui-abstract/notification/MessageSeverity.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH;;IAEI;AACJ,IAAY,eAQX;AARD,WAAY,eAAe;IACzB,qDAAQ,CAAA;IACR,mEAAe,CAAA;IACf,6DAAY,CAAA;IACZ,2DAAW,CAAA;IACX,uDAAS,CAAA;IACT,uDAAS,CAAA;IACT,2DAAW,CAAA;AACb,CAAC,EARW,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAQ1B","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Notification\r\n */\r\n\r\n/** Message Severity enum for display messages.\r\n * @public\r\n */\r\nexport enum MessageSeverity {\r\n None = 0,\r\n Information = 1,\r\n Question = 2,\r\n Warning = 3,\r\n Error = 4,\r\n Fatal = 5,\r\n Success = 6,\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"Description.js","sourceRoot":"","sources":["../../../../src/appui-abstract/properties/Description.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Properties\n */\n\nimport {\n BasePropertyEditorParams, ColorEditorParams, ImageCheckBoxParams, PropertyEditorParams, PropertyEditorParamTypes, RangeEditorParams, SuppressLabelEditorParams,\n} from \"./EditorParams\";\nimport { StandardEditorNames } from \"./StandardEditorNames\";\nimport { StandardTypeNames } from \"./StandardTypeNames\";\n\n// cSpell:ignore Picklist\n\n/**\n * Information about an enumeration choice\n * @public\n */\nexport interface EnumerationChoice {\n label: string;\n value: string | number;\n}\n\n/**\n * Information about a set of enumeration choices\n * @public\n */\nexport interface EnumerationChoicesInfo {\n choices: Promise<EnumerationChoice[]> | EnumerationChoice[];\n isStrict?: boolean;\n maxDisplayedRows?: number;\n}\n\n/**\n * Property renderer identification and customization attributes\n * @public\n */\nexport interface PropertyRendererInfo {\n name: string;\n}\n\n/**\n * Information about a Property Editor\n * @public\n */\nexport interface PropertyEditorInfo {\n /** Editor name used in addition to the typename to find the registered property editor */\n name?: string;\n /** Editor params provided to the property editor */\n params?: PropertyEditorParams[];\n}\n\n/**\n * Information about a Property Converter\n * @public\n */\nexport interface PropertyConverterInfo {\n /** Converter name used in addition to the typename to find the registered property converter */\n name?: string;\n /** map of options for type converter */\n options?: { [key: string]: any };\n}\n\n/**\n * [[PropertyDescription]] contains metadata about a Property\n * @public\n */\nexport interface PropertyDescription {\n /** Name of the property description */\n name: string;\n /** Display label for the property description */\n displayLabel: string;\n /** Type name used to determine applicable Type Converter and Property Editor */\n typename: string;\n /** Additional information for enumerations */\n enum?: EnumerationChoicesInfo;\n /** Information for property renderer customization */\n renderer?: PropertyRendererInfo;\n /** Information for a property editor */\n editor?: PropertyEditorInfo;\n /** Information for a property converter */\n converter?: PropertyConverterInfo;\n /** Quantity type key used to look up formatting and parsing specs. This is typically either the name of a quantity type used by a tool\n * or the full name of a KOQ (schema:koq).\n * @alpha\n */\n quantityType?: string;\n /** Get the custom DataController by this name and register it with the property editor */\n dataController?: string;\n /**\n * Should property label for composite (struct & array) properties be rendered.\n * @alpha\n */\n hideCompositePropertyLabel?: boolean;\n}\n\n/** Helper class that builds property descriptions for specific PropertyEditors and processes descriptions.\n * @public\n */\nexport class PropertyDescriptionHelper {\n /** Builds a number description with a \"weight-picker\" editor name\n * @public\n */\n public static buildWeightPickerDescription(name: string, label: string, additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\n return {\n name,\n displayLabel: label,\n typename: StandardTypeNames.Number,\n editor: {\n name: StandardEditorNames.WeightPicker,\n params: additionalParams,\n },\n };\n }\n\n /** Builds an editor that uses [NumberInput]($core-react) control\n * @public\n */\n public static buildNumberEditorDescription(name: string, label: string, overrideParams?: RangeEditorParams, additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\n const editorParams = [{\n type: PropertyEditorParamTypes.Range,\n step: 1,\n precision: 0,\n ...overrideParams,\n } as RangeEditorParams, ...additionalParams];\n\n const editor = {\n name: StandardEditorNames.NumericInput,\n params: editorParams,\n };\n\n return {\n name,\n displayLabel: label,\n typename: StandardTypeNames.Number,\n editor,\n };\n }\n\n /** Builds a string description\n * @public\n */\n public static buildTextEditorDescription(name: string, label: string, additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\n const editor = {\n params: additionalParams,\n };\n\n return {\n name,\n displayLabel: label,\n typename: StandardTypeNames.String,\n editor,\n };\n }\n\n /** Builds an enum description\n * @public\n */\n public static buildEnumPicklistEditorDescription(name: string, label: string,\n choices: Promise<EnumerationChoice[]> | EnumerationChoice[],\n additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\n const editor = additionalParams.length ? {\n params: additionalParams,\n } : undefined;\n\n return {\n name,\n displayLabel: label,\n typename: StandardTypeNames.Enum,\n editor,\n enum: {\n choices,\n },\n };\n }\n\n /** Builds a number description for a tool settings or dialog property that will display a \"color-picker\" control.\n * @public\n */\n public static buildColorPickerDescription(name: string, label: string, colorValues: number[], numColumns: number,\n additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\n const editorParams = [\n {\n type: PropertyEditorParamTypes.ColorData,\n colorValues,\n numColumns,\n } as ColorEditorParams,\n ...additionalParams,\n ];\n\n return {\n name,\n displayLabel: label,\n typename: StandardTypeNames.Number,\n editor: {\n name: StandardEditorNames.ColorPicker,\n params: editorParams,\n },\n };\n }\n\n /** Builds a boolean description for a tool settings or dialog property that will display a \"toggle\" control.\n * @public\n */\n public static buildToggleDescription(name: string, label: string, additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\n return {\n name,\n displayLabel: label,\n typename: StandardTypeNames.Boolean,\n editor: {\n name: StandardEditorNames.Toggle,\n params: additionalParams,\n },\n };\n }\n\n /** Builds a boolean description for a tool settings or dialog property that will display a \"image-check-box\" control.\n * @public\n */\n public static buildImageCheckBoxDescription(name: string, label: string, imageOff: string, imageOn: string, additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\n const editorParams = [{\n type: PropertyEditorParamTypes.CheckBoxImages,\n imageOff,\n imageOn,\n } as ImageCheckBoxParams, ...additionalParams];\n\n return {\n name,\n displayLabel: label,\n typename: StandardTypeNames.Boolean,\n editor: {\n name: StandardEditorNames.ImageCheckBox,\n params: editorParams,\n },\n };\n }\n\n /** Builds a boolean description for a tool settings or dialog property that will display a checkbox control.\n * @public\n */\n public static buildCheckboxDescription(name: string, label: string, additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\n const editor = {\n params: additionalParams,\n };\n\n return {\n name,\n displayLabel: label,\n typename: StandardTypeNames.Boolean,\n editor,\n };\n }\n\n /** Builds a property description for a tool settings or dialog `lock` property. This will create a checkbox control with no label.\n * @public\n */\n public static buildLockPropertyDescription(name: string, additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\n const defaultParams = {\n type: PropertyEditorParamTypes.SuppressEditorLabel,\n suppressLabelPlaceholder: true,\n } as SuppressLabelEditorParams;\n\n const editor = {\n params: [defaultParams, ...additionalParams],\n };\n\n return {\n name,\n displayLabel: \"\",\n typename: StandardTypeNames.Boolean,\n editor,\n };\n }\n\n /** Bumps an enum property description value\n * @public\n */\n public static async bumpEnumProperty(description: PropertyDescription, value: string | number): Promise<string | number> {\n let choices: EnumerationChoice[] | undefined;\n\n if (description.enum) {\n if (description.enum.choices instanceof Promise) {\n choices = await description.enum.choices;\n } else {\n choices = description.enum.choices;\n }\n }\n\n if (!choices || choices.length === 0)\n return value;\n\n let choiceIndex = choices.findIndex((choice) => choice.value === value);\n if (choiceIndex < 0)\n return value;\n\n choiceIndex++;\n if (choiceIndex >= choices.length)\n choiceIndex = 0;\n\n const newValue = choices[choiceIndex].value;\n return newValue;\n }\n}\n"]}
1
+ {"version":3,"file":"Description.js","sourceRoot":"","sources":["../../../../src/appui-abstract/properties/Description.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Properties\r\n */\r\n\r\nimport {\r\n BasePropertyEditorParams, ColorEditorParams, ImageCheckBoxParams, PropertyEditorParams, PropertyEditorParamTypes, RangeEditorParams, SuppressLabelEditorParams,\r\n} from \"./EditorParams\";\r\nimport { StandardEditorNames } from \"./StandardEditorNames\";\r\nimport { StandardTypeNames } from \"./StandardTypeNames\";\r\n\r\n// cSpell:ignore Picklist\r\n\r\n/**\r\n * Information about an enumeration choice\r\n * @public\r\n */\r\nexport interface EnumerationChoice {\r\n label: string;\r\n value: string | number;\r\n}\r\n\r\n/**\r\n * Information about a set of enumeration choices\r\n * @public\r\n */\r\nexport interface EnumerationChoicesInfo {\r\n choices: Promise<EnumerationChoice[]> | EnumerationChoice[];\r\n isStrict?: boolean;\r\n maxDisplayedRows?: number;\r\n}\r\n\r\n/**\r\n * Property renderer identification and customization attributes\r\n * @public\r\n */\r\nexport interface PropertyRendererInfo {\r\n name: string;\r\n}\r\n\r\n/**\r\n * Information about a Property Editor\r\n * @public\r\n */\r\nexport interface PropertyEditorInfo {\r\n /** Editor name used in addition to the typename to find the registered property editor */\r\n name?: string;\r\n /** Editor params provided to the property editor */\r\n params?: PropertyEditorParams[];\r\n}\r\n\r\n/**\r\n * Information about a Property Converter\r\n * @public\r\n */\r\nexport interface PropertyConverterInfo {\r\n /** Converter name used in addition to the typename to find the registered property converter */\r\n name?: string;\r\n /** map of options for type converter */\r\n options?: { [key: string]: any };\r\n}\r\n\r\n/**\r\n * [[PropertyDescription]] contains metadata about a Property\r\n * @public\r\n */\r\nexport interface PropertyDescription {\r\n /** Name of the property description */\r\n name: string;\r\n /** Display label for the property description */\r\n displayLabel: string;\r\n /** Type name used to determine applicable Type Converter and Property Editor */\r\n typename: string;\r\n /** Additional information for enumerations */\r\n enum?: EnumerationChoicesInfo;\r\n /** Information for property renderer customization */\r\n renderer?: PropertyRendererInfo;\r\n /** Information for a property editor */\r\n editor?: PropertyEditorInfo;\r\n /** Information for a property converter */\r\n converter?: PropertyConverterInfo;\r\n /** Quantity type key used to look up formatting and parsing specs. This is typically either the name of a quantity type used by a tool\r\n * or the full name of a KOQ (schema:koq).\r\n * @alpha\r\n */\r\n quantityType?: string;\r\n /** Get the custom DataController by this name and register it with the property editor */\r\n dataController?: string;\r\n /**\r\n * Should property label for composite (struct & array) properties be rendered.\r\n * @alpha\r\n */\r\n hideCompositePropertyLabel?: boolean;\r\n}\r\n\r\n/** Helper class that builds property descriptions for specific PropertyEditors and processes descriptions.\r\n * @public\r\n */\r\nexport class PropertyDescriptionHelper {\r\n /** Builds a number description with a \"weight-picker\" editor name\r\n * @public\r\n */\r\n public static buildWeightPickerDescription(name: string, label: string, additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\r\n return {\r\n name,\r\n displayLabel: label,\r\n typename: StandardTypeNames.Number,\r\n editor: {\r\n name: StandardEditorNames.WeightPicker,\r\n params: additionalParams,\r\n },\r\n };\r\n }\r\n\r\n /** Builds an editor that uses [NumberInput]($core-react) control\r\n * @public\r\n */\r\n public static buildNumberEditorDescription(name: string, label: string, overrideParams?: RangeEditorParams, additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\r\n const editorParams = [{\r\n type: PropertyEditorParamTypes.Range,\r\n step: 1,\r\n precision: 0,\r\n ...overrideParams,\r\n } as RangeEditorParams, ...additionalParams];\r\n\r\n const editor = {\r\n name: StandardEditorNames.NumericInput,\r\n params: editorParams,\r\n };\r\n\r\n return {\r\n name,\r\n displayLabel: label,\r\n typename: StandardTypeNames.Number,\r\n editor,\r\n };\r\n }\r\n\r\n /** Builds a string description\r\n * @public\r\n */\r\n public static buildTextEditorDescription(name: string, label: string, additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\r\n const editor = {\r\n params: additionalParams,\r\n };\r\n\r\n return {\r\n name,\r\n displayLabel: label,\r\n typename: StandardTypeNames.String,\r\n editor,\r\n };\r\n }\r\n\r\n /** Builds an enum description\r\n * @public\r\n */\r\n public static buildEnumPicklistEditorDescription(name: string, label: string,\r\n choices: Promise<EnumerationChoice[]> | EnumerationChoice[],\r\n additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\r\n const editor = additionalParams.length ? {\r\n params: additionalParams,\r\n } : undefined;\r\n\r\n return {\r\n name,\r\n displayLabel: label,\r\n typename: StandardTypeNames.Enum,\r\n editor,\r\n enum: {\r\n choices,\r\n },\r\n };\r\n }\r\n\r\n /** Builds a number description for a tool settings or dialog property that will display a \"color-picker\" control.\r\n * @public\r\n */\r\n public static buildColorPickerDescription(name: string, label: string, colorValues: number[], numColumns: number,\r\n additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\r\n const editorParams = [\r\n {\r\n type: PropertyEditorParamTypes.ColorData,\r\n colorValues,\r\n numColumns,\r\n } as ColorEditorParams,\r\n ...additionalParams,\r\n ];\r\n\r\n return {\r\n name,\r\n displayLabel: label,\r\n typename: StandardTypeNames.Number,\r\n editor: {\r\n name: StandardEditorNames.ColorPicker,\r\n params: editorParams,\r\n },\r\n };\r\n }\r\n\r\n /** Builds a boolean description for a tool settings or dialog property that will display a \"toggle\" control.\r\n * @public\r\n */\r\n public static buildToggleDescription(name: string, label: string, additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\r\n return {\r\n name,\r\n displayLabel: label,\r\n typename: StandardTypeNames.Boolean,\r\n editor: {\r\n name: StandardEditorNames.Toggle,\r\n params: additionalParams,\r\n },\r\n };\r\n }\r\n\r\n /** Builds a boolean description for a tool settings or dialog property that will display a \"image-check-box\" control.\r\n * @public\r\n */\r\n public static buildImageCheckBoxDescription(name: string, label: string, imageOff: string, imageOn: string, additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\r\n const editorParams = [{\r\n type: PropertyEditorParamTypes.CheckBoxImages,\r\n imageOff,\r\n imageOn,\r\n } as ImageCheckBoxParams, ...additionalParams];\r\n\r\n return {\r\n name,\r\n displayLabel: label,\r\n typename: StandardTypeNames.Boolean,\r\n editor: {\r\n name: StandardEditorNames.ImageCheckBox,\r\n params: editorParams,\r\n },\r\n };\r\n }\r\n\r\n /** Builds a boolean description for a tool settings or dialog property that will display a checkbox control.\r\n * @public\r\n */\r\n public static buildCheckboxDescription(name: string, label: string, additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\r\n const editor = {\r\n params: additionalParams,\r\n };\r\n\r\n return {\r\n name,\r\n displayLabel: label,\r\n typename: StandardTypeNames.Boolean,\r\n editor,\r\n };\r\n }\r\n\r\n /** Builds a property description for a tool settings or dialog `lock` property. This will create a checkbox control with no label.\r\n * @public\r\n */\r\n public static buildLockPropertyDescription(name: string, additionalParams: BasePropertyEditorParams[] = []): PropertyDescription {\r\n const defaultParams = {\r\n type: PropertyEditorParamTypes.SuppressEditorLabel,\r\n suppressLabelPlaceholder: true,\r\n } as SuppressLabelEditorParams;\r\n\r\n const editor = {\r\n params: [defaultParams, ...additionalParams],\r\n };\r\n\r\n return {\r\n name,\r\n displayLabel: \"\",\r\n typename: StandardTypeNames.Boolean,\r\n editor,\r\n };\r\n }\r\n\r\n /** Bumps an enum property description value\r\n * @public\r\n */\r\n public static async bumpEnumProperty(description: PropertyDescription, value: string | number): Promise<string | number> {\r\n let choices: EnumerationChoice[] | undefined;\r\n\r\n if (description.enum) {\r\n if (description.enum.choices instanceof Promise) {\r\n choices = await description.enum.choices;\r\n } else {\r\n choices = description.enum.choices;\r\n }\r\n }\r\n\r\n if (!choices || choices.length === 0)\r\n return value;\r\n\r\n let choiceIndex = choices.findIndex((choice) => choice.value === value);\r\n if (choiceIndex < 0)\r\n return value;\r\n\r\n choiceIndex++;\r\n if (choiceIndex >= choices.length)\r\n choiceIndex = 0;\r\n\r\n const newValue = choices[choiceIndex].value;\r\n return newValue;\r\n }\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"EditorParams.js","sourceRoot":"","sources":["../../../../src/appui-abstract/properties/EditorParams.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAcH;;GAEG;AACH,IAAY,oBAcX;AAdD,WAAY,oBAAoB;IAC9B,+DAAQ,CAAA;IACR,aAAa;IACb,uEAAY,CAAA;IACZ,2BAA2B;IAC3B,6EAAW,CAAA;IACX,cAAc;IACd,uEAAQ,CAAA;IACR,2BAA2B;IAC3B,6EAAW,CAAA;IACX,mBAAmB;IACnB,qFAAe,CAAA;IACf,gCAAgC;IAChC,2FAAkB,CAAA;AACpB,CAAC,EAdW,oBAAoB,GAApB,4BAAoB,KAApB,4BAAoB,QAc/B;AAED;;GAEG;AACH,IAAY,WASX;AATD,WAAY,WAAW;IACrB,wCAAwC;IACxC,iCAAkB,CAAA;IAClB,iDAAiD;IACjD,qCAAsB,CAAA;IACtB,uBAAuB;IACvB,6BAAc,CAAA;IACd,mCAAmC;IACnC,iCAAkB,CAAA;AACpB,CAAC,EATW,WAAW,GAAX,mBAAW,KAAX,mBAAW,QAStB;AAED;;;GAGG;AACH,IAAY,wBAeX;AAfD,WAAY,wBAAwB;IAClC,0EAA8C,CAAA;IAC9C,sEAA0C,CAAA;IAC1C,oDAAwB,CAAA;IACxB,0EAA8C,CAAA;IAC9C,8DAAkC,CAAA;IAClC,sFAA0D,CAAA;IAC1D,oEAAwC,CAAA;IACxC,4BAA4B;IAC5B,sEAA0C,CAAA;IAC1C,sDAA0B,CAAA;IAC1B,wDAA4B,CAAA;IAC5B,sDAAsD;IACtD,kFAAsD,CAAA;IACtD,wEAA4C,CAAA;AAC9C,CAAC,EAfW,wBAAwB,GAAxB,gCAAwB,KAAxB,gCAAwB,QAenC;AAyBD;;GAEG;AACI,MAAM,uBAAuB,GAAG,CAAC,IAA8B,EAAiC,EAAE;IACvG,OAAO,IAAI,CAAC,IAAI,KAAK,wBAAwB,CAAC,eAAe,CAAC;AAChE,CAAC,CAAC;AAFW,QAAA,uBAAuB,2BAElC;AAeF;;GAEG;AACI,MAAM,mBAAmB,GAAG,CAAC,IAA8B,EAA6B,EAAE;IAC/F,OAAO,IAAI,CAAC,IAAI,KAAK,wBAAwB,CAAC,SAAS,CAAC;AAC1D,CAAC,CAAC;AAFW,QAAA,mBAAmB,uBAE9B;AAgBF;;GAEG;AACI,MAAM,sBAAsB,GAAG,CAAC,IAA8B,EAAgC,EAAE;IACrG,OAAO,IAAI,CAAC,IAAI,KAAK,wBAAwB,CAAC,YAAY,CAAC;AAC7D,CAAC,CAAC;AAFW,QAAA,sBAAsB,0BAEjC;AAsBF;;GAEG;AACI,MAAM,yBAAyB,GAAG,CAAC,IAA8B,EAAmC,EAAE;IAC3G,OAAO,IAAI,CAAC,IAAI,KAAK,wBAAwB,CAAC,eAAe,CAAC;AAChE,CAAC,CAAC;AAFW,QAAA,yBAAyB,6BAEpC;AAYF;;GAEG;AACI,MAAM,2BAA2B,GAAG,CAAC,IAA8B,EAAqC,EAAE;IAC/G,OAAO,IAAI,CAAC,IAAI,KAAK,wBAAwB,CAAC,mBAAmB,CAAC;AACpE,CAAC,CAAC;AAFW,QAAA,2BAA2B,+BAEtC;AA4IF;;GAEG;AACI,MAAM,6BAA6B,GAAG,CAAC,IAA8B,EAAuC,EAAE;IACnH,OAAO,IAAI,CAAC,IAAI,KAAK,wBAAwB,CAAC,qBAAqB,CAAC;AACtE,CAAC,CAAC;AAFW,QAAA,6BAA6B,iCAExC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Properties\n */\n\n// cspell:ignore BBGGRR pushable DDTHH\n\n/** Interface used to provide a custom Date Time formatter and optional parser\n * for use by `DatePickerPopup`. If a parseData function is not implemented\n * then string to date parsing will not be possible when a `DateFormatter` is used.\n * @public\n */\nexport interface DateFormatter {\n formateDate: (day: Date) => string;\n parseDate?: (dateString: string) => Date | undefined;\n}\n\n/** Alternate Data Formats that can be provide by javascript. Can be used by Date TypeConverter and TypeEditor.\n * @public\n */\nexport enum AlternateDateFormats {\n None = 0,\n // YYYY-MM-DD\n IsoShort = 1,\n // YYYY-MM-DDTHH:mm:ss.sssZ\n IsoDateTime,\n // dd Mmm yyyy\n UtcShort,\n // dd Mmm yyyy hh:mm:ss GMT\n UtcDateTime,\n // Www, dd Mmm yyyy\n UtcShortWithDay,\n // Www, dd Mmm yyyy hh:mm:ss GMT\n UtcDateTimeWithDay,\n}\n\n/** Enum that defines supported time formats.\n * @public\n */\nexport enum TimeDisplay {\n // 12 hour with minutes and cycle(AM/PM)\n H12MC = \"hh:mm aa\",\n // 12 hour with minutes, seconds and cycle(AM/PM)\n H12MSC = \"hh:mm:ss aa\",\n // 24 hour with minutes\n H24M = \"hh:mm\",\n // 24 hour with minutes and seconds\n H24MS = \"hh:mm:ss\",\n}\n\n/**\n * Enum for Property Editor Param Types\n * @public\n */\nexport enum PropertyEditorParamTypes {\n ButtonGroupData = \"UiAbstract-ButtonGroupData\",\n CheckBoxIcons = \"UiAbstract-CheckBoxIcons\",\n Icon = \"UiAbstract-Icon\",\n InputEditorSize = \"UiAbstract-InputEditorSize\",\n ColorData = \"UiAbstract-ColorData\",\n CustomFormattedNumber = \"UiAbstract-CustomFormattedNumber\",\n IconListData = \"UiAbstract-IconListData\",\n // JSON = \"UiAbstract-JSON\",\n MultilineText = \"UiAbstract-MultilineText\",\n Range = \"UiAbstract-Range\",\n Slider = \"UiAbstract-Slider\",\n // SuppressUnitLabel = \"UiAbstract-SuppressUnitLabel\",\n SuppressEditorLabel = \"UiAbstract-SuppressEditorLabel\",\n CheckBoxImages = \"UiAbstract-CheckBoxImages\",\n}\n\n/**\n * [[BasePropertyEditorParams]] Base interface for Property Editor Params\n * @public\n */\nexport interface BasePropertyEditorParams {\n type: string;\n}\n\n/**\n * Parameters used by PropertyEditors that use HTML <input> element.\n * @public\n */\n/** [[InputEditorSizeParams]] type guard.\n * @public\n */\nexport interface InputEditorSizeParams extends BasePropertyEditorParams {\n type: PropertyEditorParamTypes.InputEditorSize;\n /** Optionally define the width in characters. */\n size?: number;\n /** Optionally define the maximum number of characters allowed. */\n maxLength?: number;\n}\n\n/** InputEditorSizeParams type guard.\n * @public\n */\nexport const isInputEditorSizeParams = (item: BasePropertyEditorParams): item is InputEditorSizeParams => {\n return item.type === PropertyEditorParamTypes.InputEditorSize;\n};\n\n/**\n * [[ColorEditorParams]] Parameters used to populate color type editor with a specific set of colors. If not specified the Color\n * Editor will show a default palette of 16 colors.\n * @public\n */\nexport interface ColorEditorParams extends BasePropertyEditorParams {\n type: PropertyEditorParamTypes.ColorData;\n /** array of color values to show in color picker popup. Use [[ColorByName]] enum values. Values should be 32-bit integer in the form 0xBBGGRR. */\n colorValues: number[];\n /** number of columns to show in color picker popup. The value of 4 is used if not defined. */\n numColumns?: number;\n}\n\n/** ColorEditorParams type guard.\n * @public\n */\nexport const isColorEditorParams = (item: BasePropertyEditorParams): item is ColorEditorParams => {\n return item.type === PropertyEditorParamTypes.ColorData;\n};\n\n/**\n * [[IconListEditorParams]] Parameters used to populate icon type editor with a specific set of icons.\n * @public\n */\nexport interface IconListEditorParams extends BasePropertyEditorParams {\n type: PropertyEditorParamTypes.IconListData;\n /** active icon shown in the button */\n iconValue: string;\n /** array of icon (svg) names to show in icon picker popup. */\n iconValues: string[];\n /** number of columns to show in icon picker popup. The value of 4 is used if not defined. */\n numColumns?: number;\n}\n\n/** IconListEditorParams type guard.\n * @public\n */\nexport const isIconListEditorParams = (item: BasePropertyEditorParams): item is IconListEditorParams => {\n return item.type === PropertyEditorParamTypes.IconListData;\n};\n\n/**\n * [[IconDefinition]] Information about an icon displayed next to a property editor.\n * @public\n */\nexport interface IconDefinition {\n /** Icon specification. The value is the name of an icon WebFont entry, or if specifying an imported SVG symbol use \"webSvg:\" prefix . */\n iconSpec: string;\n /** Function to determine if the item is enabled. */\n isEnabledFunction?: () => boolean;\n}\n\n/**\n * [[ButtonGroupEditorParams]] Parameters used by EnumButtonGroupEditor to define icons in button group.\n * @public\n */\nexport interface ButtonGroupEditorParams extends BasePropertyEditorParams {\n type: PropertyEditorParamTypes.ButtonGroupData;\n buttons: IconDefinition[];\n}\n\n/** ButtonGroupEditorParams type guard.\n * @public\n */\nexport const isButtonGroupEditorParams = (item: BasePropertyEditorParams): item is ButtonGroupEditorParams => {\n return item.type === PropertyEditorParamTypes.ButtonGroupData;\n};\n\n/**\n * [[SuppressLabelEditorParams]] Parameters used to suppress the label for a type editor in the ToolSettings widget.\n * @public\n */\nexport interface SuppressLabelEditorParams extends BasePropertyEditorParams {\n type: PropertyEditorParamTypes.SuppressEditorLabel;\n /** if false then an empty placeholder label is created. This is sometimes necessary to align editor in proper column */\n suppressLabelPlaceholder?: boolean;\n}\n\n/** SuppressLabelEditorParams type guard.\n * @public\n */\nexport const isSuppressLabelEditorParams = (item: BasePropertyEditorParams): item is SuppressLabelEditorParams => {\n return item.type === PropertyEditorParamTypes.SuppressEditorLabel;\n};\n\n// /**\n// * Parameters used by PropertyEditors that support JSON.\n// * @alpha\n// */\n// export interface JsonEditorParams extends BasePropertyEditorParams {\n// type: PropertyEditorParamTypes.JSON;\n// json: any;\n// }\n\n/**\n * Parameters used by PropertyEditors that support defining a minimum and maximum value.\n * @public\n */\nexport interface RangeEditorParams extends BasePropertyEditorParams {\n type: PropertyEditorParamTypes.Range;\n /** Defines the minimum value. Default is Number.MIN_SAFE_INTEGER. */\n minimum?: number;\n /** Defines the maximum value. Default is Number.MAX_SAFE_INTEGER. */\n maximum?: number;\n /** Defines the step value. Default is 1. */\n step?: number;\n /** Defines the precision. Default is 0. */\n precision?: number;\n}\n\n/**\n * Parameters used to indicate that a Slider should be presented for the property\n * and to specify the values needed by the slider.\n * @public\n */\nexport interface SliderEditorParams extends BasePropertyEditorParams {\n type: PropertyEditorParamTypes.Slider;\n /** Defines the minimum value. */\n minimum: number;\n /** Defines the maximum value. */\n maximum: number;\n\n /** Optionally define the width in pixels. */\n size?: number;\n\n /** Step value. Default is 0.1. */\n step?: number;\n /** The interaction mode. Default is 1. Possible values:\n * 1 - allows handles to cross each other.\n * 2 - keeps the sliders from crossing and separated by a step.\n */\n mode?: number;\n\n /** Indicates whether the display of the Slider values is reversed. */\n reversed?: boolean;\n\n /** Indicates whether to show tooltip with the value. The tooltip will be positioned above the Slider, by default. */\n showTooltip?: boolean;\n /** Indicates whether the tooltip should show below the Slider instead of above. */\n tooltipBelow?: boolean;\n /** Format a value for the tooltip */\n formatTooltip?: (value: number) => string;\n\n /** Indicates whether to show min & max values to the left & right of the Slider. */\n showMinMax?: boolean;\n /** Image to show for min. */\n minIconSpec?: string;\n /** Image to show for max. */\n maxIconSpec?: string;\n\n /** Indicates whether to show tick marks under the Slider. */\n showTicks?: boolean;\n /** Indicates whether to show tick labels under the tick marks. */\n showTickLabels?: boolean;\n /** Format a tick mark value */\n formatTick?: (tick: number) => string;\n /** Function to get the tick count. The default tick count is 10. */\n getTickCount?: () => number;\n /** Function to get the tick values. This overrides the tick count from getTickCount.\n * Use this prop if you want to specify your own tick values instead of ticks generated by the slider.\n * The numbers should be valid numbers in the domain and correspond to the step value.\n * Invalid values will be coerced to the closet matching value in the domain.\n */\n getTickValues?: () => number[];\n}\n\n/**\n * Parameter that is used to indicate that a multiline text editor should be created.\n * The number of rows specified will determine the height of the editor control.\n * @public\n */\nexport interface MultilineTextEditorParams extends BasePropertyEditorParams {\n type: PropertyEditorParamTypes.MultilineText;\n rows: number;\n}\n\n/**\n * Parameters used to display an icon next to property editor.\n * @public\n */\nexport interface IconEditorParams extends BasePropertyEditorParams {\n type: PropertyEditorParamTypes.Icon;\n definition: IconDefinition;\n}\n\n/**\n * Parameters for ImageCheckBoxEditor\n * @public\n */\nexport interface ImageCheckBoxParams extends BasePropertyEditorParams {\n type: PropertyEditorParamTypes.CheckBoxImages;\n imageOn: string;\n imageOff: string;\n\n}\n\n// /**\n// * Parameter used to suppress Unit labels\n// * @alpha\n// */\n// export interface SuppressUnitLabelEditorParams extends BasePropertyEditorParams {\n// type: PropertyEditorParamTypes.SuppressUnitLabel;\n// }\n\n/**\n * defines Results of parsing a string input by a user into its desired value type\n * @public\n */\nexport interface ParseResults {\n value?: string | number | boolean | {} | string[] | Date | [] | undefined;\n parseError?: string;\n}\n\n/**\n * Parameters used with properties that want to control parsing and formatting.\n * @public\n */\nexport interface CustomFormattedNumberParams extends BasePropertyEditorParams {\n type: PropertyEditorParamTypes.CustomFormattedNumber;\n formatFunction: (numberValue: number) => string;\n parseFunction: (stringValue: string) => ParseResults;\n}\n\n/** CustomFormattedNumberParams type guard.\n * @public\n */\nexport const isCustomFormattedNumberParams = (item: BasePropertyEditorParams): item is CustomFormattedNumberParams => {\n return item.type === PropertyEditorParamTypes.CustomFormattedNumber;\n};\n\n/**\n * Type definition for Property Editor params\n * @public\n */\nexport type PropertyEditorParams = BasePropertyEditorParams;\n"]}
1
+ {"version":3,"file":"EditorParams.js","sourceRoot":"","sources":["../../../../src/appui-abstract/properties/EditorParams.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAcH;;GAEG;AACH,IAAY,oBAcX;AAdD,WAAY,oBAAoB;IAC9B,+DAAQ,CAAA;IACR,aAAa;IACb,uEAAY,CAAA;IACZ,2BAA2B;IAC3B,6EAAW,CAAA;IACX,cAAc;IACd,uEAAQ,CAAA;IACR,2BAA2B;IAC3B,6EAAW,CAAA;IACX,mBAAmB;IACnB,qFAAe,CAAA;IACf,gCAAgC;IAChC,2FAAkB,CAAA;AACpB,CAAC,EAdW,oBAAoB,GAApB,4BAAoB,KAApB,4BAAoB,QAc/B;AAED;;GAEG;AACH,IAAY,WASX;AATD,WAAY,WAAW;IACrB,wCAAwC;IACxC,iCAAkB,CAAA;IAClB,iDAAiD;IACjD,qCAAsB,CAAA;IACtB,uBAAuB;IACvB,6BAAc,CAAA;IACd,mCAAmC;IACnC,iCAAkB,CAAA;AACpB,CAAC,EATW,WAAW,GAAX,mBAAW,KAAX,mBAAW,QAStB;AAED;;;GAGG;AACH,IAAY,wBAeX;AAfD,WAAY,wBAAwB;IAClC,0EAA8C,CAAA;IAC9C,sEAA0C,CAAA;IAC1C,oDAAwB,CAAA;IACxB,0EAA8C,CAAA;IAC9C,8DAAkC,CAAA;IAClC,sFAA0D,CAAA;IAC1D,oEAAwC,CAAA;IACxC,4BAA4B;IAC5B,sEAA0C,CAAA;IAC1C,sDAA0B,CAAA;IAC1B,wDAA4B,CAAA;IAC5B,sDAAsD;IACtD,kFAAsD,CAAA;IACtD,wEAA4C,CAAA;AAC9C,CAAC,EAfW,wBAAwB,GAAxB,gCAAwB,KAAxB,gCAAwB,QAenC;AAyBD;;GAEG;AACI,MAAM,uBAAuB,GAAG,CAAC,IAA8B,EAAiC,EAAE;IACvG,OAAO,IAAI,CAAC,IAAI,KAAK,wBAAwB,CAAC,eAAe,CAAC;AAChE,CAAC,CAAC;AAFW,QAAA,uBAAuB,2BAElC;AAeF;;GAEG;AACI,MAAM,mBAAmB,GAAG,CAAC,IAA8B,EAA6B,EAAE;IAC/F,OAAO,IAAI,CAAC,IAAI,KAAK,wBAAwB,CAAC,SAAS,CAAC;AAC1D,CAAC,CAAC;AAFW,QAAA,mBAAmB,uBAE9B;AAgBF;;GAEG;AACI,MAAM,sBAAsB,GAAG,CAAC,IAA8B,EAAgC,EAAE;IACrG,OAAO,IAAI,CAAC,IAAI,KAAK,wBAAwB,CAAC,YAAY,CAAC;AAC7D,CAAC,CAAC;AAFW,QAAA,sBAAsB,0BAEjC;AAsBF;;GAEG;AACI,MAAM,yBAAyB,GAAG,CAAC,IAA8B,EAAmC,EAAE;IAC3G,OAAO,IAAI,CAAC,IAAI,KAAK,wBAAwB,CAAC,eAAe,CAAC;AAChE,CAAC,CAAC;AAFW,QAAA,yBAAyB,6BAEpC;AAYF;;GAEG;AACI,MAAM,2BAA2B,GAAG,CAAC,IAA8B,EAAqC,EAAE;IAC/G,OAAO,IAAI,CAAC,IAAI,KAAK,wBAAwB,CAAC,mBAAmB,CAAC;AACpE,CAAC,CAAC;AAFW,QAAA,2BAA2B,+BAEtC;AA4IF;;GAEG;AACI,MAAM,6BAA6B,GAAG,CAAC,IAA8B,EAAuC,EAAE;IACnH,OAAO,IAAI,CAAC,IAAI,KAAK,wBAAwB,CAAC,qBAAqB,CAAC;AACtE,CAAC,CAAC;AAFW,QAAA,6BAA6B,iCAExC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Properties\r\n */\r\n\r\n// cspell:ignore BBGGRR pushable DDTHH\r\n\r\n/** Interface used to provide a custom Date Time formatter and optional parser\r\n * for use by `DatePickerPopup`. If a parseData function is not implemented\r\n * then string to date parsing will not be possible when a `DateFormatter` is used.\r\n * @public\r\n */\r\nexport interface DateFormatter {\r\n formateDate: (day: Date) => string;\r\n parseDate?: (dateString: string) => Date | undefined;\r\n}\r\n\r\n/** Alternate Data Formats that can be provide by javascript. Can be used by Date TypeConverter and TypeEditor.\r\n * @public\r\n */\r\nexport enum AlternateDateFormats {\r\n None = 0,\r\n // YYYY-MM-DD\r\n IsoShort = 1,\r\n // YYYY-MM-DDTHH:mm:ss.sssZ\r\n IsoDateTime,\r\n // dd Mmm yyyy\r\n UtcShort,\r\n // dd Mmm yyyy hh:mm:ss GMT\r\n UtcDateTime,\r\n // Www, dd Mmm yyyy\r\n UtcShortWithDay,\r\n // Www, dd Mmm yyyy hh:mm:ss GMT\r\n UtcDateTimeWithDay,\r\n}\r\n\r\n/** Enum that defines supported time formats.\r\n * @public\r\n */\r\nexport enum TimeDisplay {\r\n // 12 hour with minutes and cycle(AM/PM)\r\n H12MC = \"hh:mm aa\",\r\n // 12 hour with minutes, seconds and cycle(AM/PM)\r\n H12MSC = \"hh:mm:ss aa\",\r\n // 24 hour with minutes\r\n H24M = \"hh:mm\",\r\n // 24 hour with minutes and seconds\r\n H24MS = \"hh:mm:ss\",\r\n}\r\n\r\n/**\r\n * Enum for Property Editor Param Types\r\n * @public\r\n */\r\nexport enum PropertyEditorParamTypes {\r\n ButtonGroupData = \"UiAbstract-ButtonGroupData\",\r\n CheckBoxIcons = \"UiAbstract-CheckBoxIcons\",\r\n Icon = \"UiAbstract-Icon\",\r\n InputEditorSize = \"UiAbstract-InputEditorSize\",\r\n ColorData = \"UiAbstract-ColorData\",\r\n CustomFormattedNumber = \"UiAbstract-CustomFormattedNumber\",\r\n IconListData = \"UiAbstract-IconListData\",\r\n // JSON = \"UiAbstract-JSON\",\r\n MultilineText = \"UiAbstract-MultilineText\",\r\n Range = \"UiAbstract-Range\",\r\n Slider = \"UiAbstract-Slider\",\r\n // SuppressUnitLabel = \"UiAbstract-SuppressUnitLabel\",\r\n SuppressEditorLabel = \"UiAbstract-SuppressEditorLabel\",\r\n CheckBoxImages = \"UiAbstract-CheckBoxImages\",\r\n}\r\n\r\n/**\r\n * [[BasePropertyEditorParams]] Base interface for Property Editor Params\r\n * @public\r\n */\r\nexport interface BasePropertyEditorParams {\r\n type: string;\r\n}\r\n\r\n/**\r\n * Parameters used by PropertyEditors that use HTML <input> element.\r\n * @public\r\n */\r\n/** [[InputEditorSizeParams]] type guard.\r\n * @public\r\n */\r\nexport interface InputEditorSizeParams extends BasePropertyEditorParams {\r\n type: PropertyEditorParamTypes.InputEditorSize;\r\n /** Optionally define the width in characters. */\r\n size?: number;\r\n /** Optionally define the maximum number of characters allowed. */\r\n maxLength?: number;\r\n}\r\n\r\n/** InputEditorSizeParams type guard.\r\n * @public\r\n */\r\nexport const isInputEditorSizeParams = (item: BasePropertyEditorParams): item is InputEditorSizeParams => {\r\n return item.type === PropertyEditorParamTypes.InputEditorSize;\r\n};\r\n\r\n/**\r\n * [[ColorEditorParams]] Parameters used to populate color type editor with a specific set of colors. If not specified the Color\r\n * Editor will show a default palette of 16 colors.\r\n * @public\r\n */\r\nexport interface ColorEditorParams extends BasePropertyEditorParams {\r\n type: PropertyEditorParamTypes.ColorData;\r\n /** array of color values to show in color picker popup. Use [[ColorByName]] enum values. Values should be 32-bit integer in the form 0xBBGGRR. */\r\n colorValues: number[];\r\n /** number of columns to show in color picker popup. The value of 4 is used if not defined. */\r\n numColumns?: number;\r\n}\r\n\r\n/** ColorEditorParams type guard.\r\n * @public\r\n */\r\nexport const isColorEditorParams = (item: BasePropertyEditorParams): item is ColorEditorParams => {\r\n return item.type === PropertyEditorParamTypes.ColorData;\r\n};\r\n\r\n/**\r\n * [[IconListEditorParams]] Parameters used to populate icon type editor with a specific set of icons.\r\n * @public\r\n */\r\nexport interface IconListEditorParams extends BasePropertyEditorParams {\r\n type: PropertyEditorParamTypes.IconListData;\r\n /** active icon shown in the button */\r\n iconValue: string;\r\n /** array of icon (svg) names to show in icon picker popup. */\r\n iconValues: string[];\r\n /** number of columns to show in icon picker popup. The value of 4 is used if not defined. */\r\n numColumns?: number;\r\n}\r\n\r\n/** IconListEditorParams type guard.\r\n * @public\r\n */\r\nexport const isIconListEditorParams = (item: BasePropertyEditorParams): item is IconListEditorParams => {\r\n return item.type === PropertyEditorParamTypes.IconListData;\r\n};\r\n\r\n/**\r\n * [[IconDefinition]] Information about an icon displayed next to a property editor.\r\n * @public\r\n */\r\nexport interface IconDefinition {\r\n /** Icon specification. The value is the name of an icon WebFont entry, or if specifying an imported SVG symbol use \"webSvg:\" prefix . */\r\n iconSpec: string;\r\n /** Function to determine if the item is enabled. */\r\n isEnabledFunction?: () => boolean;\r\n}\r\n\r\n/**\r\n * [[ButtonGroupEditorParams]] Parameters used by EnumButtonGroupEditor to define icons in button group.\r\n * @public\r\n */\r\nexport interface ButtonGroupEditorParams extends BasePropertyEditorParams {\r\n type: PropertyEditorParamTypes.ButtonGroupData;\r\n buttons: IconDefinition[];\r\n}\r\n\r\n/** ButtonGroupEditorParams type guard.\r\n * @public\r\n */\r\nexport const isButtonGroupEditorParams = (item: BasePropertyEditorParams): item is ButtonGroupEditorParams => {\r\n return item.type === PropertyEditorParamTypes.ButtonGroupData;\r\n};\r\n\r\n/**\r\n * [[SuppressLabelEditorParams]] Parameters used to suppress the label for a type editor in the ToolSettings widget.\r\n * @public\r\n */\r\nexport interface SuppressLabelEditorParams extends BasePropertyEditorParams {\r\n type: PropertyEditorParamTypes.SuppressEditorLabel;\r\n /** if false then an empty placeholder label is created. This is sometimes necessary to align editor in proper column */\r\n suppressLabelPlaceholder?: boolean;\r\n}\r\n\r\n/** SuppressLabelEditorParams type guard.\r\n * @public\r\n */\r\nexport const isSuppressLabelEditorParams = (item: BasePropertyEditorParams): item is SuppressLabelEditorParams => {\r\n return item.type === PropertyEditorParamTypes.SuppressEditorLabel;\r\n};\r\n\r\n// /**\r\n// * Parameters used by PropertyEditors that support JSON.\r\n// * @alpha\r\n// */\r\n// export interface JsonEditorParams extends BasePropertyEditorParams {\r\n// type: PropertyEditorParamTypes.JSON;\r\n// json: any;\r\n// }\r\n\r\n/**\r\n * Parameters used by PropertyEditors that support defining a minimum and maximum value.\r\n * @public\r\n */\r\nexport interface RangeEditorParams extends BasePropertyEditorParams {\r\n type: PropertyEditorParamTypes.Range;\r\n /** Defines the minimum value. Default is Number.MIN_SAFE_INTEGER. */\r\n minimum?: number;\r\n /** Defines the maximum value. Default is Number.MAX_SAFE_INTEGER. */\r\n maximum?: number;\r\n /** Defines the step value. Default is 1. */\r\n step?: number;\r\n /** Defines the precision. Default is 0. */\r\n precision?: number;\r\n}\r\n\r\n/**\r\n * Parameters used to indicate that a Slider should be presented for the property\r\n * and to specify the values needed by the slider.\r\n * @public\r\n */\r\nexport interface SliderEditorParams extends BasePropertyEditorParams {\r\n type: PropertyEditorParamTypes.Slider;\r\n /** Defines the minimum value. */\r\n minimum: number;\r\n /** Defines the maximum value. */\r\n maximum: number;\r\n\r\n /** Optionally define the width in pixels. */\r\n size?: number;\r\n\r\n /** Step value. Default is 0.1. */\r\n step?: number;\r\n /** The interaction mode. Default is 1. Possible values:\r\n * 1 - allows handles to cross each other.\r\n * 2 - keeps the sliders from crossing and separated by a step.\r\n */\r\n mode?: number;\r\n\r\n /** Indicates whether the display of the Slider values is reversed. */\r\n reversed?: boolean;\r\n\r\n /** Indicates whether to show tooltip with the value. The tooltip will be positioned above the Slider, by default. */\r\n showTooltip?: boolean;\r\n /** Indicates whether the tooltip should show below the Slider instead of above. */\r\n tooltipBelow?: boolean;\r\n /** Format a value for the tooltip */\r\n formatTooltip?: (value: number) => string;\r\n\r\n /** Indicates whether to show min & max values to the left & right of the Slider. */\r\n showMinMax?: boolean;\r\n /** Image to show for min. */\r\n minIconSpec?: string;\r\n /** Image to show for max. */\r\n maxIconSpec?: string;\r\n\r\n /** Indicates whether to show tick marks under the Slider. */\r\n showTicks?: boolean;\r\n /** Indicates whether to show tick labels under the tick marks. */\r\n showTickLabels?: boolean;\r\n /** Format a tick mark value */\r\n formatTick?: (tick: number) => string;\r\n /** Function to get the tick count. The default tick count is 10. */\r\n getTickCount?: () => number;\r\n /** Function to get the tick values. This overrides the tick count from getTickCount.\r\n * Use this prop if you want to specify your own tick values instead of ticks generated by the slider.\r\n * The numbers should be valid numbers in the domain and correspond to the step value.\r\n * Invalid values will be coerced to the closet matching value in the domain.\r\n */\r\n getTickValues?: () => number[];\r\n}\r\n\r\n/**\r\n * Parameter that is used to indicate that a multiline text editor should be created.\r\n * The number of rows specified will determine the height of the editor control.\r\n * @public\r\n */\r\nexport interface MultilineTextEditorParams extends BasePropertyEditorParams {\r\n type: PropertyEditorParamTypes.MultilineText;\r\n rows: number;\r\n}\r\n\r\n/**\r\n * Parameters used to display an icon next to property editor.\r\n * @public\r\n */\r\nexport interface IconEditorParams extends BasePropertyEditorParams {\r\n type: PropertyEditorParamTypes.Icon;\r\n definition: IconDefinition;\r\n}\r\n\r\n/**\r\n * Parameters for ImageCheckBoxEditor\r\n * @public\r\n */\r\nexport interface ImageCheckBoxParams extends BasePropertyEditorParams {\r\n type: PropertyEditorParamTypes.CheckBoxImages;\r\n imageOn: string;\r\n imageOff: string;\r\n\r\n}\r\n\r\n// /**\r\n// * Parameter used to suppress Unit labels\r\n// * @alpha\r\n// */\r\n// export interface SuppressUnitLabelEditorParams extends BasePropertyEditorParams {\r\n// type: PropertyEditorParamTypes.SuppressUnitLabel;\r\n// }\r\n\r\n/**\r\n * defines Results of parsing a string input by a user into its desired value type\r\n * @public\r\n */\r\nexport interface ParseResults {\r\n value?: string | number | boolean | {} | string[] | Date | [] | undefined;\r\n parseError?: string;\r\n}\r\n\r\n/**\r\n * Parameters used with properties that want to control parsing and formatting.\r\n * @public\r\n */\r\nexport interface CustomFormattedNumberParams extends BasePropertyEditorParams {\r\n type: PropertyEditorParamTypes.CustomFormattedNumber;\r\n formatFunction: (numberValue: number) => string;\r\n parseFunction: (stringValue: string) => ParseResults;\r\n}\r\n\r\n/** CustomFormattedNumberParams type guard.\r\n * @public\r\n */\r\nexport const isCustomFormattedNumberParams = (item: BasePropertyEditorParams): item is CustomFormattedNumberParams => {\r\n return item.type === PropertyEditorParamTypes.CustomFormattedNumber;\r\n};\r\n\r\n/**\r\n * Type definition for Property Editor params\r\n * @public\r\n */\r\nexport type PropertyEditorParams = BasePropertyEditorParams;\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"PrimitiveTypes.js","sourceRoot":"","sources":["../../../../src/appui-abstract/properties/PrimitiveTypes.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Properties\n */\n\nimport { Id64String } from \"@itwin/core-bentley\";\n\n/** Primitive Property Value Types.\n * @public\n */\nexport namespace Primitives {\n /** Text type */\n export type Text = string;\n /** String type */\n export type String = string;\n /** DateTime will be formatted as date and time */\n export type DateTime = string | Date;\n /** ShortDate will be formatted as date only and will not include time */\n export type ShortDate = string | Date;\n /** Boolean type */\n export type Boolean = boolean | string | {} | [];\n /** Float type */\n export type Float = number | string;\n /** Int type */\n export type Int = number | string;\n /** Hexadecimal type (number expressed in hex string) */\n export type Hexadecimal = Id64String;\n /** Enum type (enumerated list of values) */\n export type Enum = number | string;\n /** Numeric type (can be float or int) */\n export type Numeric = Float | Int;\n\n /** Point2d type (contains an x and a y coordinate) */\n export type Point2d = string[] | number[] | { x: number, y: number };\n /** Point3d type (contains x,y,and z coordinates) */\n export type Point3d = string[] | number[] | { x: number, y: number, z: number };\n\n /** Point type (can be a 2d or 3d point) */\n export type Point = Point2d | Point3d;\n\n /** CompositePart (ties a raw value of a specific type to a display string) */\n export interface CompositePart {\n displayValue: string;\n rawValue: Value;\n typeName: string;\n }\n /** Composite type (built of one or more CompositePart items) */\n export interface Composite {\n separator: string;\n parts: CompositePart[];\n }\n\n /** Instance key type. */\n export interface InstanceKey {\n className: string;\n id: Id64String;\n }\n\n /** Raw value */\n export type Value = Text | String | ShortDate | Boolean | Numeric | Enum | Point | Composite | InstanceKey;\n}\n"]}
1
+ {"version":3,"file":"PrimitiveTypes.js","sourceRoot":"","sources":["../../../../src/appui-abstract/properties/PrimitiveTypes.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Properties\r\n */\r\n\r\nimport { Id64String } from \"@itwin/core-bentley\";\r\n\r\n/** Primitive Property Value Types.\r\n * @public\r\n */\r\nexport namespace Primitives {\r\n /** Text type */\r\n export type Text = string;\r\n /** String type */\r\n export type String = string;\r\n /** DateTime will be formatted as date and time */\r\n export type DateTime = string | Date;\r\n /** ShortDate will be formatted as date only and will not include time */\r\n export type ShortDate = string | Date;\r\n /** Boolean type */\r\n export type Boolean = boolean | string | {} | [];\r\n /** Float type */\r\n export type Float = number | string;\r\n /** Int type */\r\n export type Int = number | string;\r\n /** Hexadecimal type (number expressed in hex string) */\r\n export type Hexadecimal = Id64String;\r\n /** Enum type (enumerated list of values) */\r\n export type Enum = number | string;\r\n /** Numeric type (can be float or int) */\r\n export type Numeric = Float | Int;\r\n\r\n /** Point2d type (contains an x and a y coordinate) */\r\n export type Point2d = string[] | number[] | { x: number, y: number };\r\n /** Point3d type (contains x,y,and z coordinates) */\r\n export type Point3d = string[] | number[] | { x: number, y: number, z: number };\r\n\r\n /** Point type (can be a 2d or 3d point) */\r\n export type Point = Point2d | Point3d;\r\n\r\n /** CompositePart (ties a raw value of a specific type to a display string) */\r\n export interface CompositePart {\r\n displayValue: string;\r\n rawValue: Value;\r\n typeName: string;\r\n }\r\n /** Composite type (built of one or more CompositePart items) */\r\n export interface Composite {\r\n separator: string;\r\n parts: CompositePart[];\r\n }\r\n\r\n /** Instance key type. */\r\n export interface InstanceKey {\r\n className: string;\r\n id: Id64String;\r\n }\r\n\r\n /** Raw value */\r\n export type Value = Text | String | ShortDate | Boolean | Numeric | Enum | Point | Composite | InstanceKey;\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"Record.js","sourceRoot":"","sources":["../../../../src/appui-abstract/properties/Record.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAGH,2DAAwD;AACxD,mCAA6D;AAiB7D;;;;GAIG;AACH,MAAa,cAAc;IAsBzB,2CAA2C;IAC3C,YAAmB,KAAoB,EAAE,QAA6B;QACpE,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAED,sGAAsG;IAC/F,gBAAgB,CAAC,QAAuB,EAAE,cAAoC;QACnF,MAAM,GAAG,GAAG,IAAI,cAAc,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC1F,oBAAoB,CAAC,GAAG,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC;QAC/C,oBAAoB,CAAC,GAAG,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC;QAC9C,oBAAoB,CAAC,GAAG,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC;QAC9C,oBAAoB,CAAC,GAAG,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;QAC5C,oBAAoB,CAAC,GAAG,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC;QAC9C,oBAAoB,CAAC,GAAG,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;QAChD,oBAAoB,CAAC,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;QACzC,OAAO,GAAG,CAAC;IACb,CAAC;IAED,uDAAuD;IAChD,kBAAkB;QACvB,QAAQ,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE;YAC9B,KAAK,2BAAmB,CAAC,SAAS;gBAChC,OAAO,EAAE,CAAC;YACZ,KAAK,2BAAmB,CAAC,MAAM;gBAC7B,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAC3C,KAAK,2BAAmB,CAAC,KAAK;gBAC5B,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;SAC3B;IACH,CAAC;IAED,oGAAoG;IAC7F,MAAM,CAAC,UAAU,CAAC,KAAa,EAAE,iBAAgD;QACtF,IAAI,WAAgC,CAAC;QACrC,IAAI,iBAAiB,IAAI,OAAO,iBAAiB,KAAK,QAAQ,EAAE;YAC9D,WAAW,GAAG,iBAAiB,CAAC;SACjC;aAAM,IAAI,iBAAiB,IAAI,OAAO,iBAAiB,KAAK,QAAQ,EAAE;YACrE,WAAW,GAAG;gBACZ,IAAI,EAAE,iBAAiB;gBACvB,YAAY,EAAE,iBAAiB;gBAC/B,QAAQ,EAAE,qCAAiB,CAAC,MAAM;aACnC,CAAC;SACH;aAAM;YACL,WAAW,GAAG;gBACZ,IAAI,EAAE,cAAc;gBACpB,YAAY,EAAE,cAAc;gBAC5B,QAAQ,EAAE,qCAAiB,CAAC,MAAM;aACnC,CAAC;SACH;QACD,OAAO,IAAI,cAAc,CAAC;YACxB,WAAW,EAAE,2BAAmB,CAAC,SAAS;YAC1C,KAAK;YACL,YAAY,EAAE,KAAK;SACpB,EAAE,WAAW,CAAC,CAAC;IAClB,CAAC;CACF;AA7ED,wCA6EC;AAED,SAAS,oBAAoB,CAAmB,MAAS,EAAE,MAAS,EAAE,UAAmB;IACvF,IAAI,MAAM,CAAC,cAAc,CAAC,UAAU,CAAC;QACnC,MAAM,CAAC,UAAU,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;AAC5C,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Properties\n */\n\nimport { PropertyDescription } from \"./Description\";\nimport { StandardTypeNames } from \"./StandardTypeNames\";\nimport { PropertyValue, PropertyValueFormat } from \"./Value\";\n\n/** Properties for the [[PropertyRecord]] with link info supplied\n * @public\n */\nexport interface LinkElementsInfo {\n /** Callback to link click event */\n onClick: (text: string) => void;\n /**\n * Function that specifies which parts of display value need to be clickable.\n *\n * Letters will be picked from __start__ index to __end__ index. __end__ index is not included.\n * For a string _\"example\"_ and a match ```{ start: 1, end: 3 }```, _\"xa\"_ will be clickable.\n */\n matcher?: (displayValue: string) => Array<{ start: number, end: number }>;\n}\n\n/**\n * PropertyRecord contains instance information about a Property, including a\n * value that can be edited using a PropertyEditor and converted using a TypeConverter.\n * @public\n */\nexport class PropertyRecord {\n /** Value for the property */\n public readonly value: PropertyValue;\n /** The property description containing metadata for the property */\n public readonly property: PropertyDescription;\n\n /** Description for the property */\n public description?: string;\n /** Indicates if the property is read-only */\n public isReadonly?: boolean;\n /** Indicates if the property is disabled */\n public isDisabled?: boolean;\n /** Indicates if the property record represents merged properties */\n public isMerged?: boolean;\n /** Indicates if the property should be automatically expanded */\n public autoExpand?: boolean;\n /** Map containing any additional data */\n public extendedData?: { [key: string]: any };\n\n /** Properties for link logic */\n public links?: LinkElementsInfo;\n\n /** Constructs a PropertyRecord instance */\n public constructor(value: PropertyValue, property: PropertyDescription) {\n this.value = value;\n this.property = property;\n }\n\n /** Creates a copy of this PropertyRecord with a new value and optionally a new PropertyDescription */\n public copyWithNewValue(newValue: PropertyValue, newDescription?: PropertyDescription): PropertyRecord {\n const rec = new PropertyRecord(newValue, newDescription ? newDescription : this.property);\n assignMemberIfExists(rec, this, \"description\");\n assignMemberIfExists(rec, this, \"isReadonly\");\n assignMemberIfExists(rec, this, \"isDisabled\");\n assignMemberIfExists(rec, this, \"isMerged\");\n assignMemberIfExists(rec, this, \"autoExpand\");\n assignMemberIfExists(rec, this, \"extendedData\");\n assignMemberIfExists(rec, this, \"links\");\n return rec;\n }\n\n /** Gets this property record value children records */\n public getChildrenRecords(): PropertyRecord[] {\n switch (this.value.valueFormat) {\n case PropertyValueFormat.Primitive:\n return [];\n case PropertyValueFormat.Struct:\n return Object.values(this.value.members);\n case PropertyValueFormat.Array:\n return this.value.items;\n }\n }\n\n /** Creates a PropertyRecord based on a value string and an optional property description or name */\n public static fromString(value: string, descriptionOrName?: PropertyDescription | string): PropertyRecord {\n let description: PropertyDescription;\n if (descriptionOrName && typeof descriptionOrName === \"object\") {\n description = descriptionOrName;\n } else if (descriptionOrName && typeof descriptionOrName === \"string\") {\n description = {\n name: descriptionOrName,\n displayLabel: descriptionOrName,\n typename: StandardTypeNames.String,\n };\n } else {\n description = {\n name: \"string_value\",\n displayLabel: \"String Value\",\n typename: StandardTypeNames.String,\n };\n }\n return new PropertyRecord({\n valueFormat: PropertyValueFormat.Primitive,\n value,\n displayValue: value,\n }, description);\n }\n}\n\nfunction assignMemberIfExists<T extends Object>(target: T, source: T, memberName: keyof T) {\n if (source.hasOwnProperty(memberName))\n target[memberName] = source[memberName];\n}\n"]}
1
+ {"version":3,"file":"Record.js","sourceRoot":"","sources":["../../../../src/appui-abstract/properties/Record.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAGH,2DAAwD;AACxD,mCAA6D;AAiB7D;;;;GAIG;AACH,MAAa,cAAc;IAsBzB,2CAA2C;IAC3C,YAAmB,KAAoB,EAAE,QAA6B;QACpE,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAED,sGAAsG;IAC/F,gBAAgB,CAAC,QAAuB,EAAE,cAAoC;QACnF,MAAM,GAAG,GAAG,IAAI,cAAc,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC1F,oBAAoB,CAAC,GAAG,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC;QAC/C,oBAAoB,CAAC,GAAG,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC;QAC9C,oBAAoB,CAAC,GAAG,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC;QAC9C,oBAAoB,CAAC,GAAG,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;QAC5C,oBAAoB,CAAC,GAAG,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC;QAC9C,oBAAoB,CAAC,GAAG,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;QAChD,oBAAoB,CAAC,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;QACzC,OAAO,GAAG,CAAC;IACb,CAAC;IAED,uDAAuD;IAChD,kBAAkB;QACvB,QAAQ,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE;YAC9B,KAAK,2BAAmB,CAAC,SAAS;gBAChC,OAAO,EAAE,CAAC;YACZ,KAAK,2BAAmB,CAAC,MAAM;gBAC7B,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAC3C,KAAK,2BAAmB,CAAC,KAAK;gBAC5B,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;SAC3B;IACH,CAAC;IAED,oGAAoG;IAC7F,MAAM,CAAC,UAAU,CAAC,KAAa,EAAE,iBAAgD;QACtF,IAAI,WAAgC,CAAC;QACrC,IAAI,iBAAiB,IAAI,OAAO,iBAAiB,KAAK,QAAQ,EAAE;YAC9D,WAAW,GAAG,iBAAiB,CAAC;SACjC;aAAM,IAAI,iBAAiB,IAAI,OAAO,iBAAiB,KAAK,QAAQ,EAAE;YACrE,WAAW,GAAG;gBACZ,IAAI,EAAE,iBAAiB;gBACvB,YAAY,EAAE,iBAAiB;gBAC/B,QAAQ,EAAE,qCAAiB,CAAC,MAAM;aACnC,CAAC;SACH;aAAM;YACL,WAAW,GAAG;gBACZ,IAAI,EAAE,cAAc;gBACpB,YAAY,EAAE,cAAc;gBAC5B,QAAQ,EAAE,qCAAiB,CAAC,MAAM;aACnC,CAAC;SACH;QACD,OAAO,IAAI,cAAc,CAAC;YACxB,WAAW,EAAE,2BAAmB,CAAC,SAAS;YAC1C,KAAK;YACL,YAAY,EAAE,KAAK;SACpB,EAAE,WAAW,CAAC,CAAC;IAClB,CAAC;CACF;AA7ED,wCA6EC;AAED,SAAS,oBAAoB,CAAmB,MAAS,EAAE,MAAS,EAAE,UAAmB;IACvF,IAAI,MAAM,CAAC,cAAc,CAAC,UAAU,CAAC;QACnC,MAAM,CAAC,UAAU,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;AAC5C,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Properties\r\n */\r\n\r\nimport { PropertyDescription } from \"./Description\";\r\nimport { StandardTypeNames } from \"./StandardTypeNames\";\r\nimport { PropertyValue, PropertyValueFormat } from \"./Value\";\r\n\r\n/** Properties for the [[PropertyRecord]] with link info supplied\r\n * @public\r\n */\r\nexport interface LinkElementsInfo {\r\n /** Callback to link click event */\r\n onClick: (text: string) => void;\r\n /**\r\n * Function that specifies which parts of display value need to be clickable.\r\n *\r\n * Letters will be picked from __start__ index to __end__ index. __end__ index is not included.\r\n * For a string _\"example\"_ and a match ```{ start: 1, end: 3 }```, _\"xa\"_ will be clickable.\r\n */\r\n matcher?: (displayValue: string) => Array<{ start: number, end: number }>;\r\n}\r\n\r\n/**\r\n * PropertyRecord contains instance information about a Property, including a\r\n * value that can be edited using a PropertyEditor and converted using a TypeConverter.\r\n * @public\r\n */\r\nexport class PropertyRecord {\r\n /** Value for the property */\r\n public readonly value: PropertyValue;\r\n /** The property description containing metadata for the property */\r\n public readonly property: PropertyDescription;\r\n\r\n /** Description for the property */\r\n public description?: string;\r\n /** Indicates if the property is read-only */\r\n public isReadonly?: boolean;\r\n /** Indicates if the property is disabled */\r\n public isDisabled?: boolean;\r\n /** Indicates if the property record represents merged properties */\r\n public isMerged?: boolean;\r\n /** Indicates if the property should be automatically expanded */\r\n public autoExpand?: boolean;\r\n /** Map containing any additional data */\r\n public extendedData?: { [key: string]: any };\r\n\r\n /** Properties for link logic */\r\n public links?: LinkElementsInfo;\r\n\r\n /** Constructs a PropertyRecord instance */\r\n public constructor(value: PropertyValue, property: PropertyDescription) {\r\n this.value = value;\r\n this.property = property;\r\n }\r\n\r\n /** Creates a copy of this PropertyRecord with a new value and optionally a new PropertyDescription */\r\n public copyWithNewValue(newValue: PropertyValue, newDescription?: PropertyDescription): PropertyRecord {\r\n const rec = new PropertyRecord(newValue, newDescription ? newDescription : this.property);\r\n assignMemberIfExists(rec, this, \"description\");\r\n assignMemberIfExists(rec, this, \"isReadonly\");\r\n assignMemberIfExists(rec, this, \"isDisabled\");\r\n assignMemberIfExists(rec, this, \"isMerged\");\r\n assignMemberIfExists(rec, this, \"autoExpand\");\r\n assignMemberIfExists(rec, this, \"extendedData\");\r\n assignMemberIfExists(rec, this, \"links\");\r\n return rec;\r\n }\r\n\r\n /** Gets this property record value children records */\r\n public getChildrenRecords(): PropertyRecord[] {\r\n switch (this.value.valueFormat) {\r\n case PropertyValueFormat.Primitive:\r\n return [];\r\n case PropertyValueFormat.Struct:\r\n return Object.values(this.value.members);\r\n case PropertyValueFormat.Array:\r\n return this.value.items;\r\n }\r\n }\r\n\r\n /** Creates a PropertyRecord based on a value string and an optional property description or name */\r\n public static fromString(value: string, descriptionOrName?: PropertyDescription | string): PropertyRecord {\r\n let description: PropertyDescription;\r\n if (descriptionOrName && typeof descriptionOrName === \"object\") {\r\n description = descriptionOrName;\r\n } else if (descriptionOrName && typeof descriptionOrName === \"string\") {\r\n description = {\r\n name: descriptionOrName,\r\n displayLabel: descriptionOrName,\r\n typename: StandardTypeNames.String,\r\n };\r\n } else {\r\n description = {\r\n name: \"string_value\",\r\n displayLabel: \"String Value\",\r\n typename: StandardTypeNames.String,\r\n };\r\n }\r\n return new PropertyRecord({\r\n valueFormat: PropertyValueFormat.Primitive,\r\n value,\r\n displayValue: value,\r\n }, description);\r\n }\r\n}\r\n\r\nfunction assignMemberIfExists<T extends Object>(target: T, source: T, memberName: keyof T) {\r\n if (source.hasOwnProperty(memberName))\r\n target[memberName] = source[memberName];\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"StandardEditorNames.js","sourceRoot":"","sources":["../../../../src/appui-abstract/properties/StandardEditorNames.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH;;;GAGG;AACH,IAAY,mBAcX;AAdD,WAAY,mBAAmB;IAC7B,mDAA4B,CAAA;IAC5B,oDAA6B,CAAA;IAC7B,sDAA+B,CAAA;IAC/B,2DAAoC,CAAA;IACpC,iDAA0B,CAAA;IAC1B,+CAAwB,CAAA;IACxB,qDAA8B,CAAA;IAC9B,qDAA8B,CAAA;IAC9B,wCAAiB,CAAA;IACjB,wCAAiB,CAAA;IACjB,qDAA8B,CAAA;IAC9B,wDAAiC,CAAA;IACjC,iDAA0B,CAAA;AAC5B,CAAC,EAdW,mBAAmB,GAAnB,2BAAmB,KAAnB,2BAAmB,QAc9B","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Properties\n */\n\n/**\n * Standard Editor Names for property editors.\n * @public\n */\nexport enum StandardEditorNames {\n ColorPicker = \"color-picker\",\n LongDate = \"long-date-picker\",\n ShortDate = \"short-date-picker\",\n EnumButtonGroup = \"enum-buttongroup\",\n IconPicker = \"icon-picker\",\n MultiLine = \"multi-line\",\n NumberCustom = \"number-custom\",\n NumericInput = \"numeric-input\",\n Slider = \"slider\",\n Toggle = \"toggle\",\n WeightPicker = \"weight-picker\",\n ImageCheckBox = \"image-check-box\",\n ThemedEnum = \"themed-enum\",\n}\n"]}
1
+ {"version":3,"file":"StandardEditorNames.js","sourceRoot":"","sources":["../../../../src/appui-abstract/properties/StandardEditorNames.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH;;;GAGG;AACH,IAAY,mBAcX;AAdD,WAAY,mBAAmB;IAC7B,mDAA4B,CAAA;IAC5B,oDAA6B,CAAA;IAC7B,sDAA+B,CAAA;IAC/B,2DAAoC,CAAA;IACpC,iDAA0B,CAAA;IAC1B,+CAAwB,CAAA;IACxB,qDAA8B,CAAA;IAC9B,qDAA8B,CAAA;IAC9B,wCAAiB,CAAA;IACjB,wCAAiB,CAAA;IACjB,qDAA8B,CAAA;IAC9B,wDAAiC,CAAA;IACjC,iDAA0B,CAAA;AAC5B,CAAC,EAdW,mBAAmB,GAAnB,2BAAmB,KAAnB,2BAAmB,QAc9B","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Properties\r\n */\r\n\r\n/**\r\n * Standard Editor Names for property editors.\r\n * @public\r\n */\r\nexport enum StandardEditorNames {\r\n ColorPicker = \"color-picker\",\r\n LongDate = \"long-date-picker\",\r\n ShortDate = \"short-date-picker\",\r\n EnumButtonGroup = \"enum-buttongroup\",\r\n IconPicker = \"icon-picker\",\r\n MultiLine = \"multi-line\",\r\n NumberCustom = \"number-custom\",\r\n NumericInput = \"numeric-input\",\r\n Slider = \"slider\",\r\n Toggle = \"toggle\",\r\n WeightPicker = \"weight-picker\",\r\n ImageCheckBox = \"image-check-box\",\r\n ThemedEnum = \"themed-enum\",\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"StandardTypeNames.js","sourceRoot":"","sources":["../../../../src/appui-abstract/properties/StandardTypeNames.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,0BAA0B;AAE1B;;;GAGG;AACH,IAAY,iBAsBX;AAtBD,WAAY,iBAAiB;IAC3B,kCAAa,CAAA;IACb,sCAAiB,CAAA;IACjB,0CAAqB,CAAA;IACrB,4CAAuB,CAAA;IACvB,wCAAmB,CAAA;IACnB,kCAAa,CAAA;IACb,oCAAe,CAAA;IACf,sCAAiB,CAAA;IACjB,gCAAW,CAAA;IACX,wCAAmB,CAAA;IACnB,sCAAiB,CAAA;IACjB,gDAA2B,CAAA;IAC3B,gCAAW,CAAA;IACX,kCAAa,CAAA;IACb,wCAAmB,CAAA;IACnB,wCAAmB,CAAA;IACnB,8CAAyB,CAAA;IACzB,4CAAuB,CAAA;IACvB,oCAAe,CAAA;IACf,sCAAiB,CAAA;IACjB,gCAAW,CAAA;AACb,CAAC,EAtBW,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAsB5B","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Properties\n */\n\n// cSpell:ignore shortdate\n\n/**\n * Standard Type Names for converters and editors.\n * @public\n */\nexport enum StandardTypeNames {\n Text = \"text\",\n String = \"string\",\n DateTime = \"dateTime\", // locale specific\n ShortDate = \"shortdate\", // locale specific\n Boolean = \"boolean\",\n Bool = \"bool\",\n Float = \"float\",\n Double = \"double\",\n Int = \"int\",\n Integer = \"integer\",\n Number = \"number\",\n Hexadecimal = \"hexadecimal\",\n Hex = \"hex\",\n Enum = \"enum\",\n Point2d = \"point2d\",\n Point3d = \"point3d\",\n Navigation = \"navigation\",\n Composite = \"composite\",\n Array = \"array\",\n Struct = \"struct\",\n URL = \"url\",\n}\n"]}
1
+ {"version":3,"file":"StandardTypeNames.js","sourceRoot":"","sources":["../../../../src/appui-abstract/properties/StandardTypeNames.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,0BAA0B;AAE1B;;;GAGG;AACH,IAAY,iBAsBX;AAtBD,WAAY,iBAAiB;IAC3B,kCAAa,CAAA;IACb,sCAAiB,CAAA;IACjB,0CAAqB,CAAA;IACrB,4CAAuB,CAAA;IACvB,wCAAmB,CAAA;IACnB,kCAAa,CAAA;IACb,oCAAe,CAAA;IACf,sCAAiB,CAAA;IACjB,gCAAW,CAAA;IACX,wCAAmB,CAAA;IACnB,sCAAiB,CAAA;IACjB,gDAA2B,CAAA;IAC3B,gCAAW,CAAA;IACX,kCAAa,CAAA;IACb,wCAAmB,CAAA;IACnB,wCAAmB,CAAA;IACnB,8CAAyB,CAAA;IACzB,4CAAuB,CAAA;IACvB,oCAAe,CAAA;IACf,sCAAiB,CAAA;IACjB,gCAAW,CAAA;AACb,CAAC,EAtBW,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAsB5B","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Properties\r\n */\r\n\r\n// cSpell:ignore shortdate\r\n\r\n/**\r\n * Standard Type Names for converters and editors.\r\n * @public\r\n */\r\nexport enum StandardTypeNames {\r\n Text = \"text\",\r\n String = \"string\",\r\n DateTime = \"dateTime\", // locale specific\r\n ShortDate = \"shortdate\", // locale specific\r\n Boolean = \"boolean\",\r\n Bool = \"bool\",\r\n Float = \"float\",\r\n Double = \"double\",\r\n Int = \"int\",\r\n Integer = \"integer\",\r\n Number = \"number\",\r\n Hexadecimal = \"hexadecimal\",\r\n Hex = \"hex\",\r\n Enum = \"enum\",\r\n Point2d = \"point2d\",\r\n Point3d = \"point3d\",\r\n Navigation = \"navigation\",\r\n Composite = \"composite\",\r\n Array = \"array\",\r\n Struct = \"struct\",\r\n URL = \"url\",\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"Value.js","sourceRoot":"","sources":["../../../../src/appui-abstract/properties/Value.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAKH;;;GAGG;AACH,IAAY,mBAIX;AAJD,WAAY,mBAAmB;IAC7B,uEAAS,CAAA;IACT,+DAAK,CAAA;IACL,iEAAM,CAAA;AACR,CAAC,EAJW,mBAAmB,GAAnB,2BAAmB,KAAnB,2BAAmB,QAI9B","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Properties\n */\n\nimport { Primitives } from \"./PrimitiveTypes\";\nimport { PropertyRecord } from \"./Record\";\n\n/**\n * Enumeration for Format of the property value.\n * @public\n */\nexport enum PropertyValueFormat {\n Primitive,\n Array,\n Struct,\n}\n\n/** Base interface for a property value\n * @public\n */\nexport interface BasePropertyValue {\n valueFormat: PropertyValueFormat;\n}\n\n/** Primitive property value\n * @public\n */\nexport interface PrimitiveValue extends BasePropertyValue {\n valueFormat: PropertyValueFormat.Primitive;\n value?: Primitives.Value;\n displayValue?: string;\n}\n\n/** Struct property value\n * @public\n */\nexport interface StructValue extends BasePropertyValue {\n valueFormat: PropertyValueFormat.Struct;\n members: { [name: string]: PropertyRecord };\n}\n\n/** Array property value\n * @public\n */\nexport interface ArrayValue extends BasePropertyValue {\n valueFormat: PropertyValueFormat.Array;\n items: PropertyRecord[];\n itemsTypeName: string;\n}\n\n/** Type for all property values\n * @public\n */\nexport type PropertyValue = PrimitiveValue | StructValue | ArrayValue;\n"]}
1
+ {"version":3,"file":"Value.js","sourceRoot":"","sources":["../../../../src/appui-abstract/properties/Value.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAKH;;;GAGG;AACH,IAAY,mBAIX;AAJD,WAAY,mBAAmB;IAC7B,uEAAS,CAAA;IACT,+DAAK,CAAA;IACL,iEAAM,CAAA;AACR,CAAC,EAJW,mBAAmB,GAAnB,2BAAmB,KAAnB,2BAAmB,QAI9B","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Properties\r\n */\r\n\r\nimport { Primitives } from \"./PrimitiveTypes\";\r\nimport { PropertyRecord } from \"./Record\";\r\n\r\n/**\r\n * Enumeration for Format of the property value.\r\n * @public\r\n */\r\nexport enum PropertyValueFormat {\r\n Primitive,\r\n Array,\r\n Struct,\r\n}\r\n\r\n/** Base interface for a property value\r\n * @public\r\n */\r\nexport interface BasePropertyValue {\r\n valueFormat: PropertyValueFormat;\r\n}\r\n\r\n/** Primitive property value\r\n * @public\r\n */\r\nexport interface PrimitiveValue extends BasePropertyValue {\r\n valueFormat: PropertyValueFormat.Primitive;\r\n value?: Primitives.Value;\r\n displayValue?: string;\r\n}\r\n\r\n/** Struct property value\r\n * @public\r\n */\r\nexport interface StructValue extends BasePropertyValue {\r\n valueFormat: PropertyValueFormat.Struct;\r\n members: { [name: string]: PropertyRecord };\r\n}\r\n\r\n/** Array property value\r\n * @public\r\n */\r\nexport interface ArrayValue extends BasePropertyValue {\r\n valueFormat: PropertyValueFormat.Array;\r\n items: PropertyRecord[];\r\n itemsTypeName: string;\r\n}\r\n\r\n/** Type for all property values\r\n * @public\r\n */\r\nexport type PropertyValue = PrimitiveValue | StructValue | ArrayValue;\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"BaseQuantityDescription.js","sourceRoot":"","sources":["../../../../src/appui-abstract/quantity/BaseQuantityDescription.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAGH,6DAAmI;AACnI,uEAAoE;AACpE,2EAAwE;AAExE;;;GAGG;AACH,MAAsB,uBAAuB;IAM3C,YAAY,IAAY,EAAE,YAAoB,EAAE,QAAiB;QA0B1D,WAAM,GAAG,CAAC,WAAmB,EAAU,EAAE;YAC9C,OAAO,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QACvC,CAAC,CAAC;QAGK,UAAK,GAAG,CAAC,SAAiB,EAAgB,EAAE;YACjD,OAAO,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;QACrC,CAAC,CAAC;QAhCA,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,QAAQ,GAAG,qCAAiB,CAAC,MAAM,CAAC;QACzC,IAAI,CAAC,MAAM,GAAG;YACZ,IAAI,EAAE,yCAAmB,CAAC,YAAY;YACtC,MAAM,EAAE,CAAC;oBACP,IAAI,EAAE,uCAAwB,CAAC,qBAAqB;oBACpD,cAAc,EAAE,IAAI,CAAC,MAAM;oBAC3B,aAAa,EAAE,IAAI,CAAC,KAAK;iBACK;aAC/B;SACF,CAAC;QAEF,uBAAuB;QACvB,IAAI,QAAQ,EAAE;YACZ,MAAM,MAAM,GAAqB;gBAC/B,IAAI,EAAE,uCAAwB,CAAC,IAAI;gBACnC,UAAU,EAAE,EAAE,QAAQ,EAAE;aACzB,CAAC;YACF,IAAI,CAAC,MAAM,CAAC,MAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;SAClC;IACH,CAAC;CAiBF;AA7CD,0DA6CC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Properties\n */\n\nimport { PropertyDescription, PropertyEditorInfo } from \"../properties/Description\";\nimport { CustomFormattedNumberParams, IconEditorParams, ParseResults, PropertyEditorParamTypes } from \"../properties/EditorParams\";\nimport { StandardTypeNames } from \"../properties/StandardTypeNames\";\nimport { StandardEditorNames } from \"../properties/StandardEditorNames\";\n\n/**\n * Base Quantity Property Description\n * @beta\n */\nexport abstract class BaseQuantityDescription implements PropertyDescription {\n public name: string;\n public displayLabel: string;\n public typename: string;\n public editor: PropertyEditorInfo;\n\n constructor(name: string, displayLabel: string, iconSpec?: string) {\n this.name = name;\n this.displayLabel = displayLabel;\n this.typename = StandardTypeNames.Number;\n this.editor = {\n name: StandardEditorNames.NumberCustom,\n params: [{\n type: PropertyEditorParamTypes.CustomFormattedNumber,\n formatFunction: this.format,\n parseFunction: this.parse,\n } as CustomFormattedNumberParams,\n ],\n };\n\n // istanbul ignore else\n if (iconSpec) {\n const params: IconEditorParams = {\n type: PropertyEditorParamTypes.Icon,\n definition: { iconSpec },\n };\n this.editor.params!.push(params);\n }\n }\n\n protected abstract formatValue(numberValue: number): string;\n\n public format = (numberValue: number): string => {\n return this.formatValue(numberValue);\n };\n protected abstract parseString(userInput: string): ParseResults;\n\n public parse = (userInput: string): ParseResults => {\n return this.parseString(userInput);\n };\n\n public abstract get quantityType(): string;\n\n public abstract get parseError(): string;\n\n}\n"]}
1
+ {"version":3,"file":"BaseQuantityDescription.js","sourceRoot":"","sources":["../../../../src/appui-abstract/quantity/BaseQuantityDescription.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAGH,6DAAmI;AACnI,uEAAoE;AACpE,2EAAwE;AAExE;;;GAGG;AACH,MAAsB,uBAAuB;IAM3C,YAAY,IAAY,EAAE,YAAoB,EAAE,QAAiB;QA0B1D,WAAM,GAAG,CAAC,WAAmB,EAAU,EAAE;YAC9C,OAAO,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QACvC,CAAC,CAAC;QAGK,UAAK,GAAG,CAAC,SAAiB,EAAgB,EAAE;YACjD,OAAO,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;QACrC,CAAC,CAAC;QAhCA,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,QAAQ,GAAG,qCAAiB,CAAC,MAAM,CAAC;QACzC,IAAI,CAAC,MAAM,GAAG;YACZ,IAAI,EAAE,yCAAmB,CAAC,YAAY;YACtC,MAAM,EAAE,CAAC;oBACP,IAAI,EAAE,uCAAwB,CAAC,qBAAqB;oBACpD,cAAc,EAAE,IAAI,CAAC,MAAM;oBAC3B,aAAa,EAAE,IAAI,CAAC,KAAK;iBACK;aAC/B;SACF,CAAC;QAEF,uBAAuB;QACvB,IAAI,QAAQ,EAAE;YACZ,MAAM,MAAM,GAAqB;gBAC/B,IAAI,EAAE,uCAAwB,CAAC,IAAI;gBACnC,UAAU,EAAE,EAAE,QAAQ,EAAE;aACzB,CAAC;YACF,IAAI,CAAC,MAAM,CAAC,MAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;SAClC;IACH,CAAC;CAiBF;AA7CD,0DA6CC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Properties\r\n */\r\n\r\nimport { PropertyDescription, PropertyEditorInfo } from \"../properties/Description\";\r\nimport { CustomFormattedNumberParams, IconEditorParams, ParseResults, PropertyEditorParamTypes } from \"../properties/EditorParams\";\r\nimport { StandardTypeNames } from \"../properties/StandardTypeNames\";\r\nimport { StandardEditorNames } from \"../properties/StandardEditorNames\";\r\n\r\n/**\r\n * Base Quantity Property Description\r\n * @beta\r\n */\r\nexport abstract class BaseQuantityDescription implements PropertyDescription {\r\n public name: string;\r\n public displayLabel: string;\r\n public typename: string;\r\n public editor: PropertyEditorInfo;\r\n\r\n constructor(name: string, displayLabel: string, iconSpec?: string) {\r\n this.name = name;\r\n this.displayLabel = displayLabel;\r\n this.typename = StandardTypeNames.Number;\r\n this.editor = {\r\n name: StandardEditorNames.NumberCustom,\r\n params: [{\r\n type: PropertyEditorParamTypes.CustomFormattedNumber,\r\n formatFunction: this.format,\r\n parseFunction: this.parse,\r\n } as CustomFormattedNumberParams,\r\n ],\r\n };\r\n\r\n // istanbul ignore else\r\n if (iconSpec) {\r\n const params: IconEditorParams = {\r\n type: PropertyEditorParamTypes.Icon,\r\n definition: { iconSpec },\r\n };\r\n this.editor.params!.push(params);\r\n }\r\n }\r\n\r\n protected abstract formatValue(numberValue: number): string;\r\n\r\n public format = (numberValue: number): string => {\r\n return this.formatValue(numberValue);\r\n };\r\n protected abstract parseString(userInput: string): ParseResults;\r\n\r\n public parse = (userInput: string): ParseResults => {\r\n return this.parseString(userInput);\r\n };\r\n\r\n public abstract get quantityType(): string;\r\n\r\n public abstract get parseError(): string;\r\n\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"StatusBarItem.js","sourceRoot":"","sources":["../../../../src/appui-abstract/statusbar/StatusBarItem.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAOH;;;GAGG;AACH,IAAY,gBAeX;AAfD,WAAY,gBAAgB;IAC1B,4CAA4C;IAC5C,6DAAW,CAAA;IACX,4CAA4C;IAC5C,uDAAQ,CAAA;IACR,mCAAmC;IACnC,yDAAS,CAAA;IACT,mCAAmC;IACnC,2DAAU,CAAA;IACV,sCAAsC;IACtC,iEAAa,CAAA;IACb,sCAAsC;IACtC,yDAAS,CAAA;IACT,4CAA4C;IAC5C,6DAAW,CAAA;AACb,CAAC,EAfW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAe3B;AAED;;;GAGG;AACH,IAAY,kBAKX;AALD,WAAY,kBAAkB;IAC5B,8EAA8E;IAC9E,2DAAI,CAAA;IACJ,6CAA6C;IAC7C,6DAAK,CAAA;AACP,CAAC,EALW,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAK7B;AA0ED;;;GAGG;AACI,MAAM,6BAA6B,GAAG,CAAC,IAAyB,EAAuC,EAAE;IAC9G,OAAQ,IAAoC,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,8CAA8C;AACpH,CAAC,CAAC;AAFW,QAAA,6BAA6B,iCAExC;AAEF;;;GAGG;AACI,MAAM,4BAA4B,GAAG,CAAC,IAAyB,EAAsC,EAAE;IAC5G,OAAQ,IAAmC,CAAC,KAAK,KAAK,SAAS,IAAK,IAAoC,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,8CAA8C;AAChL,CAAC,CAAC;AAFW,QAAA,4BAA4B,gCAEvC;AAEF;;;GAGG;AACI,MAAM,6BAA6B,GAAG,CAAC,IAAyB,EAAuC,EAAE;IAC9G,OAAO,CAAC,CAAE,IAAoC,CAAC,QAAQ,CAAC,CAAC,8CAA8C;AACzG,CAAC,CAAC;AAFW,QAAA,6BAA6B,iCAExC;AAEF;;;GAGG;AACH,MAAa,8BAA8B;;AACzC,oDAAoD;AACtC,+CAAgB,GAAG,CAAC,EAAU,EAAE,OAAyB,EAAE,YAAoB,EAAE,IAAqC,EAAE,OAAwC,EAAE,OAAmB,EAAE,SAAgD,EAA+B,EAAE,CAAC,CAAC;IACtR,EAAE,EAAE,OAAO,EAAE,YAAY;IACzB,IAAI,EAAE,OAAO;IACb,OAAO;IACP,GAAG,SAAS;CACb,CAAC,CAAC;AAEH,kDAAkD;AACpC,8CAAe,GAAG,CAAC,EAAU,EAAE,OAAyB,EAAE,YAAoB,EAAE,IAAqC,EAAE,KAAsC,EAAE,SAAS,GAAG,kBAAkB,CAAC,KAAK,EAAE,SAA+C,EAA8B,EAAE,CAAC,CAAC;IAClS,EAAE,EAAE,OAAO,EAAE,YAAY;IACzB,IAAI,EAAE,KAAK;IACX,SAAS;IACT,GAAG,SAAS;CACb,CAAC,CAAC;AAfQ,wEAA8B","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module StatusBar\n */\n\nimport { BadgeType } from \"../items/BadgeType\";\nimport { ConditionalBooleanValue } from \"../items/ConditionalBooleanValue\";\nimport { ConditionalStringValue } from \"../items/ConditionalStringValue\";\nimport { ProvidedItem } from \"../items/ProvidedItem\";\n\n/** Status bar Groups/Sections from Left to Right\n * @deprecated in 3.6. Use [StatusBarSection]($appui-react) instead.\n * @public\n */\nexport enum StatusBarSection {\n /** area for tool assistance and messages */\n Message = 0,\n /** area for tool assistance and messages */\n Left = 0,\n /** items specific to stage/task */\n Stage = 1,\n /** items specific to stage/task */\n Center = 1,\n /** Select scope and selection info */\n Selection = 2,\n /** Select scope and selection info */\n Right = 2,\n /** items that only show based on context */\n Context = 3,\n}\n\n/** Defines which side of Icon where label is placed\n * @deprecated in 3.6. Use [StatusBarLabelSide]($appui-react) instead.\n * @public\n */\nexport enum StatusBarLabelSide {\n /** Label is placed left side of icon. This is the default if not specified */\n Left,\n /** Label is placed on right side of icon. */\n Right,\n}\n\n/** Type for StatusBar Item Id\n * @deprecated in 3.6. Please use `CommonStatusBarItem[\"id\"]` from @itwin/appui-react.\n * @public\n */\nexport type StatusBarItemId = CommonStatusBarItem[\"id\"]; // eslint-disable-line deprecation/deprecation\n\n/** Describes the data needed to insert a button into the status bar.\n * @deprecated in 3.6. Use [CommonStatusBarItem]($appui-react) instead.\n * @public\n */\nexport interface AbstractStatusBarItem extends ProvidedItem { // eslint-disable-line deprecation/deprecation\n /** can be used by application to store miscellaneous data. */\n applicationData?: any;\n /** Describes badge. Renders no badge if not specified. */\n readonly badgeType?: BadgeType;\n /** Required unique id of the item. To ensure uniqueness it is suggested that a namespace prefix of the extension name be used. */\n readonly id: string;\n /** optional data to used by item implementor. */\n readonly internalData?: Map<string, any>;\n /** Describes if the item is visible or hidden. The default is for the item to be visible. */\n readonly isHidden?: boolean | ConditionalBooleanValue;\n /** Describes if the item is enabled or disabled. The default is for the item to be enabled. */\n readonly isDisabled?: boolean | ConditionalBooleanValue;\n /** Priority within a section (recommend using values 1 through 100). */\n readonly itemPriority: number;\n /** status bar section */\n readonly section: StatusBarSection; // eslint-disable-line deprecation/deprecation\n}\n\n/** Describes the data needed to insert an action item into the status bar.\n * @deprecated in 3.6. Use [StatusBarActionItem]($appui-react) instead.\n * @public\n */\nexport interface AbstractStatusBarActionItem extends AbstractStatusBarItem { // eslint-disable-line deprecation/deprecation\n /** method to execute when icon is pressed */\n readonly execute: () => void;\n /** Name of icon WebFont entry or if specifying an imported SVG symbol use \"webSvg:\" prefix to imported symbol Id. */\n readonly icon?: string | ConditionalStringValue;\n /** Label. */\n readonly label?: string | ConditionalStringValue;\n /** tooltip. */\n readonly tooltip?: string | ConditionalStringValue;\n}\n\n/** Describes the data needed to insert a label item with an optional icon into the status bar.\n * @deprecated in 3.6. Use [StatusBarLabelItem]($appui-react) instead.\n * @public\n */\nexport interface AbstractStatusBarLabelItem extends AbstractStatusBarItem { // eslint-disable-line deprecation/deprecation\n /** Name of icon WebFont entry or if specifying an imported SVG symbol use \"webSvg:\" prefix to imported symbol Id. */\n readonly icon?: string | ConditionalStringValue;\n /** Label. */\n readonly label: string | ConditionalStringValue;\n /** Defines which side of icon to display label if icon is defined. */\n readonly labelSide?: StatusBarLabelSide; // eslint-disable-line deprecation/deprecation\n}\n\n/** Describes the data needed to insert a custom item into the status bar. This is used to allow extension\n * implementer to create a framework specific component.\n * @deprecated in 3.6. Use [StatusBarCustomItem]($appui-react) instead.\n * @public\n */\nexport interface AbstractStatusBarCustomItem extends AbstractStatusBarItem { // eslint-disable-line deprecation/deprecation\n readonly isCustom: true;\n}\n\n/** Describes the data needed to insert a button into the status bar.\n * @deprecated in 3.6. Use [StatusBarItem]($appui-react) instead.\n * @public\n */\nexport type CommonStatusBarItem = AbstractStatusBarActionItem | AbstractStatusBarLabelItem | AbstractStatusBarCustomItem; // eslint-disable-line deprecation/deprecation\n\n/** AbstractStatusBarActionItem type guard.\n * @deprecated in 3.6. Use [isStatusBarActionItem]($appui-react) instead.\n * @public\n */\nexport const isAbstractStatusBarActionItem = (item: CommonStatusBarItem): item is AbstractStatusBarActionItem => { // eslint-disable-line deprecation/deprecation\n return (item as AbstractStatusBarActionItem).execute !== undefined; // eslint-disable-line deprecation/deprecation\n};\n\n/** AbstractStatusBarLabelItem type guard.\n * @deprecated in 3.6. Use [isStatusBarLabelItem]($appui-react) instead.\n * @public\n */\nexport const isAbstractStatusBarLabelItem = (item: CommonStatusBarItem): item is AbstractStatusBarLabelItem => { // eslint-disable-line deprecation/deprecation\n return (item as AbstractStatusBarLabelItem).label !== undefined && (item as AbstractStatusBarActionItem).execute === undefined; // eslint-disable-line deprecation/deprecation\n};\n\n/** AbstractStatusBarCustomItem type guard.\n * @deprecated in 3.6. Use [isStatusBarCustomItem]($appui-react) instead.\n * @public\n */\nexport const isAbstractStatusBarCustomItem = (item: CommonStatusBarItem): item is AbstractStatusBarCustomItem => { // eslint-disable-line deprecation/deprecation\n return !!(item as AbstractStatusBarCustomItem).isCustom; // eslint-disable-line deprecation/deprecation\n};\n\n/** Helper class to create Abstract StatusBar Item definitions.\n * @deprecated in 3.6. Use [StatusBarItemUtilities]($appui-react) instead.\n * @public\n */\nexport class AbstractStatusBarItemUtilities {\n /** Creates a StatusBar item to perform an action */\n public static createActionItem = (id: string, section: StatusBarSection, itemPriority: number, icon: string | ConditionalStringValue, tooltip: string | ConditionalStringValue, execute: () => void, overrides?: Partial<AbstractStatusBarCustomItem>): AbstractStatusBarActionItem => ({ // eslint-disable-line deprecation/deprecation\n id, section, itemPriority,\n icon, tooltip,\n execute,\n ...overrides,\n });\n\n /** Creates a StatusBar item to display a label */\n public static createLabelItem = (id: string, section: StatusBarSection, itemPriority: number, icon: string | ConditionalStringValue, label: string | ConditionalStringValue, labelSide = StatusBarLabelSide.Right, overrides?: Partial<AbstractStatusBarLabelItem>): AbstractStatusBarLabelItem => ({ // eslint-disable-line deprecation/deprecation\n id, section, itemPriority,\n icon, label,\n labelSide,\n ...overrides,\n });\n}\n"]}
1
+ {"version":3,"file":"StatusBarItem.js","sourceRoot":"","sources":["../../../../src/appui-abstract/statusbar/StatusBarItem.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAOH;;;GAGG;AACH,IAAY,gBAeX;AAfD,WAAY,gBAAgB;IAC1B,4CAA4C;IAC5C,6DAAW,CAAA;IACX,4CAA4C;IAC5C,uDAAQ,CAAA;IACR,mCAAmC;IACnC,yDAAS,CAAA;IACT,mCAAmC;IACnC,2DAAU,CAAA;IACV,sCAAsC;IACtC,iEAAa,CAAA;IACb,sCAAsC;IACtC,yDAAS,CAAA;IACT,4CAA4C;IAC5C,6DAAW,CAAA;AACb,CAAC,EAfW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAe3B;AAED;;;GAGG;AACH,IAAY,kBAKX;AALD,WAAY,kBAAkB;IAC5B,8EAA8E;IAC9E,2DAAI,CAAA;IACJ,6CAA6C;IAC7C,6DAAK,CAAA;AACP,CAAC,EALW,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAK7B;AA0ED;;;GAGG;AACI,MAAM,6BAA6B,GAAG,CAAC,IAAyB,EAAuC,EAAE;IAC9G,OAAQ,IAAoC,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,8CAA8C;AACpH,CAAC,CAAC;AAFW,QAAA,6BAA6B,iCAExC;AAEF;;;GAGG;AACI,MAAM,4BAA4B,GAAG,CAAC,IAAyB,EAAsC,EAAE;IAC5G,OAAQ,IAAmC,CAAC,KAAK,KAAK,SAAS,IAAK,IAAoC,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,8CAA8C;AAChL,CAAC,CAAC;AAFW,QAAA,4BAA4B,gCAEvC;AAEF;;;GAGG;AACI,MAAM,6BAA6B,GAAG,CAAC,IAAyB,EAAuC,EAAE;IAC9G,OAAO,CAAC,CAAE,IAAoC,CAAC,QAAQ,CAAC,CAAC,8CAA8C;AACzG,CAAC,CAAC;AAFW,QAAA,6BAA6B,iCAExC;AAEF;;;GAGG;AACH,MAAa,8BAA8B;;AACzC,oDAAoD;AACtC,+CAAgB,GAAG,CAAC,EAAU,EAAE,OAAyB,EAAE,YAAoB,EAAE,IAAqC,EAAE,OAAwC,EAAE,OAAmB,EAAE,SAAgD,EAA+B,EAAE,CAAC,CAAC;IACtR,EAAE,EAAE,OAAO,EAAE,YAAY;IACzB,IAAI,EAAE,OAAO;IACb,OAAO;IACP,GAAG,SAAS;CACb,CAAC,CAAC;AAEH,kDAAkD;AACpC,8CAAe,GAAG,CAAC,EAAU,EAAE,OAAyB,EAAE,YAAoB,EAAE,IAAqC,EAAE,KAAsC,EAAE,SAAS,GAAG,kBAAkB,CAAC,KAAK,EAAE,SAA+C,EAA8B,EAAE,CAAC,CAAC;IAClS,EAAE,EAAE,OAAO,EAAE,YAAY;IACzB,IAAI,EAAE,KAAK;IACX,SAAS;IACT,GAAG,SAAS;CACb,CAAC,CAAC;AAfQ,wEAA8B","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module StatusBar\r\n */\r\n\r\nimport { BadgeType } from \"../items/BadgeType\";\r\nimport { ConditionalBooleanValue } from \"../items/ConditionalBooleanValue\";\r\nimport { ConditionalStringValue } from \"../items/ConditionalStringValue\";\r\nimport { ProvidedItem } from \"../items/ProvidedItem\";\r\n\r\n/** Status bar Groups/Sections from Left to Right\r\n * @deprecated in 3.6. Use [StatusBarSection]($appui-react) instead.\r\n * @public\r\n */\r\nexport enum StatusBarSection {\r\n /** area for tool assistance and messages */\r\n Message = 0,\r\n /** area for tool assistance and messages */\r\n Left = 0,\r\n /** items specific to stage/task */\r\n Stage = 1,\r\n /** items specific to stage/task */\r\n Center = 1,\r\n /** Select scope and selection info */\r\n Selection = 2,\r\n /** Select scope and selection info */\r\n Right = 2,\r\n /** items that only show based on context */\r\n Context = 3,\r\n}\r\n\r\n/** Defines which side of Icon where label is placed\r\n * @deprecated in 3.6. Use [StatusBarLabelSide]($appui-react) instead.\r\n * @public\r\n */\r\nexport enum StatusBarLabelSide {\r\n /** Label is placed left side of icon. This is the default if not specified */\r\n Left,\r\n /** Label is placed on right side of icon. */\r\n Right,\r\n}\r\n\r\n/** Type for StatusBar Item Id\r\n * @deprecated in 3.6. Please use `CommonStatusBarItem[\"id\"]` from @itwin/appui-react.\r\n * @public\r\n */\r\nexport type StatusBarItemId = CommonStatusBarItem[\"id\"]; // eslint-disable-line deprecation/deprecation\r\n\r\n/** Describes the data needed to insert a button into the status bar.\r\n * @deprecated in 3.6. Use [CommonStatusBarItem]($appui-react) instead.\r\n * @public\r\n */\r\nexport interface AbstractStatusBarItem extends ProvidedItem { // eslint-disable-line deprecation/deprecation\r\n /** can be used by application to store miscellaneous data. */\r\n applicationData?: any;\r\n /** Describes badge. Renders no badge if not specified. */\r\n readonly badgeType?: BadgeType;\r\n /** Required unique id of the item. To ensure uniqueness it is suggested that a namespace prefix of the extension name be used. */\r\n readonly id: string;\r\n /** optional data to used by item implementor. */\r\n readonly internalData?: Map<string, any>;\r\n /** Describes if the item is visible or hidden. The default is for the item to be visible. */\r\n readonly isHidden?: boolean | ConditionalBooleanValue;\r\n /** Describes if the item is enabled or disabled. The default is for the item to be enabled. */\r\n readonly isDisabled?: boolean | ConditionalBooleanValue;\r\n /** Priority within a section (recommend using values 1 through 100). */\r\n readonly itemPriority: number;\r\n /** status bar section */\r\n readonly section: StatusBarSection; // eslint-disable-line deprecation/deprecation\r\n}\r\n\r\n/** Describes the data needed to insert an action item into the status bar.\r\n * @deprecated in 3.6. Use [StatusBarActionItem]($appui-react) instead.\r\n * @public\r\n */\r\nexport interface AbstractStatusBarActionItem extends AbstractStatusBarItem { // eslint-disable-line deprecation/deprecation\r\n /** method to execute when icon is pressed */\r\n readonly execute: () => void;\r\n /** Name of icon WebFont entry or if specifying an imported SVG symbol use \"webSvg:\" prefix to imported symbol Id. */\r\n readonly icon?: string | ConditionalStringValue;\r\n /** Label. */\r\n readonly label?: string | ConditionalStringValue;\r\n /** tooltip. */\r\n readonly tooltip?: string | ConditionalStringValue;\r\n}\r\n\r\n/** Describes the data needed to insert a label item with an optional icon into the status bar.\r\n * @deprecated in 3.6. Use [StatusBarLabelItem]($appui-react) instead.\r\n * @public\r\n */\r\nexport interface AbstractStatusBarLabelItem extends AbstractStatusBarItem { // eslint-disable-line deprecation/deprecation\r\n /** Name of icon WebFont entry or if specifying an imported SVG symbol use \"webSvg:\" prefix to imported symbol Id. */\r\n readonly icon?: string | ConditionalStringValue;\r\n /** Label. */\r\n readonly label: string | ConditionalStringValue;\r\n /** Defines which side of icon to display label if icon is defined. */\r\n readonly labelSide?: StatusBarLabelSide; // eslint-disable-line deprecation/deprecation\r\n}\r\n\r\n/** Describes the data needed to insert a custom item into the status bar. This is used to allow extension\r\n * implementer to create a framework specific component.\r\n * @deprecated in 3.6. Use [StatusBarCustomItem]($appui-react) instead.\r\n * @public\r\n */\r\nexport interface AbstractStatusBarCustomItem extends AbstractStatusBarItem { // eslint-disable-line deprecation/deprecation\r\n readonly isCustom: true;\r\n}\r\n\r\n/** Describes the data needed to insert a button into the status bar.\r\n * @deprecated in 3.6. Use [StatusBarItem]($appui-react) instead.\r\n * @public\r\n */\r\nexport type CommonStatusBarItem = AbstractStatusBarActionItem | AbstractStatusBarLabelItem | AbstractStatusBarCustomItem; // eslint-disable-line deprecation/deprecation\r\n\r\n/** AbstractStatusBarActionItem type guard.\r\n * @deprecated in 3.6. Use [isStatusBarActionItem]($appui-react) instead.\r\n * @public\r\n */\r\nexport const isAbstractStatusBarActionItem = (item: CommonStatusBarItem): item is AbstractStatusBarActionItem => { // eslint-disable-line deprecation/deprecation\r\n return (item as AbstractStatusBarActionItem).execute !== undefined; // eslint-disable-line deprecation/deprecation\r\n};\r\n\r\n/** AbstractStatusBarLabelItem type guard.\r\n * @deprecated in 3.6. Use [isStatusBarLabelItem]($appui-react) instead.\r\n * @public\r\n */\r\nexport const isAbstractStatusBarLabelItem = (item: CommonStatusBarItem): item is AbstractStatusBarLabelItem => { // eslint-disable-line deprecation/deprecation\r\n return (item as AbstractStatusBarLabelItem).label !== undefined && (item as AbstractStatusBarActionItem).execute === undefined; // eslint-disable-line deprecation/deprecation\r\n};\r\n\r\n/** AbstractStatusBarCustomItem type guard.\r\n * @deprecated in 3.6. Use [isStatusBarCustomItem]($appui-react) instead.\r\n * @public\r\n */\r\nexport const isAbstractStatusBarCustomItem = (item: CommonStatusBarItem): item is AbstractStatusBarCustomItem => { // eslint-disable-line deprecation/deprecation\r\n return !!(item as AbstractStatusBarCustomItem).isCustom; // eslint-disable-line deprecation/deprecation\r\n};\r\n\r\n/** Helper class to create Abstract StatusBar Item definitions.\r\n * @deprecated in 3.6. Use [StatusBarItemUtilities]($appui-react) instead.\r\n * @public\r\n */\r\nexport class AbstractStatusBarItemUtilities {\r\n /** Creates a StatusBar item to perform an action */\r\n public static createActionItem = (id: string, section: StatusBarSection, itemPriority: number, icon: string | ConditionalStringValue, tooltip: string | ConditionalStringValue, execute: () => void, overrides?: Partial<AbstractStatusBarCustomItem>): AbstractStatusBarActionItem => ({ // eslint-disable-line deprecation/deprecation\r\n id, section, itemPriority,\r\n icon, tooltip,\r\n execute,\r\n ...overrides,\r\n });\r\n\r\n /** Creates a StatusBar item to display a label */\r\n public static createLabelItem = (id: string, section: StatusBarSection, itemPriority: number, icon: string | ConditionalStringValue, label: string | ConditionalStringValue, labelSide = StatusBarLabelSide.Right, overrides?: Partial<AbstractStatusBarLabelItem>): AbstractStatusBarLabelItem => ({ // eslint-disable-line deprecation/deprecation\r\n id, section, itemPriority,\r\n icon, label,\r\n labelSide,\r\n ...overrides,\r\n });\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"StatusBarItemsManager.js","sourceRoot":"","sources":["../../../../src/appui-abstract/statusbar/StatusBarItemsManager.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module StatusBar\n */\n\nimport { BeEvent } from \"@itwin/core-bentley\";\nimport { ConditionalBooleanValue } from \"../items/ConditionalBooleanValue\";\nimport { ConditionalStringValue } from \"../items/ConditionalStringValue\";\nimport { CommonStatusBarItem, StatusBarItemId } from \"./StatusBarItem\";\n\n/* eslint-disable deprecation/deprecation */\n\ntype InstanceOrArray<T> = T | ReadonlyArray<T>;\n\nconst isInstance = <T>(args: InstanceOrArray<T>): args is T => {\n return !Array.isArray(args);\n};\n\n/** Arguments of [[StatusBarItemsManager.onChanged]] event.\n * @internal\n */\nexport interface StatusBarItemsChangedArgs {\n readonly items: ReadonlyArray<CommonStatusBarItem>;\n}\n\n/**\n * Controls status bar items.\n * @internal\n */\nexport class StatusBarItemsManager {\n private _items: ReadonlyArray<CommonStatusBarItem> = [];\n\n constructor(items?: ReadonlyArray<CommonStatusBarItem>) {\n if (items)\n this.loadItemsInternal(items, true, false);\n }\n\n /** Event raised when StatusBar items are changed.\n * @internal\n */\n public readonly onItemsChanged = new BeEvent<(args: StatusBarItemsChangedArgs) => void>();\n\n private loadItemsInternal(items: ReadonlyArray<CommonStatusBarItem>, processConditions: boolean, sendItemChanged: boolean) {\n if (processConditions && items) {\n const eventIds = StatusBarItemsManager.getSyncIdsOfInterest(items);\n if (0 !== eventIds.length) {\n const { itemsUpdated, updatedItems } = this.internalRefreshAffectedItems(items, new Set(eventIds));\n\n // istanbul ignore else\n if (itemsUpdated)\n items = updatedItems;\n }\n }\n\n this._items = items;\n if (sendItemChanged)\n this.onItemsChanged.raiseEvent({ items });\n }\n\n /** load items but do not fire onItemsChanged\n * @internal\n */\n public loadItems(items: ReadonlyArray<CommonStatusBarItem>) {\n this.loadItemsInternal(items, true, false);\n }\n\n /** Get an array of the StatusBar items */\n public get items(): ReadonlyArray<CommonStatusBarItem> {\n return this._items;\n }\n\n public set items(items: ReadonlyArray<CommonStatusBarItem>) {\n // istanbul ignore else\n if (items !== this._items)\n this.loadItemsInternal(items, true, true);\n }\n\n public add(itemOrItems: CommonStatusBarItem | ReadonlyArray<CommonStatusBarItem>) {\n let itemsToAdd;\n if (isInstance(itemOrItems))\n itemsToAdd = [itemOrItems];\n else {\n itemsToAdd = itemOrItems.filter((itemToAdd, index) => itemOrItems.findIndex((item) => item.id === itemToAdd.id) === index);\n }\n itemsToAdd = itemsToAdd.filter((itemToAdd) => this._items.find((item) => item.id === itemToAdd.id) === undefined);\n if (itemsToAdd.length === 0)\n return;\n const items = [\n ...this._items,\n ...itemsToAdd,\n ];\n this.items = items;\n }\n\n /** Remove StatusBar items based on id */\n public remove(itemIdOrItemIds: StatusBarItemId | ReadonlyArray<StatusBarItemId\n >) {\n const items = this._items.filter((item) => {\n return isInstance(itemIdOrItemIds) ? item.id !== itemIdOrItemIds : !itemIdOrItemIds.find((itemId) => itemId === item.id);\n });\n this.items = items;\n }\n\n /** @internal */\n public removeAll() {\n this._items = [];\n }\n\n public static getSyncIdsOfInterest(items: readonly CommonStatusBarItem[]): string[] {\n const eventIds = new Set<string>();\n items.forEach((item) => {\n for (const [, entry] of Object.entries(item)) {\n if (entry instanceof ConditionalBooleanValue) {\n entry.syncEventIds.forEach((eventId: string) => eventIds.add(eventId.toLowerCase()));\n } else /* istanbul ignore else */ if (entry instanceof ConditionalStringValue) {\n entry.syncEventIds.forEach((eventId: string) => eventIds.add(eventId.toLowerCase()));\n }\n }\n });\n return [...eventIds.values()];\n }\n\n private internalRefreshAffectedItems(items: readonly CommonStatusBarItem[], eventIds: Set<string>): { itemsUpdated: boolean, updatedItems: CommonStatusBarItem[] } {\n // istanbul ignore next\n if (0 === eventIds.size)\n return { itemsUpdated: false, updatedItems: [] };\n\n let updateRequired = false;\n\n const newItems: CommonStatusBarItem[] = [];\n for (const item of items) {\n const updatedItem = { ...item };\n\n for (const [, entry] of Object.entries(updatedItem)) {\n if (entry instanceof ConditionalBooleanValue) {\n // istanbul ignore else\n if (ConditionalBooleanValue.refreshValue(entry, eventIds))\n updateRequired = true;\n } else /* istanbul ignore else */ if (entry instanceof ConditionalStringValue) {\n // istanbul ignore else\n if (ConditionalStringValue.refreshValue(entry, eventIds))\n updateRequired = true;\n }\n }\n\n newItems.push(updatedItem);\n }\n\n return { itemsUpdated: updateRequired, updatedItems: newItems };\n }\n\n public refreshAffectedItems(eventIds: Set<string>) {\n // istanbul ignore next\n if (0 === eventIds.size)\n return;\n\n const { itemsUpdated, updatedItems } = this.internalRefreshAffectedItems(this.items, eventIds);\n\n // istanbul ignore else\n if (itemsUpdated)\n this.loadItemsInternal(updatedItems, false, true);\n }\n}\n"]}
1
+ {"version":3,"file":"StatusBarItemsManager.js","sourceRoot":"","sources":["../../../../src/appui-abstract/statusbar/StatusBarItemsManager.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module StatusBar\r\n */\r\n\r\nimport { BeEvent } from \"@itwin/core-bentley\";\r\nimport { ConditionalBooleanValue } from \"../items/ConditionalBooleanValue\";\r\nimport { ConditionalStringValue } from \"../items/ConditionalStringValue\";\r\nimport { CommonStatusBarItem, StatusBarItemId } from \"./StatusBarItem\";\r\n\r\n/* eslint-disable deprecation/deprecation */\r\n\r\ntype InstanceOrArray<T> = T | ReadonlyArray<T>;\r\n\r\nconst isInstance = <T>(args: InstanceOrArray<T>): args is T => {\r\n return !Array.isArray(args);\r\n};\r\n\r\n/** Arguments of [[StatusBarItemsManager.onChanged]] event.\r\n * @internal\r\n */\r\nexport interface StatusBarItemsChangedArgs {\r\n readonly items: ReadonlyArray<CommonStatusBarItem>;\r\n}\r\n\r\n/**\r\n * Controls status bar items.\r\n * @internal\r\n */\r\nexport class StatusBarItemsManager {\r\n private _items: ReadonlyArray<CommonStatusBarItem> = [];\r\n\r\n constructor(items?: ReadonlyArray<CommonStatusBarItem>) {\r\n if (items)\r\n this.loadItemsInternal(items, true, false);\r\n }\r\n\r\n /** Event raised when StatusBar items are changed.\r\n * @internal\r\n */\r\n public readonly onItemsChanged = new BeEvent<(args: StatusBarItemsChangedArgs) => void>();\r\n\r\n private loadItemsInternal(items: ReadonlyArray<CommonStatusBarItem>, processConditions: boolean, sendItemChanged: boolean) {\r\n if (processConditions && items) {\r\n const eventIds = StatusBarItemsManager.getSyncIdsOfInterest(items);\r\n if (0 !== eventIds.length) {\r\n const { itemsUpdated, updatedItems } = this.internalRefreshAffectedItems(items, new Set(eventIds));\r\n\r\n // istanbul ignore else\r\n if (itemsUpdated)\r\n items = updatedItems;\r\n }\r\n }\r\n\r\n this._items = items;\r\n if (sendItemChanged)\r\n this.onItemsChanged.raiseEvent({ items });\r\n }\r\n\r\n /** load items but do not fire onItemsChanged\r\n * @internal\r\n */\r\n public loadItems(items: ReadonlyArray<CommonStatusBarItem>) {\r\n this.loadItemsInternal(items, true, false);\r\n }\r\n\r\n /** Get an array of the StatusBar items */\r\n public get items(): ReadonlyArray<CommonStatusBarItem> {\r\n return this._items;\r\n }\r\n\r\n public set items(items: ReadonlyArray<CommonStatusBarItem>) {\r\n // istanbul ignore else\r\n if (items !== this._items)\r\n this.loadItemsInternal(items, true, true);\r\n }\r\n\r\n public add(itemOrItems: CommonStatusBarItem | ReadonlyArray<CommonStatusBarItem>) {\r\n let itemsToAdd;\r\n if (isInstance(itemOrItems))\r\n itemsToAdd = [itemOrItems];\r\n else {\r\n itemsToAdd = itemOrItems.filter((itemToAdd, index) => itemOrItems.findIndex((item) => item.id === itemToAdd.id) === index);\r\n }\r\n itemsToAdd = itemsToAdd.filter((itemToAdd) => this._items.find((item) => item.id === itemToAdd.id) === undefined);\r\n if (itemsToAdd.length === 0)\r\n return;\r\n const items = [\r\n ...this._items,\r\n ...itemsToAdd,\r\n ];\r\n this.items = items;\r\n }\r\n\r\n /** Remove StatusBar items based on id */\r\n public remove(itemIdOrItemIds: StatusBarItemId | ReadonlyArray<StatusBarItemId\r\n >) {\r\n const items = this._items.filter((item) => {\r\n return isInstance(itemIdOrItemIds) ? item.id !== itemIdOrItemIds : !itemIdOrItemIds.find((itemId) => itemId === item.id);\r\n });\r\n this.items = items;\r\n }\r\n\r\n /** @internal */\r\n public removeAll() {\r\n this._items = [];\r\n }\r\n\r\n public static getSyncIdsOfInterest(items: readonly CommonStatusBarItem[]): string[] {\r\n const eventIds = new Set<string>();\r\n items.forEach((item) => {\r\n for (const [, entry] of Object.entries(item)) {\r\n if (entry instanceof ConditionalBooleanValue) {\r\n entry.syncEventIds.forEach((eventId: string) => eventIds.add(eventId.toLowerCase()));\r\n } else /* istanbul ignore else */ if (entry instanceof ConditionalStringValue) {\r\n entry.syncEventIds.forEach((eventId: string) => eventIds.add(eventId.toLowerCase()));\r\n }\r\n }\r\n });\r\n return [...eventIds.values()];\r\n }\r\n\r\n private internalRefreshAffectedItems(items: readonly CommonStatusBarItem[], eventIds: Set<string>): { itemsUpdated: boolean, updatedItems: CommonStatusBarItem[] } {\r\n // istanbul ignore next\r\n if (0 === eventIds.size)\r\n return { itemsUpdated: false, updatedItems: [] };\r\n\r\n let updateRequired = false;\r\n\r\n const newItems: CommonStatusBarItem[] = [];\r\n for (const item of items) {\r\n const updatedItem = { ...item };\r\n\r\n for (const [, entry] of Object.entries(updatedItem)) {\r\n if (entry instanceof ConditionalBooleanValue) {\r\n // istanbul ignore else\r\n if (ConditionalBooleanValue.refreshValue(entry, eventIds))\r\n updateRequired = true;\r\n } else /* istanbul ignore else */ if (entry instanceof ConditionalStringValue) {\r\n // istanbul ignore else\r\n if (ConditionalStringValue.refreshValue(entry, eventIds))\r\n updateRequired = true;\r\n }\r\n }\r\n\r\n newItems.push(updatedItem);\r\n }\r\n\r\n return { itemsUpdated: updateRequired, updatedItems: newItems };\r\n }\r\n\r\n public refreshAffectedItems(eventIds: Set<string>) {\r\n // istanbul ignore next\r\n if (0 === eventIds.size)\r\n return;\r\n\r\n const { itemsUpdated, updatedItems } = this.internalRefreshAffectedItems(this.items, eventIds);\r\n\r\n // istanbul ignore else\r\n if (itemsUpdated)\r\n this.loadItemsInternal(updatedItems, false, true);\r\n }\r\n}\r\n"]}