igniteui-webcomponents 7.1.1 → 7.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (192) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/README.md +13 -11
  3. package/animations/easings.d.ts +1 -1
  4. package/animations/easings.js +1 -1
  5. package/animations/easings.js.map +1 -1
  6. package/components/button-group/button-group.js +2 -2
  7. package/components/button-group/button-group.js.map +1 -1
  8. package/components/button-group/themes/dark/button-group.bootstrap.css.js +1 -1
  9. package/components/button-group/themes/dark/button-group.bootstrap.css.js.map +1 -1
  10. package/components/button-group/themes/dark/button-group.fluent.css.js +1 -1
  11. package/components/button-group/themes/dark/button-group.fluent.css.js.map +1 -1
  12. package/components/button-group/themes/dark/button-group.indigo.css.js +1 -1
  13. package/components/button-group/themes/dark/button-group.indigo.css.js.map +1 -1
  14. package/components/button-group/themes/dark/button-group.material.css.js +1 -1
  15. package/components/button-group/themes/dark/button-group.material.css.js.map +1 -1
  16. package/components/button-group/themes/dark/button-group.shared.css.js +1 -1
  17. package/components/button-group/themes/dark/button-group.shared.css.js.map +1 -1
  18. package/components/button-group/themes/light/button-group.bootstrap.css.js +1 -1
  19. package/components/button-group/themes/light/button-group.bootstrap.css.js.map +1 -1
  20. package/components/button-group/themes/light/button-group.fluent.css.js +1 -1
  21. package/components/button-group/themes/light/button-group.fluent.css.js.map +1 -1
  22. package/components/button-group/themes/light/button-group.indigo.css.js +1 -1
  23. package/components/button-group/themes/light/button-group.indigo.css.js.map +1 -1
  24. package/components/button-group/themes/light/button-group.material.css.js +1 -1
  25. package/components/button-group/themes/light/button-group.material.css.js.map +1 -1
  26. package/components/button-group/themes/light/button-group.shared.css.js +1 -1
  27. package/components/button-group/themes/light/button-group.shared.css.js.map +1 -1
  28. package/components/button-group/themes/shared/button/button.bootstrap.css.js +1 -1
  29. package/components/button-group/themes/shared/button/button.bootstrap.css.js.map +1 -1
  30. package/components/button-group/themes/shared/button/button.common.css.js +1 -1
  31. package/components/button-group/themes/shared/button/button.common.css.js.map +1 -1
  32. package/components/button-group/themes/shared/button/button.fluent.css.js +1 -1
  33. package/components/button-group/themes/shared/button/button.fluent.css.js.map +1 -1
  34. package/components/button-group/themes/shared/button/button.indigo.css.js +1 -1
  35. package/components/button-group/themes/shared/button/button.indigo.css.js.map +1 -1
  36. package/components/button-group/themes/shared/button/button.material.css.js +1 -1
  37. package/components/button-group/themes/shared/button/button.material.css.js.map +1 -1
  38. package/components/calendar/calendar.js +3 -3
  39. package/components/calendar/calendar.js.map +1 -1
  40. package/components/calendar/helpers.js +2 -2
  41. package/components/calendar/helpers.js.map +1 -1
  42. package/components/carousel/carousel.js +2 -2
  43. package/components/carousel/carousel.js.map +1 -1
  44. package/components/chat/chat-message.js +1 -0
  45. package/components/chat/chat-message.js.map +1 -1
  46. package/components/chat/themes/dark/chat.bootstrap.css.js +1 -1
  47. package/components/chat/themes/dark/chat.bootstrap.css.js.map +1 -1
  48. package/components/chat/themes/dark/chat.fluent.css.js +1 -1
  49. package/components/chat/themes/dark/chat.fluent.css.js.map +1 -1
  50. package/components/chat/themes/dark/chat.indigo.css.js +1 -1
  51. package/components/chat/themes/dark/chat.indigo.css.js.map +1 -1
  52. package/components/chat/themes/dark/chat.material.css.js +1 -1
  53. package/components/chat/themes/dark/chat.material.css.js.map +1 -1
  54. package/components/chat/themes/light/chat.bootstrap.css.js +1 -1
  55. package/components/chat/themes/light/chat.bootstrap.css.js.map +1 -1
  56. package/components/chat/themes/light/chat.fluent.css.js +1 -1
  57. package/components/chat/themes/light/chat.fluent.css.js.map +1 -1
  58. package/components/chat/themes/light/chat.indigo.css.js +1 -1
  59. package/components/chat/themes/light/chat.indigo.css.js.map +1 -1
  60. package/components/chat/themes/light/chat.material.css.js +1 -1
  61. package/components/chat/themes/light/chat.material.css.js.map +1 -1
  62. package/components/chat/themes/light/chat.shared.css.js +1 -1
  63. package/components/chat/themes/light/chat.shared.css.js.map +1 -1
  64. package/components/chat/themes/message.base.css.js +1 -1
  65. package/components/chat/themes/message.base.css.js.map +1 -1
  66. package/components/chat/themes/message.js +0 -14
  67. package/components/chat/themes/message.js.map +1 -1
  68. package/components/chat/themes/shared/chat-message/chat-message.common.css.js +1 -1
  69. package/components/chat/themes/shared/chat-message/chat-message.common.css.js.map +1 -1
  70. package/components/chat/themes/shared/chat-message/chat-message.indigo.css.js +1 -1
  71. package/components/chat/themes/shared/chat-message/chat-message.indigo.css.js.map +1 -1
  72. package/components/chip/chip.d.ts +1 -0
  73. package/components/chip/chip.js +3 -1
  74. package/components/chip/chip.js.map +1 -1
  75. package/components/chip/themes/chip.base.css.js +1 -1
  76. package/components/chip/themes/chip.base.css.js.map +1 -1
  77. package/components/chip/themes/shared/chip.common.css.js +1 -1
  78. package/components/chip/themes/shared/chip.common.css.js.map +1 -1
  79. package/components/combo/combo-header.js.map +1 -1
  80. package/components/combo/combo-item.d.ts +6 -2
  81. package/components/combo/combo-item.js +5 -4
  82. package/components/combo/combo-item.js.map +1 -1
  83. package/components/combo/combo-list.js.map +1 -1
  84. package/components/combo/combo.d.ts +92 -81
  85. package/components/combo/combo.js +327 -281
  86. package/components/combo/combo.js.map +1 -1
  87. package/components/combo/controllers/data.d.ts +50 -13
  88. package/components/combo/controllers/data.js +49 -28
  89. package/components/combo/controllers/data.js.map +1 -1
  90. package/components/combo/controllers/navigation.d.ts +19 -18
  91. package/components/combo/controllers/navigation.js +73 -90
  92. package/components/combo/controllers/navigation.js.map +1 -1
  93. package/components/combo/operations/filter.d.ts +2 -2
  94. package/components/combo/operations/filter.js.map +1 -1
  95. package/components/combo/operations/group.d.ts +2 -2
  96. package/components/combo/operations/group.js.map +1 -1
  97. package/components/common/context.d.ts +1 -1
  98. package/components/common/context.js +1 -1
  99. package/components/common/context.js.map +1 -1
  100. package/components/common/controllers/drag.js +2 -2
  101. package/components/common/controllers/drag.js.map +1 -1
  102. package/components/common/controllers/key-bindings.d.ts +100 -18
  103. package/components/common/controllers/key-bindings.js +54 -47
  104. package/components/common/controllers/key-bindings.js.map +1 -1
  105. package/components/common/controllers/root-click.js +3 -3
  106. package/components/common/controllers/root-click.js.map +1 -1
  107. package/components/common/controllers/slot.d.ts +1 -1
  108. package/components/common/controllers/slot.js.map +1 -1
  109. package/components/common/mixins/combo-box.d.ts +24 -19
  110. package/components/common/mixins/combo-box.js +26 -23
  111. package/components/common/mixins/combo-box.js.map +1 -1
  112. package/components/common/util.d.ts +40 -2
  113. package/components/common/util.js +5 -2
  114. package/components/common/util.js.map +1 -1
  115. package/components/date-picker/date-picker.d.ts +3 -3
  116. package/components/date-picker/date-picker.js +10 -10
  117. package/components/date-picker/date-picker.js.map +1 -1
  118. package/components/date-range-picker/date-range-picker.d.ts +3 -3
  119. package/components/date-range-picker/date-range-picker.js +9 -9
  120. package/components/date-range-picker/date-range-picker.js.map +1 -1
  121. package/components/date-time-input/date-time-input.js +1 -1
  122. package/components/date-time-input/date-time-input.js.map +1 -1
  123. package/components/date-time-input/datetime-mask-parser.d.ts +1 -2
  124. package/components/date-time-input/datetime-mask-parser.js +1 -2
  125. package/components/date-time-input/datetime-mask-parser.js.map +1 -1
  126. package/components/dropdown/dropdown.d.ts +2 -2
  127. package/components/dropdown/dropdown.js +6 -6
  128. package/components/dropdown/dropdown.js.map +1 -1
  129. package/components/dropdown/themes/shared/item/dropdown-item.common.css.js +1 -1
  130. package/components/dropdown/themes/shared/item/dropdown-item.common.css.js.map +1 -1
  131. package/components/dropdown/themes/shared/item/dropdown-item.indigo.css.js +1 -1
  132. package/components/dropdown/themes/shared/item/dropdown-item.indigo.css.js.map +1 -1
  133. package/components/progress/themes/circular/dark/circular.progress.indigo.css.js +1 -1
  134. package/components/progress/themes/circular/dark/circular.progress.indigo.css.js.map +1 -1
  135. package/components/progress/themes/circular/dark/circular.progress.shared.css.js +1 -1
  136. package/components/progress/themes/circular/dark/circular.progress.shared.css.js.map +1 -1
  137. package/components/progress/themes/circular/light/circular.progress.indigo.css.js +1 -1
  138. package/components/progress/themes/circular/light/circular.progress.indigo.css.js.map +1 -1
  139. package/components/progress/themes/circular/light/circular.progress.shared.css.js +1 -1
  140. package/components/progress/themes/circular/light/circular.progress.shared.css.js.map +1 -1
  141. package/components/progress/themes/circular/shared/circular.progress.common.css.js +1 -1
  142. package/components/progress/themes/circular/shared/circular.progress.common.css.js.map +1 -1
  143. package/components/progress/themes/linear/linear.progress.base.css.js +1 -1
  144. package/components/progress/themes/linear/linear.progress.base.css.js.map +1 -1
  145. package/components/radio/radio.js +1 -1
  146. package/components/radio/radio.js.map +1 -1
  147. package/components/rating/rating.d.ts +57 -28
  148. package/components/rating/rating.js +123 -120
  149. package/components/rating/rating.js.map +1 -1
  150. package/components/resize-container/resize-controller.js +2 -3
  151. package/components/resize-container/resize-controller.js.map +1 -1
  152. package/components/select/select.d.ts +3 -3
  153. package/components/select/select.js +10 -10
  154. package/components/select/select.js.map +1 -1
  155. package/components/splitter/types.d.ts +1 -1
  156. package/components/splitter/types.js.map +1 -1
  157. package/components/stepper/common/state.d.ts +1 -1
  158. package/components/stepper/common/state.js.map +1 -1
  159. package/components/stepper/stepper.js +3 -3
  160. package/components/stepper/stepper.js.map +1 -1
  161. package/components/tabs/tabs.js +3 -3
  162. package/components/tabs/tabs.js.map +1 -1
  163. package/components/tile-manager/tile.js +2 -2
  164. package/components/tile-manager/tile.js.map +1 -1
  165. package/components/tree/themes/shared/item.indigo.css.js +1 -1
  166. package/components/tree/themes/shared/item.indigo.css.js.map +1 -1
  167. package/components/tree/tree-item.js +2 -3
  168. package/components/tree/tree-item.js.map +1 -1
  169. package/custom-elements.json +1690 -966
  170. package/igniteui-webcomponents.css-data.json +1 -1
  171. package/igniteui-webcomponents.html-data.json +1 -1
  172. package/package.json +1 -1
  173. package/skills/README.md +3 -0
  174. package/skills/igniteui-wc-choose-components/SKILL.md +53 -0
  175. package/skills/igniteui-wc-generate-from-image-design/SKILL.md +228 -0
  176. package/skills/igniteui-wc-generate-from-image-design/references/component-mapping.md +130 -0
  177. package/skills/igniteui-wc-generate-from-image-design/references/gotchas.md +147 -0
  178. package/skills/igniteui-wc-integrate-with-framework/SKILL.md +22 -1
  179. package/skills/igniteui-wc-integrate-with-framework/references/angular.md +2 -0
  180. package/skills/igniteui-wc-integrate-with-framework/references/react.md +2 -0
  181. package/skills/igniteui-wc-integrate-with-framework/references/vanilla-js.md +2 -0
  182. package/skills/igniteui-wc-integrate-with-framework/references/vue.md +2 -0
  183. package/web-types.json +2 -2
  184. package/components/chat/themes/shared/chat-message/chat-message.bootstrap.css.d.ts +0 -1
  185. package/components/chat/themes/shared/chat-message/chat-message.bootstrap.css.js +0 -3
  186. package/components/chat/themes/shared/chat-message/chat-message.bootstrap.css.js.map +0 -1
  187. package/components/chat/themes/shared/chat-message/chat-message.fluent.css.d.ts +0 -1
  188. package/components/chat/themes/shared/chat-message/chat-message.fluent.css.js +0 -3
  189. package/components/chat/themes/shared/chat-message/chat-message.fluent.css.js.map +0 -1
  190. package/components/combo/controllers/selection.d.ts +0 -33
  191. package/components/combo/controllers/selection.js +0 -169
  192. package/components/combo/controllers/selection.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"datetime-mask-parser.js","sourceRoot":"","sources":["../../../src/components/date-time-input/datetime-mask-parser.ts"],"names":[],"mappings":"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","sourcesContent":["import { asNumber, clamp } from '../common/util.js';\nimport { MaskParser } from '../mask-input/mask-parser.js';\nimport { createDatePart, DatePartType, type IDatePart } from './date-part.js';\n\n//#region Types and Enums\n\n/**\n * Types of date/time parts that can appear in a format string.\n * Re-exported from date-part.ts for backward compatibility.\n */\nexport { DatePartType as DateParts };\n\n/**\n * Re-export createDatePart factory for creating standalone parts.\n */\nexport { createDatePart };\n\n/**\n * Information about a parsed date part within a format string.\n * This is a type alias for IDatePart for backward compatibility.\n */\nexport type DatePartInfo = IDatePart;\n\n/** Options for the DateTimeMaskParser */\nexport interface DateTimeMaskOptions {\n /** The date/time format string (e.g., 'MM/dd/yyyy', 'HH:mm:ss') */\n format?: string;\n /** The prompt character for unfilled positions */\n promptCharacter?: string;\n}\n\n//#endregion\n\n//#region Constants\n\n/** Maps format characters to their corresponding DatePartType */\nconst FORMAT_CHAR_TO_DATE_PART = new Map<string, DatePartType>([\n ['d', DatePartType.Date],\n ['D', DatePartType.Date],\n ['M', DatePartType.Month],\n ['y', DatePartType.Year],\n ['Y', DatePartType.Year],\n ['h', DatePartType.Hours],\n ['H', DatePartType.Hours],\n ['m', DatePartType.Minutes],\n ['s', DatePartType.Seconds],\n ['S', DatePartType.Seconds],\n ['t', DatePartType.AmPm],\n ['T', DatePartType.AmPm],\n]);\n\n/** Set of valid date/time format characters */\nconst DATE_FORMAT_CHARS = new Set(FORMAT_CHAR_TO_DATE_PART.keys());\n\n/** Century threshold for two-digit year interpretation */\nconst CENTURY_THRESHOLD = 50;\nconst CENTURY_BASE = 2000;\n\n/** Default values for missing date parts */\nconst DEFAULT_DATE_VALUES = {\n year: 2000,\n month: 0,\n date: 1,\n hours: 0,\n minutes: 0,\n seconds: 0,\n} as const;\n\n/** Default date/time format */\nconst DEFAULT_DATETIME_FORMAT = 'MM/dd/yyyy';\n\n//#endregion\n\n/**\n * A specialized mask parser for date/time input fields.\n * Extends MaskParser to handle date-specific format patterns and validation.\n *\n * @example\n * ```ts\n * const parser = new DateTimeMaskParser({ format: 'MM/dd/yyyy' });\n * parser.apply('12252023'); // Returns '12/25/2023'\n * parser.parseDate('12/25/2023'); // Returns Date object\n * ```\n */\nexport class DateTimeMaskParser extends MaskParser {\n /** Parsed date parts from the format string */\n private _dateParts!: IDatePart[];\n\n /**\n * Gets the parsed date parts from the format string.\n * Each part contains type, position, and format information.\n */\n public get dateParts(): ReadonlyArray<IDatePart> {\n return this._dateParts;\n }\n\n constructor(options?: DateTimeMaskOptions) {\n const format = options?.format || DEFAULT_DATETIME_FORMAT;\n\n super(\n options?.promptCharacter\n ? { format, promptCharacter: options.promptCharacter }\n : { format }\n );\n }\n\n /**\n * Sets a new date/time format and re-parses the date parts.\n */\n public override set mask(value: string) {\n super.mask = value;\n this._parseDateFormat();\n }\n\n public override get mask(): string {\n return super.mask;\n }\n\n //#region Date Format Parsing\n\n /**\n * Parses the format string into IDatePart objects.\n * This identifies each date/time component and its position.\n */\n private _parseDateFormat(): void {\n const format = this.mask;\n const builders: Array<{\n type: DatePartType;\n start: number;\n end: number;\n format: string;\n }> = [];\n const chars = Array.from(format);\n const length = chars.length;\n\n let currentBuilder: (typeof builders)[0] | null = null;\n let position = 0;\n\n for (let i = 0; i < length; i++, position++) {\n const char = chars[i];\n const partType = FORMAT_CHAR_TO_DATE_PART.get(char);\n\n if (partType) {\n // Date/time format character\n if (currentBuilder?.format.includes(char)) {\n // Continue building the same part\n currentBuilder.end = position + 1;\n currentBuilder.format += char;\n } else {\n // Start a new part\n if (currentBuilder) {\n builders.push(currentBuilder);\n }\n currentBuilder = {\n type: partType,\n start: position,\n end: position + 1,\n format: char,\n };\n }\n } else {\n // Literal character\n if (currentBuilder) {\n builders.push(currentBuilder);\n currentBuilder = null;\n }\n builders.push({\n type: DatePartType.Literal,\n start: position,\n end: position + 1,\n format: char,\n });\n }\n }\n\n // Don't forget the last part\n if (currentBuilder) {\n builders.push(currentBuilder);\n }\n\n // Normalize year format for editing (except 'yy')\n this._normalizeYearFormatBuilder(builders);\n\n // Create immutable date parts from builders using factory\n this._dateParts = builders.map((b) =>\n createDatePart(b.type, { start: b.start, end: b.end, format: b.format })\n );\n }\n\n /**\n * Normalizes year format to 'yyyy' for editing (except for 'yy').\n * Also updates the end position to account for the expanded format.\n */\n private _normalizeYearFormatBuilder(\n builders: Array<{ type: DatePartType; end: number; format: string }>\n ): void {\n const yearBuilder = builders.find((b) => b.type === DatePartType.Year);\n if (yearBuilder && yearBuilder.format.length !== 2) {\n const expansion = 4 - yearBuilder.format.length;\n yearBuilder.end += expansion;\n yearBuilder.format = 'yyyy';\n }\n }\n\n //#endregion\n\n //#region Date Parsing\n\n /**\n * Parses a masked string into a Date object.\n * Returns null if the string cannot be parsed into a valid date.\n *\n * @param masked - The masked input string to parse\n * @returns A Date object or null if parsing fails\n */\n public parseDate(masked: string): Date | null {\n const parts = this._extractDateValues(masked);\n\n // Convert to zero-based month (only if month is in format)\n if (parts[DatePartType.Month] !== undefined) {\n parts[DatePartType.Month]! -= 1;\n }\n\n // Apply century threshold for two-digit years (only if year is in format)\n if (\n parts[DatePartType.Year] !== undefined &&\n parts[DatePartType.Year]! < CENTURY_THRESHOLD\n ) {\n parts[DatePartType.Year]! += CENTURY_BASE;\n }\n\n if (!this._validateDateParts(parts)) {\n return null;\n }\n\n // Handle AM/PM conversion\n this._applyAmPmConversion(parts, masked);\n\n return this._createDateFromParts(parts);\n }\n\n /**\n * Extracts numeric values from the masked string for each date part.\n */\n private _extractDateValues(\n masked: string\n ): Partial<Record<DatePartType, number>> {\n const parts: Partial<Record<DatePartType, number>> = {};\n const prompt = this.prompt;\n\n for (const datePart of this._dateParts) {\n if (datePart.type === DatePartType.Literal) continue;\n\n const isMonthOrDate =\n datePart.type === DatePartType.Date ||\n datePart.type === DatePartType.Month;\n\n const raw = masked.substring(datePart.start, datePart.end);\n const cleaned = raw.replaceAll(prompt, '');\n const value = asNumber(cleaned);\n\n parts[datePart.type] = clamp(\n value,\n isMonthOrDate ? 1 : 0,\n Number.MAX_SAFE_INTEGER\n );\n }\n\n return parts;\n }\n\n /**\n * Validates that parsed date parts are within valid ranges.\n * Only validates parts that are present in the format.\n * Uses the validate() method on each date part instance.\n */\n private _validateDateParts(\n parts: Partial<Record<DatePartType, number>>\n ): boolean {\n // Build validation context for date-dependent validation\n const context = {\n year: parts[DatePartType.Year],\n month: parts[DatePartType.Month],\n };\n\n // Validate each parsed value using its corresponding part instance\n for (const datePart of this._dateParts) {\n if (datePart.type === DatePartType.Literal) continue;\n\n const value = parts[datePart.type];\n if (value === undefined) continue;\n\n if (!datePart.validate(value, context)) {\n return false;\n }\n }\n\n // Additional check: validate date against month/year context\n // (the part's validate method needs both year and month for proper validation)\n if (\n parts[DatePartType.Date] !== undefined &&\n parts[DatePartType.Month] !== undefined &&\n parts[DatePartType.Year] !== undefined\n ) {\n if (\n parts[DatePartType.Date]! >\n this._daysInMonth(parts[DatePartType.Year]!, parts[DatePartType.Month]!)\n ) {\n return false;\n }\n }\n\n return true;\n }\n\n /**\n * Applies AM/PM conversion to hours if format includes AM/PM.\n */\n private _applyAmPmConversion(\n parts: Partial<Record<DatePartType, number>>,\n masked: string\n ): void {\n const amPmPart = this._dateParts.find((p) => p.type === DatePartType.AmPm);\n if (!amPmPart) return;\n\n parts[DatePartType.Hours]! %= 12;\n\n const amPmValue = masked\n .substring(amPmPart.start, amPmPart.end)\n .replaceAll(this.prompt, '');\n\n if (amPmValue.toLowerCase() === 'pm') {\n parts[DatePartType.Hours]! += 12;\n }\n }\n\n /**\n * Creates a Date object from parsed parts with defaults for missing values.\n */\n private _createDateFromParts(\n parts: Partial<Record<DatePartType, number>>\n ): Date {\n const d = DEFAULT_DATE_VALUES;\n return new Date(\n parts[DatePartType.Year] ?? d.year,\n parts[DatePartType.Month] ?? d.month,\n parts[DatePartType.Date] ?? d.date,\n parts[DatePartType.Hours] ?? d.hours,\n parts[DatePartType.Minutes] ?? d.minutes,\n parts[DatePartType.Seconds] ?? d.seconds\n );\n }\n\n /**\n * Gets the number of days in a specific month/year.\n */\n private _daysInMonth(year: number, month: number): number {\n return new Date(year, month + 1, 0).getDate();\n }\n\n //#endregion\n\n //#region Date Formatting\n\n /**\n * Formats a Date object into a masked string according to the current format.\n *\n * @param date - The date to format\n * @returns The formatted masked string\n */\n public formatDate(date: Date | null): string {\n return date\n ? this._dateParts.map((part) => part.getValue(date)).join('')\n : this.emptyMask;\n }\n\n //#endregion\n\n //#region Part Queries\n\n /**\n * Finds the date part at a given cursor position.\n * Uses exclusive end (position < end) for precise character targeting.\n *\n * @param position - The cursor position to check\n * @returns The DatePartInfo at that position, or undefined if not found\n */\n public getDatePartAtPosition(position: number): DatePartInfo | undefined {\n return this._dateParts.find(\n (p) =>\n p.type !== DatePartType.Literal &&\n position >= p.start &&\n position < p.end\n );\n }\n\n /**\n * Finds the date part for a cursor position, using inclusive end.\n * This handles the edge case where cursor is at the end of the mask\n * (position equals the end of the last part).\n *\n * @param position - The cursor position to check\n * @returns The DatePartInfo at that position, or undefined if not found\n */\n public getDatePartForCursor(position: number): DatePartInfo | undefined {\n return this._dateParts.find(\n (p) =>\n p.type !== DatePartType.Literal &&\n position >= p.start &&\n position <= p.end\n );\n }\n\n /**\n * Checks if the format includes any date parts (day, month, year).\n */\n public hasDateParts(): boolean {\n return this._dateParts.some(\n (p) =>\n p.type === DatePartType.Date ||\n p.type === DatePartType.Month ||\n p.type === DatePartType.Year\n );\n }\n\n /**\n * Checks if the format includes any time parts (hours, minutes, seconds).\n */\n public hasTimeParts(): boolean {\n return this._dateParts.some(\n (p) =>\n p.type === DatePartType.Hours ||\n p.type === DatePartType.Minutes ||\n p.type === DatePartType.Seconds\n );\n }\n\n /**\n * Gets the first non-literal date part (useful for default selection).\n */\n public getFirstDatePart(): DatePartInfo | undefined {\n return this._dateParts.find((p) => p.type !== DatePartType.Literal);\n }\n\n /**\n * Gets a specific type of date part.\n */\n public getPartByType(type: DatePartType): DatePartInfo | undefined {\n return this._dateParts.find((p) => p.type === type);\n }\n\n //#endregion\n\n //#region Override for Date-Specific Mask\n\n /**\n * Builds the internal mask pattern from the date format.\n * Converts date format characters to mask pattern characters.\n */\n protected override _parseMaskLiterals(): void {\n // First, convert date format to mask format\n const dateFormat = this._options.format;\n const maskFormat = this._convertToMaskFormat(dateFormat);\n\n // Temporarily set the converted format for the base class parsing\n const originalFormat = this._options.format;\n this._options.format = maskFormat;\n\n super._parseMaskLiterals();\n\n // Restore the original date format\n this._options.format = originalFormat;\n\n // Parse date-specific format structure\n this._parseDateFormat();\n }\n\n /**\n * Converts a date format string to a mask format string.\n * Date format chars become '0' (numeric) or 'L' (alpha for AM/PM).\n */\n private _convertToMaskFormat(dateFormat: string): string {\n let result = '';\n\n for (const char of dateFormat) {\n if (DATE_FORMAT_CHARS.has(char)) {\n // AM/PM markers are alphabetic, others are numeric\n result += char === 't' || char === 'T' ? 'L' : '0';\n } else {\n result += char;\n }\n }\n\n return result;\n }\n\n //#endregion\n}\n"]}
1
+ {"version":3,"file":"datetime-mask-parser.js","sourceRoot":"","sources":["../../../src/components/date-time-input/datetime-mask-parser.ts"],"names":[],"mappings":"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","sourcesContent":["import { asNumber, clamp } from '../common/util.js';\nimport { MaskParser } from '../mask-input/mask-parser.js';\nimport { createDatePart, DatePartType, type IDatePart } from './date-part.js';\n\n//#region Types and Enums\n\n/**\n * Types of date/time parts that can appear in a format string.\n * Re-exported from date-part.ts for backward compatibility.\n */\n/**\n * Re-export createDatePart factory for creating standalone parts.\n */\nexport { createDatePart, DatePartType as DateParts };\n\n/**\n * Information about a parsed date part within a format string.\n * This is a type alias for IDatePart for backward compatibility.\n */\nexport type DatePartInfo = IDatePart;\n\n/** Options for the DateTimeMaskParser */\nexport interface DateTimeMaskOptions {\n /** The date/time format string (e.g., 'MM/dd/yyyy', 'HH:mm:ss') */\n format?: string;\n /** The prompt character for unfilled positions */\n promptCharacter?: string;\n}\n\n//#endregion\n\n//#region Constants\n\n/** Maps format characters to their corresponding DatePartType */\nconst FORMAT_CHAR_TO_DATE_PART = new Map<string, DatePartType>([\n ['d', DatePartType.Date],\n ['D', DatePartType.Date],\n ['M', DatePartType.Month],\n ['y', DatePartType.Year],\n ['Y', DatePartType.Year],\n ['h', DatePartType.Hours],\n ['H', DatePartType.Hours],\n ['m', DatePartType.Minutes],\n ['s', DatePartType.Seconds],\n ['S', DatePartType.Seconds],\n ['t', DatePartType.AmPm],\n ['T', DatePartType.AmPm],\n]);\n\n/** Set of valid date/time format characters */\nconst DATE_FORMAT_CHARS = new Set(FORMAT_CHAR_TO_DATE_PART.keys());\n\n/** Century threshold for two-digit year interpretation */\nconst CENTURY_THRESHOLD = 50;\nconst CENTURY_BASE = 2000;\n\n/** Default values for missing date parts */\nconst DEFAULT_DATE_VALUES = {\n year: 2000,\n month: 0,\n date: 1,\n hours: 0,\n minutes: 0,\n seconds: 0,\n} as const;\n\n/** Default date/time format */\nconst DEFAULT_DATETIME_FORMAT = 'MM/dd/yyyy';\n\n//#endregion\n\n/**\n * A specialized mask parser for date/time input fields.\n * Extends MaskParser to handle date-specific format patterns and validation.\n *\n * @example\n * ```ts\n * const parser = new DateTimeMaskParser({ format: 'MM/dd/yyyy' });\n * parser.apply('12252023'); // Returns '12/25/2023'\n * parser.parseDate('12/25/2023'); // Returns Date object\n * ```\n */\nexport class DateTimeMaskParser extends MaskParser {\n /** Parsed date parts from the format string */\n private _dateParts!: IDatePart[];\n\n /**\n * Gets the parsed date parts from the format string.\n * Each part contains type, position, and format information.\n */\n public get dateParts(): ReadonlyArray<IDatePart> {\n return this._dateParts;\n }\n\n constructor(options?: DateTimeMaskOptions) {\n const format = options?.format || DEFAULT_DATETIME_FORMAT;\n\n super(\n options?.promptCharacter\n ? { format, promptCharacter: options.promptCharacter }\n : { format }\n );\n }\n\n /**\n * Sets a new date/time format and re-parses the date parts.\n */\n public override set mask(value: string) {\n super.mask = value;\n this._parseDateFormat();\n }\n\n public override get mask(): string {\n return super.mask;\n }\n\n //#region Date Format Parsing\n\n /**\n * Parses the format string into IDatePart objects.\n * This identifies each date/time component and its position.\n */\n private _parseDateFormat(): void {\n const format = this.mask;\n const builders: Array<{\n type: DatePartType;\n start: number;\n end: number;\n format: string;\n }> = [];\n const chars = Array.from(format);\n const length = chars.length;\n\n let currentBuilder: (typeof builders)[0] | null = null;\n let position = 0;\n\n for (let i = 0; i < length; i++, position++) {\n const char = chars[i];\n const partType = FORMAT_CHAR_TO_DATE_PART.get(char);\n\n if (partType) {\n // Date/time format character\n if (currentBuilder?.format.includes(char)) {\n // Continue building the same part\n currentBuilder.end = position + 1;\n currentBuilder.format += char;\n } else {\n // Start a new part\n if (currentBuilder) {\n builders.push(currentBuilder);\n }\n currentBuilder = {\n type: partType,\n start: position,\n end: position + 1,\n format: char,\n };\n }\n } else {\n // Literal character\n if (currentBuilder) {\n builders.push(currentBuilder);\n currentBuilder = null;\n }\n builders.push({\n type: DatePartType.Literal,\n start: position,\n end: position + 1,\n format: char,\n });\n }\n }\n\n // Don't forget the last part\n if (currentBuilder) {\n builders.push(currentBuilder);\n }\n\n // Normalize year format for editing (except 'yy')\n this._normalizeYearFormatBuilder(builders);\n\n // Create immutable date parts from builders using factory\n this._dateParts = builders.map((b) =>\n createDatePart(b.type, { start: b.start, end: b.end, format: b.format })\n );\n }\n\n /**\n * Normalizes year format to 'yyyy' for editing (except for 'yy').\n * Also updates the end position to account for the expanded format.\n */\n private _normalizeYearFormatBuilder(\n builders: Array<{ type: DatePartType; end: number; format: string }>\n ): void {\n const yearBuilder = builders.find((b) => b.type === DatePartType.Year);\n if (yearBuilder && yearBuilder.format.length !== 2) {\n const expansion = 4 - yearBuilder.format.length;\n yearBuilder.end += expansion;\n yearBuilder.format = 'yyyy';\n }\n }\n\n //#endregion\n\n //#region Date Parsing\n\n /**\n * Parses a masked string into a Date object.\n * Returns null if the string cannot be parsed into a valid date.\n *\n * @param masked - The masked input string to parse\n * @returns A Date object or null if parsing fails\n */\n public parseDate(masked: string): Date | null {\n const parts = this._extractDateValues(masked);\n\n // Convert to zero-based month (only if month is in format)\n if (parts[DatePartType.Month] !== undefined) {\n parts[DatePartType.Month]! -= 1;\n }\n\n // Apply century threshold for two-digit years (only if year is in format)\n if (\n parts[DatePartType.Year] !== undefined &&\n parts[DatePartType.Year]! < CENTURY_THRESHOLD\n ) {\n parts[DatePartType.Year]! += CENTURY_BASE;\n }\n\n if (!this._validateDateParts(parts)) {\n return null;\n }\n\n // Handle AM/PM conversion\n this._applyAmPmConversion(parts, masked);\n\n return this._createDateFromParts(parts);\n }\n\n /**\n * Extracts numeric values from the masked string for each date part.\n */\n private _extractDateValues(\n masked: string\n ): Partial<Record<DatePartType, number>> {\n const parts: Partial<Record<DatePartType, number>> = {};\n const prompt = this.prompt;\n\n for (const datePart of this._dateParts) {\n if (datePart.type === DatePartType.Literal) continue;\n\n const isMonthOrDate =\n datePart.type === DatePartType.Date ||\n datePart.type === DatePartType.Month;\n\n const raw = masked.substring(datePart.start, datePart.end);\n const cleaned = raw.replaceAll(prompt, '');\n const value = asNumber(cleaned);\n\n parts[datePart.type] = clamp(\n value,\n isMonthOrDate ? 1 : 0,\n Number.MAX_SAFE_INTEGER\n );\n }\n\n return parts;\n }\n\n /**\n * Validates that parsed date parts are within valid ranges.\n * Only validates parts that are present in the format.\n * Uses the validate() method on each date part instance.\n */\n private _validateDateParts(\n parts: Partial<Record<DatePartType, number>>\n ): boolean {\n // Build validation context for date-dependent validation\n const context = {\n year: parts[DatePartType.Year],\n month: parts[DatePartType.Month],\n };\n\n // Validate each parsed value using its corresponding part instance\n for (const datePart of this._dateParts) {\n if (datePart.type === DatePartType.Literal) continue;\n\n const value = parts[datePart.type];\n if (value === undefined) continue;\n\n if (!datePart.validate(value, context)) {\n return false;\n }\n }\n\n // Additional check: validate date against month/year context\n // (the part's validate method needs both year and month for proper validation)\n if (\n parts[DatePartType.Date] !== undefined &&\n parts[DatePartType.Month] !== undefined &&\n parts[DatePartType.Year] !== undefined\n ) {\n if (\n parts[DatePartType.Date]! >\n this._daysInMonth(parts[DatePartType.Year]!, parts[DatePartType.Month]!)\n ) {\n return false;\n }\n }\n\n return true;\n }\n\n /**\n * Applies AM/PM conversion to hours if format includes AM/PM.\n */\n private _applyAmPmConversion(\n parts: Partial<Record<DatePartType, number>>,\n masked: string\n ): void {\n const amPmPart = this._dateParts.find((p) => p.type === DatePartType.AmPm);\n if (!amPmPart) return;\n\n parts[DatePartType.Hours]! %= 12;\n\n const amPmValue = masked\n .substring(amPmPart.start, amPmPart.end)\n .replaceAll(this.prompt, '');\n\n if (amPmValue.toLowerCase() === 'pm') {\n parts[DatePartType.Hours]! += 12;\n }\n }\n\n /**\n * Creates a Date object from parsed parts with defaults for missing values.\n */\n private _createDateFromParts(\n parts: Partial<Record<DatePartType, number>>\n ): Date {\n const d = DEFAULT_DATE_VALUES;\n return new Date(\n parts[DatePartType.Year] ?? d.year,\n parts[DatePartType.Month] ?? d.month,\n parts[DatePartType.Date] ?? d.date,\n parts[DatePartType.Hours] ?? d.hours,\n parts[DatePartType.Minutes] ?? d.minutes,\n parts[DatePartType.Seconds] ?? d.seconds\n );\n }\n\n /**\n * Gets the number of days in a specific month/year.\n */\n private _daysInMonth(year: number, month: number): number {\n return new Date(year, month + 1, 0).getDate();\n }\n\n //#endregion\n\n //#region Date Formatting\n\n /**\n * Formats a Date object into a masked string according to the current format.\n *\n * @param date - The date to format\n * @returns The formatted masked string\n */\n public formatDate(date: Date | null): string {\n return date\n ? this._dateParts.map((part) => part.getValue(date)).join('')\n : this.emptyMask;\n }\n\n //#endregion\n\n //#region Part Queries\n\n /**\n * Finds the date part at a given cursor position.\n * Uses exclusive end (position < end) for precise character targeting.\n *\n * @param position - The cursor position to check\n * @returns The DatePartInfo at that position, or undefined if not found\n */\n public getDatePartAtPosition(position: number): DatePartInfo | undefined {\n return this._dateParts.find(\n (p) =>\n p.type !== DatePartType.Literal &&\n position >= p.start &&\n position < p.end\n );\n }\n\n /**\n * Finds the date part for a cursor position, using inclusive end.\n * This handles the edge case where cursor is at the end of the mask\n * (position equals the end of the last part).\n *\n * @param position - The cursor position to check\n * @returns The DatePartInfo at that position, or undefined if not found\n */\n public getDatePartForCursor(position: number): DatePartInfo | undefined {\n return this._dateParts.find(\n (p) =>\n p.type !== DatePartType.Literal &&\n position >= p.start &&\n position <= p.end\n );\n }\n\n /**\n * Checks if the format includes any date parts (day, month, year).\n */\n public hasDateParts(): boolean {\n return this._dateParts.some(\n (p) =>\n p.type === DatePartType.Date ||\n p.type === DatePartType.Month ||\n p.type === DatePartType.Year\n );\n }\n\n /**\n * Checks if the format includes any time parts (hours, minutes, seconds).\n */\n public hasTimeParts(): boolean {\n return this._dateParts.some(\n (p) =>\n p.type === DatePartType.Hours ||\n p.type === DatePartType.Minutes ||\n p.type === DatePartType.Seconds\n );\n }\n\n /**\n * Gets the first non-literal date part (useful for default selection).\n */\n public getFirstDatePart(): DatePartInfo | undefined {\n return this._dateParts.find((p) => p.type !== DatePartType.Literal);\n }\n\n /**\n * Gets a specific type of date part.\n */\n public getPartByType(type: DatePartType): DatePartInfo | undefined {\n return this._dateParts.find((p) => p.type === type);\n }\n\n //#endregion\n\n //#region Override for Date-Specific Mask\n\n /**\n * Builds the internal mask pattern from the date format.\n * Converts date format characters to mask pattern characters.\n */\n protected override _parseMaskLiterals(): void {\n // First, convert date format to mask format\n const dateFormat = this._options.format;\n const maskFormat = this._convertToMaskFormat(dateFormat);\n\n // Temporarily set the converted format for the base class parsing\n const originalFormat = this._options.format;\n this._options.format = maskFormat;\n\n super._parseMaskLiterals();\n\n // Restore the original date format\n this._options.format = originalFormat;\n\n // Parse date-specific format structure\n this._parseDateFormat();\n }\n\n /**\n * Converts a date format string to a mask format string.\n * Date format chars become '0' (numeric) or 'L' (alpha for AM/PM).\n */\n private _convertToMaskFormat(dateFormat: string): string {\n let result = '';\n\n for (const char of dateFormat) {\n if (DATE_FORMAT_CHARS.has(char)) {\n // AM/PM markers are alphabetic, others are numeric\n result += char === 't' || char === 'T' ? 'L' : '0';\n } else {\n result += char;\n }\n }\n\n return result;\n }\n\n //#endregion\n}\n"]}
@@ -1,4 +1,4 @@
1
- import { IgcBaseComboBoxLikeComponent } from '../common/mixins/combo-box.js';
1
+ import { IgcComboBoxBaseLikeComponent } from '../common/mixins/combo-box.js';
2
2
  import type { AbstractConstructor } from '../common/mixins/constructor.js';
3
3
  import { type PopoverPlacement } from '../popover/popover.js';
4
4
  import type { PopoverScrollStrategy } from '../types.js';
@@ -11,7 +11,7 @@ export interface IgcDropdownComponentEventMap {
11
11
  igcClosed: CustomEvent<void>;
12
12
  igcChange: CustomEvent<IgcDropdownItemComponent>;
13
13
  }
14
- declare const IgcDropdownComponent_base: import("../common/mixins/constructor.js").Constructor<import("../common/mixins/event-emitter.js").EventEmitterInterface<IgcDropdownComponentEventMap>> & AbstractConstructor<IgcBaseComboBoxLikeComponent>;
14
+ declare const IgcDropdownComponent_base: import("../common/mixins/constructor.js").Constructor<import("../common/mixins/event-emitter.js").EventEmitterInterface<IgcDropdownComponentEventMap>> & AbstractConstructor<IgcComboBoxBaseLikeComponent>;
15
15
  /**
16
16
  * Represents a DropDown component.
17
17
  *
@@ -14,9 +14,9 @@ import { addRootScrollHandler } from '../common/controllers/root-scroll.js';
14
14
  import { blazorAdditionalDependencies } from '../common/decorators/blazorAdditionalDependencies.js';
15
15
  import { watch } from '../common/decorators/watch.js';
16
16
  import { registerComponent } from '../common/definitions/register.js';
17
- import { getActiveItems, getItems, getNextActiveItem, getPreviousActiveItem, IgcBaseComboBoxLikeComponent, setInitialSelectionState, } from '../common/mixins/combo-box.js';
17
+ import { getActiveItems, getItems, getNextActiveItem, getPreviousActiveItem, IgcComboBoxBaseLikeComponent, setInitialSelectionState, } from '../common/mixins/combo-box.js';
18
18
  import { EventEmitterMixin } from '../common/mixins/event-emitter.js';
19
- import { findElementFromEventPath, getElementByIdFromRoot, isString, } from '../common/util.js';
19
+ import { getElementByIdFromRoot, getElementFromPath, isString, } from '../common/util.js';
20
20
  import IgcPopoverComponent from '../popover/popover.js';
21
21
  import IgcDropdownGroupComponent from './dropdown-group.js';
22
22
  import IgcDropdownHeaderComponent from './dropdown-header.js';
@@ -24,7 +24,7 @@ import IgcDropdownItemComponent from './dropdown-item.js';
24
24
  import { all } from './themes/container.js';
25
25
  import { styles } from './themes/dropdown.base.css.js';
26
26
  import { styles as shared } from './themes/shared/dropdown.common.css.js';
27
- let IgcDropdownComponent = class IgcDropdownComponent extends EventEmitterMixin(IgcBaseComboBoxLikeComponent) {
27
+ let IgcDropdownComponent = class IgcDropdownComponent extends EventEmitterMixin(IgcComboBoxBaseLikeComponent) {
28
28
  static { IgcDropdownComponent_1 = this; }
29
29
  static { this.tagName = 'igc-dropdown'; }
30
30
  static { this.styles = [styles, shared]; }
@@ -73,7 +73,7 @@ let IgcDropdownComponent = class IgcDropdownComponent extends EventEmitterMixin(
73
73
  addThemingController(this, all);
74
74
  this._keyBindings = addKeybindings(this, {
75
75
  skip: () => !this.open,
76
- bindingDefaults: { preventDefault: true, triggers: ['keydownRepeat'] },
76
+ bindingDefaults: { preventDefault: true, repeat: true },
77
77
  })
78
78
  .set(tabKey, this.onTabKey, {
79
79
  preventDefault: false,
@@ -99,7 +99,7 @@ let IgcDropdownComponent = class IgcDropdownComponent extends EventEmitterMixin(
99
99
  super.disconnectedCallback();
100
100
  }
101
101
  handleListBoxClick(event) {
102
- const item = findElementFromEventPath(IgcDropdownItemComponent.tagName, event);
102
+ const item = getElementFromPath(IgcDropdownItemComponent.tagName, event);
103
103
  if (item && this._activeItems.includes(item)) {
104
104
  this._selectItem(item);
105
105
  }
@@ -223,7 +223,7 @@ let IgcDropdownComponent = class IgcDropdownComponent extends EventEmitterMixin(
223
223
  id="dropdown-target"
224
224
  name="target"
225
225
  slot="anchor"
226
- @click=${this.handleAnchorClick}
226
+ @click=${this._handleAnchorClick}
227
227
  @slotchange=${this.handleSlotChange}
228
228
  ></slot>
229
229
  <div part="base" @click=${this.handleListBoxClick} .inert=${!this.open}>
@@ -1 +1 @@
1
- {"version":3,"file":"dropdown.js","sourceRoot":"","sources":["../../../src/components/dropdown/dropdown.ts"],"names":[],"mappings":"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","sourcesContent":["import { html } from 'lit';\nimport { property, query, state } from 'lit/decorators.js';\n\nimport { addThemingController } from '../../theming/theming-controller.js';\nimport {\n addKeybindings,\n arrowDown,\n arrowLeft,\n arrowRight,\n arrowUp,\n endKey,\n enterKey,\n escapeKey,\n homeKey,\n type KeyBindingController,\n type KeyBindingObserverCleanup,\n tabKey,\n} from '../common/controllers/key-bindings.js';\nimport { addRootClickController } from '../common/controllers/root-click.js';\nimport { addRootScrollHandler } from '../common/controllers/root-scroll.js';\nimport { blazorAdditionalDependencies } from '../common/decorators/blazorAdditionalDependencies.js';\nimport { watch } from '../common/decorators/watch.js';\nimport { registerComponent } from '../common/definitions/register.js';\nimport {\n getActiveItems,\n getItems,\n getNextActiveItem,\n getPreviousActiveItem,\n IgcBaseComboBoxLikeComponent,\n setInitialSelectionState,\n} from '../common/mixins/combo-box.js';\nimport type { AbstractConstructor } from '../common/mixins/constructor.js';\nimport { EventEmitterMixin } from '../common/mixins/event-emitter.js';\nimport {\n findElementFromEventPath,\n getElementByIdFromRoot,\n isString,\n} from '../common/util.js';\nimport IgcPopoverComponent, {\n type PopoverPlacement,\n} from '../popover/popover.js';\nimport type { PopoverScrollStrategy } from '../types.js';\nimport IgcDropdownGroupComponent from './dropdown-group.js';\nimport IgcDropdownHeaderComponent from './dropdown-header.js';\nimport IgcDropdownItemComponent from './dropdown-item.js';\nimport { all } from './themes/container.js';\nimport { styles } from './themes/dropdown.base.css.js';\nimport { styles as shared } from './themes/shared/dropdown.common.css.js';\n\nexport interface IgcDropdownComponentEventMap {\n igcOpening: CustomEvent<void>;\n igcOpened: CustomEvent<void>;\n igcClosing: CustomEvent<void>;\n igcClosed: CustomEvent<void>;\n igcChange: CustomEvent<IgcDropdownItemComponent>;\n}\n\n/**\n * Represents a DropDown component.\n *\n * @element igc-dropdown\n *\n * @fires igcChange - Emitted when the selected item changes.\n * @fires igcOpening - Emitted just before the dropdown is open.\n * @fires igcOpened - Emitted after the dropdown is open.\n * @fires igcClosing - Emitter just before the dropdown is closed.\n * @fires igcClosed - Emitted after closing the dropdown.\n *\n * @slot target - Renders the dropdown's target element.\n * @slot - Renders the dropdown list items.\n *\n * @csspart base - The dropdown list wrapper container.\n * @csspart list - The dropdown list element.\n */\n@blazorAdditionalDependencies(\n 'IgcDropdownItemComponent, IgcDropdownHeaderComponent, IgcDropdownGroupComponent'\n)\nexport default class IgcDropdownComponent extends EventEmitterMixin<\n IgcDropdownComponentEventMap,\n AbstractConstructor<IgcBaseComboBoxLikeComponent>\n>(IgcBaseComboBoxLikeComponent) {\n public static readonly tagName = 'igc-dropdown';\n public static styles = [styles, shared];\n\n /* blazorSuppress */\n public static register() {\n registerComponent(\n IgcDropdownComponent,\n IgcDropdownGroupComponent,\n IgcDropdownHeaderComponent,\n IgcDropdownItemComponent,\n IgcPopoverComponent\n );\n }\n\n private readonly _keyBindings: KeyBindingController;\n\n private _rootScrollController = addRootScrollHandler(this, {\n hideCallback: this.handleClosing,\n });\n\n protected override readonly _rootClickController = addRootClickController(\n this,\n {\n onHide: this.handleClosing,\n }\n );\n\n @state()\n protected _selectedItem: IgcDropdownItemComponent | null = null;\n\n @state()\n protected _activeItem!: IgcDropdownItemComponent;\n\n private get _activeItems() {\n return Array.from(\n getActiveItems<IgcDropdownItemComponent>(\n this,\n IgcDropdownItemComponent.tagName\n )\n );\n }\n\n private _targetListeners!: KeyBindingObserverCleanup;\n\n @state()\n private _target?: HTMLElement;\n\n @query('slot[name=\"target\"]', true)\n protected trigger!: HTMLSlotElement;\n\n /** The preferred placement of the component around the target element.\n * @attr\n */\n @property()\n public placement: PopoverPlacement = 'bottom-start';\n\n /**\n * Determines the behavior of the component during scrolling of the parent container.\n * @attr scroll-strategy\n */\n @property({ attribute: 'scroll-strategy' })\n public scrollStrategy: PopoverScrollStrategy = 'scroll';\n\n /**\n * Whether the component should be flipped to the opposite side of the target once it's about to overflow the visible area.\n * When true, once enough space is detected on its preferred side, it will flip back.\n * @attr\n */\n @property({ type: Boolean })\n public flip = false;\n\n /**\n * The distance from the target element.\n * @attr\n */\n @property({ type: Number })\n public distance = 0;\n\n /**\n * Whether the dropdown's width should be the same as the target's one.\n * @attr same-width\n */\n @property({ type: Boolean, attribute: 'same-width' })\n public sameWidth = false;\n\n /** Returns the items of the dropdown. */\n public get items() {\n return Array.from(\n getItems<IgcDropdownItemComponent>(this, IgcDropdownItemComponent.tagName)\n );\n }\n\n /** Returns the group items of the dropdown. */\n public get groups() {\n return Array.from(\n getItems<IgcDropdownGroupComponent>(\n this,\n IgcDropdownGroupComponent.tagName\n )\n );\n }\n\n /** Returns the selected item from the dropdown or null. */\n public get selectedItem() {\n return this._selectedItem;\n }\n\n @watch('scrollStrategy', { waitUntilFirstUpdate: true })\n protected scrollStrategyChanged() {\n this._rootScrollController.update({ resetListeners: true });\n }\n\n @watch('open', { waitUntilFirstUpdate: true })\n @watch('keepOpenOnOutsideClick', { waitUntilFirstUpdate: true })\n protected openStateChange() {\n this._updateAnchorAccessibility(this._target);\n this._rootClickController.update();\n this._rootScrollController.update();\n\n if (!this.open) {\n this._target = undefined;\n this._targetListeners?.unsubscribe();\n this._rootClickController.update({ target: undefined });\n }\n }\n\n constructor() {\n super();\n\n addThemingController(this, all);\n\n this._keyBindings = addKeybindings(this, {\n skip: () => !this.open,\n bindingDefaults: { preventDefault: true, triggers: ['keydownRepeat'] },\n })\n .set(tabKey, this.onTabKey, {\n preventDefault: false,\n })\n .set(escapeKey, this.onEscapeKey)\n .set(arrowUp, this.onArrowUp)\n .set(arrowLeft, this.onArrowUp)\n .set(arrowDown, this.onArrowDown)\n .set(arrowRight, this.onArrowDown)\n .set(enterKey, this.onEnterKey)\n .set(homeKey, this.onHomeKey)\n .set(endKey, this.onEndKey);\n }\n\n protected override async firstUpdated() {\n await this.updateComplete;\n const selected = setInitialSelectionState(this.items);\n if (selected) {\n this._selectItem(selected, false);\n }\n }\n\n public override disconnectedCallback() {\n this._targetListeners?.unsubscribe();\n super.disconnectedCallback();\n }\n\n private handleListBoxClick(event: MouseEvent) {\n const item = findElementFromEventPath(\n IgcDropdownItemComponent.tagName,\n event\n );\n if (item && this._activeItems.includes(item)) {\n this._selectItem(item);\n }\n }\n\n private handleChange(item: IgcDropdownItemComponent) {\n this.emitEvent('igcChange', { detail: item });\n }\n\n private handleSlotChange() {\n this._updateAnchorAccessibility();\n }\n\n private onArrowUp() {\n this._navigateToActiveItem(\n getPreviousActiveItem(this.items, this._activeItem)\n );\n }\n\n private onArrowDown() {\n this._navigateToActiveItem(getNextActiveItem(this.items, this._activeItem));\n }\n\n protected onHomeKey() {\n this._navigateToActiveItem(this._activeItems.at(0));\n }\n\n protected onEndKey() {\n this._navigateToActiveItem(this._activeItems.at(-1));\n }\n\n protected onTabKey() {\n if (this._activeItem) {\n this._selectItem(this._activeItem);\n }\n if (this.open) {\n this._hide(true);\n }\n }\n\n protected onEscapeKey() {\n this._hide(true);\n }\n\n protected onEnterKey() {\n this._selectItem(this._activeItem);\n }\n\n protected handleClosing() {\n this._hide(true);\n }\n\n private activateItem(item: IgcDropdownItemComponent) {\n if (this._activeItem) {\n this._activeItem.active = false;\n }\n\n this._activeItem = item;\n this._activeItem.active = true;\n }\n\n private _navigateToActiveItem(item?: IgcDropdownItemComponent) {\n if (item) {\n this.activateItem(item);\n item.scrollIntoView({ behavior: 'auto', block: 'nearest' });\n }\n }\n\n private _selectItem(item: IgcDropdownItemComponent, emit = true) {\n if (this._selectedItem) {\n this._selectedItem.selected = false;\n }\n\n this.activateItem(item);\n this._selectedItem = item;\n this._selectedItem.selected = true;\n\n if (emit) this.handleChange(this._selectedItem);\n if (emit && !this.keepOpenOnSelect) this._hide(true);\n\n return this._selectedItem;\n }\n\n private _updateAnchorAccessibility(anchor?: HTMLElement | null) {\n const target =\n anchor ?? this.trigger.assignedElements({ flatten: true }).at(0);\n\n // Find tabbable elements ?\n if (target) {\n target.setAttribute('aria-haspopup', 'true');\n target.setAttribute('aria-expanded', this.open ? 'true' : 'false');\n }\n }\n\n private getItem(value: string) {\n return this.items.find((item) => item.value === value);\n }\n\n private _setTarget(anchor: HTMLElement | string) {\n const target = isString(anchor)\n ? getElementByIdFromRoot(this, anchor)!\n : anchor;\n\n this._target = target;\n this._targetListeners = this._keyBindings.observeElement(target);\n this._rootClickController.update({ target });\n }\n\n /* blazorSuppress */\n /** Shows the component. */\n public override async show(target?: HTMLElement | string): Promise<boolean> {\n if (target) {\n this._setTarget(target);\n }\n return super.show();\n }\n\n /* blazorSuppress */\n /** Toggles the open state of the component. */\n public override async toggle(\n target?: HTMLElement | string\n ): Promise<boolean> {\n return this.open ? this.hide() : this.show(target);\n }\n\n /* blazorSuppress */\n /** Navigates to the item with the specified value. If it exists, returns the found item, otherwise - null. */\n public navigateTo(value: string): IgcDropdownItemComponent | null;\n /* blazorSuppress */\n /** Navigates to the item at the specified index. If it exists, returns the found item, otherwise - null. */\n public navigateTo(index: number): IgcDropdownItemComponent | null;\n /* blazorSuppress */\n /** Navigates to the specified item. If it exists, returns the found item, otherwise - null. */\n public navigateTo(value: string | number): IgcDropdownItemComponent | null {\n const item = isString(value) ? this.getItem(value) : this.items[value];\n\n if (item) {\n this._navigateToActiveItem(item);\n }\n\n return item ?? null;\n }\n\n /* blazorSuppress */\n /** Selects the item with the specified value. If it exists, returns the found item, otherwise - null. */\n public select(value: string): IgcDropdownItemComponent | null;\n /* blazorSuppress */\n /** Selects the item at the specified index. If it exists, returns the found item, otherwise - null. */\n public select(index: number): IgcDropdownItemComponent | null;\n /* blazorSuppress */\n /** Selects the specified item. If it exists, returns the found item, otherwise - null. */\n public select(value: string | number): IgcDropdownItemComponent | null {\n const item = isString(value) ? this.getItem(value) : this.items[value];\n return item ? this._selectItem(item, false) : null;\n }\n\n /** Clears the current selection of the dropdown. */\n public clearSelection() {\n if (this._selectedItem) {\n this._selectedItem.selected = false;\n }\n this._selectedItem = null;\n }\n\n protected override render() {\n return html`<igc-popover\n ?open=${this.open}\n ?flip=${this.flip}\n ?same-width=${this.sameWidth}\n .anchor=${this._target}\n .offset=${this.distance}\n .placement=${this.placement}\n shift\n >\n <slot\n id=\"dropdown-target\"\n name=\"target\"\n slot=\"anchor\"\n @click=${this.handleAnchorClick}\n @slotchange=${this.handleSlotChange}\n ></slot>\n <div part=\"base\" @click=${this.handleListBoxClick} .inert=${!this.open}>\n <div\n id=\"dropdown-list\"\n role=\"listbox\"\n part=\"list\"\n aria-labelledby=\"dropdown-target\"\n >\n <slot></slot>\n </div>\n </div>\n </igc-popover>`;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-dropdown': IgcDropdownComponent;\n }\n}\n"]}
1
+ {"version":3,"file":"dropdown.js","sourceRoot":"","sources":["../../../src/components/dropdown/dropdown.ts"],"names":[],"mappings":"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","sourcesContent":["import { html } from 'lit';\nimport { property, query, state } from 'lit/decorators.js';\n\nimport { addThemingController } from '../../theming/theming-controller.js';\nimport {\n addKeybindings,\n arrowDown,\n arrowLeft,\n arrowRight,\n arrowUp,\n endKey,\n enterKey,\n escapeKey,\n homeKey,\n type KeyBindingController,\n type KeyBindingObserverCleanup,\n tabKey,\n} from '../common/controllers/key-bindings.js';\nimport { addRootClickController } from '../common/controllers/root-click.js';\nimport { addRootScrollHandler } from '../common/controllers/root-scroll.js';\nimport { blazorAdditionalDependencies } from '../common/decorators/blazorAdditionalDependencies.js';\nimport { watch } from '../common/decorators/watch.js';\nimport { registerComponent } from '../common/definitions/register.js';\nimport {\n getActiveItems,\n getItems,\n getNextActiveItem,\n getPreviousActiveItem,\n IgcComboBoxBaseLikeComponent,\n setInitialSelectionState,\n} from '../common/mixins/combo-box.js';\nimport type { AbstractConstructor } from '../common/mixins/constructor.js';\nimport { EventEmitterMixin } from '../common/mixins/event-emitter.js';\nimport {\n getElementByIdFromRoot,\n getElementFromPath,\n isString,\n} from '../common/util.js';\nimport IgcPopoverComponent, {\n type PopoverPlacement,\n} from '../popover/popover.js';\nimport type { PopoverScrollStrategy } from '../types.js';\nimport IgcDropdownGroupComponent from './dropdown-group.js';\nimport IgcDropdownHeaderComponent from './dropdown-header.js';\nimport IgcDropdownItemComponent from './dropdown-item.js';\nimport { all } from './themes/container.js';\nimport { styles } from './themes/dropdown.base.css.js';\nimport { styles as shared } from './themes/shared/dropdown.common.css.js';\n\nexport interface IgcDropdownComponentEventMap {\n igcOpening: CustomEvent<void>;\n igcOpened: CustomEvent<void>;\n igcClosing: CustomEvent<void>;\n igcClosed: CustomEvent<void>;\n igcChange: CustomEvent<IgcDropdownItemComponent>;\n}\n\n/**\n * Represents a DropDown component.\n *\n * @element igc-dropdown\n *\n * @fires igcChange - Emitted when the selected item changes.\n * @fires igcOpening - Emitted just before the dropdown is open.\n * @fires igcOpened - Emitted after the dropdown is open.\n * @fires igcClosing - Emitter just before the dropdown is closed.\n * @fires igcClosed - Emitted after closing the dropdown.\n *\n * @slot target - Renders the dropdown's target element.\n * @slot - Renders the dropdown list items.\n *\n * @csspart base - The dropdown list wrapper container.\n * @csspart list - The dropdown list element.\n */\n@blazorAdditionalDependencies(\n 'IgcDropdownItemComponent, IgcDropdownHeaderComponent, IgcDropdownGroupComponent'\n)\nexport default class IgcDropdownComponent extends EventEmitterMixin<\n IgcDropdownComponentEventMap,\n AbstractConstructor<IgcComboBoxBaseLikeComponent>\n>(IgcComboBoxBaseLikeComponent) {\n public static readonly tagName = 'igc-dropdown';\n public static styles = [styles, shared];\n\n /* blazorSuppress */\n public static register() {\n registerComponent(\n IgcDropdownComponent,\n IgcDropdownGroupComponent,\n IgcDropdownHeaderComponent,\n IgcDropdownItemComponent,\n IgcPopoverComponent\n );\n }\n\n private readonly _keyBindings: KeyBindingController;\n\n private _rootScrollController = addRootScrollHandler(this, {\n hideCallback: this.handleClosing,\n });\n\n protected override readonly _rootClickController = addRootClickController(\n this,\n {\n onHide: this.handleClosing,\n }\n );\n\n @state()\n protected _selectedItem: IgcDropdownItemComponent | null = null;\n\n @state()\n protected _activeItem!: IgcDropdownItemComponent;\n\n private get _activeItems() {\n return Array.from(\n getActiveItems<IgcDropdownItemComponent>(\n this,\n IgcDropdownItemComponent.tagName\n )\n );\n }\n\n private _targetListeners!: KeyBindingObserverCleanup;\n\n @state()\n private _target?: HTMLElement;\n\n @query('slot[name=\"target\"]', true)\n protected trigger!: HTMLSlotElement;\n\n /** The preferred placement of the component around the target element.\n * @attr\n */\n @property()\n public placement: PopoverPlacement = 'bottom-start';\n\n /**\n * Determines the behavior of the component during scrolling of the parent container.\n * @attr scroll-strategy\n */\n @property({ attribute: 'scroll-strategy' })\n public scrollStrategy: PopoverScrollStrategy = 'scroll';\n\n /**\n * Whether the component should be flipped to the opposite side of the target once it's about to overflow the visible area.\n * When true, once enough space is detected on its preferred side, it will flip back.\n * @attr\n */\n @property({ type: Boolean })\n public flip = false;\n\n /**\n * The distance from the target element.\n * @attr\n */\n @property({ type: Number })\n public distance = 0;\n\n /**\n * Whether the dropdown's width should be the same as the target's one.\n * @attr same-width\n */\n @property({ type: Boolean, attribute: 'same-width' })\n public sameWidth = false;\n\n /** Returns the items of the dropdown. */\n public get items() {\n return Array.from(\n getItems<IgcDropdownItemComponent>(this, IgcDropdownItemComponent.tagName)\n );\n }\n\n /** Returns the group items of the dropdown. */\n public get groups() {\n return Array.from(\n getItems<IgcDropdownGroupComponent>(\n this,\n IgcDropdownGroupComponent.tagName\n )\n );\n }\n\n /** Returns the selected item from the dropdown or null. */\n public get selectedItem() {\n return this._selectedItem;\n }\n\n @watch('scrollStrategy', { waitUntilFirstUpdate: true })\n protected scrollStrategyChanged() {\n this._rootScrollController.update({ resetListeners: true });\n }\n\n @watch('open', { waitUntilFirstUpdate: true })\n @watch('keepOpenOnOutsideClick', { waitUntilFirstUpdate: true })\n protected openStateChange() {\n this._updateAnchorAccessibility(this._target);\n this._rootClickController.update();\n this._rootScrollController.update();\n\n if (!this.open) {\n this._target = undefined;\n this._targetListeners?.unsubscribe();\n this._rootClickController.update({ target: undefined });\n }\n }\n\n constructor() {\n super();\n\n addThemingController(this, all);\n\n this._keyBindings = addKeybindings(this, {\n skip: () => !this.open,\n bindingDefaults: { preventDefault: true, repeat: true },\n })\n .set(tabKey, this.onTabKey, {\n preventDefault: false,\n })\n .set(escapeKey, this.onEscapeKey)\n .set(arrowUp, this.onArrowUp)\n .set(arrowLeft, this.onArrowUp)\n .set(arrowDown, this.onArrowDown)\n .set(arrowRight, this.onArrowDown)\n .set(enterKey, this.onEnterKey)\n .set(homeKey, this.onHomeKey)\n .set(endKey, this.onEndKey);\n }\n\n protected override async firstUpdated() {\n await this.updateComplete;\n const selected = setInitialSelectionState(this.items);\n if (selected) {\n this._selectItem(selected, false);\n }\n }\n\n public override disconnectedCallback() {\n this._targetListeners?.unsubscribe();\n super.disconnectedCallback();\n }\n\n private handleListBoxClick(event: MouseEvent) {\n const item = getElementFromPath(IgcDropdownItemComponent.tagName, event);\n if (item && this._activeItems.includes(item)) {\n this._selectItem(item);\n }\n }\n\n private handleChange(item: IgcDropdownItemComponent) {\n this.emitEvent('igcChange', { detail: item });\n }\n\n private handleSlotChange() {\n this._updateAnchorAccessibility();\n }\n\n private onArrowUp() {\n this._navigateToActiveItem(\n getPreviousActiveItem(this.items, this._activeItem)\n );\n }\n\n private onArrowDown() {\n this._navigateToActiveItem(getNextActiveItem(this.items, this._activeItem));\n }\n\n protected onHomeKey() {\n this._navigateToActiveItem(this._activeItems.at(0));\n }\n\n protected onEndKey() {\n this._navigateToActiveItem(this._activeItems.at(-1));\n }\n\n protected onTabKey() {\n if (this._activeItem) {\n this._selectItem(this._activeItem);\n }\n if (this.open) {\n this._hide(true);\n }\n }\n\n protected onEscapeKey() {\n this._hide(true);\n }\n\n protected onEnterKey() {\n this._selectItem(this._activeItem);\n }\n\n protected handleClosing() {\n this._hide(true);\n }\n\n private activateItem(item: IgcDropdownItemComponent) {\n if (this._activeItem) {\n this._activeItem.active = false;\n }\n\n this._activeItem = item;\n this._activeItem.active = true;\n }\n\n private _navigateToActiveItem(item?: IgcDropdownItemComponent) {\n if (item) {\n this.activateItem(item);\n item.scrollIntoView({ behavior: 'auto', block: 'nearest' });\n }\n }\n\n private _selectItem(item: IgcDropdownItemComponent, emit = true) {\n if (this._selectedItem) {\n this._selectedItem.selected = false;\n }\n\n this.activateItem(item);\n this._selectedItem = item;\n this._selectedItem.selected = true;\n\n if (emit) this.handleChange(this._selectedItem);\n if (emit && !this.keepOpenOnSelect) this._hide(true);\n\n return this._selectedItem;\n }\n\n private _updateAnchorAccessibility(anchor?: HTMLElement | null) {\n const target =\n anchor ?? this.trigger.assignedElements({ flatten: true }).at(0);\n\n // Find tabbable elements ?\n if (target) {\n target.setAttribute('aria-haspopup', 'true');\n target.setAttribute('aria-expanded', this.open ? 'true' : 'false');\n }\n }\n\n private getItem(value: string) {\n return this.items.find((item) => item.value === value);\n }\n\n private _setTarget(anchor: HTMLElement | string) {\n const target = isString(anchor)\n ? getElementByIdFromRoot(this, anchor)!\n : anchor;\n\n this._target = target;\n this._targetListeners = this._keyBindings.observeElement(target);\n this._rootClickController.update({ target });\n }\n\n /* blazorSuppress */\n /** Shows the component. */\n public override async show(target?: HTMLElement | string): Promise<boolean> {\n if (target) {\n this._setTarget(target);\n }\n return super.show();\n }\n\n /* blazorSuppress */\n /** Toggles the open state of the component. */\n public override async toggle(\n target?: HTMLElement | string\n ): Promise<boolean> {\n return this.open ? this.hide() : this.show(target);\n }\n\n /* blazorSuppress */\n /** Navigates to the item with the specified value. If it exists, returns the found item, otherwise - null. */\n public navigateTo(value: string): IgcDropdownItemComponent | null;\n /* blazorSuppress */\n /** Navigates to the item at the specified index. If it exists, returns the found item, otherwise - null. */\n public navigateTo(index: number): IgcDropdownItemComponent | null;\n /* blazorSuppress */\n /** Navigates to the specified item. If it exists, returns the found item, otherwise - null. */\n public navigateTo(value: string | number): IgcDropdownItemComponent | null {\n const item = isString(value) ? this.getItem(value) : this.items[value];\n\n if (item) {\n this._navigateToActiveItem(item);\n }\n\n return item ?? null;\n }\n\n /* blazorSuppress */\n /** Selects the item with the specified value. If it exists, returns the found item, otherwise - null. */\n public select(value: string): IgcDropdownItemComponent | null;\n /* blazorSuppress */\n /** Selects the item at the specified index. If it exists, returns the found item, otherwise - null. */\n public select(index: number): IgcDropdownItemComponent | null;\n /* blazorSuppress */\n /** Selects the specified item. If it exists, returns the found item, otherwise - null. */\n public select(value: string | number): IgcDropdownItemComponent | null {\n const item = isString(value) ? this.getItem(value) : this.items[value];\n return item ? this._selectItem(item, false) : null;\n }\n\n /** Clears the current selection of the dropdown. */\n public clearSelection() {\n if (this._selectedItem) {\n this._selectedItem.selected = false;\n }\n this._selectedItem = null;\n }\n\n protected override render() {\n return html`<igc-popover\n ?open=${this.open}\n ?flip=${this.flip}\n ?same-width=${this.sameWidth}\n .anchor=${this._target}\n .offset=${this.distance}\n .placement=${this.placement}\n shift\n >\n <slot\n id=\"dropdown-target\"\n name=\"target\"\n slot=\"anchor\"\n @click=${this._handleAnchorClick}\n @slotchange=${this.handleSlotChange}\n ></slot>\n <div part=\"base\" @click=${this.handleListBoxClick} .inert=${!this.open}>\n <div\n id=\"dropdown-list\"\n role=\"listbox\"\n part=\"list\"\n aria-labelledby=\"dropdown-target\"\n >\n <slot></slot>\n </div>\n </div>\n </igc-popover>`;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'igc-dropdown': IgcDropdownComponent;\n }\n}\n"]}
@@ -1,3 +1,3 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `:host{height:var(--size);border-radius:var(--item-border-radius);color:var(--item-text-color)}:host ::slotted(igc-icon){color:var(--item-icon-color)}:host([active]:hover),:host(:hover){background:var(--hover-item-background);color:var(--hover-item-text-color)}:host([active]:hover) ::slotted(igc-icon),:host(:hover) ::slotted(igc-icon){color:var(--hover-item-icon-color)}:host([active]){background:var(--focused-item-background);color:var(--focused-item-text-color)}:host([selected]){background:var(--selected-item-background);color:var(--selected-item-text-color)}:host([selected]) ::slotted(igc-icon){color:var(--selected-item-icon-color)}:host([selected]:hover),:host([selected][active]){background:var(--selected-hover-item-background);color:var(--selected-hover-item-text-color)}:host([selected]:hover) ::slotted(igc-icon),:host([selected][active]) ::slotted(igc-icon){color:var(--selected-hover-item-icon-color)}:host([disabled]){background:var(--disabled-item-background);color:var(--disabled-item-text-color)}:host([disabled]) ::slotted(igc-icon){color:var(--disabled-item-text-color)}`;
2
+ export const styles = css `:host{height:var(--size);border-radius:var(--item-border-radius);color:var(--item-text-color)}:host ::slotted(igc-icon){color:var(--item-icon-color)}:host([active]:hover),:host(:hover){background:var(--hover-item-background);color:var(--hover-item-text-color)}:host([active]:hover) ::slotted(igc-icon),:host(:hover) ::slotted(igc-icon){color:var(--hover-item-icon-color)}:host([active]){background:var(--focused-item-background);color:var(--focused-item-text-color)}:host([selected]){background:var(--selected-item-background);color:var(--selected-item-text-color)}:host([selected]) ::slotted(igc-icon){color:var(--selected-item-icon-color)}:host([selected][active]){background:var(--selected-focus-item-background);color:var(--selected-focus-item-text-color)}:host([selected]:hover),:host([selected][active]:hover){background:var(--selected-hover-item-background);color:var(--selected-hover-item-text-color)}:host([selected]:hover) ::slotted(igc-icon),:host([selected][active]:hover) ::slotted(igc-icon){color:var(--selected-hover-item-icon-color)}:host([disabled]){background:var(--disabled-item-background);color:var(--disabled-item-text-color)}:host([disabled]) ::slotted(igc-icon){color:var(--disabled-item-text-color)}`;
3
3
  //# sourceMappingURL=dropdown-item.common.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dropdown-item.common.css.js","sourceRoot":"","sources":["../../../../../../src/components/dropdown/themes/shared/item/dropdown-item.common.css.ts"],"names":[],"mappings":"AACE,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,ukCAAukC,CAAC","sourcesContent":["\n import { css } from 'lit';\n export const styles = css`:host{height:var(--size);border-radius:var(--item-border-radius);color:var(--item-text-color)}:host ::slotted(igc-icon){color:var(--item-icon-color)}:host([active]:hover),:host(:hover){background:var(--hover-item-background);color:var(--hover-item-text-color)}:host([active]:hover) ::slotted(igc-icon),:host(:hover) ::slotted(igc-icon){color:var(--hover-item-icon-color)}:host([active]){background:var(--focused-item-background);color:var(--focused-item-text-color)}:host([selected]){background:var(--selected-item-background);color:var(--selected-item-text-color)}:host([selected]) ::slotted(igc-icon){color:var(--selected-item-icon-color)}:host([selected]:hover),:host([selected][active]){background:var(--selected-hover-item-background);color:var(--selected-hover-item-text-color)}:host([selected]:hover) ::slotted(igc-icon),:host([selected][active]) ::slotted(igc-icon){color:var(--selected-hover-item-icon-color)}:host([disabled]){background:var(--disabled-item-background);color:var(--disabled-item-text-color)}:host([disabled]) ::slotted(igc-icon){color:var(--disabled-item-text-color)}`;\n "]}
1
+ {"version":3,"file":"dropdown-item.common.css.js","sourceRoot":"","sources":["../../../../../../src/components/dropdown/themes/shared/item/dropdown-item.common.css.ts"],"names":[],"mappings":"AACE,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,0sCAA0sC,CAAC","sourcesContent":["\n import { css } from 'lit';\n export const styles = css`:host{height:var(--size);border-radius:var(--item-border-radius);color:var(--item-text-color)}:host ::slotted(igc-icon){color:var(--item-icon-color)}:host([active]:hover),:host(:hover){background:var(--hover-item-background);color:var(--hover-item-text-color)}:host([active]:hover) ::slotted(igc-icon),:host(:hover) ::slotted(igc-icon){color:var(--hover-item-icon-color)}:host([active]){background:var(--focused-item-background);color:var(--focused-item-text-color)}:host([selected]){background:var(--selected-item-background);color:var(--selected-item-text-color)}:host([selected]) ::slotted(igc-icon){color:var(--selected-item-icon-color)}:host([selected][active]){background:var(--selected-focus-item-background);color:var(--selected-focus-item-text-color)}:host([selected]:hover),:host([selected][active]:hover){background:var(--selected-hover-item-background);color:var(--selected-hover-item-text-color)}:host([selected]:hover) ::slotted(igc-icon),:host([selected][active]:hover) ::slotted(igc-icon){color:var(--selected-hover-item-icon-color)}:host([disabled]){background:var(--disabled-item-background);color:var(--disabled-item-text-color)}:host([disabled]) ::slotted(igc-icon){color:var(--disabled-item-text-color)}`;\n "]}
@@ -1,3 +1,3 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `:host{padding-inline:max(var(--is-large, 1)*max(0.75rem, -1 * 0.75rem)*var(--ig-spacing-inline-large, var(--ig-spacing-inline, var(--ig-spacing))),var(--is-medium, 1)*max(0.75rem, -1 * 0.75rem)*var(--ig-spacing-inline-medium, var(--ig-spacing-inline, var(--ig-spacing))),var(--is-small, 1)*max(0.5rem, -1 * 0.5rem)*var(--ig-spacing-inline-small, var(--ig-spacing-inline, var(--ig-spacing))));margin-block:max(var(--is-large, 1)*max(0.125rem, -1 * 0.125rem)*var(--ig-spacing-block-large, var(--ig-spacing-block, var(--ig-spacing))),var(--is-medium, 1)*max(0.125rem, -1 * 0.125rem)*var(--ig-spacing-block-medium, var(--ig-spacing-block, var(--ig-spacing))),var(--is-small, 1)*max(0.125rem, -1 * 0.125rem)*var(--ig-spacing-block-small, var(--ig-spacing-block, var(--ig-spacing))));--item-icon: max(var(--is-large, 1) * max(1rem, -1 * 1rem), var(--is-medium, 1) * max(1rem, -1 * 1rem), var(--is-small, 1) * max(0.875rem, -1 * 0.875rem))}:host ::slotted(igc-icon){--size: var(--item-icon) !important}:host(:last-of-type){margin-block:unset}:host([active]){outline:.125rem solid var(--focused-item-border-color);outline-offset:-0.125rem}:host([selected][active]){background:var(--selected-item-background);color:var(--selected-item-text-color)}:host([selected][active]) ::slotted(igc-icon){color:var(--selected-item-icon-color)}:host([selected][active]:hover){background:var(--selected-hover-item-background);color:var(--selected-hover-item-text-color)}:host([selected][active]:hover) ::slotted(igc-icon){color:var(--selected-hover-item-icon-color)}`;
2
+ export const styles = css `:host{padding-inline:max(var(--is-large, 1)*max(0.75rem, -1 * 0.75rem)*var(--ig-spacing-inline-large, var(--ig-spacing-inline, var(--ig-spacing))),var(--is-medium, 1)*max(0.75rem, -1 * 0.75rem)*var(--ig-spacing-inline-medium, var(--ig-spacing-inline, var(--ig-spacing))),var(--is-small, 1)*max(0.5rem, -1 * 0.5rem)*var(--ig-spacing-inline-small, var(--ig-spacing-inline, var(--ig-spacing))));margin-block:max(var(--is-large, 1)*max(0.125rem, -1 * 0.125rem)*var(--ig-spacing-block-large, var(--ig-spacing-block, var(--ig-spacing))),var(--is-medium, 1)*max(0.125rem, -1 * 0.125rem)*var(--ig-spacing-block-medium, var(--ig-spacing-block, var(--ig-spacing))),var(--is-small, 1)*max(0.125rem, -1 * 0.125rem)*var(--ig-spacing-block-small, var(--ig-spacing-block, var(--ig-spacing))));--item-icon: max(var(--is-large, 1) * max(1rem, -1 * 1rem), var(--is-medium, 1) * max(1rem, -1 * 1rem), var(--is-small, 1) * max(0.875rem, -1 * 0.875rem))}:host ::slotted(igc-icon){--size: var(--item-icon) !important}:host(:last-of-type){margin-block:unset}:host([active]){outline:.125rem solid var(--focused-item-border-color);outline-offset:-0.125rem}`;
3
3
  //# sourceMappingURL=dropdown-item.indigo.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dropdown-item.indigo.css.js","sourceRoot":"","sources":["../../../../../../src/components/dropdown/themes/shared/item/dropdown-item.indigo.css.ts"],"names":[],"mappings":"AACE,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,ygDAAygD,CAAC","sourcesContent":["\n import { css } from 'lit';\n export const styles = css`:host{padding-inline:max(var(--is-large, 1)*max(0.75rem, -1 * 0.75rem)*var(--ig-spacing-inline-large, var(--ig-spacing-inline, var(--ig-spacing))),var(--is-medium, 1)*max(0.75rem, -1 * 0.75rem)*var(--ig-spacing-inline-medium, var(--ig-spacing-inline, var(--ig-spacing))),var(--is-small, 1)*max(0.5rem, -1 * 0.5rem)*var(--ig-spacing-inline-small, var(--ig-spacing-inline, var(--ig-spacing))));margin-block:max(var(--is-large, 1)*max(0.125rem, -1 * 0.125rem)*var(--ig-spacing-block-large, var(--ig-spacing-block, var(--ig-spacing))),var(--is-medium, 1)*max(0.125rem, -1 * 0.125rem)*var(--ig-spacing-block-medium, var(--ig-spacing-block, var(--ig-spacing))),var(--is-small, 1)*max(0.125rem, -1 * 0.125rem)*var(--ig-spacing-block-small, var(--ig-spacing-block, var(--ig-spacing))));--item-icon: max(var(--is-large, 1) * max(1rem, -1 * 1rem), var(--is-medium, 1) * max(1rem, -1 * 1rem), var(--is-small, 1) * max(0.875rem, -1 * 0.875rem))}:host ::slotted(igc-icon){--size: var(--item-icon) !important}:host(:last-of-type){margin-block:unset}:host([active]){outline:.125rem solid var(--focused-item-border-color);outline-offset:-0.125rem}:host([selected][active]){background:var(--selected-item-background);color:var(--selected-item-text-color)}:host([selected][active]) ::slotted(igc-icon){color:var(--selected-item-icon-color)}:host([selected][active]:hover){background:var(--selected-hover-item-background);color:var(--selected-hover-item-text-color)}:host([selected][active]:hover) ::slotted(igc-icon){color:var(--selected-hover-item-icon-color)}`;\n "]}
1
+ {"version":3,"file":"dropdown-item.indigo.css.js","sourceRoot":"","sources":["../../../../../../src/components/dropdown/themes/shared/item/dropdown-item.indigo.css.ts"],"names":[],"mappings":"AACE,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,6mCAA6mC,CAAC","sourcesContent":["\n import { css } from 'lit';\n export const styles = css`:host{padding-inline:max(var(--is-large, 1)*max(0.75rem, -1 * 0.75rem)*var(--ig-spacing-inline-large, var(--ig-spacing-inline, var(--ig-spacing))),var(--is-medium, 1)*max(0.75rem, -1 * 0.75rem)*var(--ig-spacing-inline-medium, var(--ig-spacing-inline, var(--ig-spacing))),var(--is-small, 1)*max(0.5rem, -1 * 0.5rem)*var(--ig-spacing-inline-small, var(--ig-spacing-inline, var(--ig-spacing))));margin-block:max(var(--is-large, 1)*max(0.125rem, -1 * 0.125rem)*var(--ig-spacing-block-large, var(--ig-spacing-block, var(--ig-spacing))),var(--is-medium, 1)*max(0.125rem, -1 * 0.125rem)*var(--ig-spacing-block-medium, var(--ig-spacing-block, var(--ig-spacing))),var(--is-small, 1)*max(0.125rem, -1 * 0.125rem)*var(--ig-spacing-block-small, var(--ig-spacing-block, var(--ig-spacing))));--item-icon: max(var(--is-large, 1) * max(1rem, -1 * 1rem), var(--is-medium, 1) * max(1rem, -1 * 1rem), var(--is-small, 1) * max(0.875rem, -1 * 0.875rem))}:host ::slotted(igc-icon){--size: var(--item-icon) !important}:host(:last-of-type){margin-block:unset}:host([active]){outline:.125rem solid var(--focused-item-border-color);outline-offset:-0.125rem}`;\n "]}
@@ -1,3 +1,3 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `:host{--base-circle-color: var(--ig-circular-bar-base-circle-color, hsl(from var(--ig-gray-50-contrast) h s l/0.2));--fill-color-default: var(--ig-circular-bar-fill-color-default, var(--ig-primary-400));--fill-color-danger: var(--ig-circular-bar-fill-color-danger, var(--ig-error-400));--fill-color-warning: var(--ig-circular-bar-fill-color-warning, var(--ig-warn-400));--fill-color-info: var(--ig-circular-bar-fill-color-info, var(--ig-info-400));--fill-color-success: var(--ig-circular-bar-fill-color-success, var(--ig-success-400));--text-color: var(--ig-circular-bar-text-color, hsl(from var(--ig-gray-50-contrast) h s l/0.8));--diameter: var(--ig-circular-bar-diameter, 3rem);--track-border-radius: var(--ig-circular-bar-track-border-radius, 0rem);--ig-theme: indigo;--ig-theme-variant: dark}`;
2
+ export const styles = css `:host{--track-color: var(--ig-circular-bar-track-color, hsl(from var(--ig-gray-50-contrast) h s l/0.2));--fill-color-default: var(--ig-circular-bar-fill-color-default, var(--ig-primary-400));--fill-color-danger: var(--ig-circular-bar-fill-color-danger, var(--ig-error-400));--fill-color-warning: var(--ig-circular-bar-fill-color-warning, var(--ig-warn-400));--fill-color-info: var(--ig-circular-bar-fill-color-info, var(--ig-info-400));--fill-color-success: var(--ig-circular-bar-fill-color-success, var(--ig-success-400));--text-color: var(--ig-circular-bar-text-color, hsl(from var(--ig-gray-50-contrast) h s l/0.8));--diameter: var(--ig-circular-bar-diameter, 3rem);--track-border-radius: var(--ig-circular-bar-track-border-radius, 0rem);--ig-theme: indigo;--ig-theme-variant: dark}`;
3
3
  //# sourceMappingURL=circular.progress.indigo.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"circular.progress.indigo.css.js","sourceRoot":"","sources":["../../../../../../src/components/progress/themes/circular/dark/circular.progress.indigo.css.ts"],"names":[],"mappings":"AACE,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,+xBAA+xB,CAAC","sourcesContent":["\n import { css } from 'lit';\n export const styles = css`:host{--base-circle-color: var(--ig-circular-bar-base-circle-color, hsl(from var(--ig-gray-50-contrast) h s l/0.2));--fill-color-default: var(--ig-circular-bar-fill-color-default, var(--ig-primary-400));--fill-color-danger: var(--ig-circular-bar-fill-color-danger, var(--ig-error-400));--fill-color-warning: var(--ig-circular-bar-fill-color-warning, var(--ig-warn-400));--fill-color-info: var(--ig-circular-bar-fill-color-info, var(--ig-info-400));--fill-color-success: var(--ig-circular-bar-fill-color-success, var(--ig-success-400));--text-color: var(--ig-circular-bar-text-color, hsl(from var(--ig-gray-50-contrast) h s l/0.8));--diameter: var(--ig-circular-bar-diameter, 3rem);--track-border-radius: var(--ig-circular-bar-track-border-radius, 0rem);--ig-theme: indigo;--ig-theme-variant: dark}`;\n "]}
1
+ {"version":3,"file":"circular.progress.indigo.css.js","sourceRoot":"","sources":["../../../../../../src/components/progress/themes/circular/dark/circular.progress.indigo.css.ts"],"names":[],"mappings":"AACE,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,mxBAAmxB,CAAC","sourcesContent":["\n import { css } from 'lit';\n export const styles = css`:host{--track-color: var(--ig-circular-bar-track-color, hsl(from var(--ig-gray-50-contrast) h s l/0.2));--fill-color-default: var(--ig-circular-bar-fill-color-default, var(--ig-primary-400));--fill-color-danger: var(--ig-circular-bar-fill-color-danger, var(--ig-error-400));--fill-color-warning: var(--ig-circular-bar-fill-color-warning, var(--ig-warn-400));--fill-color-info: var(--ig-circular-bar-fill-color-info, var(--ig-info-400));--fill-color-success: var(--ig-circular-bar-fill-color-success, var(--ig-success-400));--text-color: var(--ig-circular-bar-text-color, hsl(from var(--ig-gray-50-contrast) h s l/0.8));--diameter: var(--ig-circular-bar-diameter, 3rem);--track-border-radius: var(--ig-circular-bar-track-border-radius, 0rem);--ig-theme: indigo;--ig-theme-variant: dark}`;\n "]}
@@ -1,3 +1,3 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `:host{--base-circle-color: var(--ig-circular-bar-base-circle-color, var(--ig-gray-300));--ig-theme-variant: dark}`;
2
+ export const styles = css `:host{--track-color: var(--ig-circular-bar-track-color, var(--ig-gray-300));--ig-theme-variant: dark}`;
3
3
  //# sourceMappingURL=circular.progress.shared.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"circular.progress.shared.css.js","sourceRoot":"","sources":["../../../../../../src/components/progress/themes/circular/dark/circular.progress.shared.css.ts"],"names":[],"mappings":"AACE,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,mHAAmH,CAAC","sourcesContent":["\n import { css } from 'lit';\n export const styles = css`:host{--base-circle-color: var(--ig-circular-bar-base-circle-color, var(--ig-gray-300));--ig-theme-variant: dark}`;\n "]}
1
+ {"version":3,"file":"circular.progress.shared.css.js","sourceRoot":"","sources":["../../../../../../src/components/progress/themes/circular/dark/circular.progress.shared.css.ts"],"names":[],"mappings":"AACE,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,uGAAuG,CAAC","sourcesContent":["\n import { css } from 'lit';\n export const styles = css`:host{--track-color: var(--ig-circular-bar-track-color, var(--ig-gray-300));--ig-theme-variant: dark}`;\n "]}
@@ -1,3 +1,3 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `:host{--base-circle-color: var(--ig-circular-bar-base-circle-color, hsl(from var(--ig-gray-900) h s l/0.15));--fill-color-default: var(--ig-circular-bar-fill-color-default, var(--ig-primary-400));--fill-color-danger: var(--ig-circular-bar-fill-color-danger, var(--ig-error-400));--fill-color-warning: var(--ig-circular-bar-fill-color-warning, var(--ig-warn-400));--fill-color-info: var(--ig-circular-bar-fill-color-info, var(--ig-info-400));--fill-color-success: var(--ig-circular-bar-fill-color-success, var(--ig-success-400));--text-color: var(--ig-circular-bar-text-color, var(--ig-gray-600));--diameter: var(--ig-circular-bar-diameter, 3rem);--ig-theme: indigo;--ig-theme-variant: light}`;
2
+ export const styles = css `:host{--track-color: var(--ig-circular-bar-track-color, hsl(from var(--ig-gray-900) h s l/0.15));--fill-color-default: var(--ig-circular-bar-fill-color-default, var(--ig-primary-400));--fill-color-danger: var(--ig-circular-bar-fill-color-danger, var(--ig-error-400));--fill-color-warning: var(--ig-circular-bar-fill-color-warning, var(--ig-warn-400));--fill-color-info: var(--ig-circular-bar-fill-color-info, var(--ig-info-400));--fill-color-success: var(--ig-circular-bar-fill-color-success, var(--ig-success-400));--text-color: var(--ig-circular-bar-text-color, var(--ig-gray-600));--diameter: var(--ig-circular-bar-diameter, 3rem);--ig-theme: indigo;--ig-theme-variant: light}`;
3
3
  //# sourceMappingURL=circular.progress.indigo.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"circular.progress.indigo.css.js","sourceRoot":"","sources":["../../../../../../src/components/progress/themes/circular/light/circular.progress.indigo.css.ts"],"names":[],"mappings":"AACE,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,qrBAAqrB,CAAC","sourcesContent":["\n import { css } from 'lit';\n export const styles = css`:host{--base-circle-color: var(--ig-circular-bar-base-circle-color, hsl(from var(--ig-gray-900) h s l/0.15));--fill-color-default: var(--ig-circular-bar-fill-color-default, var(--ig-primary-400));--fill-color-danger: var(--ig-circular-bar-fill-color-danger, var(--ig-error-400));--fill-color-warning: var(--ig-circular-bar-fill-color-warning, var(--ig-warn-400));--fill-color-info: var(--ig-circular-bar-fill-color-info, var(--ig-info-400));--fill-color-success: var(--ig-circular-bar-fill-color-success, var(--ig-success-400));--text-color: var(--ig-circular-bar-text-color, var(--ig-gray-600));--diameter: var(--ig-circular-bar-diameter, 3rem);--ig-theme: indigo;--ig-theme-variant: light}`;\n "]}
1
+ {"version":3,"file":"circular.progress.indigo.css.js","sourceRoot":"","sources":["../../../../../../src/components/progress/themes/circular/light/circular.progress.indigo.css.ts"],"names":[],"mappings":"AACE,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,yqBAAyqB,CAAC","sourcesContent":["\n import { css } from 'lit';\n export const styles = css`:host{--track-color: var(--ig-circular-bar-track-color, hsl(from var(--ig-gray-900) h s l/0.15));--fill-color-default: var(--ig-circular-bar-fill-color-default, var(--ig-primary-400));--fill-color-danger: var(--ig-circular-bar-fill-color-danger, var(--ig-error-400));--fill-color-warning: var(--ig-circular-bar-fill-color-warning, var(--ig-warn-400));--fill-color-info: var(--ig-circular-bar-fill-color-info, var(--ig-info-400));--fill-color-success: var(--ig-circular-bar-fill-color-success, var(--ig-success-400));--text-color: var(--ig-circular-bar-text-color, var(--ig-gray-600));--diameter: var(--ig-circular-bar-diameter, 3rem);--ig-theme: indigo;--ig-theme-variant: light}`;\n "]}
@@ -1,3 +1,3 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `:host{--base-circle-color: var(--ig-circular-bar-base-circle-color, var(--ig-gray-300));--fill-color-default: var(--ig-circular-bar-fill-color-default, var(--ig-primary-500));--fill-color-danger: var(--ig-circular-bar-fill-color-danger, var(--ig-error-500));--fill-color-warning: var(--ig-circular-bar-fill-color-warning, var(--ig-warn-500));--fill-color-info: var(--ig-circular-bar-fill-color-info, var(--ig-info-500));--fill-color-success: var(--ig-circular-bar-fill-color-success, var(--ig-success-500));--text-color: var(--ig-circular-bar-text-color, var(--ig-gray-700));--diameter: var(--ig-circular-bar-diameter, 2rem);--track-border-radius: var(--ig-circular-bar-track-border-radius, 0rem);--ig-theme-variant: light}`;
2
+ export const styles = css `:host{--track-color: var(--ig-circular-bar-track-color, var(--ig-gray-300));--fill-color-default: var(--ig-circular-bar-fill-color-default, var(--ig-primary-500));--fill-color-danger: var(--ig-circular-bar-fill-color-danger, var(--ig-error-500));--fill-color-warning: var(--ig-circular-bar-fill-color-warning, var(--ig-warn-500));--fill-color-info: var(--ig-circular-bar-fill-color-info, var(--ig-info-500));--fill-color-success: var(--ig-circular-bar-fill-color-success, var(--ig-success-500));--text-color: var(--ig-circular-bar-text-color, var(--ig-gray-700));--diameter: var(--ig-circular-bar-diameter, 2rem);--track-border-radius: var(--ig-circular-bar-track-border-radius, 0rem);--ig-theme-variant: light}`;
3
3
  //# sourceMappingURL=circular.progress.shared.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"circular.progress.shared.css.js","sourceRoot":"","sources":["../../../../../../src/components/progress/themes/circular/light/circular.progress.shared.css.ts"],"names":[],"mappings":"AACE,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,qtBAAqtB,CAAC","sourcesContent":["\n import { css } from 'lit';\n export const styles = css`:host{--base-circle-color: var(--ig-circular-bar-base-circle-color, var(--ig-gray-300));--fill-color-default: var(--ig-circular-bar-fill-color-default, var(--ig-primary-500));--fill-color-danger: var(--ig-circular-bar-fill-color-danger, var(--ig-error-500));--fill-color-warning: var(--ig-circular-bar-fill-color-warning, var(--ig-warn-500));--fill-color-info: var(--ig-circular-bar-fill-color-info, var(--ig-info-500));--fill-color-success: var(--ig-circular-bar-fill-color-success, var(--ig-success-500));--text-color: var(--ig-circular-bar-text-color, var(--ig-gray-700));--diameter: var(--ig-circular-bar-diameter, 2rem);--track-border-radius: var(--ig-circular-bar-track-border-radius, 0rem);--ig-theme-variant: light}`;\n "]}
1
+ {"version":3,"file":"circular.progress.shared.css.js","sourceRoot":"","sources":["../../../../../../src/components/progress/themes/circular/light/circular.progress.shared.css.ts"],"names":[],"mappings":"AACE,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,ysBAAysB,CAAC","sourcesContent":["\n import { css } from 'lit';\n export const styles = css`:host{--track-color: var(--ig-circular-bar-track-color, var(--ig-gray-300));--fill-color-default: var(--ig-circular-bar-fill-color-default, var(--ig-primary-500));--fill-color-danger: var(--ig-circular-bar-fill-color-danger, var(--ig-error-500));--fill-color-warning: var(--ig-circular-bar-fill-color-warning, var(--ig-warn-500));--fill-color-info: var(--ig-circular-bar-fill-color-info, var(--ig-info-500));--fill-color-success: var(--ig-circular-bar-fill-color-success, var(--ig-success-500));--text-color: var(--ig-circular-bar-text-color, var(--ig-gray-700));--diameter: var(--ig-circular-bar-diameter, 2rem);--track-border-radius: var(--ig-circular-bar-track-border-radius, 0rem);--ig-theme-variant: light}`;\n "]}
@@ -1,3 +1,3 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `:host{--stroke-thickness: 1.3px;--circular-size: calc(var(--diameter) - var(--stroke-thickness));--scale-factor: 2.95}[part~=label],[part~=value]{font-size:round(var(--diameter)/var(--scale-factor) - var(--stroke-thickness),1px)}[part~=label]{color:var(--text-color)}[part~=track]{stroke:var(--base-circle-color)}:host([variant=danger]){--gradient-stop-color: var(--fill-color-danger)}:host([variant=warning]){--gradient-stop-color: var(--fill-color-warning)}:host([variant=info]){--gradient-stop-color: var(--fill-color-info)}:host([variant=success]){--gradient-stop-color: var(--fill-color-success)}[part~=gradient_start],[part~=gradient_end]{stop-color:var(--gradient-stop-color, var(--fill-color-default))}`;
2
+ export const styles = css `:host{--stroke-thickness: 1.3px;--circular-size: calc(var(--diameter) - var(--stroke-thickness));--scale-factor: 2.95}[part~=label],[part~=value]{font-size:round(var(--diameter)/var(--scale-factor) - var(--stroke-thickness),1px)}[part~=label]{color:var(--text-color)}[part~=track]{stroke:var(--track-color)}:host([variant=danger]){--gradient-stop-color: var(--fill-color-danger)}:host([variant=warning]){--gradient-stop-color: var(--fill-color-warning)}:host([variant=info]){--gradient-stop-color: var(--fill-color-info)}:host([variant=success]){--gradient-stop-color: var(--fill-color-success)}[part~=gradient_start],[part~=gradient_end]{stop-color:var(--gradient-stop-color, var(--fill-color-default))}`;
3
3
  //# sourceMappingURL=circular.progress.common.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"circular.progress.common.css.js","sourceRoot":"","sources":["../../../../../../src/components/progress/themes/circular/shared/circular.progress.common.css.ts"],"names":[],"mappings":"AACE,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,wsBAAwsB,CAAC","sourcesContent":["\n import { css } from 'lit';\n export const styles = css`:host{--stroke-thickness: 1.3px;--circular-size: calc(var(--diameter) - var(--stroke-thickness));--scale-factor: 2.95}[part~=label],[part~=value]{font-size:round(var(--diameter)/var(--scale-factor) - var(--stroke-thickness),1px)}[part~=label]{color:var(--text-color)}[part~=track]{stroke:var(--base-circle-color)}:host([variant=danger]){--gradient-stop-color: var(--fill-color-danger)}:host([variant=warning]){--gradient-stop-color: var(--fill-color-warning)}:host([variant=info]){--gradient-stop-color: var(--fill-color-info)}:host([variant=success]){--gradient-stop-color: var(--fill-color-success)}[part~=gradient_start],[part~=gradient_end]{stop-color:var(--gradient-stop-color, var(--fill-color-default))}`;\n "]}
1
+ {"version":3,"file":"circular.progress.common.css.js","sourceRoot":"","sources":["../../../../../../src/components/progress/themes/circular/shared/circular.progress.common.css.ts"],"names":[],"mappings":"AACE,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,ksBAAksB,CAAC","sourcesContent":["\n import { css } from 'lit';\n export const styles = css`:host{--stroke-thickness: 1.3px;--circular-size: calc(var(--diameter) - var(--stroke-thickness));--scale-factor: 2.95}[part~=label],[part~=value]{font-size:round(var(--diameter)/var(--scale-factor) - var(--stroke-thickness),1px)}[part~=label]{color:var(--text-color)}[part~=track]{stroke:var(--track-color)}:host([variant=danger]){--gradient-stop-color: var(--fill-color-danger)}:host([variant=warning]){--gradient-stop-color: var(--fill-color-warning)}:host([variant=info]){--gradient-stop-color: var(--fill-color-info)}:host([variant=success]){--gradient-stop-color: var(--fill-color-success)}[part~=gradient_start],[part~=gradient_end]{stop-color:var(--gradient-stop-color, var(--fill-color-default))}`;\n "]}
@@ -1,3 +1,3 @@
1
1
  import { css } from 'lit';
2
- export const styles = css `:host{--is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);--is-medium: min( clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1), clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1) );--is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);position:relative;box-sizing:border-box;scrollbar-width:var(--ig-scrollbar-size, var(--sb-size));scrollbar-color:var(--ig-scrollbar-thumb-background, var(--sb-thumb-bg-color)) var(--ig-scrollbar-track-background, var(--sb-track-bg-color))}:host ::-webkit-scrollbar{width:var(--ig-scrollbar-size, var(--sb-size));height:var(--ig-scrollbar-size, var(--sb-size));background:var(--ig-scrollbar-track-background, var(--sb-track-bg-color))}:host ::-webkit-scrollbar-thumb{background:var(--ig-scrollbar-thumb-background, var(--sb-thumb-bg-color))}:host *,:host *::before,:host *::after{box-sizing:border-box}:host([hidden]),[hidden]{display:none !important}@keyframes igc-indeterminate-primary{0%{transform:translateX(0)}20%{animation-timing-function:cubic-bezier(0.5, 0, 0.7017, 0.4958);transform:translateX(0)}59.15%{animation-timing-function:cubic-bezier(0.3024, 0.3813, 0.55, 0.9563);transform:translateX(83.671%)}100%{transform:translateX(200.611%)}}@keyframes igc-indeterminate-primary-scale{0%{transform:scaleX(0.08)}36.65%{animation-timing-function:cubic-bezier(0.3347, 0.124, 0.7858, 1);transform:scaleX(0.08)}69.15%{animation-timing-function:cubic-bezier(0.06, 0.11, 0.6, 1);transform:scaleX(0.6614)}100%{transform:scaleX(0.08)}}@keyframes igc-indeterminate-secondary{0%{animation-timing-function:cubic-bezier(0.15, 0, 0.515, 0.4096);transform:translateX(0)}25%{animation-timing-function:cubic-bezier(0.31, 0.284, 0.8, 0.7337);transform:translateX(37.6519%)}48.35%{animation-timing-function:cubic-bezier(0.4, 0.627, 0.6, 0.902);transform:translateX(84.3861%)}100%{transform:translateX(160.2777%)}}@keyframes igc-indeterminate-secondary-scale{0%{animation-timing-function:cubic-bezier(0.15, 0, 0.515, 0.4096);transform:scaleX(0.08)}19.15%{animation-timing-function:cubic-bezier(0.31, 0.284, 0.8, 0.7337);transform:scaleX(0.4571)}44.15%{animation-timing-function:cubic-bezier(0.4, 0.627, 0.6, 0.902);transform:scaleX(0.727)}100%{transform:scaleX(0.08)}}@keyframes igc-indeterminate-bar-fluent{0%{transform:translateX(-100%);transform-origin:left}100%{transform:translateX(310%);transform-origin:right}}@keyframes igc-indeterminate-bar-fluent-rtl{0%{transform:translateX(100%);transform-origin:right}100%{transform:translateX(-310%);transform-origin:left}}@keyframes igc-indeterminate-accordion{0%{stroke-dashoffset:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)*2);stroke-dasharray:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)*9/10)}100%{stroke-dashoffset:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)*2/5)}}@keyframes igc-indeterminate-accordion-rtl{0%{stroke-dashoffset:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)*-2);stroke-dasharray:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)*9/10)}100%{stroke-dashoffset:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)*-2/5)}}@keyframes igc-indeterminate-circular-fluent{0%{stroke-dasharray:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)*.0001),calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416);stroke-dashoffset:calc(-1*calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)/4);transform:rotate(-90deg)}50%{stroke-dasharray:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)/2),calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)/2);stroke-dashoffset:calc(-1*calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)/4);transform:rotate(360deg)}100%{stroke-dasharray:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)*.0001),calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416);stroke-dashoffset:calc(-1*calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)/4);transform:rotate(990deg)}}@keyframes igc-indeterminate-circular-fluent-rtl{0%{stroke-dasharray:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)*.0001),calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416);stroke-dashoffset:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)/4);transform:rotate(90deg)}50%{stroke-dasharray:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)/2),calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)/2);stroke-dashoffset:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)/4);transform:rotate(-360deg)}100%{stroke-dasharray:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)*.0001),calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416);stroke-dashoffset:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)/4);transform:rotate(-990deg)}}@keyframes igc-rotate-center{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}@keyframes igc-initial-counter{from{--_progress-integer: 0;--_progress-fraction: 0}}@keyframes igc-initial-width{from{width:0}to{width:calc(var(--_progress-whole, 0)*1%)}}@keyframes igc-initial-dashoffset{from{stroke-dashoffset:calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)}to{stroke-dashoffset:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416) - var(--_progress-percentage)*calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416))}}:host{--linear-animation-duration: 2000ms;--linear-strips-orientation: -45deg}:host(:dir(rtl)),:host([dir=rtl]){--linear-strips-orientation: 45deg}[part~=base]{display:flex;align-items:center;flex-direction:column;justify-content:center;font-family:var(--ig-font-family),serif;position:relative;width:100%;flex:1 1 100%}:host(:dir(rtl)[indeterminate]) [part~=track],:host([dir=rtl][indeterminate]) [part~=track]{transform:rotateY(180deg)}[part~=label]{display:flex;align-items:center;color:inherit;font-weight:600}[part~=track]{position:relative;width:inherit;overflow:hidden;z-index:0}[part~=fill]{width:calc(var(--_progress-whole, 0)*1%);transition:width var(--_transition-duration) linear;position:relative;height:100%}[part~=fill]:not([part~=indeterminate]){overflow:hidden;animation:igc-initial-width var(--_transition-duration) linear}[part~=indeterminate],[part~="indeterminate secondary"]{width:100% !important;height:inherit;position:absolute;background:rgba(0,0,0,0)}[part~=indeterminate]::after,[part~="indeterminate secondary"]::after{content:"";position:absolute;top:0;inset-inline-start:0;width:inherit;height:inherit;backface-visibility:hidden}[part~=indeterminate]:not([part~=secondary]){transform:scale3d(0, 1, 1);animation:igc-indeterminate-primary var(--linear-animation-duration) infinite linear;left:-145.1666%}[part~=indeterminate]:not([part~=secondary])::after{animation:igc-indeterminate-primary-scale var(--linear-animation-duration) infinite linear}[part~=secondary]{animation:igc-indeterminate-secondary var(--linear-animation-duration) infinite linear;left:-54.8888%}[part~=secondary]::after{animation:igc-indeterminate-secondary-scale var(--linear-animation-duration) infinite linear;width:100%;height:inherit}[part~=value]{font-family:var(--ig-subtitle-2-font-family, var(--ig-font-family));font-size:var(--ig-subtitle-2-font-size);font-weight:var(--ig-subtitle-2-font-weight);font-style:var(--ig-subtitle-2-font-style);line-height:var(--ig-subtitle-2-line-height);letter-spacing:var(--ig-subtitle-2-letter-spacing);text-transform:var(--ig-subtitle-2-text-transform);margin-top:var(--ig-subtitle-2-margin-top);margin-bottom:var(--ig-subtitle-2-margin-bottom)}[part~=counter]{animation:igc-initial-counter var(--_transition-duration) ease-in-out;counter-reset:progress-integer var(--_progress-integer, 0) progress-fraction var(--_progress-fraction, 0);transition:--_progress-integer var(--_transition-duration) ease-in-out,--_progress-fraction var(--_transition-duration) ease-in-out;display:block}[part~=counter]::before{font-family:var(--ig-subtitle-2-font-family, var(--ig-font-family));font-size:var(--ig-subtitle-2-font-size);font-weight:var(--ig-subtitle-2-font-weight);font-style:var(--ig-subtitle-2-font-style);line-height:var(--ig-subtitle-2-line-height);letter-spacing:var(--ig-subtitle-2-letter-spacing);text-transform:var(--ig-subtitle-2-text-transform);margin-top:var(--ig-subtitle-2-margin-top);margin-bottom:var(--ig-subtitle-2-margin-bottom)}[part~=counter]:not([part~=fraction])::before{content:counter(progress-integer) "%"}[part~=counter][part~=fraction]::before{content:counter(progress-integer) "." counter(progress-fraction, decimal-leading-zero) "%"}:host([label-align=top]) [part~=label],:host([label-align=top-start]) [part~=label],:host([label-align=top-end]) [part~=label]{order:-1}:host([label-align=top-start]) [part~=label],:host([label-align=bottom-start]) [part~=label],:host([label-align=start]) [part~=label]{align-self:flex-start}:host([label-align=bottom-end]) [part~=label],:host([label-align=top-end]) [part~=label],:host([label-align=end]) [part~=label]{align-self:flex-end}:host([label-align=top]) [part~=label],:host([label-align=bottom]) [part~=label]{align-self:center}[part~=hidden]{display:none}`;
2
+ export const styles = css `:host{--is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);--is-medium: min( clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1), clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1) );--is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);position:relative;box-sizing:border-box;scrollbar-width:var(--ig-scrollbar-size, var(--sb-size));scrollbar-color:var(--ig-scrollbar-thumb-background, var(--sb-thumb-bg-color)) var(--ig-scrollbar-track-background, var(--sb-track-bg-color))}:host ::-webkit-scrollbar{width:var(--ig-scrollbar-size, var(--sb-size));height:var(--ig-scrollbar-size, var(--sb-size));background:var(--ig-scrollbar-track-background, var(--sb-track-bg-color))}:host ::-webkit-scrollbar-thumb{background:var(--ig-scrollbar-thumb-background, var(--sb-thumb-bg-color))}:host *,:host *::before,:host *::after{box-sizing:border-box}:host([hidden]),[hidden]{display:none !important}@keyframes igc-indeterminate-primary{0%{transform:translateX(0)}20%{animation-timing-function:cubic-bezier(0.5, 0, 0.7017, 0.4958);transform:translateX(0)}59.15%{animation-timing-function:cubic-bezier(0.3024, 0.3813, 0.55, 0.9563);transform:translateX(83.671%)}100%{transform:translateX(200.611%)}}@keyframes igc-indeterminate-primary-scale{0%{transform:scaleX(0.08)}36.65%{animation-timing-function:cubic-bezier(0.3347, 0.124, 0.7858, 1);transform:scaleX(0.08)}69.15%{animation-timing-function:cubic-bezier(0.06, 0.11, 0.6, 1);transform:scaleX(0.6614)}100%{transform:scaleX(0.08)}}@keyframes igc-indeterminate-secondary{0%{animation-timing-function:cubic-bezier(0.15, 0, 0.515, 0.4096);transform:translateX(0)}25%{animation-timing-function:cubic-bezier(0.31, 0.284, 0.8, 0.7337);transform:translateX(37.6519%)}48.35%{animation-timing-function:cubic-bezier(0.4, 0.627, 0.6, 0.902);transform:translateX(84.3861%)}100%{transform:translateX(160.2777%)}}@keyframes igc-indeterminate-secondary-scale{0%{animation-timing-function:cubic-bezier(0.15, 0, 0.515, 0.4096);transform:scaleX(0.08)}19.15%{animation-timing-function:cubic-bezier(0.31, 0.284, 0.8, 0.7337);transform:scaleX(0.4571)}44.15%{animation-timing-function:cubic-bezier(0.4, 0.627, 0.6, 0.902);transform:scaleX(0.727)}100%{transform:scaleX(0.08)}}@keyframes igc-indeterminate-bar-fluent{0%{transform:translateX(-100%);transform-origin:left}100%{transform:translateX(310%);transform-origin:right}}@keyframes igc-indeterminate-bar-fluent-rtl{0%{transform:translateX(100%);transform-origin:right}100%{transform:translateX(-310%);transform-origin:left}}@keyframes igc-indeterminate-accordion{0%{stroke-dashoffset:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)*2);stroke-dasharray:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)*9/10)}100%{stroke-dashoffset:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)*2/5)}}@keyframes igc-indeterminate-accordion-rtl{0%{stroke-dashoffset:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)*-2);stroke-dasharray:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)*9/10)}100%{stroke-dashoffset:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)*-2/5)}}@keyframes igc-indeterminate-circular-fluent{0%{stroke-dasharray:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)*.0001),calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416);stroke-dashoffset:calc(-1*calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)/4);transform:rotate(-90deg)}50%{stroke-dasharray:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)/2),calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)/2);stroke-dashoffset:calc(-1*calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)/4);transform:rotate(360deg)}100%{stroke-dasharray:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)*.0001),calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416);stroke-dashoffset:calc(-1*calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)/4);transform:rotate(990deg)}}@keyframes igc-indeterminate-circular-fluent-rtl{0%{stroke-dasharray:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)*.0001),calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416);stroke-dashoffset:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)/4);transform:rotate(90deg)}50%{stroke-dasharray:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)/2),calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)/2);stroke-dashoffset:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)/4);transform:rotate(-360deg)}100%{stroke-dasharray:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)*.0001),calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416);stroke-dashoffset:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)/4);transform:rotate(-990deg)}}@keyframes igc-rotate-center{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}@keyframes igc-initial-counter{from{--_progress-integer: 0;--_progress-fraction: 0}}@keyframes igc-initial-width{from{width:0}to{width:calc(var(--_progress-whole, 0)*1%)}}@keyframes igc-initial-dashoffset{from{stroke-dashoffset:calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)}to{stroke-dashoffset:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416) - var(--_progress-percentage)*calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416))}}:host{--linear-animation-duration: 2000ms;--linear-strips-orientation: -45deg;display:flex;flex-grow:1;width:100%}:host(:dir(rtl)),:host([dir=rtl]){--linear-strips-orientation: 45deg}[part~=base]{display:flex;align-items:center;flex-direction:column;justify-content:center;font-family:var(--ig-font-family),serif;position:relative;width:100%;flex:1 1 100%}:host(:dir(rtl)[indeterminate]) [part~=track],:host([dir=rtl][indeterminate]) [part~=track]{transform:rotateY(180deg)}[part~=label]{display:flex;align-items:center;color:inherit;font-weight:600}[part~=track]{position:relative;width:inherit;overflow:hidden;z-index:0}[part~=fill]{width:calc(var(--_progress-whole, 0)*1%);transition:width var(--_transition-duration) linear;position:relative;height:100%}[part~=fill]:not([part~=indeterminate]){overflow:hidden;animation:igc-initial-width var(--_transition-duration) linear}[part~=indeterminate],[part~="indeterminate secondary"]{width:100% !important;height:inherit;position:absolute;background:rgba(0,0,0,0)}[part~=indeterminate]::after,[part~="indeterminate secondary"]::after{content:"";position:absolute;top:0;inset-inline-start:0;width:inherit;height:inherit;backface-visibility:hidden}[part~=indeterminate]:not([part~=secondary]){transform:scale3d(0, 1, 1);animation:igc-indeterminate-primary var(--linear-animation-duration) infinite linear;left:-145.1666%}[part~=indeterminate]:not([part~=secondary])::after{animation:igc-indeterminate-primary-scale var(--linear-animation-duration) infinite linear}[part~=secondary]{animation:igc-indeterminate-secondary var(--linear-animation-duration) infinite linear;left:-54.8888%}[part~=secondary]::after{animation:igc-indeterminate-secondary-scale var(--linear-animation-duration) infinite linear;width:100%;height:inherit}[part~=value]{font-family:var(--ig-subtitle-2-font-family, var(--ig-font-family));font-size:var(--ig-subtitle-2-font-size);font-weight:var(--ig-subtitle-2-font-weight);font-style:var(--ig-subtitle-2-font-style);line-height:var(--ig-subtitle-2-line-height);letter-spacing:var(--ig-subtitle-2-letter-spacing);text-transform:var(--ig-subtitle-2-text-transform);margin-top:var(--ig-subtitle-2-margin-top);margin-bottom:var(--ig-subtitle-2-margin-bottom)}[part~=counter]{animation:igc-initial-counter var(--_transition-duration) ease-in-out;counter-reset:progress-integer var(--_progress-integer, 0) progress-fraction var(--_progress-fraction, 0);transition:--_progress-integer var(--_transition-duration) ease-in-out,--_progress-fraction var(--_transition-duration) ease-in-out;display:block}[part~=counter]::before{font-family:var(--ig-subtitle-2-font-family, var(--ig-font-family));font-size:var(--ig-subtitle-2-font-size);font-weight:var(--ig-subtitle-2-font-weight);font-style:var(--ig-subtitle-2-font-style);line-height:var(--ig-subtitle-2-line-height);letter-spacing:var(--ig-subtitle-2-letter-spacing);text-transform:var(--ig-subtitle-2-text-transform);margin-top:var(--ig-subtitle-2-margin-top);margin-bottom:var(--ig-subtitle-2-margin-bottom)}[part~=counter]:not([part~=fraction])::before{content:counter(progress-integer) "%"}[part~=counter][part~=fraction]::before{content:counter(progress-integer) "." counter(progress-fraction, decimal-leading-zero) "%"}:host([label-align=top]) [part~=label],:host([label-align=top-start]) [part~=label],:host([label-align=top-end]) [part~=label]{order:-1}:host([label-align=top-start]) [part~=label],:host([label-align=bottom-start]) [part~=label],:host([label-align=start]) [part~=label]{align-self:flex-start}:host([label-align=bottom-end]) [part~=label],:host([label-align=top-end]) [part~=label],:host([label-align=end]) [part~=label]{align-self:flex-end}:host([label-align=top]) [part~=label],:host([label-align=bottom]) [part~=label]{align-self:center}[part~=hidden]{display:none}`;
3
3
  //# sourceMappingURL=linear.progress.base.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"linear.progress.base.css.js","sourceRoot":"","sources":["../../../../../src/components/progress/themes/linear/linear.progress.base.css.ts"],"names":[],"mappings":"AACE,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,olTAAolT,CAAC","sourcesContent":["\n import { css } from 'lit';\n export const styles = css`:host{--is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);--is-medium: min( clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1), clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1) );--is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);position:relative;box-sizing:border-box;scrollbar-width:var(--ig-scrollbar-size, var(--sb-size));scrollbar-color:var(--ig-scrollbar-thumb-background, var(--sb-thumb-bg-color)) var(--ig-scrollbar-track-background, var(--sb-track-bg-color))}:host ::-webkit-scrollbar{width:var(--ig-scrollbar-size, var(--sb-size));height:var(--ig-scrollbar-size, var(--sb-size));background:var(--ig-scrollbar-track-background, var(--sb-track-bg-color))}:host ::-webkit-scrollbar-thumb{background:var(--ig-scrollbar-thumb-background, var(--sb-thumb-bg-color))}:host *,:host *::before,:host *::after{box-sizing:border-box}:host([hidden]),[hidden]{display:none !important}@keyframes igc-indeterminate-primary{0%{transform:translateX(0)}20%{animation-timing-function:cubic-bezier(0.5, 0, 0.7017, 0.4958);transform:translateX(0)}59.15%{animation-timing-function:cubic-bezier(0.3024, 0.3813, 0.55, 0.9563);transform:translateX(83.671%)}100%{transform:translateX(200.611%)}}@keyframes igc-indeterminate-primary-scale{0%{transform:scaleX(0.08)}36.65%{animation-timing-function:cubic-bezier(0.3347, 0.124, 0.7858, 1);transform:scaleX(0.08)}69.15%{animation-timing-function:cubic-bezier(0.06, 0.11, 0.6, 1);transform:scaleX(0.6614)}100%{transform:scaleX(0.08)}}@keyframes igc-indeterminate-secondary{0%{animation-timing-function:cubic-bezier(0.15, 0, 0.515, 0.4096);transform:translateX(0)}25%{animation-timing-function:cubic-bezier(0.31, 0.284, 0.8, 0.7337);transform:translateX(37.6519%)}48.35%{animation-timing-function:cubic-bezier(0.4, 0.627, 0.6, 0.902);transform:translateX(84.3861%)}100%{transform:translateX(160.2777%)}}@keyframes igc-indeterminate-secondary-scale{0%{animation-timing-function:cubic-bezier(0.15, 0, 0.515, 0.4096);transform:scaleX(0.08)}19.15%{animation-timing-function:cubic-bezier(0.31, 0.284, 0.8, 0.7337);transform:scaleX(0.4571)}44.15%{animation-timing-function:cubic-bezier(0.4, 0.627, 0.6, 0.902);transform:scaleX(0.727)}100%{transform:scaleX(0.08)}}@keyframes igc-indeterminate-bar-fluent{0%{transform:translateX(-100%);transform-origin:left}100%{transform:translateX(310%);transform-origin:right}}@keyframes igc-indeterminate-bar-fluent-rtl{0%{transform:translateX(100%);transform-origin:right}100%{transform:translateX(-310%);transform-origin:left}}@keyframes igc-indeterminate-accordion{0%{stroke-dashoffset:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)*2);stroke-dasharray:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)*9/10)}100%{stroke-dashoffset:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)*2/5)}}@keyframes igc-indeterminate-accordion-rtl{0%{stroke-dashoffset:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)*-2);stroke-dasharray:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)*9/10)}100%{stroke-dashoffset:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)*-2/5)}}@keyframes igc-indeterminate-circular-fluent{0%{stroke-dasharray:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)*.0001),calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416);stroke-dashoffset:calc(-1*calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)/4);transform:rotate(-90deg)}50%{stroke-dasharray:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)/2),calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)/2);stroke-dashoffset:calc(-1*calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)/4);transform:rotate(360deg)}100%{stroke-dasharray:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)*.0001),calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416);stroke-dashoffset:calc(-1*calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)/4);transform:rotate(990deg)}}@keyframes igc-indeterminate-circular-fluent-rtl{0%{stroke-dasharray:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)*.0001),calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416);stroke-dashoffset:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)/4);transform:rotate(90deg)}50%{stroke-dasharray:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)/2),calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)/2);stroke-dashoffset:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)/4);transform:rotate(-360deg)}100%{stroke-dasharray:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)*.0001),calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416);stroke-dashoffset:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)/4);transform:rotate(-990deg)}}@keyframes igc-rotate-center{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}@keyframes igc-initial-counter{from{--_progress-integer: 0;--_progress-fraction: 0}}@keyframes igc-initial-width{from{width:0}to{width:calc(var(--_progress-whole, 0)*1%)}}@keyframes igc-initial-dashoffset{from{stroke-dashoffset:calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)}to{stroke-dashoffset:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416) - var(--_progress-percentage)*calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416))}}:host{--linear-animation-duration: 2000ms;--linear-strips-orientation: -45deg}:host(:dir(rtl)),:host([dir=rtl]){--linear-strips-orientation: 45deg}[part~=base]{display:flex;align-items:center;flex-direction:column;justify-content:center;font-family:var(--ig-font-family),serif;position:relative;width:100%;flex:1 1 100%}:host(:dir(rtl)[indeterminate]) [part~=track],:host([dir=rtl][indeterminate]) [part~=track]{transform:rotateY(180deg)}[part~=label]{display:flex;align-items:center;color:inherit;font-weight:600}[part~=track]{position:relative;width:inherit;overflow:hidden;z-index:0}[part~=fill]{width:calc(var(--_progress-whole, 0)*1%);transition:width var(--_transition-duration) linear;position:relative;height:100%}[part~=fill]:not([part~=indeterminate]){overflow:hidden;animation:igc-initial-width var(--_transition-duration) linear}[part~=indeterminate],[part~=\"indeterminate secondary\"]{width:100% !important;height:inherit;position:absolute;background:rgba(0,0,0,0)}[part~=indeterminate]::after,[part~=\"indeterminate secondary\"]::after{content:\"\";position:absolute;top:0;inset-inline-start:0;width:inherit;height:inherit;backface-visibility:hidden}[part~=indeterminate]:not([part~=secondary]){transform:scale3d(0, 1, 1);animation:igc-indeterminate-primary var(--linear-animation-duration) infinite linear;left:-145.1666%}[part~=indeterminate]:not([part~=secondary])::after{animation:igc-indeterminate-primary-scale var(--linear-animation-duration) infinite linear}[part~=secondary]{animation:igc-indeterminate-secondary var(--linear-animation-duration) infinite linear;left:-54.8888%}[part~=secondary]::after{animation:igc-indeterminate-secondary-scale var(--linear-animation-duration) infinite linear;width:100%;height:inherit}[part~=value]{font-family:var(--ig-subtitle-2-font-family, var(--ig-font-family));font-size:var(--ig-subtitle-2-font-size);font-weight:var(--ig-subtitle-2-font-weight);font-style:var(--ig-subtitle-2-font-style);line-height:var(--ig-subtitle-2-line-height);letter-spacing:var(--ig-subtitle-2-letter-spacing);text-transform:var(--ig-subtitle-2-text-transform);margin-top:var(--ig-subtitle-2-margin-top);margin-bottom:var(--ig-subtitle-2-margin-bottom)}[part~=counter]{animation:igc-initial-counter var(--_transition-duration) ease-in-out;counter-reset:progress-integer var(--_progress-integer, 0) progress-fraction var(--_progress-fraction, 0);transition:--_progress-integer var(--_transition-duration) ease-in-out,--_progress-fraction var(--_transition-duration) ease-in-out;display:block}[part~=counter]::before{font-family:var(--ig-subtitle-2-font-family, var(--ig-font-family));font-size:var(--ig-subtitle-2-font-size);font-weight:var(--ig-subtitle-2-font-weight);font-style:var(--ig-subtitle-2-font-style);line-height:var(--ig-subtitle-2-line-height);letter-spacing:var(--ig-subtitle-2-letter-spacing);text-transform:var(--ig-subtitle-2-text-transform);margin-top:var(--ig-subtitle-2-margin-top);margin-bottom:var(--ig-subtitle-2-margin-bottom)}[part~=counter]:not([part~=fraction])::before{content:counter(progress-integer) \"%\"}[part~=counter][part~=fraction]::before{content:counter(progress-integer) \".\" counter(progress-fraction, decimal-leading-zero) \"%\"}:host([label-align=top]) [part~=label],:host([label-align=top-start]) [part~=label],:host([label-align=top-end]) [part~=label]{order:-1}:host([label-align=top-start]) [part~=label],:host([label-align=bottom-start]) [part~=label],:host([label-align=start]) [part~=label]{align-self:flex-start}:host([label-align=bottom-end]) [part~=label],:host([label-align=top-end]) [part~=label],:host([label-align=end]) [part~=label]{align-self:flex-end}:host([label-align=top]) [part~=label],:host([label-align=bottom]) [part~=label]{align-self:center}[part~=hidden]{display:none}`;\n "]}
1
+ {"version":3,"file":"linear.progress.base.css.js","sourceRoot":"","sources":["../../../../../src/components/progress/themes/linear/linear.progress.base.css.ts"],"names":[],"mappings":"AACE,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA,wnTAAwnT,CAAC","sourcesContent":["\n import { css } from 'lit';\n export const styles = css`:host{--is-large: clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-large, 3), 1);--is-medium: min( clamp(0, (var(--component-size, 1) + 1) - var(--ig-size-medium, 2), 1), clamp(0, var(--ig-size-large, 3) - var(--component-size, 1), 1) );--is-small: clamp(0, var(--ig-size-medium) - var(--component-size, 1), 1);position:relative;box-sizing:border-box;scrollbar-width:var(--ig-scrollbar-size, var(--sb-size));scrollbar-color:var(--ig-scrollbar-thumb-background, var(--sb-thumb-bg-color)) var(--ig-scrollbar-track-background, var(--sb-track-bg-color))}:host ::-webkit-scrollbar{width:var(--ig-scrollbar-size, var(--sb-size));height:var(--ig-scrollbar-size, var(--sb-size));background:var(--ig-scrollbar-track-background, var(--sb-track-bg-color))}:host ::-webkit-scrollbar-thumb{background:var(--ig-scrollbar-thumb-background, var(--sb-thumb-bg-color))}:host *,:host *::before,:host *::after{box-sizing:border-box}:host([hidden]),[hidden]{display:none !important}@keyframes igc-indeterminate-primary{0%{transform:translateX(0)}20%{animation-timing-function:cubic-bezier(0.5, 0, 0.7017, 0.4958);transform:translateX(0)}59.15%{animation-timing-function:cubic-bezier(0.3024, 0.3813, 0.55, 0.9563);transform:translateX(83.671%)}100%{transform:translateX(200.611%)}}@keyframes igc-indeterminate-primary-scale{0%{transform:scaleX(0.08)}36.65%{animation-timing-function:cubic-bezier(0.3347, 0.124, 0.7858, 1);transform:scaleX(0.08)}69.15%{animation-timing-function:cubic-bezier(0.06, 0.11, 0.6, 1);transform:scaleX(0.6614)}100%{transform:scaleX(0.08)}}@keyframes igc-indeterminate-secondary{0%{animation-timing-function:cubic-bezier(0.15, 0, 0.515, 0.4096);transform:translateX(0)}25%{animation-timing-function:cubic-bezier(0.31, 0.284, 0.8, 0.7337);transform:translateX(37.6519%)}48.35%{animation-timing-function:cubic-bezier(0.4, 0.627, 0.6, 0.902);transform:translateX(84.3861%)}100%{transform:translateX(160.2777%)}}@keyframes igc-indeterminate-secondary-scale{0%{animation-timing-function:cubic-bezier(0.15, 0, 0.515, 0.4096);transform:scaleX(0.08)}19.15%{animation-timing-function:cubic-bezier(0.31, 0.284, 0.8, 0.7337);transform:scaleX(0.4571)}44.15%{animation-timing-function:cubic-bezier(0.4, 0.627, 0.6, 0.902);transform:scaleX(0.727)}100%{transform:scaleX(0.08)}}@keyframes igc-indeterminate-bar-fluent{0%{transform:translateX(-100%);transform-origin:left}100%{transform:translateX(310%);transform-origin:right}}@keyframes igc-indeterminate-bar-fluent-rtl{0%{transform:translateX(100%);transform-origin:right}100%{transform:translateX(-310%);transform-origin:left}}@keyframes igc-indeterminate-accordion{0%{stroke-dashoffset:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)*2);stroke-dasharray:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)*9/10)}100%{stroke-dashoffset:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)*2/5)}}@keyframes igc-indeterminate-accordion-rtl{0%{stroke-dashoffset:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)*-2);stroke-dasharray:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)*9/10)}100%{stroke-dashoffset:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)*-2/5)}}@keyframes igc-indeterminate-circular-fluent{0%{stroke-dasharray:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)*.0001),calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416);stroke-dashoffset:calc(-1*calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)/4);transform:rotate(-90deg)}50%{stroke-dasharray:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)/2),calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)/2);stroke-dashoffset:calc(-1*calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)/4);transform:rotate(360deg)}100%{stroke-dasharray:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)*.0001),calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416);stroke-dashoffset:calc(-1*calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)/4);transform:rotate(990deg)}}@keyframes igc-indeterminate-circular-fluent-rtl{0%{stroke-dasharray:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)*.0001),calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416);stroke-dashoffset:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)/4);transform:rotate(90deg)}50%{stroke-dasharray:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)/2),calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)/2);stroke-dashoffset:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)/4);transform:rotate(-360deg)}100%{stroke-dasharray:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)*.0001),calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416);stroke-dashoffset:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)/4);transform:rotate(-990deg)}}@keyframes igc-rotate-center{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}@keyframes igc-initial-counter{from{--_progress-integer: 0;--_progress-fraction: 0}}@keyframes igc-initial-width{from{width:0}to{width:calc(var(--_progress-whole, 0)*1%)}}@keyframes igc-initial-dashoffset{from{stroke-dashoffset:calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416)}to{stroke-dashoffset:calc(calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416) - var(--_progress-percentage)*calc(calc(var(--circular-size) / 2 - var(--stroke-thickness) * 0.5) * 2 * 3.1416))}}:host{--linear-animation-duration: 2000ms;--linear-strips-orientation: -45deg;display:flex;flex-grow:1;width:100%}:host(:dir(rtl)),:host([dir=rtl]){--linear-strips-orientation: 45deg}[part~=base]{display:flex;align-items:center;flex-direction:column;justify-content:center;font-family:var(--ig-font-family),serif;position:relative;width:100%;flex:1 1 100%}:host(:dir(rtl)[indeterminate]) [part~=track],:host([dir=rtl][indeterminate]) [part~=track]{transform:rotateY(180deg)}[part~=label]{display:flex;align-items:center;color:inherit;font-weight:600}[part~=track]{position:relative;width:inherit;overflow:hidden;z-index:0}[part~=fill]{width:calc(var(--_progress-whole, 0)*1%);transition:width var(--_transition-duration) linear;position:relative;height:100%}[part~=fill]:not([part~=indeterminate]){overflow:hidden;animation:igc-initial-width var(--_transition-duration) linear}[part~=indeterminate],[part~=\"indeterminate secondary\"]{width:100% !important;height:inherit;position:absolute;background:rgba(0,0,0,0)}[part~=indeterminate]::after,[part~=\"indeterminate secondary\"]::after{content:\"\";position:absolute;top:0;inset-inline-start:0;width:inherit;height:inherit;backface-visibility:hidden}[part~=indeterminate]:not([part~=secondary]){transform:scale3d(0, 1, 1);animation:igc-indeterminate-primary var(--linear-animation-duration) infinite linear;left:-145.1666%}[part~=indeterminate]:not([part~=secondary])::after{animation:igc-indeterminate-primary-scale var(--linear-animation-duration) infinite linear}[part~=secondary]{animation:igc-indeterminate-secondary var(--linear-animation-duration) infinite linear;left:-54.8888%}[part~=secondary]::after{animation:igc-indeterminate-secondary-scale var(--linear-animation-duration) infinite linear;width:100%;height:inherit}[part~=value]{font-family:var(--ig-subtitle-2-font-family, var(--ig-font-family));font-size:var(--ig-subtitle-2-font-size);font-weight:var(--ig-subtitle-2-font-weight);font-style:var(--ig-subtitle-2-font-style);line-height:var(--ig-subtitle-2-line-height);letter-spacing:var(--ig-subtitle-2-letter-spacing);text-transform:var(--ig-subtitle-2-text-transform);margin-top:var(--ig-subtitle-2-margin-top);margin-bottom:var(--ig-subtitle-2-margin-bottom)}[part~=counter]{animation:igc-initial-counter var(--_transition-duration) ease-in-out;counter-reset:progress-integer var(--_progress-integer, 0) progress-fraction var(--_progress-fraction, 0);transition:--_progress-integer var(--_transition-duration) ease-in-out,--_progress-fraction var(--_transition-duration) ease-in-out;display:block}[part~=counter]::before{font-family:var(--ig-subtitle-2-font-family, var(--ig-font-family));font-size:var(--ig-subtitle-2-font-size);font-weight:var(--ig-subtitle-2-font-weight);font-style:var(--ig-subtitle-2-font-style);line-height:var(--ig-subtitle-2-line-height);letter-spacing:var(--ig-subtitle-2-letter-spacing);text-transform:var(--ig-subtitle-2-text-transform);margin-top:var(--ig-subtitle-2-margin-top);margin-bottom:var(--ig-subtitle-2-margin-bottom)}[part~=counter]:not([part~=fraction])::before{content:counter(progress-integer) \"%\"}[part~=counter][part~=fraction]::before{content:counter(progress-integer) \".\" counter(progress-fraction, decimal-leading-zero) \"%\"}:host([label-align=top]) [part~=label],:host([label-align=top-start]) [part~=label],:host([label-align=top-end]) [part~=label]{order:-1}:host([label-align=top-start]) [part~=label],:host([label-align=bottom-start]) [part~=label],:host([label-align=start]) [part~=label]{align-self:flex-start}:host([label-align=bottom-end]) [part~=label],:host([label-align=top-end]) [part~=label],:host([label-align=end]) [part~=label]{align-self:flex-end}:host([label-align=top]) [part~=label],:host([label-align=bottom]) [part~=label]{align-self:center}[part~=hidden]{display:none}`;\n "]}
@@ -96,7 +96,7 @@ export default class IgcRadioComponent extends FormAssociatedCheckboxRequiredMix
96
96
  addThemingController(this, all);
97
97
  addKeybindings(this, {
98
98
  skip: () => this.disabled,
99
- bindingDefaults: { preventDefault: true, triggers: ['keydownRepeat'] },
99
+ bindingDefaults: { preventDefault: true, repeat: true },
100
100
  })
101
101
  .set(arrowLeft, () => this._navigate(isLTR(this) ? -1 : 1))
102
102
  .set(arrowRight, () => this._navigate(isLTR(this) ? 1 : -1))