@m3e/web 2.0.0 → 2.0.1

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 (147) hide show
  1. package/dist/all.js +1161 -941
  2. package/dist/all.js.map +1 -1
  3. package/dist/all.min.js +59 -59
  4. package/dist/all.min.js.map +1 -1
  5. package/dist/bottom-sheet.js +1 -1
  6. package/dist/bottom-sheet.js.map +1 -1
  7. package/dist/bottom-sheet.min.js +1 -1
  8. package/dist/bottom-sheet.min.js.map +1 -1
  9. package/dist/button.js +387 -317
  10. package/dist/button.js.map +1 -1
  11. package/dist/button.min.js +2 -2
  12. package/dist/button.min.js.map +1 -1
  13. package/dist/card.js +73 -73
  14. package/dist/card.js.map +1 -1
  15. package/dist/card.min.js +5 -5
  16. package/dist/card.min.js.map +1 -1
  17. package/dist/checkbox.js +5 -1
  18. package/dist/checkbox.js.map +1 -1
  19. package/dist/checkbox.min.js +1 -1
  20. package/dist/checkbox.min.js.map +1 -1
  21. package/dist/core-a11y.js.map +1 -1
  22. package/dist/core-a11y.min.js.map +1 -1
  23. package/dist/core-bidi.js.map +1 -1
  24. package/dist/core-bidi.min.js.map +1 -1
  25. package/dist/core-layout.js.map +1 -1
  26. package/dist/core-layout.min.js.map +1 -1
  27. package/dist/core-platform.js.map +1 -1
  28. package/dist/core-platform.min.js.map +1 -1
  29. package/dist/core.js +42 -32
  30. package/dist/core.js.map +1 -1
  31. package/dist/core.min.js +2 -2
  32. package/dist/core.min.js.map +1 -1
  33. package/dist/css-custom-data.json +1356 -511
  34. package/dist/custom-elements.json +9890 -9217
  35. package/dist/fab.js +299 -258
  36. package/dist/fab.js.map +1 -1
  37. package/dist/fab.min.js +6 -6
  38. package/dist/fab.min.js.map +1 -1
  39. package/dist/form-field.js +10 -6
  40. package/dist/form-field.js.map +1 -1
  41. package/dist/form-field.min.js +4 -4
  42. package/dist/form-field.min.js.map +1 -1
  43. package/dist/html-custom-data.json +152 -152
  44. package/dist/icon-button.js +288 -232
  45. package/dist/icon-button.js.map +1 -1
  46. package/dist/icon-button.min.js +5 -5
  47. package/dist/icon-button.min.js.map +1 -1
  48. package/dist/list.js +18 -3
  49. package/dist/list.js.map +1 -1
  50. package/dist/list.min.js +8 -8
  51. package/dist/list.min.js.map +1 -1
  52. package/dist/menu.js +23 -12
  53. package/dist/menu.js.map +1 -1
  54. package/dist/menu.min.js +7 -7
  55. package/dist/menu.min.js.map +1 -1
  56. package/dist/nav-bar.js +1 -1
  57. package/dist/nav-bar.js.map +1 -1
  58. package/dist/nav-bar.min.js +1 -1
  59. package/dist/nav-bar.min.js.map +1 -1
  60. package/dist/nav-rail.js +1 -1
  61. package/dist/nav-rail.js.map +1 -1
  62. package/dist/nav-rail.min.js +4 -4
  63. package/dist/nav-rail.min.js.map +1 -1
  64. package/dist/option.js +1 -1
  65. package/dist/option.js.map +1 -1
  66. package/dist/option.min.js +1 -1
  67. package/dist/option.min.js.map +1 -1
  68. package/dist/radio-group.js +4 -0
  69. package/dist/radio-group.js.map +1 -1
  70. package/dist/radio-group.min.js +1 -1
  71. package/dist/radio-group.min.js.map +1 -1
  72. package/dist/slider.js +2 -2
  73. package/dist/slider.js.map +1 -1
  74. package/dist/slider.min.js +3 -3
  75. package/dist/slider.min.js.map +1 -1
  76. package/dist/snackbar.js.map +1 -1
  77. package/dist/snackbar.min.js.map +1 -1
  78. package/dist/split-button.js +1 -0
  79. package/dist/split-button.js.map +1 -1
  80. package/dist/split-button.min.js +1 -1
  81. package/dist/split-button.min.js.map +1 -1
  82. package/dist/src/bottom-sheet/BottomSheetElement.d.ts.map +1 -1
  83. package/dist/src/button/ButtonElement.d.ts +70 -0
  84. package/dist/src/button/ButtonElement.d.ts.map +1 -1
  85. package/dist/src/button/styles/ButtonSizeToken.d.ts.map +1 -1
  86. package/dist/src/button/styles/ButtonVariantToken.d.ts.map +1 -1
  87. package/dist/src/card/styles/CardVariantToken.d.ts.map +1 -1
  88. package/dist/src/checkbox/CheckboxElement.d.ts.map +1 -1
  89. package/dist/src/core/a11y/AriaDescriber.d.ts +3 -1
  90. package/dist/src/core/a11y/AriaDescriber.d.ts.map +1 -1
  91. package/dist/src/core/a11y/InteractivityChecker.d.ts +3 -1
  92. package/dist/src/core/a11y/InteractivityChecker.d.ts.map +1 -1
  93. package/dist/src/core/a11y/LiveAnnouncer.d.ts +3 -1
  94. package/dist/src/core/a11y/LiveAnnouncer.d.ts.map +1 -1
  95. package/dist/src/core/bidi/Directionality.d.ts +3 -1
  96. package/dist/src/core/bidi/Directionality.d.ts.map +1 -1
  97. package/dist/src/core/layout/BreakpointObserver.d.ts +3 -1
  98. package/dist/src/core/layout/BreakpointObserver.d.ts.map +1 -1
  99. package/dist/src/core/platform/Platform.d.ts +3 -1
  100. package/dist/src/core/platform/Platform.d.ts.map +1 -1
  101. package/dist/src/core/shared/controllers/PressedController.d.ts.map +1 -1
  102. package/dist/src/core/shared/primitives/FocusRingElement.d.ts +2 -0
  103. package/dist/src/core/shared/primitives/FocusRingElement.d.ts.map +1 -1
  104. package/dist/src/core/shared/primitives/FocusRingToken.d.ts +4 -0
  105. package/dist/src/core/shared/primitives/FocusRingToken.d.ts.map +1 -1
  106. package/dist/src/core/shared/primitives/ScrollContainerElement.d.ts.map +1 -1
  107. package/dist/src/fab/FabElement.d.ts +41 -0
  108. package/dist/src/fab/FabElement.d.ts.map +1 -1
  109. package/dist/src/fab/styles/FabSizeToken.d.ts.map +1 -1
  110. package/dist/src/fab/styles/FabVariantToken.d.ts.map +1 -1
  111. package/dist/src/form-field/FormFieldElement.d.ts.map +1 -1
  112. package/dist/src/icon-button/IconButtonElement.d.ts +56 -0
  113. package/dist/src/icon-button/IconButtonElement.d.ts.map +1 -1
  114. package/dist/src/icon-button/styles/IconButtonSizeToken.d.ts.map +1 -1
  115. package/dist/src/icon-button/styles/IconButtonVariantToken.d.ts.map +1 -1
  116. package/dist/src/list/ListItemButtonElement.d.ts +1 -0
  117. package/dist/src/list/ListItemButtonElement.d.ts.map +1 -1
  118. package/dist/src/list/ListItemElement.d.ts.map +1 -1
  119. package/dist/src/list/ListOptionElement.d.ts +1 -0
  120. package/dist/src/list/ListOptionElement.d.ts.map +1 -1
  121. package/dist/src/menu/MenuElement.d.ts +2 -0
  122. package/dist/src/menu/MenuElement.d.ts.map +1 -1
  123. package/dist/src/menu/MenuItemElementBase.d.ts +1 -0
  124. package/dist/src/menu/MenuItemElementBase.d.ts.map +1 -1
  125. package/dist/src/nav-rail/NavRailElement.d.ts.map +1 -1
  126. package/dist/src/option/OptionPanelElement.d.ts.map +1 -1
  127. package/dist/src/radio-group/RadioElement.d.ts.map +1 -1
  128. package/dist/src/slider/SliderThumbElement.d.ts.map +1 -1
  129. package/dist/src/snackbar/Snackbar.d.ts +3 -1
  130. package/dist/src/snackbar/Snackbar.d.ts.map +1 -1
  131. package/dist/src/split-button/SplitButtonElement.d.ts.map +1 -1
  132. package/dist/src/switch/SwitchElement.d.ts.map +1 -1
  133. package/dist/src/tabs/TabElement.d.ts.map +1 -1
  134. package/dist/src/tabs/TabsElement.d.ts.map +1 -1
  135. package/dist/switch.js +5 -1
  136. package/dist/switch.js.map +1 -1
  137. package/dist/switch.min.js +2 -2
  138. package/dist/switch.min.js.map +1 -1
  139. package/dist/tabs.js +2 -2
  140. package/dist/tabs.js.map +1 -1
  141. package/dist/tabs.min.js +3 -3
  142. package/dist/tabs.min.js.map +1 -1
  143. package/dist/tooltip.js +1 -1
  144. package/dist/tooltip.js.map +1 -1
  145. package/dist/tooltip.min.js +1 -1
  146. package/dist/tooltip.min.js.map +1 -1
  147. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"bottom-sheet.js","sources":["../../../node_modules/tslib/tslib.es6.js","../../../node_modules/@lit/reactive-element/decorators/custom-element.js","../../../node_modules/@lit/reactive-element/css-tag.js","../../../node_modules/@lit/reactive-element/reactive-element.js","../../../node_modules/@lit/reactive-element/decorators/property.js","../../src/bottom-sheet/BottomSheetActionElement.ts","../../src/bottom-sheet/BottomSheetElement.ts","../../src/bottom-sheet/BottomSheetTriggerElement.ts"],"sourcesContent":["/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol, Iterator */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === \"function\" ? Iterator : Object).prototype);\r\n return g.next = verb(0), g[\"throw\"] = verb(1), g[\"return\"] = verb(2), typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = Object.create((typeof AsyncIterator === \"function\" ? AsyncIterator : Object).prototype), verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\r\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nvar ownKeys = function(o) {\r\n ownKeys = Object.getOwnPropertyNames || function (o) {\r\n var ar = [];\r\n for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;\r\n return ar;\r\n };\r\n return ownKeys(o);\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== \"default\") __createBinding(result, mod, k[i]);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport function __addDisposableResource(env, value, async) {\r\n if (value !== null && value !== void 0) {\r\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\r\n var dispose, inner;\r\n if (async) {\r\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\r\n dispose = value[Symbol.asyncDispose];\r\n }\r\n if (dispose === void 0) {\r\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\r\n dispose = value[Symbol.dispose];\r\n if (async) inner = dispose;\r\n }\r\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\r\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\r\n env.stack.push({ value: value, dispose: dispose, async: async });\r\n }\r\n else if (async) {\r\n env.stack.push({ async: true });\r\n }\r\n return value;\r\n\r\n}\r\n\r\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\r\n\r\nexport function __disposeResources(env) {\r\n function fail(e) {\r\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\r\n env.hasError = true;\r\n }\r\n var r, s = 0;\r\n function next() {\r\n while (r = env.stack.pop()) {\r\n try {\r\n if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);\r\n if (r.dispose) {\r\n var result = r.dispose.call(r.value);\r\n if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\r\n }\r\n else s |= 1;\r\n }\r\n catch (e) {\r\n fail(e);\r\n }\r\n }\r\n if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();\r\n if (env.hasError) throw env.error;\r\n }\r\n return next();\r\n}\r\n\r\nexport function __rewriteRelativeImportExtension(path, preserveJsx) {\r\n if (typeof path === \"string\" && /^\\.\\.?\\//.test(path)) {\r\n return path.replace(/\\.(tsx)$|((?:\\.d)?)((?:\\.[^./]+?)?)\\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) {\r\n return tsx ? preserveJsx ? \".jsx\" : \".js\" : d && (!ext || !cm) ? m : (d + ext + \".\" + cm.toLowerCase() + \"js\");\r\n });\r\n }\r\n return path;\r\n}\r\n\r\nexport default {\r\n __extends: __extends,\r\n __assign: __assign,\r\n __rest: __rest,\r\n __decorate: __decorate,\r\n __param: __param,\r\n __esDecorate: __esDecorate,\r\n __runInitializers: __runInitializers,\r\n __propKey: __propKey,\r\n __setFunctionName: __setFunctionName,\r\n __metadata: __metadata,\r\n __awaiter: __awaiter,\r\n __generator: __generator,\r\n __createBinding: __createBinding,\r\n __exportStar: __exportStar,\r\n __values: __values,\r\n __read: __read,\r\n __spread: __spread,\r\n __spreadArrays: __spreadArrays,\r\n __spreadArray: __spreadArray,\r\n __await: __await,\r\n __asyncGenerator: __asyncGenerator,\r\n __asyncDelegator: __asyncDelegator,\r\n __asyncValues: __asyncValues,\r\n __makeTemplateObject: __makeTemplateObject,\r\n __importStar: __importStar,\r\n __importDefault: __importDefault,\r\n __classPrivateFieldGet: __classPrivateFieldGet,\r\n __classPrivateFieldSet: __classPrivateFieldSet,\r\n __classPrivateFieldIn: __classPrivateFieldIn,\r\n __addDisposableResource: __addDisposableResource,\r\n __disposeResources: __disposeResources,\r\n __rewriteRelativeImportExtension: __rewriteRelativeImportExtension,\r\n};\r\n","/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nconst t=t=>(e,o)=>{void 0!==o?o.addInitializer((()=>{customElements.define(t,e)})):customElements.define(t,e)};export{t as customElement};\n//# sourceMappingURL=custom-element.js.map\n","/**\n * @license\n * Copyright 2019 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nconst t=globalThis,e=t.ShadowRoot&&(void 0===t.ShadyCSS||t.ShadyCSS.nativeShadow)&&\"adoptedStyleSheets\"in Document.prototype&&\"replace\"in CSSStyleSheet.prototype,s=Symbol(),o=new WeakMap;class n{constructor(t,e,o){if(this._$cssResult$=!0,o!==s)throw Error(\"CSSResult is not constructable. Use `unsafeCSS` or `css` instead.\");this.cssText=t,this.t=e}get styleSheet(){let t=this.o;const s=this.t;if(e&&void 0===t){const e=void 0!==s&&1===s.length;e&&(t=o.get(s)),void 0===t&&((this.o=t=new CSSStyleSheet).replaceSync(this.cssText),e&&o.set(s,t))}return t}toString(){return this.cssText}}const r=t=>new n(\"string\"==typeof t?t:t+\"\",void 0,s),i=(t,...e)=>{const o=1===t.length?t[0]:e.reduce(((e,s,o)=>e+(t=>{if(!0===t._$cssResult$)return t.cssText;if(\"number\"==typeof t)return t;throw Error(\"Value passed to 'css' function must be a 'css' function result: \"+t+\". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.\")})(s)+t[o+1]),t[0]);return new n(o,t,s)},S=(s,o)=>{if(e)s.adoptedStyleSheets=o.map((t=>t instanceof CSSStyleSheet?t:t.styleSheet));else for(const e of o){const o=document.createElement(\"style\"),n=t.litNonce;void 0!==n&&o.setAttribute(\"nonce\",n),o.textContent=e.cssText,s.appendChild(o)}},c=e?t=>t:t=>t instanceof CSSStyleSheet?(t=>{let e=\"\";for(const s of t.cssRules)e+=s.cssText;return r(e)})(t):t;export{n as CSSResult,S as adoptStyles,i as css,c as getCompatibleStyle,e as supportsAdoptingStyleSheets,r as unsafeCSS};\n//# sourceMappingURL=css-tag.js.map\n","import{getCompatibleStyle as t,adoptStyles as s}from\"./css-tag.js\";export{CSSResult,css,supportsAdoptingStyleSheets,unsafeCSS}from\"./css-tag.js\";\n/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */const{is:i,defineProperty:e,getOwnPropertyDescriptor:h,getOwnPropertyNames:r,getOwnPropertySymbols:o,getPrototypeOf:n}=Object,a=globalThis,c=a.trustedTypes,l=c?c.emptyScript:\"\",p=a.reactiveElementPolyfillSupport,d=(t,s)=>t,u={toAttribute(t,s){switch(s){case Boolean:t=t?l:null;break;case Object:case Array:t=null==t?t:JSON.stringify(t)}return t},fromAttribute(t,s){let i=t;switch(s){case Boolean:i=null!==t;break;case Number:i=null===t?null:Number(t);break;case Object:case Array:try{i=JSON.parse(t)}catch(t){i=null}}return i}},f=(t,s)=>!i(t,s),b={attribute:!0,type:String,converter:u,reflect:!1,useDefault:!1,hasChanged:f};Symbol.metadata??=Symbol(\"metadata\"),a.litPropertyMetadata??=new WeakMap;class y extends HTMLElement{static addInitializer(t){this._$Ei(),(this.l??=[]).push(t)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(t,s=b){if(s.state&&(s.attribute=!1),this._$Ei(),this.prototype.hasOwnProperty(t)&&((s=Object.create(s)).wrapped=!0),this.elementProperties.set(t,s),!s.noAccessor){const i=Symbol(),h=this.getPropertyDescriptor(t,i,s);void 0!==h&&e(this.prototype,t,h)}}static getPropertyDescriptor(t,s,i){const{get:e,set:r}=h(this.prototype,t)??{get(){return this[s]},set(t){this[s]=t}};return{get:e,set(s){const h=e?.call(this);r?.call(this,s),this.requestUpdate(t,h,i)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)??b}static _$Ei(){if(this.hasOwnProperty(d(\"elementProperties\")))return;const t=n(this);t.finalize(),void 0!==t.l&&(this.l=[...t.l]),this.elementProperties=new Map(t.elementProperties)}static finalize(){if(this.hasOwnProperty(d(\"finalized\")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(d(\"properties\"))){const t=this.properties,s=[...r(t),...o(t)];for(const i of s)this.createProperty(i,t[i])}const t=this[Symbol.metadata];if(null!==t){const s=litPropertyMetadata.get(t);if(void 0!==s)for(const[t,i]of s)this.elementProperties.set(t,i)}this._$Eh=new Map;for(const[t,s]of this.elementProperties){const i=this._$Eu(t,s);void 0!==i&&this._$Eh.set(i,t)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(s){const i=[];if(Array.isArray(s)){const e=new Set(s.flat(1/0).reverse());for(const s of e)i.unshift(t(s))}else void 0!==s&&i.push(t(s));return i}static _$Eu(t,s){const i=s.attribute;return!1===i?void 0:\"string\"==typeof i?i:\"string\"==typeof t?t.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){this._$ES=new Promise((t=>this.enableUpdating=t)),this._$AL=new Map,this._$E_(),this.requestUpdate(),this.constructor.l?.forEach((t=>t(this)))}addController(t){(this._$EO??=new Set).add(t),void 0!==this.renderRoot&&this.isConnected&&t.hostConnected?.()}removeController(t){this._$EO?.delete(t)}_$E_(){const t=new Map,s=this.constructor.elementProperties;for(const i of s.keys())this.hasOwnProperty(i)&&(t.set(i,this[i]),delete this[i]);t.size>0&&(this._$Ep=t)}createRenderRoot(){const t=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return s(t,this.constructor.elementStyles),t}connectedCallback(){this.renderRoot??=this.createRenderRoot(),this.enableUpdating(!0),this._$EO?.forEach((t=>t.hostConnected?.()))}enableUpdating(t){}disconnectedCallback(){this._$EO?.forEach((t=>t.hostDisconnected?.()))}attributeChangedCallback(t,s,i){this._$AK(t,i)}_$ET(t,s){const i=this.constructor.elementProperties.get(t),e=this.constructor._$Eu(t,i);if(void 0!==e&&!0===i.reflect){const h=(void 0!==i.converter?.toAttribute?i.converter:u).toAttribute(s,i.type);this._$Em=t,null==h?this.removeAttribute(e):this.setAttribute(e,h),this._$Em=null}}_$AK(t,s){const i=this.constructor,e=i._$Eh.get(t);if(void 0!==e&&this._$Em!==e){const t=i.getPropertyOptions(e),h=\"function\"==typeof t.converter?{fromAttribute:t.converter}:void 0!==t.converter?.fromAttribute?t.converter:u;this._$Em=e;const r=h.fromAttribute(s,t.type);this[e]=r??this._$Ej?.get(e)??r,this._$Em=null}}requestUpdate(t,s,i){if(void 0!==t){const e=this.constructor,h=this[t];if(i??=e.getPropertyOptions(t),!((i.hasChanged??f)(h,s)||i.useDefault&&i.reflect&&h===this._$Ej?.get(t)&&!this.hasAttribute(e._$Eu(t,i))))return;this.C(t,s,i)}!1===this.isUpdatePending&&(this._$ES=this._$EP())}C(t,s,{useDefault:i,reflect:e,wrapped:h},r){i&&!(this._$Ej??=new Map).has(t)&&(this._$Ej.set(t,r??s??this[t]),!0!==h||void 0!==r)||(this._$AL.has(t)||(this.hasUpdated||i||(s=void 0),this._$AL.set(t,s)),!0===e&&this._$Em!==t&&(this._$Eq??=new Set).add(t))}async _$EP(){this.isUpdatePending=!0;try{await this._$ES}catch(t){Promise.reject(t)}const t=this.scheduleUpdate();return null!=t&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??=this.createRenderRoot(),this._$Ep){for(const[t,s]of this._$Ep)this[t]=s;this._$Ep=void 0}const t=this.constructor.elementProperties;if(t.size>0)for(const[s,i]of t){const{wrapped:t}=i,e=this[s];!0!==t||this._$AL.has(s)||void 0===e||this.C(s,void 0,i,e)}}let t=!1;const s=this._$AL;try{t=this.shouldUpdate(s),t?(this.willUpdate(s),this._$EO?.forEach((t=>t.hostUpdate?.())),this.update(s)):this._$EM()}catch(s){throw t=!1,this._$EM(),s}t&&this._$AE(s)}willUpdate(t){}_$AE(t){this._$EO?.forEach((t=>t.hostUpdated?.())),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$EM(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(t){return!0}update(t){this._$Eq&&=this._$Eq.forEach((t=>this._$ET(t,this[t]))),this._$EM()}updated(t){}firstUpdated(t){}}y.elementStyles=[],y.shadowRootOptions={mode:\"open\"},y[d(\"elementProperties\")]=new Map,y[d(\"finalized\")]=new Map,p?.({ReactiveElement:y}),(a.reactiveElementVersions??=[]).push(\"2.1.1\");export{y as ReactiveElement,s as adoptStyles,u as defaultConverter,t as getCompatibleStyle,f as notEqual};\n//# sourceMappingURL=reactive-element.js.map\n","import{defaultConverter as t,notEqual as e}from\"../reactive-element.js\";\n/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */const o={attribute:!0,type:String,converter:t,reflect:!1,hasChanged:e},r=(t=o,e,r)=>{const{kind:n,metadata:i}=r;let s=globalThis.litPropertyMetadata.get(i);if(void 0===s&&globalThis.litPropertyMetadata.set(i,s=new Map),\"setter\"===n&&((t=Object.create(t)).wrapped=!0),s.set(r.name,t),\"accessor\"===n){const{name:o}=r;return{set(r){const n=e.get.call(this);e.set.call(this,r),this.requestUpdate(o,n,t)},init(e){return void 0!==e&&this.C(o,void 0,t,e),e}}}if(\"setter\"===n){const{name:o}=r;return function(r){const n=this[o];e.call(this,r),this.requestUpdate(o,n,t)}}throw Error(\"Unsupported decorator location: \"+n)};function n(t){return(e,o)=>\"object\"==typeof o?r(t,e,o):((t,e,o)=>{const r=e.hasOwnProperty(o);return e.constructor.createProperty(o,t),r?Object.getOwnPropertyDescriptor(e,o):void 0})(t,e,o)}export{n as property,r as standardProperty};\n//# sourceMappingURL=property.js.map\n","import { customElement } from \"lit/decorators.js\";\r\n\r\nimport { ActionElementBase } from \"@m3e/web/core\";\r\n\r\n/**\r\n * An element, nested within a clickable element, used to close a parenting bottom sheet.\r\n * @tag m3e-bottom-sheet-action\r\n *\r\n * @slot - Renders the content of the action.\r\n */\r\n@customElement(\"m3e-bottom-sheet-action\")\r\nexport class M3eBottomSheetActionElement extends ActionElementBase {\r\n /** @inheritdoc */\r\n protected override _onClick(): void {\r\n this.closest(\"m3e-bottom-sheet\")?.hide();\r\n }\r\n}\r\n\r\ndeclare global {\r\n interface HTMLElementTagNameMap {\r\n \"m3e-bottom-sheet-action\": M3eBottomSheetActionElement;\r\n }\r\n}\r\n","/* eslint-disable @typescript-eslint/no-unsafe-declaration-merging */\r\nimport { css, CSSResultGroup, html, LitElement, nothing, PropertyValues, unsafeCSS } from \"lit\";\r\nimport { customElement, property } from \"lit/decorators.js\";\r\n\r\nimport {\r\n computeCssSize,\r\n DesignToken,\r\n EventAttribute,\r\n focusWhenReady,\r\n hasAssignedNodes,\r\n prefersReducedMotion,\r\n ResizeController,\r\n ScrollLockController,\r\n spaceSeparatedStringConverter,\r\n VelocityTracker,\r\n} from \"@m3e/web/core\";\r\n\r\nimport { isModifierAllowed, M3eInteractivityChecker } from \"@m3e/web/core/a11y\";\r\nimport \"@m3e/web/core/a11y\";\r\n\r\n/**\r\n * A sheet used to show secondary content anchored to the bottom of the screen.\r\n *\r\n * @description\r\n * The `m3e-bottom-sheet` component implements a Material 3 bottom sheet with\r\n * gesture‑driven resizing, detent snapping, and adaptive motion. It behaves as\r\n * a heavy surface: transitions use non‑bouncy, decelerating motion.\r\n *\r\n * The sheet supports direct manipulation through vertical drag gestures.\r\n * Movement below an 8px threshold is ignored to ensure reliable tap‑to‑cycle\r\n * behavior on the handle. Once activated, dragging updates the sheet height\r\n * with friction near the minimum height to prevent abrupt collapse.\r\n *\r\n * When detents are defined, the sheet snaps to the nearest detent on release.\r\n * If hideable, downward gestures may dismiss the sheet using either velocity\r\n * or a small distance threshold below the collapsed detent. When no detents\r\n * are present, the sheet behaves as a simple open/hidden surface with a\r\n * bottom‑measured hide threshold.\r\n *\r\n * @example\r\n * The following example shows a modal bottom sheet with a drag handle,\r\n * three detents (`fit`, `half`, and `full`), and an action list. The sheet\r\n * is opened using a dedicated `m3e-bottom-sheet-trigger` associated by ID.\r\n * ```html\r\n * <m3e-button>\r\n * <m3e-bottom-sheet-trigger for=\"bottomSheet\">\r\n * Open Bottom sheet\r\n * </m3e-bottom-sheet-trigger>\r\n * </m3e-button>\r\n *\r\n * <m3e-bottom-sheet id=\"bottomSheet\" modal handle hideable detents=\"fit half full\">\r\n * <m3e-action-list>\r\n * <m3e-list-action autofocus>\r\n * <m3e-bottom-sheet-action>Google Keep</m3e-bottom-sheet-action>\r\n * <span slot=\"supporting-text\">Add to a note</span>\r\n * </m3e-list-action>\r\n * <m3e-list-action>\r\n * <m3e-bottom-sheet-action>Google Docs</m3e-bottom-sheet-action>\r\n * <span slot=\"supporting-text\">Embed in a document</span>\r\n * </m3e-list-action>\r\n * </m3e-action-list>\r\n * </m3e-bottom-sheet>\r\n * ```\r\n *\r\n * @tag m3e-bottom-sheet\r\n *\r\n * @slot - Renders the content of the sheet.\r\n * @slot header - Renders the header of the sheet.\r\n *\r\n * @attr detent - The zero‑based index of the detent the sheet should open to.\r\n * @attr detents - Detents (discrete height states) the sheet can snap to.\r\n * @attr handle - Whether to display a drag handle and enable the top region of the sheet as a gesture surface for dragging between detents.\r\n * @attr handle-label - The accessible label given to the drag handle.\r\n * @attr hideable - Whether the bottom sheet can hide when its swiped down.\r\n * @attr hide-friction - The friction coefficient to hide the sheet, or set it to the next closest expanded detent.\r\n * @attr modal - Whether the bottom sheet behaves as modal.\r\n * @attr open - Whether the bottom sheet is open.\r\n *\r\n * @fires opening - Emitted when the sheet begins to open.\r\n * @fires opened - Emitted when the sheet has opened.\r\n * @fires cancel - Emitted when the sheet is cancelled.\r\n * @fires closing - Emitted when the sheet begins to close.\r\n * @fires closed - Emitted when the sheet has closed.\r\n *\r\n * @cssprop --m3e-bottom-sheet-width - The width of the sheet.\r\n * @cssprop --m3e-bottom-sheet-max-width - The maximum width of the sheet.\r\n * @cssprop --m3e-bottom-sheet-container-color - The background color of the sheet container.\r\n * @cssprop --m3e-bottom-sheet-elevation - The elevation level when not modal.\r\n * @cssprop --m3e-bottom-sheet-modal-elevation - The elevation level when modal.\r\n * @cssprop --m3e-bottom-sheet-full-elevation - The elevation level when full height.\r\n * @cssprop --m3e-bottom-sheet-z-index - The z-index of the non-modal sheet.\r\n * @cssprop --m3e-bottom-sheet-minimized-container-shape - The border radius when minimized.\r\n * @cssprop --m3e-bottom-sheet-container-shape - The border radius of the sheet container.\r\n * @cssprop --m3e-bottom-sheet-full-container-shape - The border radius when full height.\r\n * @cssprop --m3e-bottom-sheet-scrim-color - The color of the scrim overlay.\r\n * @cssprop --m3e-bottom-sheet-scrim-opacity - The opacity of the scrim overlay.\r\n * @cssprop --m3e-bottom-sheet-peek-height - The visible height when minimized.\r\n * @cssprop --m3e-bottom-sheet-compact-top-space - The top space in compact mode.\r\n * @cssprop --m3e-bottom-sheet-top-space - The top space in standard mode.\r\n * @cssprop --m3e-bottom-sheet-padding-block - The vertical padding.\r\n * @cssprop --m3e-bottom-sheet-padding-inline - The horizontal padding.\r\n * @cssprop --m3e-bottom-sheet-handle-container-height - The height of the drag handle container.\r\n * @cssprop --m3e-bottom-sheet-handle-width - The width of the drag handle.\r\n * @cssprop --m3e-bottom-sheet-handle-height - The height of the drag handle.\r\n * @cssprop --m3e-bottom-sheet-handle-shape - The border radius of the handle.\r\n * @cssprop --m3e-bottom-sheet-handle-color - The color of the drag handle.\r\n * @cssprop --m3e-bottom-sheet-handle-focus-ring-offset - The offset of the focus ring around the handle.\r\n * @cssprop --m3e-bottom-sheet-color - The foreground (text) color of the sheet.\r\n * @cssprop --m3e-bottom-sheet-content-font-size - Font size for the sheet content.\r\n * @cssprop --m3e-bottom-sheet-content-font-weight - Font weight for the sheet content.\r\n * @cssprop --m3e-bottom-sheet-content-line-height - Line height for the sheet content.\r\n * @cssprop --m3e-bottom-sheet-content-tracking - Letter spacing (tracking) for the sheet content.\r\n * @cssprop --m3e-bottom-sheet-header-font-size - Font size for the sheet header.\r\n * @cssprop --m3e-bottom-sheet-header-font-weight - Font weight for the sheet header.\r\n * @cssprop --m3e-bottom-sheet-header-line-height - Line height for the sheet header.\r\n * @cssprop --m3e-bottom-sheet-header-tracking - Letter spacing (tracking) for the sheet header.\r\n */\r\n@customElement(\"m3e-bottom-sheet\")\r\nexport class M3eBottomSheetElement extends EventAttribute(\r\n LitElement,\r\n \"opening\",\r\n \"opened\",\r\n \"cancel\",\r\n \"closing\",\r\n \"closed\",\r\n) {\r\n static {\r\n if (document) {\r\n const lightDomStyle = new CSSStyleSheet();\r\n lightDomStyle.replaceSync(\r\n css`\r\n @property --_bottom-sheet-height {\r\n syntax: \"<length>\";\r\n inherits: false;\r\n initial-value: 50vh;\r\n }\r\n m3e-bottom-sheet > [slot=\"header\"] {\r\n margin-block-end: var(--m3e-bottom-sheet-padding-block, 0.5rem);\r\n margin-inline: var(--m3e-bottom-sheet-padding-inline, 1rem);\r\n }\r\n `.toString(),\r\n );\r\n document.adoptedStyleSheets.push(lightDomStyle);\r\n }\r\n }\r\n\r\n /** The styles of the element. */\r\n static override styles: CSSResultGroup = css`\r\n :host {\r\n display: block;\r\n position: fixed;\r\n left: 50%;\r\n top: calc(100vh - var(--_bottom-sheet-height));\r\n margin: 0;\r\n padding: 0;\r\n outline: none;\r\n overflow: hidden;\r\n border: none;\r\n box-sizing: border-box;\r\n width: var(--m3e-bottom-sheet-width, 100%);\r\n max-width: var(--m3e-bottom-sheet-max-width, 40rem);\r\n height: var(--_bottom-sheet-height);\r\n color: var(--m3e-bottom-sheet-color, ${DesignToken.color.onSurface});\r\n background-color: var(--m3e-bottom-sheet-container-color, ${DesignToken.color.surfaceContainerLow});\r\n transition: ${unsafeCSS(\r\n `transform ${DesignToken.motion.duration.medium2} ${DesignToken.motion.easing.standardDecelerate},\r\n border-radius ${DesignToken.motion.duration.medium2} ${DesignToken.motion.easing.standard}`,\r\n )};\r\n }\r\n :host(:not([modal]):not(.-full)) .elevation {\r\n --m3e-elevation-level: var(--m3e-bottom-sheet-elevation, ${DesignToken.elevation.level1});\r\n }\r\n :host([modal]:not(.-full)) .elevation {\r\n --m3e-elevation-level: var(--m3e-bottom-sheet-modal-elevation, ${DesignToken.elevation.level1});\r\n }\r\n :host(.-full) .elevation {\r\n --m3e-elevation-level: var(--m3e-bottom-sheet-full-elevation, ${DesignToken.elevation.level1});\r\n }\r\n :host(:not([modal])) {\r\n z-index: var(--m3e-bottom-sheet-z-index, 10);\r\n }\r\n :host(:not([modal]):not([open])),\r\n :host([modal]:not(:popover-open)) {\r\n border-radius: var(--m3e-bottom-sheet-minimized-container-shape, ${DesignToken.shape.corner.none});\r\n transform: translateX(-50%) translateY(100%);\r\n }\r\n :host(:not([modal])[open]:not(.-full)),\r\n :host([modal]:not(.-full):popover-open) {\r\n border-radius: var(--m3e-bottom-sheet-container-shape, ${DesignToken.shape.corner.extraLargeTop});\r\n }\r\n :host(:not([modal])[open].-full),\r\n :host([modal].-full:popover-open) {\r\n border-radius: var(--m3e-bottom-sheet-full-container-shape, ${DesignToken.shape.corner.extraLargeTop});\r\n }\r\n :host(:not([modal])[open]),\r\n :host([modal]:popover-open) {\r\n transform: translateX(-50%) translateY(0);\r\n }\r\n :host([modal])::backdrop {\r\n transition: ${unsafeCSS(\r\n `background-color ${DesignToken.motion.duration.short3} ${DesignToken.motion.easing.standard}, \r\n overlay ${DesignToken.motion.duration.short3} ${DesignToken.motion.easing.standard} allow-discrete,\r\n visibility ${DesignToken.motion.duration.short3} ${DesignToken.motion.easing.standard} allow-discrete`,\r\n )};\r\n }\r\n :host([modal]:popover-open)::backdrop {\r\n background-color: color-mix(\r\n in srgb,\r\n var(--m3e-bottom-sheet-scrim-color, ${DesignToken.color.scrim}) var(--m3e-bottom-sheet-scrim-opacity, 32%),\r\n transparent\r\n );\r\n transition: ${unsafeCSS(\r\n `background-color ${DesignToken.motion.duration.long2} ${DesignToken.motion.easing.standard}, \r\n overlay ${DesignToken.motion.duration.long2} ${DesignToken.motion.easing.standard} allow-discrete,\r\n visibility ${DesignToken.motion.duration.long2} ${DesignToken.motion.easing.standard} allow-discrete`,\r\n )};\r\n }\r\n @starting-style {\r\n :host([modal]:popover-open)::backdrop {\r\n background-color: color-mix(\r\n in srgb,\r\n var(--m3e-bottom-sheet-scrim-color, ${DesignToken.color.scrim}) 0%,\r\n transparent\r\n );\r\n }\r\n }\r\n .base {\r\n display: flex;\r\n border-radius: inherit;\r\n flex-direction: column;\r\n height: 100%;\r\n --_bottom-sheet-peek-height: var(--m3e-bottom-sheet-peek-height, 0);\r\n --_bottom-sheet-top-space: var(--m3e-bottom-sheet-compact-top-space, 4.5rem);\r\n }\r\n @media (max-height: 640px) {\r\n .base {\r\n --_bottom-sheet-top-space: var(--m3e-bottom-sheet-top-space, 3.5rem);\r\n }\r\n }\r\n .body {\r\n flex: 1 1 auto;\r\n overflow-y: auto;\r\n scrollbar-width: ${DesignToken.scrollbar.thinWidth};\r\n scrollbar-color: ${DesignToken.scrollbar.color};\r\n padding-block-end: var(--m3e-bottom-sheet-padding-block, 0.5rem);\r\n padding-inline: var(--m3e-bottom-sheet-padding-inline, 1rem);\r\n font-size: var(--m3e-bottom-sheet-content-font-size, ${DesignToken.typescale.standard.body.medium.fontSize});\r\n font-weight: var(\r\n --m3e-bottom-sheet-content-font-weight,\r\n ${DesignToken.typescale.standard.body.medium.fontWeight}\r\n );\r\n line-height: var(\r\n --m3e-bottom-sheet-content-line-height,\r\n ${DesignToken.typescale.standard.body.medium.lineHeight}\r\n );\r\n letter-spacing: var(--m3e-bottom-sheet-content-tracking, ${DesignToken.typescale.standard.body.medium.tracking});\r\n }\r\n .content {\r\n height: fit-content;\r\n }\r\n :host(:not([handle]):not(.-has-header)) .header {\r\n display: none;\r\n }\r\n :host(:not([handle]):not(.-has-header)) .body,\r\n .header {\r\n border-top-left-radius: inherit;\r\n border-top-right-radius: inherit;\r\n padding-block-start: var(--m3e-bottom-sheet-padding-block, 0.5rem);\r\n font-size: var(--m3e-bottom-sheet-header-font-size, ${DesignToken.typescale.standard.title.large.fontSize});\r\n font-weight: var(--m3e-bottom-sheet-header-font-weight, ${DesignToken.typescale.standard.title.large.fontWeight});\r\n line-height: var(--m3e-bottom-sheet-header-line-height, ${DesignToken.typescale.standard.title.large.lineHeight});\r\n letter-spacing: var(--m3e-bottom-sheet-header-tracking, ${DesignToken.typescale.standard.title.large.tracking});\r\n }\r\n .header {\r\n cursor: grab;\r\n user-select: none;\r\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\r\n box-sizing: border-box;\r\n flex: none;\r\n display: flex;\r\n flex-direction: column;\r\n min-height: 3rem;\r\n --m3e-app-bar-container-color: var(--m3e-bottom-sheet-container-color, ${DesignToken.color.surfaceContainerLow});\r\n }\r\n .handle-row {\r\n position: relative;\r\n flex: none;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n opacity: 1;\r\n visibility: visible;\r\n transition: ${unsafeCSS(\r\n `opacity ${DesignToken.motion.duration.short3} ${DesignToken.motion.easing.standard},\r\n padding ${DesignToken.motion.duration.short3} ${DesignToken.motion.easing.standard},\r\n height ${DesignToken.motion.duration.short3} ${DesignToken.motion.easing.standard},\r\n visibility ${DesignToken.motion.duration.short3} ${DesignToken.motion.easing.standard} allow-discrete`,\r\n )};\r\n height: var(--m3e-bottom-sheet-handle-container-height, 1.5rem);\r\n }\r\n .handle {\r\n position: relative;\r\n width: var(--m3e-bottom-sheet-handle-width, 2rem);\r\n height: var(--m3e-bottom-sheet-handle-height, 0.25rem);\r\n border-radius: var(--m3e-bottom-sheet-handle-shape, ${DesignToken.shape.corner.full});\r\n background-color: var(--m3e-bottom-sheet-handle-color, ${DesignToken.color.onSurfaceVariant});\r\n }\r\n .focus-ring {\r\n top: calc(0px - var(--m3e-bottom-sheet-handle-focus-ring-offset, 0.125rem));\r\n left: calc(0px - var(--m3e-bottom-sheet-handle-focus-ring-offset, 0.125rem));\r\n right: calc(0px - var(--m3e-bottom-sheet-handle-focus-ring-offset, 0.125rem));\r\n bottom: calc(0px - var(--m3e-bottom-sheet-handle-focus-ring-offset, 0.125rem));\r\n }\r\n .handle-touch {\r\n position: absolute;\r\n aspect-ratio: 1 / 1;\r\n height: 3rem;\r\n left: calc(0px - calc(calc(3rem - var(--m3e-bottom-sheet-handle-width, 2rem)) / 2));\r\n right: calc(0px - calc(calc(3rem - var(--m3e-bottom-sheet-handle-width, 2rem)) / 2));\r\n top: calc(\r\n 0px - calc(\r\n calc(3rem - var(--m3e-bottom-sheet-handle-container-height, 1.5rem)) - calc(\r\n var(--m3e-bottom-sheet-handle-height, 0.25rem) / 2\r\n )\r\n )\r\n );\r\n }\r\n @media (prefers-reduced-motion) {\r\n :host,\r\n :host([modal])::backdrop,\r\n :host([modal]:popover-open)::backdrop,\r\n .handle {\r\n transition: none;\r\n }\r\n }\r\n @media (forced-colors: active) {\r\n :host([modal])::backdrop,\r\n :host([modal]:popover-open)::backdrop {\r\n transition: none;\r\n }\r\n .base {\r\n border-style: solid;\r\n border-width: 1px;\r\n border-color: CanvasText;\r\n }\r\n .handle {\r\n background-color: ButtonText;\r\n }\r\n }\r\n `;\r\n\r\n /** @private */ private static __openSheet?: M3eBottomSheetElement;\r\n\r\n /** @private */ readonly #documentClickHandler = (e: Event) => this.#handleDocumentClick(e);\r\n /** @private */ readonly #documentKeyDownHandler = (e: KeyboardEvent) => this.#handleDocumentKeyDown(e);\r\n /** @private */ readonly #windowResizeHandler = () => this.#handleWindowResize();\r\n /** @private */ readonly #inerts = new Array<HTMLElement>();\r\n /** @private */ readonly #velocityTracker = new VelocityTracker();\r\n /** @private */ readonly #scrollLockController = new ScrollLockController(this);\r\n\r\n /** @private */\r\n readonly #resizeController = new ResizeController(this, {\r\n target: null,\r\n skipInitial: true,\r\n callback: (x) => this.#handleSectionResize(x),\r\n });\r\n\r\n /** @private */ #trigger: Element | null = null;\r\n /** @private */ #dragState?: { startY: number; startHeight: number; maxHeight: number; minHeight: number };\r\n /** @private */ #dragged = false;\r\n /** @private */ #activeDetent = 0;\r\n /** @private */ #requestDetent?: number;\r\n /** @private */ #cachedContentHeight = 0;\r\n /** @private */ #cachedHeaderHeight = 0;\r\n /** @private */ #snapAnimation?: Animation;\r\n\r\n /**\r\n * Whether the bottom sheet behaves as modal.\r\n * @default false\r\n */\r\n @property({ type: Boolean, reflect: true }) modal = false;\r\n\r\n /**\r\n * Whether the bottom sheet is open.\r\n * @default false\r\n */\r\n @property({ type: Boolean, reflect: true }) open = false;\r\n\r\n /**\r\n * Whether to display a drag handle and enable the top region of the sheet as a gesture\r\n * surface for dragging between detents.\r\n * @default false\r\n */\r\n @property({ type: Boolean }) handle = false;\r\n\r\n /**\r\n * The accessible label given to the drag handle.\r\n * @default \"Drag handle\"\r\n */\r\n @property({ attribute: \"handle-label\" }) handleLabel = \"Drag handle\";\r\n\r\n /**\r\n * Detents (discrete height states) the sheet can snap to.\r\n * @default []\r\n */\r\n @property({ attribute: \"detents\", converter: spaceSeparatedStringConverter }) detents: string[] = [];\r\n\r\n /**\r\n * The zero‑based index of the detent the sheet should open to.\r\n * @default 0\r\n */\r\n @property({ type: Number }) detent = 0;\r\n\r\n /**\r\n * Whether the bottom sheet can hide when its swiped down.\r\n * @default false\r\n */\r\n @property({ type: Boolean, reflect: true }) hideable = false;\r\n\r\n /**\r\n * The friction coefficient to hide the sheet, or set it to the next closest expanded detent.\r\n * @default 0.5\r\n */\r\n @property({ attribute: \"hide-friction\", type: Number }) hideFriction = 0.5;\r\n\r\n /**\r\n * Shows the sheet.\r\n * @param {number} detent The zero‑based index of the detent the sheet should open to.\r\n */\r\n show(detent: number = this.detent): void {\r\n if (!this.open) {\r\n this.#requestDetent = detent;\r\n this.open = true;\r\n } else if (detent !== undefined && this.#activeDetent !== detent) {\r\n this.#snapToDetent(detent);\r\n }\r\n }\r\n\r\n /** Hides the sheet. */\r\n hide(): void {\r\n this.open = false;\r\n }\r\n\r\n /**\r\n * Toggles the opened state of the sheet.\r\n * @param {number} detent The zero‑based index of the detent the sheet should open to.\r\n */\r\n toggle(detent?: number): void {\r\n if (this.open) {\r\n this.hide();\r\n } else {\r\n this.show(detent);\r\n }\r\n }\r\n\r\n /** Moves the sheet to the next detent. */\r\n cycle(): void {\r\n if (!this.open) {\r\n this.show();\r\n } else if (this.detents.length > 0) {\r\n if (this.#activeDetent < this.detents.length - 1) {\r\n this.#activeDetent++;\r\n this.#snapToDetent(this.#activeDetent);\r\n } else if (this.hideable) {\r\n this.hide();\r\n }\r\n } else {\r\n this.hide();\r\n }\r\n }\r\n\r\n /** @inheritdoc */\r\n protected override update(changedProperties: PropertyValues<this>): void {\r\n super.update(changedProperties);\r\n\r\n if (changedProperties.has(\"modal\")) {\r\n this.role = this.modal ? \"dialog\" : \"region\";\r\n this.ariaModal = this.modal ? \"true\" : null;\r\n this.popover = this.modal ? \"manual\" : null;\r\n }\r\n }\r\n\r\n /** @inheritdoc */\r\n override firstUpdated(_changedProperties: PropertyValues): void {\r\n super.firstUpdated(_changedProperties);\r\n\r\n const content = this.shadowRoot?.querySelector<HTMLElement>(\".content\");\r\n if (content) {\r\n this.#cachedContentHeight = content.clientHeight;\r\n this.#resizeController.observe(content);\r\n }\r\n\r\n const header = this.shadowRoot?.querySelector<HTMLElement>(\".header\");\r\n if (header) {\r\n this.#cachedHeaderHeight = header.clientHeight;\r\n this.#resizeController.observe(header);\r\n }\r\n }\r\n\r\n /** @inheritdoc */\r\n protected override updated(_changedProperties: PropertyValues): void {\r\n super.updated(_changedProperties);\r\n\r\n if (_changedProperties.has(\"open\")) {\r\n if (this.open) {\r\n if (!this.dispatchEvent(new Event(\"opening\", { cancelable: true }))) {\r\n this.open = false;\r\n return;\r\n }\r\n\r\n // Only one sheet can be open at a time.\r\n if (M3eBottomSheetElement.__openSheet !== this) {\r\n M3eBottomSheetElement.__openSheet?.hide();\r\n }\r\n M3eBottomSheetElement.__openSheet = this;\r\n\r\n this.inert = false;\r\n\r\n window.addEventListener(\"resize\", this.#windowResizeHandler);\r\n\r\n // If there are detents (regardless of handle) open to the requested, default (or first) detent.\r\n // Otherwise, open to fit unless its greater than half.\r\n\r\n if (this.detents.length > 0) {\r\n this.#activeDetent = Math.min(Math.max(0, this.#requestDetent ?? this.detent), this.detents.length - 1);\r\n this.#updateHeight(this.#computeDetentHeight(this.detents[this.#activeDetent]));\r\n } else {\r\n this.#updateHeight(Math.min(this.#computeDetentHeight(\"fit\"), this.#computeDetentHeight(\"half\")));\r\n }\r\n this.#requestDetent = undefined;\r\n } else {\r\n if (!this.dispatchEvent(new Event(\"closing\", { cancelable: true }))) {\r\n this.open = true;\r\n return;\r\n }\r\n\r\n // The following ensures layout is stable so that first tab isn't \"skipped\"\r\n requestAnimationFrame(() => (this.inert = true));\r\n\r\n window.removeEventListener(\"resize\", this.#windowResizeHandler);\r\n\r\n if (M3eBottomSheetElement.__openSheet === this) {\r\n M3eBottomSheetElement.__openSheet = undefined;\r\n }\r\n }\r\n\r\n if (this.modal) {\r\n if (this.open) {\r\n this.#trigger = document.activeElement;\r\n this.#applyInert();\r\n this.#scrollLockController.lock();\r\n this.showPopover();\r\n requestAnimationFrame(() => {\r\n document.addEventListener(\"click\", this.#documentClickHandler);\r\n document.addEventListener(\"keydown\", this.#documentKeyDownHandler);\r\n });\r\n\r\n let focusable: HTMLElement | null | undefined = this.querySelector<HTMLElement>(\"[autofocus]\");\r\n if (!focusable || !M3eInteractivityChecker.isFocusable(focusable)) {\r\n focusable = this.shadowRoot?.querySelector(\".handle\");\r\n }\r\n if (focusable) {\r\n focusWhenReady(focusable);\r\n }\r\n } else {\r\n this.#snapToHeight(0).then(() => {\r\n this.#restoreInert();\r\n this.#scrollLockController.unlock();\r\n document.removeEventListener(\"click\", this.#documentClickHandler);\r\n document.removeEventListener(\"keydown\", this.#documentKeyDownHandler);\r\n this.hidePopover();\r\n if (this.#trigger instanceof HTMLElement) {\r\n this.#trigger.focus();\r\n }\r\n this.#trigger = null;\r\n });\r\n }\r\n }\r\n\r\n this.dispatchEvent(new Event(this.open ? \"opened\" : \"closed\"));\r\n }\r\n }\r\n\r\n /** @inheritdoc */\r\n protected override render(): unknown {\r\n return html`<m3e-focus-trap ?disabled=\"${!this.modal}\">\r\n <div class=\"base\">\r\n <m3e-elevation class=\"elevation\"></m3e-elevation>\r\n <div\r\n class=\"header\"\r\n @pointerdown=\"${this.#handleHeaderPointerDown}\"\r\n @pointermove=\"${this.#handleHeaderPointerMove}\"\r\n @pointerup=\"${this.#handleHeaderPointerUp}\"\r\n >\r\n ${this.handle\r\n ? html`<div class=\"handle-row\">\r\n <div\r\n id=\"handle\"\r\n class=\"handle\"\r\n role=\"button\"\r\n aria-label=\"${this.handleLabel}\"\r\n tabindex=\"0\"\r\n @click=\"${this.#handleDragHandleClick}\"\r\n @keydown=\"${this.#handleDragHandleKeyDown}\"\r\n >\r\n <m3e-focus-ring class=\"focus-ring\" for=\"handle\"></m3e-focus-ring>\r\n <div class=\"handle-touch\" aria-hidden=\"true\"></div>\r\n </div>\r\n </div>`\r\n : nothing}\r\n <slot name=\"header\" @slotchange=\"${this.#handleHeaderSlotChange}\"></slot>\r\n </div>\r\n <div class=\"body\">\r\n <div class=\"content\">\r\n <slot></slot>\r\n </div>\r\n </div>\r\n </div>\r\n </m3e-focus-trap>`;\r\n }\r\n\r\n /** @private */\r\n #handleHeaderSlotChange(e: Event): void {\r\n this.classList.toggle(\"-has-header\", hasAssignedNodes(e.target as HTMLSlotElement));\r\n }\r\n\r\n /** @private */\r\n #handleHeaderPointerDown(e: PointerEvent): void {\r\n if (e.button === 2) return;\r\n\r\n if (e.target instanceof HTMLElement && M3eInteractivityChecker.isFocusable(e.target)) {\r\n return;\r\n }\r\n\r\n (<HTMLElement>e.target).setPointerCapture(e.pointerId);\r\n (<HTMLElement>e.target).style.cursor = \"grabbing\";\r\n\r\n this.#velocityTracker.reset();\r\n this.#velocityTracker.add(e.clientY);\r\n\r\n this.#dragState = {\r\n startY: e.clientY,\r\n startHeight: this.clientHeight,\r\n maxHeight: this.#computeMaxHeight(),\r\n minHeight: this.#computeMinHeight(),\r\n };\r\n this.#dragged = false;\r\n }\r\n\r\n /** @private */\r\n #handleHeaderPointerMove(e: PointerEvent): void {\r\n if (!this.#dragState) {\r\n return;\r\n }\r\n\r\n const minDragThreshold = 8;\r\n if (Math.abs(e.clientY - this.#dragState.startY) <= minDragThreshold) {\r\n // Ignore movement under threshold\r\n return;\r\n }\r\n\r\n (e.getCoalescedEvents?.() ?? [e]).forEach((x) => this.#velocityTracker.add(x.clientY, e.timeStamp));\r\n\r\n let newHeight = this.#dragState.startHeight - (e.clientY - this.#dragState.startY);\r\n if (newHeight < this.#dragState.minHeight) {\r\n const overshoot = (this.#dragState.minHeight - newHeight) * this.hideFriction;\r\n newHeight = this.#dragState.minHeight - overshoot;\r\n }\r\n\r\n this.#updateHeight(Math.min(this.#dragState.maxHeight, newHeight));\r\n this.#dragged = true;\r\n }\r\n\r\n /** @private */\r\n #handleHeaderPointerUp(e: PointerEvent): void {\r\n if (!this.#dragState) return;\r\n\r\n try {\r\n (<HTMLElement>e.target).releasePointerCapture(e.pointerId);\r\n (<HTMLElement>e.target).style.cursor = \"\";\r\n\r\n if (!this.#dragged) return;\r\n\r\n const significantVelocityThreshold = e.pointerType === \"touch\" ? 1200 : 500;\r\n const velocity = this.#velocityTracker.getVelocity();\r\n\r\n this.#velocityTracker.reset();\r\n\r\n if (this.hideable && velocity >= significantVelocityThreshold) {\r\n if (this.dispatchEvent(new Event(\"cancel\", { cancelable: true }))) {\r\n this.hide();\r\n }\r\n } else if (Math.abs(velocity) >= significantVelocityThreshold) {\r\n if (this.detents.length > 0) {\r\n const nextDetent = this.#getNextHigherDetent();\r\n if (nextDetent !== this.#activeDetent) {\r\n this.#snapToDetent(nextDetent);\r\n }\r\n } else {\r\n this.#snapToHeight(this.#computeDetentHeight(\"full\"));\r\n }\r\n } else {\r\n const hideDistanceThreshold = 20;\r\n if (this.hideable) {\r\n const collapsed = this.#dragState.minHeight;\r\n if (this.clientHeight < collapsed - hideDistanceThreshold) {\r\n this.hide();\r\n return;\r\n }\r\n }\r\n\r\n if (this.detents.length > 0) {\r\n this.#snapToDetent(this.#getClosestDetent());\r\n } else if (this.clientHeight < this.#dragState.minHeight) {\r\n this.#snapToHeight(this.#dragState.minHeight);\r\n }\r\n }\r\n } finally {\r\n this.#dragState = undefined;\r\n }\r\n }\r\n\r\n /** @private */\r\n #handleDocumentClick(e: Event): void {\r\n if (\r\n this.open &&\r\n this.modal &&\r\n !e.composedPath().includes(this) &&\r\n this.dispatchEvent(new Event(\"cancel\", { cancelable: true }))\r\n ) {\r\n this.hide();\r\n }\r\n }\r\n\r\n /** @private */\r\n #handleDocumentKeyDown(e: KeyboardEvent): void {\r\n if (this.open && this.modal && e.key === \"Escape\" && !e.shiftKey && !e.ctrlKey) {\r\n e.preventDefault();\r\n\r\n if (this.dispatchEvent(new Event(\"cancel\", { cancelable: true }))) {\r\n this.hide();\r\n }\r\n }\r\n }\r\n\r\n /** @private */\r\n #handleWindowResize(): void {\r\n if (this.detents.length > 0 && this.detents[this.#activeDetent] === \"half\") {\r\n this.#updateHeight(this.#computeDetentHeight(\"half\"));\r\n return;\r\n }\r\n\r\n const maxHeight = this.#computeMaxHeight();\r\n if (this.classList.contains(\"-full\")) {\r\n this.#updateHeight(maxHeight);\r\n } else if (this.clientHeight > maxHeight) {\r\n this.#updateHeight(maxHeight);\r\n }\r\n }\r\n\r\n /** @private */\r\n #handleDragHandleClick(): void {\r\n if (!this.#dragged) {\r\n this.cycle();\r\n }\r\n this.#dragged = false;\r\n }\r\n\r\n /** @private */\r\n #handleDragHandleKeyDown(e: KeyboardEvent): void {\r\n if (e.defaultPrevented || !isModifierAllowed(e)) return;\r\n\r\n switch (e.key) {\r\n case \"Up\":\r\n case \"ArrowUp\":\r\n e.preventDefault();\r\n if (this.detents.length > 0) {\r\n const nextDetent = this.#getNextHigherDetent();\r\n if (nextDetent !== this.#activeDetent) {\r\n this.#snapToDetent(nextDetent);\r\n }\r\n } else {\r\n this.#snapToHeight(this.#computeDetentHeight(\"full\"));\r\n }\r\n break;\r\n\r\n case \"Down\":\r\n case \"ArrowDown\":\r\n e.preventDefault();\r\n if (this.detents.length > 0) {\r\n const nextDetent = this.#getNextLowerDetent();\r\n if (nextDetent !== this.#activeDetent) {\r\n this.#snapToDetent(nextDetent);\r\n } else if (this.hideable) {\r\n this.hide();\r\n }\r\n } else if (this.hideable) {\r\n this.hide();\r\n }\r\n\r\n break;\r\n }\r\n }\r\n\r\n /** @private */\r\n #getNextHigherDetent(): number {\r\n const currentHeight = this.clientHeight;\r\n let nextHeight = Infinity;\r\n let nextDetent = this.#activeDetent;\r\n for (let i = 0; i < this.detents.length; i++) {\r\n if (i === this.#activeDetent) continue;\r\n const detentHeight = this.#computeDetentHeight(this.detents[i]);\r\n if (detentHeight > currentHeight && detentHeight < nextHeight) {\r\n nextHeight = detentHeight;\r\n nextDetent = i;\r\n }\r\n }\r\n return nextDetent;\r\n }\r\n\r\n /** @private */\r\n #getNextLowerDetent(): number {\r\n const currentHeight = this.clientHeight;\r\n let nextHeight = -Infinity;\r\n let nextDetent = this.#activeDetent;\r\n for (let i = 0; i < this.detents.length; i++) {\r\n if (i === this.#activeDetent) continue;\r\n const detentHeight = this.#computeDetentHeight(this.detents[i]);\r\n if (detentHeight < currentHeight && detentHeight > nextHeight) {\r\n nextHeight = detentHeight;\r\n nextDetent = i;\r\n }\r\n }\r\n return nextDetent;\r\n }\r\n\r\n /** @private */\r\n #getClosestDetent(): number {\r\n const currentHeight = this.clientHeight;\r\n let closestDetent = this.#activeDetent;\r\n let closestDistance = Infinity;\r\n\r\n for (let i = 0; i < this.detents.length; i++) {\r\n const detentHeight = this.#computeDetentHeight(this.detents[i]);\r\n const distance = Math.abs(currentHeight - detentHeight);\r\n\r\n if (distance < closestDistance) {\r\n closestDistance = distance;\r\n closestDetent = i;\r\n }\r\n }\r\n return closestDetent;\r\n }\r\n\r\n /** @private */\r\n #computeDetentHeight(detent: string): number {\r\n switch (detent) {\r\n case \"collapsed\":\r\n return this.#computeMinHeight();\r\n case \"half\":\r\n return this.#computeMaxHeight() * 0.5;\r\n case \"full\":\r\n return this.#computeMaxHeight();\r\n case \"fit\":\r\n return this.#computeFitHeight();\r\n }\r\n\r\n if (detent.endsWith(\"%\")) {\r\n return this.#computeMaxHeight() * (parseFloat(detent) / 100);\r\n }\r\n\r\n if (detent.endsWith(\"px\")) {\r\n return parseFloat(detent);\r\n }\r\n\r\n return this.#computeMinHeight();\r\n }\r\n\r\n /** @private */\r\n #computeMaxHeight(): number {\r\n const base = this.shadowRoot?.querySelector<HTMLElement>(\".base\");\r\n return window.innerHeight - (base ? computeCssSize(base, \"var(--_bottom-sheet-top-space)\") : 0);\r\n }\r\n\r\n /** @private */\r\n #computeMinHeight(): number {\r\n return this.detents.includes(\"fit\") && !this.detents.includes(\"collapsed\")\r\n ? this.#computeFitHeight()\r\n : this.#computePeekHeight();\r\n }\r\n\r\n /** @private */\r\n #computePeekHeight(): number {\r\n const base = this.shadowRoot?.querySelector<HTMLElement>(\".base\");\r\n return this.#cachedHeaderHeight + (base ? computeCssSize(base, \"var(--_bottom-sheet-peek-height)\") : 0);\r\n }\r\n\r\n /** @private */\r\n #computeFitHeight(): number {\r\n const body = this.shadowRoot?.querySelector<HTMLElement>(\".body\");\r\n if (!body) {\r\n return 0;\r\n }\r\n\r\n const bodyStyle = getComputedStyle(body);\r\n return (\r\n this.#cachedHeaderHeight +\r\n this.#cachedContentHeight +\r\n parseFloat(bodyStyle.paddingBlockStart) +\r\n parseFloat(bodyStyle.paddingBlockEnd)\r\n );\r\n }\r\n\r\n /** @private */\r\n #handleSectionResize(entries: ResizeObserverEntry[]): void {\r\n const oldCachedContentHeight = this.#cachedContentHeight;\r\n const oldCachedHeaderHeight = this.#cachedHeaderHeight;\r\n\r\n for (const entry of entries) {\r\n if (entry.target.classList.contains(\"content\")) {\r\n this.#cachedContentHeight = (<ResizeObserverSize>(\r\n (Array.isArray(entry.borderBoxSize) ? entry.borderBoxSize[0] : entry.borderBoxSize)\r\n )).blockSize;\r\n } else if (entry.target.classList.contains(\"header\")) {\r\n this.#cachedHeaderHeight = (<ResizeObserverSize>(\r\n (Array.isArray(entry.borderBoxSize) ? entry.borderBoxSize[0] : entry.borderBoxSize)\r\n )).blockSize;\r\n }\r\n }\r\n\r\n if (\r\n this.open &&\r\n this.detents.length > 0 &&\r\n (oldCachedContentHeight !== this.#cachedContentHeight || oldCachedHeaderHeight !== this.#cachedHeaderHeight)\r\n ) {\r\n switch (this.detents[this.#activeDetent]) {\r\n case \"fit\":\r\n this.#updateHeight(this.#computeFitHeight());\r\n break;\r\n\r\n case \"collapsed\":\r\n this.#updateHeight(this.#computeMinHeight());\r\n break;\r\n }\r\n }\r\n }\r\n\r\n /** @private */\r\n #snapToDetent(detent: number): void {\r\n if (detent >= 0 && detent < this.detents.length) {\r\n this.#activeDetent = detent;\r\n this.#snapToHeight(this.#computeDetentHeight(this.detents[detent]));\r\n }\r\n }\r\n\r\n /** @private */\r\n async #snapToHeight(height: number): Promise<void> {\r\n if (this.#snapAnimation) {\r\n this.#updateHeight(this.clientHeight);\r\n this.#snapAnimation?.cancel();\r\n this.#snapAnimation = undefined;\r\n }\r\n\r\n if (!prefersReducedMotion()) {\r\n this.#snapAnimation = this.animate(\r\n [{ \"--_bottom-sheet-height\": `${this.clientHeight}px` }, { \"--_bottom-sheet-height\": `${height}px` }],\r\n {\r\n duration: 250,\r\n easing: \"cubic-bezier(0.2, 0.0, 0, 1.0)\",\r\n },\r\n );\r\n this.#snapAnimation.onfinish = () => {\r\n this.#updateHeight(height);\r\n this.#snapAnimation = undefined;\r\n };\r\n await this.#snapAnimation.finished;\r\n } else {\r\n this.#updateHeight(height);\r\n }\r\n }\r\n\r\n /** @private */\r\n #updateHeight(height: number): void {\r\n this.style.setProperty(\"--_bottom-sheet-height\", `${height}px`);\r\n this.classList.toggle(\"-full\", height === this.#computeMaxHeight());\r\n const content = this.shadowRoot?.querySelector<HTMLElement>(\".content\");\r\n if (content) {\r\n content.inert = height <= this.#computePeekHeight();\r\n }\r\n }\r\n\r\n /** @private */\r\n #applyInert() {\r\n this.#inerts.length = 0;\r\n\r\n for (\r\n let current: Node = this as Node;\r\n current.parentNode && current.parentNode !== document.documentElement;\r\n current = current.parentNode\r\n ) {\r\n for (const sibling of current.parentNode.children) {\r\n if (sibling instanceof HTMLElement && sibling !== current && !sibling.inert) {\r\n sibling.inert = true;\r\n this.#inerts.push(sibling);\r\n }\r\n }\r\n }\r\n }\r\n\r\n /** @private */\r\n #restoreInert(): void {\r\n this.#inerts.forEach((x) => (x.inert = false));\r\n this.#inerts.length = 0;\r\n }\r\n}\r\n\r\ninterface M3eBottomSheetElementEventMap extends HTMLElementEventMap {\r\n opening: Event;\r\n opened: Event;\r\n closing: Event;\r\n closed: Event;\r\n cancel: Event;\r\n}\r\n\r\nexport interface M3eBottomSheetElement {\r\n addEventListener<K extends keyof M3eBottomSheetElementEventMap>(\r\n type: K,\r\n listener: (this: M3eBottomSheetElement, ev: M3eBottomSheetElementEventMap[K]) => void,\r\n options?: boolean | AddEventListenerOptions,\r\n ): void;\r\n\r\n addEventListener(\r\n type: string,\r\n listener: EventListenerOrEventListenerObject,\r\n options?: boolean | AddEventListenerOptions,\r\n ): void;\r\n\r\n removeEventListener<K extends keyof M3eBottomSheetElementEventMap>(\r\n type: K,\r\n listener: (this: M3eBottomSheetElement, ev: M3eBottomSheetElementEventMap[K]) => void,\r\n options?: boolean | EventListenerOptions,\r\n ): void;\r\n\r\n removeEventListener(\r\n type: string,\r\n listener: EventListenerOrEventListenerObject,\r\n options?: boolean | EventListenerOptions,\r\n ): void;\r\n}\r\n\r\ndeclare global {\r\n interface HTMLElementTagNameMap {\r\n \"m3e-bottom-sheet\": M3eBottomSheetElement;\r\n }\r\n}\r\n","import { customElement, property } from \"lit/decorators.js\";\r\n\r\nimport { ActionElementBase, HtmlFor } from \"@m3e/web/core\";\r\nimport { addAriaReferencedId, removeAriaReferencedId } from \"@m3e/web/core/a11y\";\r\n\r\nimport { M3eBottomSheetElement } from \"./BottomSheetElement\";\r\n\r\n/**\r\n * An element, nested within a clickable element, used to trigger a bottom sheet.\r\n * @tag m3e-bottom-sheet-trigger\r\n *\r\n * @slot - Renders the content of the trigger.\r\n *\r\n * @attr detent - The zero‑based index of the detent the sheet should open to.\r\n * @attr secondary - Marks this trigger as a secondary trigger for accessibility. Secondary triggers do not receive ARIA ownership.\r\n */\r\n@customElement(\"m3e-bottom-sheet-trigger\")\r\nexport class M3eBottomSheetTriggerElement extends HtmlFor(ActionElementBase) {\r\n /**\r\n * The zero‑based index of the detent the sheet should open to.\r\n * @default undefined\r\n */\r\n @property({ type: Number }) detent?: number;\r\n\r\n /**\r\n * Marks this trigger as a secondary trigger for accessibility. Secondary triggers do not receive ARIA ownership.\r\n * @default false\r\n */\r\n @property({ type: Boolean }) secondary = false;\r\n\r\n /** @inheritdoc */\r\n override attach(control: HTMLElement): void {\r\n if (control instanceof M3eBottomSheetElement) {\r\n super.attach(control);\r\n\r\n if (this.parentElement) {\r\n if (!control.modal) {\r\n if (!this.secondary) {\r\n this.parentElement.ariaExpanded = \"false\";\r\n addAriaReferencedId(this.parentElement, \"aria-controls\", control.id);\r\n if (this.parentElement.id) {\r\n addAriaReferencedId(control, \"aria-labelledby\", this.parentElement.id);\r\n }\r\n }\r\n } else {\r\n this.parentElement.ariaHasPopup = \"dialog\";\r\n }\r\n }\r\n }\r\n }\r\n\r\n /** @inheritdoc */\r\n override detach(): void {\r\n if (this.control && this.parentElement && !this.secondary) {\r\n removeAriaReferencedId(this.parentElement, \"aria-controls\", this.control.id);\r\n }\r\n super.detach();\r\n }\r\n\r\n /** @inheritdoc */\r\n protected override _onClick(): void {\r\n if (this.control instanceof M3eBottomSheetElement) {\r\n if (this.control.modal) {\r\n this.control.show(this.detent);\r\n } else {\r\n this.control.toggle(this.detent);\r\n if (!this.secondary && this.parentElement) {\r\n this.parentElement.ariaExpanded = `${this.control.open}`;\r\n }\r\n }\r\n }\r\n }\r\n}\r\n\r\ndeclare global {\r\n interface HTMLElementTagNameMap {\r\n \"m3e-bottom-sheet-trigger\": M3eBottomSheetTriggerElement;\r\n }\r\n}\r\n"],"names":["__decorate","decorators","target","key","desc","c","arguments","length","r","Object","getOwnPropertyDescriptor","d","Reflect","decorate","i","defineProperty","__classPrivateFieldGet","receiver","state","kind","f","TypeError","has","call","value","get","__classPrivateFieldSet","set","SuppressedError","error","suppressed","message","e","Error","name","t","o","addInitializer","customElements","define","globalThis","ShadowRoot","ShadyCSS","nativeShadow","Document","prototype","CSSStyleSheet","s","Symbol","WeakMap","n","constructor","_$cssResult$","cssText","styleSheet","replaceSync","toString","S","adoptStyles","adoptedStyleSheets","map","document","createElement","litNonce","setAttribute","textContent","appendChild","cssRules","is","h","getOwnPropertyNames","getOwnPropertySymbols","getPrototypeOf","a","trustedTypes","l","emptyScript","p","reactiveElementPolyfillSupport","JSCompiler_renameProperty","u","toAttribute","Boolean","Array","JSON","stringify","fromAttribute","Number","parse","notEqual","b","attribute","type","String","converter","reflect","useDefault","hasChanged","metadata","litPropertyMetadata","y","HTMLElement","_$Ei","push","observedAttributes","finalize","_$Eh","keys","createProperty","hasOwnProperty","create","wrapped","elementProperties","noAccessor","getPropertyDescriptor","requestUpdate","configurable","enumerable","getPropertyOptions","Map","finalized","properties","_$Eu","elementStyles","finalizeStyles","styles","isArray","Set","flat","reverse","unshift","toLowerCase","_$Ep","isUpdatePending","hasUpdated","_$Em","_$Ev","_$ES","Promise","enableUpdating","_$AL","_$E_","forEach","addController","_$EO","add","renderRoot","isConnected","hostConnected","removeController","delete","size","createRenderRoot","shadowRoot","attachShadow","shadowRootOptions","connectedCallback","disconnectedCallback","hostDisconnected","attributeChangedCallback","_$AK","_$ET","removeAttribute","_$Ej","hasAttribute","C","_$EP","_$Eq","reject","scheduleUpdate","performUpdate","shouldUpdate","willUpdate","hostUpdate","update","_$EM","_$AE","hostUpdated","firstUpdated","updated","updateComplete","getUpdateComplete","mode","ReactiveElement","reactiveElementVersions","standardProperty","init","M3eBottomSheetActionElement","ActionElementBase","_onClick","closest","hide","customElement","M3eBottomSheetElement","M3eBottomSheetElement_1","EventAttribute","LitElement","_M3eBottomSheetElement_documentClickHandler","_M3eBottomSheetElement_documentKeyDownHandler","_M3eBottomSheetElement_windowResizeHandler","_M3eBottomSheetElement_instances","_M3eBottomSheetElement_handleWindowResize","_M3eBottomSheetElement_inerts","_M3eBottomSheetElement_velocityTracker","VelocityTracker","_M3eBottomSheetElement_scrollLockController","ScrollLockController","_M3eBottomSheetElement_resizeController","ResizeController","skipInitial","callback","x","_M3eBottomSheetElement_handleSectionResize","_M3eBottomSheetElement_trigger","_M3eBottomSheetElement_dragState","_M3eBottomSheetElement_dragged","_M3eBottomSheetElement_activeDetent","_M3eBottomSheetElement_requestDetent","_M3eBottomSheetElement_cachedContentHeight","_M3eBottomSheetElement_cachedHeaderHeight","_M3eBottomSheetElement_snapAnimation","modal","open","handle","handleLabel","detents","detent","hideable","hideFriction","show","undefined","_M3eBottomSheetElement_snapToDetent","toggle","cycle","_a","changedProperties","role","ariaModal","popover","_changedProperties","content","querySelector","clientHeight","observe","header","dispatchEvent","Event","cancelable","__openSheet","inert","window","addEventListener","Math","min","max","_M3eBottomSheetElement_updateHeight","_M3eBottomSheetElement_computeDetentHeight","requestAnimationFrame","removeEventListener","activeElement","_M3eBottomSheetElement_applyInert","lock","showPopover","focusable","M3eInteractivityChecker","isFocusable","focusWhenReady","_M3eBottomSheetElement_snapToHeight","then","_M3eBottomSheetElement_restoreInert","unlock","hidePopover","focus","render","html","_M3eBottomSheetElement_handleHeaderPointerDown","_M3eBottomSheetElement_handleHeaderPointerMove","_M3eBottomSheetElement_handleHeaderPointerUp","_M3eBottomSheetElement_handleDragHandleClick","_M3eBottomSheetElement_handleDragHandleKeyDown","nothing","_M3eBottomSheetElement_handleHeaderSlotChange","classList","hasAssignedNodes","button","setPointerCapture","pointerId","style","cursor","reset","clientY","startY","startHeight","maxHeight","_M3eBottomSheetElement_computeMaxHeight","minHeight","_M3eBottomSheetElement_computeMinHeight","minDragThreshold","abs","getCoalescedEvents","timeStamp","newHeight","overshoot","releasePointerCapture","significantVelocityThreshold","pointerType","velocity","getVelocity","nextDetent","hideDistanceThreshold","collapsed","_M3eBottomSheetElement_getClosestDetent","composedPath","includes","shiftKey","ctrlKey","preventDefault","contains","defaultPrevented","isModifierAllowed","currentHeight","nextHeight","Infinity","detentHeight","closestDetent","closestDistance","distance","_M3eBottomSheetElement_computeFitHeight","endsWith","parseFloat","base","innerHeight","computeCssSize","body","bodyStyle","getComputedStyle","paddingBlockStart","paddingBlockEnd","entries","oldCachedContentHeight","oldCachedHeaderHeight","entry","borderBoxSize","blockSize","height","cancel","prefersReducedMotion","animate","duration","easing","onfinish","finished","setProperty","_M3eBottomSheetElement_computePeekHeight","current","parentNode","documentElement","sibling","children","lightDomStyle","css","DesignToken","color","onSurface","surfaceContainerLow","unsafeCSS","motion","medium2","standardDecelerate","standard","elevation","level1","shape","corner","none","extraLargeTop","short3","scrim","long2","scrollbar","thinWidth","typescale","medium","fontSize","fontWeight","lineHeight","tracking","title","large","full","onSurfaceVariant","property","spaceSeparatedStringConverter","M3eBottomSheetTriggerElement","HtmlFor","secondary","attach","control","parentElement","ariaExpanded","addAriaReferencedId","id","ariaHasPopup","detach","removeAriaReferencedId"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4]}
1
+ {"version":3,"file":"bottom-sheet.js","sources":["../../../node_modules/tslib/tslib.es6.js","../../../node_modules/@lit/reactive-element/decorators/custom-element.js","../../../node_modules/@lit/reactive-element/css-tag.js","../../../node_modules/@lit/reactive-element/reactive-element.js","../../../node_modules/@lit/reactive-element/decorators/property.js","../../src/bottom-sheet/BottomSheetActionElement.ts","../../src/bottom-sheet/BottomSheetElement.ts","../../src/bottom-sheet/BottomSheetTriggerElement.ts"],"sourcesContent":["/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol, Iterator */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === \"function\" ? Iterator : Object).prototype);\r\n return g.next = verb(0), g[\"throw\"] = verb(1), g[\"return\"] = verb(2), typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = Object.create((typeof AsyncIterator === \"function\" ? AsyncIterator : Object).prototype), verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\r\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nvar ownKeys = function(o) {\r\n ownKeys = Object.getOwnPropertyNames || function (o) {\r\n var ar = [];\r\n for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;\r\n return ar;\r\n };\r\n return ownKeys(o);\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== \"default\") __createBinding(result, mod, k[i]);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport function __addDisposableResource(env, value, async) {\r\n if (value !== null && value !== void 0) {\r\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\r\n var dispose, inner;\r\n if (async) {\r\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\r\n dispose = value[Symbol.asyncDispose];\r\n }\r\n if (dispose === void 0) {\r\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\r\n dispose = value[Symbol.dispose];\r\n if (async) inner = dispose;\r\n }\r\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\r\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\r\n env.stack.push({ value: value, dispose: dispose, async: async });\r\n }\r\n else if (async) {\r\n env.stack.push({ async: true });\r\n }\r\n return value;\r\n\r\n}\r\n\r\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\r\n\r\nexport function __disposeResources(env) {\r\n function fail(e) {\r\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\r\n env.hasError = true;\r\n }\r\n var r, s = 0;\r\n function next() {\r\n while (r = env.stack.pop()) {\r\n try {\r\n if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);\r\n if (r.dispose) {\r\n var result = r.dispose.call(r.value);\r\n if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\r\n }\r\n else s |= 1;\r\n }\r\n catch (e) {\r\n fail(e);\r\n }\r\n }\r\n if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();\r\n if (env.hasError) throw env.error;\r\n }\r\n return next();\r\n}\r\n\r\nexport function __rewriteRelativeImportExtension(path, preserveJsx) {\r\n if (typeof path === \"string\" && /^\\.\\.?\\//.test(path)) {\r\n return path.replace(/\\.(tsx)$|((?:\\.d)?)((?:\\.[^./]+?)?)\\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) {\r\n return tsx ? preserveJsx ? \".jsx\" : \".js\" : d && (!ext || !cm) ? m : (d + ext + \".\" + cm.toLowerCase() + \"js\");\r\n });\r\n }\r\n return path;\r\n}\r\n\r\nexport default {\r\n __extends: __extends,\r\n __assign: __assign,\r\n __rest: __rest,\r\n __decorate: __decorate,\r\n __param: __param,\r\n __esDecorate: __esDecorate,\r\n __runInitializers: __runInitializers,\r\n __propKey: __propKey,\r\n __setFunctionName: __setFunctionName,\r\n __metadata: __metadata,\r\n __awaiter: __awaiter,\r\n __generator: __generator,\r\n __createBinding: __createBinding,\r\n __exportStar: __exportStar,\r\n __values: __values,\r\n __read: __read,\r\n __spread: __spread,\r\n __spreadArrays: __spreadArrays,\r\n __spreadArray: __spreadArray,\r\n __await: __await,\r\n __asyncGenerator: __asyncGenerator,\r\n __asyncDelegator: __asyncDelegator,\r\n __asyncValues: __asyncValues,\r\n __makeTemplateObject: __makeTemplateObject,\r\n __importStar: __importStar,\r\n __importDefault: __importDefault,\r\n __classPrivateFieldGet: __classPrivateFieldGet,\r\n __classPrivateFieldSet: __classPrivateFieldSet,\r\n __classPrivateFieldIn: __classPrivateFieldIn,\r\n __addDisposableResource: __addDisposableResource,\r\n __disposeResources: __disposeResources,\r\n __rewriteRelativeImportExtension: __rewriteRelativeImportExtension,\r\n};\r\n","/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nconst t=t=>(e,o)=>{void 0!==o?o.addInitializer((()=>{customElements.define(t,e)})):customElements.define(t,e)};export{t as customElement};\n//# sourceMappingURL=custom-element.js.map\n","/**\n * @license\n * Copyright 2019 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nconst t=globalThis,e=t.ShadowRoot&&(void 0===t.ShadyCSS||t.ShadyCSS.nativeShadow)&&\"adoptedStyleSheets\"in Document.prototype&&\"replace\"in CSSStyleSheet.prototype,s=Symbol(),o=new WeakMap;class n{constructor(t,e,o){if(this._$cssResult$=!0,o!==s)throw Error(\"CSSResult is not constructable. Use `unsafeCSS` or `css` instead.\");this.cssText=t,this.t=e}get styleSheet(){let t=this.o;const s=this.t;if(e&&void 0===t){const e=void 0!==s&&1===s.length;e&&(t=o.get(s)),void 0===t&&((this.o=t=new CSSStyleSheet).replaceSync(this.cssText),e&&o.set(s,t))}return t}toString(){return this.cssText}}const r=t=>new n(\"string\"==typeof t?t:t+\"\",void 0,s),i=(t,...e)=>{const o=1===t.length?t[0]:e.reduce(((e,s,o)=>e+(t=>{if(!0===t._$cssResult$)return t.cssText;if(\"number\"==typeof t)return t;throw Error(\"Value passed to 'css' function must be a 'css' function result: \"+t+\". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.\")})(s)+t[o+1]),t[0]);return new n(o,t,s)},S=(s,o)=>{if(e)s.adoptedStyleSheets=o.map((t=>t instanceof CSSStyleSheet?t:t.styleSheet));else for(const e of o){const o=document.createElement(\"style\"),n=t.litNonce;void 0!==n&&o.setAttribute(\"nonce\",n),o.textContent=e.cssText,s.appendChild(o)}},c=e?t=>t:t=>t instanceof CSSStyleSheet?(t=>{let e=\"\";for(const s of t.cssRules)e+=s.cssText;return r(e)})(t):t;export{n as CSSResult,S as adoptStyles,i as css,c as getCompatibleStyle,e as supportsAdoptingStyleSheets,r as unsafeCSS};\n//# sourceMappingURL=css-tag.js.map\n","import{getCompatibleStyle as t,adoptStyles as s}from\"./css-tag.js\";export{CSSResult,css,supportsAdoptingStyleSheets,unsafeCSS}from\"./css-tag.js\";\n/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */const{is:i,defineProperty:e,getOwnPropertyDescriptor:h,getOwnPropertyNames:r,getOwnPropertySymbols:o,getPrototypeOf:n}=Object,a=globalThis,c=a.trustedTypes,l=c?c.emptyScript:\"\",p=a.reactiveElementPolyfillSupport,d=(t,s)=>t,u={toAttribute(t,s){switch(s){case Boolean:t=t?l:null;break;case Object:case Array:t=null==t?t:JSON.stringify(t)}return t},fromAttribute(t,s){let i=t;switch(s){case Boolean:i=null!==t;break;case Number:i=null===t?null:Number(t);break;case Object:case Array:try{i=JSON.parse(t)}catch(t){i=null}}return i}},f=(t,s)=>!i(t,s),b={attribute:!0,type:String,converter:u,reflect:!1,useDefault:!1,hasChanged:f};Symbol.metadata??=Symbol(\"metadata\"),a.litPropertyMetadata??=new WeakMap;class y extends HTMLElement{static addInitializer(t){this._$Ei(),(this.l??=[]).push(t)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(t,s=b){if(s.state&&(s.attribute=!1),this._$Ei(),this.prototype.hasOwnProperty(t)&&((s=Object.create(s)).wrapped=!0),this.elementProperties.set(t,s),!s.noAccessor){const i=Symbol(),h=this.getPropertyDescriptor(t,i,s);void 0!==h&&e(this.prototype,t,h)}}static getPropertyDescriptor(t,s,i){const{get:e,set:r}=h(this.prototype,t)??{get(){return this[s]},set(t){this[s]=t}};return{get:e,set(s){const h=e?.call(this);r?.call(this,s),this.requestUpdate(t,h,i)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)??b}static _$Ei(){if(this.hasOwnProperty(d(\"elementProperties\")))return;const t=n(this);t.finalize(),void 0!==t.l&&(this.l=[...t.l]),this.elementProperties=new Map(t.elementProperties)}static finalize(){if(this.hasOwnProperty(d(\"finalized\")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(d(\"properties\"))){const t=this.properties,s=[...r(t),...o(t)];for(const i of s)this.createProperty(i,t[i])}const t=this[Symbol.metadata];if(null!==t){const s=litPropertyMetadata.get(t);if(void 0!==s)for(const[t,i]of s)this.elementProperties.set(t,i)}this._$Eh=new Map;for(const[t,s]of this.elementProperties){const i=this._$Eu(t,s);void 0!==i&&this._$Eh.set(i,t)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(s){const i=[];if(Array.isArray(s)){const e=new Set(s.flat(1/0).reverse());for(const s of e)i.unshift(t(s))}else void 0!==s&&i.push(t(s));return i}static _$Eu(t,s){const i=s.attribute;return!1===i?void 0:\"string\"==typeof i?i:\"string\"==typeof t?t.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){this._$ES=new Promise((t=>this.enableUpdating=t)),this._$AL=new Map,this._$E_(),this.requestUpdate(),this.constructor.l?.forEach((t=>t(this)))}addController(t){(this._$EO??=new Set).add(t),void 0!==this.renderRoot&&this.isConnected&&t.hostConnected?.()}removeController(t){this._$EO?.delete(t)}_$E_(){const t=new Map,s=this.constructor.elementProperties;for(const i of s.keys())this.hasOwnProperty(i)&&(t.set(i,this[i]),delete this[i]);t.size>0&&(this._$Ep=t)}createRenderRoot(){const t=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return s(t,this.constructor.elementStyles),t}connectedCallback(){this.renderRoot??=this.createRenderRoot(),this.enableUpdating(!0),this._$EO?.forEach((t=>t.hostConnected?.()))}enableUpdating(t){}disconnectedCallback(){this._$EO?.forEach((t=>t.hostDisconnected?.()))}attributeChangedCallback(t,s,i){this._$AK(t,i)}_$ET(t,s){const i=this.constructor.elementProperties.get(t),e=this.constructor._$Eu(t,i);if(void 0!==e&&!0===i.reflect){const h=(void 0!==i.converter?.toAttribute?i.converter:u).toAttribute(s,i.type);this._$Em=t,null==h?this.removeAttribute(e):this.setAttribute(e,h),this._$Em=null}}_$AK(t,s){const i=this.constructor,e=i._$Eh.get(t);if(void 0!==e&&this._$Em!==e){const t=i.getPropertyOptions(e),h=\"function\"==typeof t.converter?{fromAttribute:t.converter}:void 0!==t.converter?.fromAttribute?t.converter:u;this._$Em=e;const r=h.fromAttribute(s,t.type);this[e]=r??this._$Ej?.get(e)??r,this._$Em=null}}requestUpdate(t,s,i){if(void 0!==t){const e=this.constructor,h=this[t];if(i??=e.getPropertyOptions(t),!((i.hasChanged??f)(h,s)||i.useDefault&&i.reflect&&h===this._$Ej?.get(t)&&!this.hasAttribute(e._$Eu(t,i))))return;this.C(t,s,i)}!1===this.isUpdatePending&&(this._$ES=this._$EP())}C(t,s,{useDefault:i,reflect:e,wrapped:h},r){i&&!(this._$Ej??=new Map).has(t)&&(this._$Ej.set(t,r??s??this[t]),!0!==h||void 0!==r)||(this._$AL.has(t)||(this.hasUpdated||i||(s=void 0),this._$AL.set(t,s)),!0===e&&this._$Em!==t&&(this._$Eq??=new Set).add(t))}async _$EP(){this.isUpdatePending=!0;try{await this._$ES}catch(t){Promise.reject(t)}const t=this.scheduleUpdate();return null!=t&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??=this.createRenderRoot(),this._$Ep){for(const[t,s]of this._$Ep)this[t]=s;this._$Ep=void 0}const t=this.constructor.elementProperties;if(t.size>0)for(const[s,i]of t){const{wrapped:t}=i,e=this[s];!0!==t||this._$AL.has(s)||void 0===e||this.C(s,void 0,i,e)}}let t=!1;const s=this._$AL;try{t=this.shouldUpdate(s),t?(this.willUpdate(s),this._$EO?.forEach((t=>t.hostUpdate?.())),this.update(s)):this._$EM()}catch(s){throw t=!1,this._$EM(),s}t&&this._$AE(s)}willUpdate(t){}_$AE(t){this._$EO?.forEach((t=>t.hostUpdated?.())),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$EM(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(t){return!0}update(t){this._$Eq&&=this._$Eq.forEach((t=>this._$ET(t,this[t]))),this._$EM()}updated(t){}firstUpdated(t){}}y.elementStyles=[],y.shadowRootOptions={mode:\"open\"},y[d(\"elementProperties\")]=new Map,y[d(\"finalized\")]=new Map,p?.({ReactiveElement:y}),(a.reactiveElementVersions??=[]).push(\"2.1.1\");export{y as ReactiveElement,s as adoptStyles,u as defaultConverter,t as getCompatibleStyle,f as notEqual};\n//# sourceMappingURL=reactive-element.js.map\n","import{defaultConverter as t,notEqual as e}from\"../reactive-element.js\";\n/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */const o={attribute:!0,type:String,converter:t,reflect:!1,hasChanged:e},r=(t=o,e,r)=>{const{kind:n,metadata:i}=r;let s=globalThis.litPropertyMetadata.get(i);if(void 0===s&&globalThis.litPropertyMetadata.set(i,s=new Map),\"setter\"===n&&((t=Object.create(t)).wrapped=!0),s.set(r.name,t),\"accessor\"===n){const{name:o}=r;return{set(r){const n=e.get.call(this);e.set.call(this,r),this.requestUpdate(o,n,t)},init(e){return void 0!==e&&this.C(o,void 0,t,e),e}}}if(\"setter\"===n){const{name:o}=r;return function(r){const n=this[o];e.call(this,r),this.requestUpdate(o,n,t)}}throw Error(\"Unsupported decorator location: \"+n)};function n(t){return(e,o)=>\"object\"==typeof o?r(t,e,o):((t,e,o)=>{const r=e.hasOwnProperty(o);return e.constructor.createProperty(o,t),r?Object.getOwnPropertyDescriptor(e,o):void 0})(t,e,o)}export{n as property,r as standardProperty};\n//# sourceMappingURL=property.js.map\n","import { customElement } from \"lit/decorators.js\";\r\n\r\nimport { ActionElementBase } from \"@m3e/web/core\";\r\n\r\n/**\r\n * An element, nested within a clickable element, used to close a parenting bottom sheet.\r\n * @tag m3e-bottom-sheet-action\r\n *\r\n * @slot - Renders the content of the action.\r\n */\r\n@customElement(\"m3e-bottom-sheet-action\")\r\nexport class M3eBottomSheetActionElement extends ActionElementBase {\r\n /** @inheritdoc */\r\n protected override _onClick(): void {\r\n this.closest(\"m3e-bottom-sheet\")?.hide();\r\n }\r\n}\r\n\r\ndeclare global {\r\n interface HTMLElementTagNameMap {\r\n \"m3e-bottom-sheet-action\": M3eBottomSheetActionElement;\r\n }\r\n}\r\n","/* eslint-disable @typescript-eslint/no-unsafe-declaration-merging */\r\nimport { css, CSSResultGroup, html, LitElement, nothing, PropertyValues, unsafeCSS } from \"lit\";\r\nimport { customElement, property } from \"lit/decorators.js\";\r\n\r\nimport {\r\n computeCssSize,\r\n DesignToken,\r\n EventAttribute,\r\n focusWhenReady,\r\n hasAssignedNodes,\r\n prefersReducedMotion,\r\n ResizeController,\r\n ScrollLockController,\r\n spaceSeparatedStringConverter,\r\n VelocityTracker,\r\n} from \"@m3e/web/core\";\r\n\r\nimport { isModifierAllowed, M3eInteractivityChecker } from \"@m3e/web/core/a11y\";\r\nimport \"@m3e/web/core/a11y\";\r\n\r\n/**\r\n * A sheet used to show secondary content anchored to the bottom of the screen.\r\n *\r\n * @description\r\n * The `m3e-bottom-sheet` component implements a Material 3 bottom sheet with\r\n * gesture‑driven resizing, detent snapping, and adaptive motion. It behaves as\r\n * a heavy surface: transitions use non‑bouncy, decelerating motion.\r\n *\r\n * The sheet supports direct manipulation through vertical drag gestures.\r\n * Movement below an 8px threshold is ignored to ensure reliable tap‑to‑cycle\r\n * behavior on the handle. Once activated, dragging updates the sheet height\r\n * with friction near the minimum height to prevent abrupt collapse.\r\n *\r\n * When detents are defined, the sheet snaps to the nearest detent on release.\r\n * If hideable, downward gestures may dismiss the sheet using either velocity\r\n * or a small distance threshold below the collapsed detent. When no detents\r\n * are present, the sheet behaves as a simple open/hidden surface with a\r\n * bottom‑measured hide threshold.\r\n *\r\n * @example\r\n * The following example shows a modal bottom sheet with a drag handle,\r\n * three detents (`fit`, `half`, and `full`), and an action list. The sheet\r\n * is opened using a dedicated `m3e-bottom-sheet-trigger` associated by ID.\r\n * ```html\r\n * <m3e-button>\r\n * <m3e-bottom-sheet-trigger for=\"bottomSheet\">\r\n * Open Bottom sheet\r\n * </m3e-bottom-sheet-trigger>\r\n * </m3e-button>\r\n *\r\n * <m3e-bottom-sheet id=\"bottomSheet\" modal handle hideable detents=\"fit half full\">\r\n * <m3e-action-list>\r\n * <m3e-list-action autofocus>\r\n * <m3e-bottom-sheet-action>Google Keep</m3e-bottom-sheet-action>\r\n * <span slot=\"supporting-text\">Add to a note</span>\r\n * </m3e-list-action>\r\n * <m3e-list-action>\r\n * <m3e-bottom-sheet-action>Google Docs</m3e-bottom-sheet-action>\r\n * <span slot=\"supporting-text\">Embed in a document</span>\r\n * </m3e-list-action>\r\n * </m3e-action-list>\r\n * </m3e-bottom-sheet>\r\n * ```\r\n *\r\n * @tag m3e-bottom-sheet\r\n *\r\n * @slot - Renders the content of the sheet.\r\n * @slot header - Renders the header of the sheet.\r\n *\r\n * @attr detent - The zero‑based index of the detent the sheet should open to.\r\n * @attr detents - Detents (discrete height states) the sheet can snap to.\r\n * @attr handle - Whether to display a drag handle and enable the top region of the sheet as a gesture surface for dragging between detents.\r\n * @attr handle-label - The accessible label given to the drag handle.\r\n * @attr hideable - Whether the bottom sheet can hide when its swiped down.\r\n * @attr hide-friction - The friction coefficient to hide the sheet, or set it to the next closest expanded detent.\r\n * @attr modal - Whether the bottom sheet behaves as modal.\r\n * @attr open - Whether the bottom sheet is open.\r\n *\r\n * @fires opening - Emitted when the sheet begins to open.\r\n * @fires opened - Emitted when the sheet has opened.\r\n * @fires cancel - Emitted when the sheet is cancelled.\r\n * @fires closing - Emitted when the sheet begins to close.\r\n * @fires closed - Emitted when the sheet has closed.\r\n *\r\n * @cssprop --m3e-bottom-sheet-width - The width of the sheet.\r\n * @cssprop --m3e-bottom-sheet-max-width - The maximum width of the sheet.\r\n * @cssprop --m3e-bottom-sheet-container-color - The background color of the sheet container.\r\n * @cssprop --m3e-bottom-sheet-elevation - The elevation level when not modal.\r\n * @cssprop --m3e-bottom-sheet-modal-elevation - The elevation level when modal.\r\n * @cssprop --m3e-bottom-sheet-full-elevation - The elevation level when full height.\r\n * @cssprop --m3e-bottom-sheet-z-index - The z-index of the non-modal sheet.\r\n * @cssprop --m3e-bottom-sheet-minimized-container-shape - The border radius when minimized.\r\n * @cssprop --m3e-bottom-sheet-container-shape - The border radius of the sheet container.\r\n * @cssprop --m3e-bottom-sheet-full-container-shape - The border radius when full height.\r\n * @cssprop --m3e-bottom-sheet-scrim-color - The color of the scrim overlay.\r\n * @cssprop --m3e-bottom-sheet-scrim-opacity - The opacity of the scrim overlay.\r\n * @cssprop --m3e-bottom-sheet-peek-height - The visible height when minimized.\r\n * @cssprop --m3e-bottom-sheet-compact-top-space - The top space in compact mode.\r\n * @cssprop --m3e-bottom-sheet-top-space - The top space in standard mode.\r\n * @cssprop --m3e-bottom-sheet-padding-block - The vertical padding.\r\n * @cssprop --m3e-bottom-sheet-padding-inline - The horizontal padding.\r\n * @cssprop --m3e-bottom-sheet-handle-container-height - The height of the drag handle container.\r\n * @cssprop --m3e-bottom-sheet-handle-width - The width of the drag handle.\r\n * @cssprop --m3e-bottom-sheet-handle-height - The height of the drag handle.\r\n * @cssprop --m3e-bottom-sheet-handle-shape - The border radius of the handle.\r\n * @cssprop --m3e-bottom-sheet-handle-color - The color of the drag handle.\r\n * @cssprop --m3e-bottom-sheet-handle-focus-ring-offset - The offset of the focus ring around the handle.\r\n * @cssprop --m3e-bottom-sheet-color - The foreground (text) color of the sheet.\r\n * @cssprop --m3e-bottom-sheet-content-font-size - Font size for the sheet content.\r\n * @cssprop --m3e-bottom-sheet-content-font-weight - Font weight for the sheet content.\r\n * @cssprop --m3e-bottom-sheet-content-line-height - Line height for the sheet content.\r\n * @cssprop --m3e-bottom-sheet-content-tracking - Letter spacing (tracking) for the sheet content.\r\n * @cssprop --m3e-bottom-sheet-header-font-size - Font size for the sheet header.\r\n * @cssprop --m3e-bottom-sheet-header-font-weight - Font weight for the sheet header.\r\n * @cssprop --m3e-bottom-sheet-header-line-height - Line height for the sheet header.\r\n * @cssprop --m3e-bottom-sheet-header-tracking - Letter spacing (tracking) for the sheet header.\r\n */\r\n@customElement(\"m3e-bottom-sheet\")\r\nexport class M3eBottomSheetElement extends EventAttribute(\r\n LitElement,\r\n \"opening\",\r\n \"opened\",\r\n \"cancel\",\r\n \"closing\",\r\n \"closed\",\r\n) {\r\n static {\r\n if (document) {\r\n const lightDomStyle = new CSSStyleSheet();\r\n lightDomStyle.replaceSync(\r\n css`\r\n @property --_bottom-sheet-height {\r\n syntax: \"<length>\";\r\n inherits: false;\r\n initial-value: 50vh;\r\n }\r\n m3e-bottom-sheet > [slot=\"header\"] {\r\n margin-block-end: var(--m3e-bottom-sheet-padding-block, 0.5rem);\r\n margin-inline: var(--m3e-bottom-sheet-padding-inline, 1rem);\r\n }\r\n `.toString(),\r\n );\r\n document.adoptedStyleSheets.push(lightDomStyle);\r\n }\r\n }\r\n\r\n /** The styles of the element. */\r\n static override styles: CSSResultGroup = css`\r\n :host {\r\n display: block;\r\n position: fixed;\r\n left: 50%;\r\n top: calc(100vh - var(--_bottom-sheet-height));\r\n margin: 0;\r\n padding: 0;\r\n outline: none;\r\n overflow: hidden;\r\n border: none;\r\n box-sizing: border-box;\r\n width: var(--m3e-bottom-sheet-width, 100%);\r\n max-width: var(--m3e-bottom-sheet-max-width, 40rem);\r\n height: var(--_bottom-sheet-height);\r\n color: var(--m3e-bottom-sheet-color, ${DesignToken.color.onSurface});\r\n background-color: var(--m3e-bottom-sheet-container-color, ${DesignToken.color.surfaceContainerLow});\r\n transition: ${unsafeCSS(\r\n `transform ${DesignToken.motion.duration.medium2} ${DesignToken.motion.easing.standardDecelerate},\r\n border-radius ${DesignToken.motion.duration.medium2} ${DesignToken.motion.easing.standard}`,\r\n )};\r\n }\r\n :host(:not([modal]):not(.-full)) .elevation {\r\n --m3e-elevation-level: var(--m3e-bottom-sheet-elevation, ${DesignToken.elevation.level1});\r\n }\r\n :host([modal]:not(.-full)) .elevation {\r\n --m3e-elevation-level: var(--m3e-bottom-sheet-modal-elevation, ${DesignToken.elevation.level1});\r\n }\r\n :host(.-full) .elevation {\r\n --m3e-elevation-level: var(--m3e-bottom-sheet-full-elevation, ${DesignToken.elevation.level1});\r\n }\r\n :host(:not([modal])) {\r\n z-index: var(--m3e-bottom-sheet-z-index, 10);\r\n }\r\n :host(:not([modal]):not([open])),\r\n :host([modal]:not(:popover-open)) {\r\n border-radius: var(--m3e-bottom-sheet-minimized-container-shape, ${DesignToken.shape.corner.none});\r\n transform: translateX(-50%) translateY(100%);\r\n }\r\n :host(:not([modal])[open]:not(.-full)),\r\n :host([modal]:not(.-full):popover-open) {\r\n border-radius: var(--m3e-bottom-sheet-container-shape, ${DesignToken.shape.corner.extraLargeTop});\r\n }\r\n :host(:not([modal])[open].-full),\r\n :host([modal].-full:popover-open) {\r\n border-radius: var(--m3e-bottom-sheet-full-container-shape, ${DesignToken.shape.corner.extraLargeTop});\r\n }\r\n :host(:not([modal])[open]),\r\n :host([modal]:popover-open) {\r\n transform: translateX(-50%) translateY(0);\r\n }\r\n :host([modal])::backdrop {\r\n transition: ${unsafeCSS(\r\n `background-color ${DesignToken.motion.duration.short3} ${DesignToken.motion.easing.standard}, \r\n overlay ${DesignToken.motion.duration.short3} ${DesignToken.motion.easing.standard} allow-discrete,\r\n visibility ${DesignToken.motion.duration.short3} ${DesignToken.motion.easing.standard} allow-discrete`,\r\n )};\r\n }\r\n :host([modal]:popover-open)::backdrop {\r\n background-color: color-mix(\r\n in srgb,\r\n var(--m3e-bottom-sheet-scrim-color, ${DesignToken.color.scrim}) var(--m3e-bottom-sheet-scrim-opacity, 32%),\r\n transparent\r\n );\r\n transition: ${unsafeCSS(\r\n `background-color ${DesignToken.motion.duration.long2} ${DesignToken.motion.easing.standard}, \r\n overlay ${DesignToken.motion.duration.long2} ${DesignToken.motion.easing.standard} allow-discrete,\r\n visibility ${DesignToken.motion.duration.long2} ${DesignToken.motion.easing.standard} allow-discrete`,\r\n )};\r\n }\r\n @starting-style {\r\n :host([modal]:popover-open)::backdrop {\r\n background-color: color-mix(\r\n in srgb,\r\n var(--m3e-bottom-sheet-scrim-color, ${DesignToken.color.scrim}) 0%,\r\n transparent\r\n );\r\n }\r\n }\r\n .base {\r\n display: flex;\r\n border-radius: inherit;\r\n flex-direction: column;\r\n height: 100%;\r\n --_bottom-sheet-peek-height: var(--m3e-bottom-sheet-peek-height, 0);\r\n --_bottom-sheet-top-space: var(--m3e-bottom-sheet-compact-top-space, 4.5rem);\r\n }\r\n @media (max-height: 640px) {\r\n .base {\r\n --_bottom-sheet-top-space: var(--m3e-bottom-sheet-top-space, 3.5rem);\r\n }\r\n }\r\n .body {\r\n flex: 1 1 auto;\r\n overflow-y: auto;\r\n scrollbar-width: ${DesignToken.scrollbar.thinWidth};\r\n scrollbar-color: ${DesignToken.scrollbar.color};\r\n padding-block-end: var(--m3e-bottom-sheet-padding-block, 0.5rem);\r\n padding-inline: var(--m3e-bottom-sheet-padding-inline, 1rem);\r\n font-size: var(--m3e-bottom-sheet-content-font-size, ${DesignToken.typescale.standard.body.medium.fontSize});\r\n font-weight: var(\r\n --m3e-bottom-sheet-content-font-weight,\r\n ${DesignToken.typescale.standard.body.medium.fontWeight}\r\n );\r\n line-height: var(\r\n --m3e-bottom-sheet-content-line-height,\r\n ${DesignToken.typescale.standard.body.medium.lineHeight}\r\n );\r\n letter-spacing: var(--m3e-bottom-sheet-content-tracking, ${DesignToken.typescale.standard.body.medium.tracking});\r\n }\r\n .content {\r\n height: fit-content;\r\n }\r\n :host(:not([handle]):not(.-has-header)) .header {\r\n display: none;\r\n }\r\n :host(:not([handle]):not(.-has-header)) .body,\r\n .header {\r\n border-top-left-radius: inherit;\r\n border-top-right-radius: inherit;\r\n padding-block-start: var(--m3e-bottom-sheet-padding-block, 0.5rem);\r\n font-size: var(--m3e-bottom-sheet-header-font-size, ${DesignToken.typescale.standard.title.large.fontSize});\r\n font-weight: var(--m3e-bottom-sheet-header-font-weight, ${DesignToken.typescale.standard.title.large.fontWeight});\r\n line-height: var(--m3e-bottom-sheet-header-line-height, ${DesignToken.typescale.standard.title.large.lineHeight});\r\n letter-spacing: var(--m3e-bottom-sheet-header-tracking, ${DesignToken.typescale.standard.title.large.tracking});\r\n }\r\n .header {\r\n cursor: grab;\r\n user-select: none;\r\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\r\n box-sizing: border-box;\r\n flex: none;\r\n display: flex;\r\n flex-direction: column;\r\n min-height: 3rem;\r\n --m3e-app-bar-container-color: var(--m3e-bottom-sheet-container-color, ${DesignToken.color.surfaceContainerLow});\r\n }\r\n .handle-row {\r\n position: relative;\r\n flex: none;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n opacity: 1;\r\n visibility: visible;\r\n transition: ${unsafeCSS(\r\n `opacity ${DesignToken.motion.duration.short3} ${DesignToken.motion.easing.standard},\r\n padding ${DesignToken.motion.duration.short3} ${DesignToken.motion.easing.standard},\r\n height ${DesignToken.motion.duration.short3} ${DesignToken.motion.easing.standard},\r\n visibility ${DesignToken.motion.duration.short3} ${DesignToken.motion.easing.standard} allow-discrete`,\r\n )};\r\n height: var(--m3e-bottom-sheet-handle-container-height, 1.5rem);\r\n }\r\n .handle {\r\n position: relative;\r\n width: var(--m3e-bottom-sheet-handle-width, 2rem);\r\n height: var(--m3e-bottom-sheet-handle-height, 4px);\r\n border-radius: var(--m3e-bottom-sheet-handle-shape, ${DesignToken.shape.corner.full});\r\n background-color: var(--m3e-bottom-sheet-handle-color, ${DesignToken.color.onSurfaceVariant});\r\n }\r\n .handle-touch {\r\n position: absolute;\r\n aspect-ratio: 1 / 1;\r\n height: 3rem;\r\n left: calc(0px - calc(calc(3rem - var(--m3e-bottom-sheet-handle-width, 2rem)) / 2));\r\n right: calc(0px - calc(calc(3rem - var(--m3e-bottom-sheet-handle-width, 2rem)) / 2));\r\n top: calc(\r\n 0px - calc(\r\n calc(3rem - var(--m3e-bottom-sheet-handle-container-height, 1.5rem)) - calc(\r\n var(--m3e-bottom-sheet-handle-height, 4px) / 2\r\n )\r\n )\r\n );\r\n }\r\n @media (prefers-reduced-motion) {\r\n :host,\r\n :host([modal])::backdrop,\r\n :host([modal]:popover-open)::backdrop,\r\n .handle {\r\n transition: none;\r\n }\r\n }\r\n @media (forced-colors: active) {\r\n :host([modal])::backdrop,\r\n :host([modal]:popover-open)::backdrop {\r\n transition: none;\r\n }\r\n .base {\r\n border-style: solid;\r\n border-width: 1px;\r\n border-color: CanvasText;\r\n }\r\n .handle {\r\n background-color: ButtonText;\r\n }\r\n }\r\n `;\r\n\r\n /** @private */ private static __openSheet?: M3eBottomSheetElement;\r\n\r\n /** @private */ readonly #documentClickHandler = (e: Event) => this.#handleDocumentClick(e);\r\n /** @private */ readonly #documentKeyDownHandler = (e: KeyboardEvent) => this.#handleDocumentKeyDown(e);\r\n /** @private */ readonly #windowResizeHandler = () => this.#handleWindowResize();\r\n /** @private */ readonly #inerts = new Array<HTMLElement>();\r\n /** @private */ readonly #velocityTracker = new VelocityTracker();\r\n /** @private */ readonly #scrollLockController = new ScrollLockController(this);\r\n\r\n /** @private */\r\n readonly #resizeController = new ResizeController(this, {\r\n target: null,\r\n skipInitial: true,\r\n callback: (x) => this.#handleSectionResize(x),\r\n });\r\n\r\n /** @private */ #trigger: Element | null = null;\r\n /** @private */ #dragState?: { startY: number; startHeight: number; maxHeight: number; minHeight: number };\r\n /** @private */ #dragged = false;\r\n /** @private */ #activeDetent = 0;\r\n /** @private */ #requestDetent?: number;\r\n /** @private */ #cachedContentHeight = 0;\r\n /** @private */ #cachedHeaderHeight = 0;\r\n /** @private */ #snapAnimation?: Animation;\r\n\r\n /**\r\n * Whether the bottom sheet behaves as modal.\r\n * @default false\r\n */\r\n @property({ type: Boolean, reflect: true }) modal = false;\r\n\r\n /**\r\n * Whether the bottom sheet is open.\r\n * @default false\r\n */\r\n @property({ type: Boolean, reflect: true }) open = false;\r\n\r\n /**\r\n * Whether to display a drag handle and enable the top region of the sheet as a gesture\r\n * surface for dragging between detents.\r\n * @default false\r\n */\r\n @property({ type: Boolean }) handle = false;\r\n\r\n /**\r\n * The accessible label given to the drag handle.\r\n * @default \"Drag handle\"\r\n */\r\n @property({ attribute: \"handle-label\" }) handleLabel = \"Drag handle\";\r\n\r\n /**\r\n * Detents (discrete height states) the sheet can snap to.\r\n * @default []\r\n */\r\n @property({ attribute: \"detents\", converter: spaceSeparatedStringConverter }) detents: string[] = [];\r\n\r\n /**\r\n * The zero‑based index of the detent the sheet should open to.\r\n * @default 0\r\n */\r\n @property({ type: Number }) detent = 0;\r\n\r\n /**\r\n * Whether the bottom sheet can hide when its swiped down.\r\n * @default false\r\n */\r\n @property({ type: Boolean, reflect: true }) hideable = false;\r\n\r\n /**\r\n * The friction coefficient to hide the sheet, or set it to the next closest expanded detent.\r\n * @default 0.5\r\n */\r\n @property({ attribute: \"hide-friction\", type: Number }) hideFriction = 0.5;\r\n\r\n /**\r\n * Shows the sheet.\r\n * @param {number} detent The zero‑based index of the detent the sheet should open to.\r\n */\r\n show(detent: number = this.detent): void {\r\n if (!this.open) {\r\n this.#requestDetent = detent;\r\n this.open = true;\r\n } else if (detent !== undefined && this.#activeDetent !== detent) {\r\n this.#snapToDetent(detent);\r\n }\r\n }\r\n\r\n /** Hides the sheet. */\r\n hide(): void {\r\n this.open = false;\r\n }\r\n\r\n /**\r\n * Toggles the opened state of the sheet.\r\n * @param {number} detent The zero‑based index of the detent the sheet should open to.\r\n */\r\n toggle(detent?: number): void {\r\n if (this.open) {\r\n this.hide();\r\n } else {\r\n this.show(detent);\r\n }\r\n }\r\n\r\n /** Moves the sheet to the next detent. */\r\n cycle(): void {\r\n if (!this.open) {\r\n this.show();\r\n } else if (this.detents.length > 0) {\r\n if (this.#activeDetent < this.detents.length - 1) {\r\n this.#activeDetent++;\r\n this.#snapToDetent(this.#activeDetent);\r\n } else if (this.hideable) {\r\n this.hide();\r\n }\r\n } else {\r\n this.hide();\r\n }\r\n }\r\n\r\n /** @inheritdoc */\r\n protected override update(changedProperties: PropertyValues<this>): void {\r\n super.update(changedProperties);\r\n\r\n if (changedProperties.has(\"modal\")) {\r\n this.role = this.modal ? \"dialog\" : \"region\";\r\n this.ariaModal = this.modal ? \"true\" : null;\r\n this.popover = this.modal ? \"manual\" : null;\r\n }\r\n }\r\n\r\n /** @inheritdoc */\r\n override firstUpdated(_changedProperties: PropertyValues): void {\r\n super.firstUpdated(_changedProperties);\r\n\r\n const content = this.shadowRoot?.querySelector<HTMLElement>(\".content\");\r\n if (content) {\r\n this.#cachedContentHeight = content.clientHeight;\r\n this.#resizeController.observe(content);\r\n }\r\n\r\n const header = this.shadowRoot?.querySelector<HTMLElement>(\".header\");\r\n if (header) {\r\n this.#cachedHeaderHeight = header.clientHeight;\r\n this.#resizeController.observe(header);\r\n }\r\n }\r\n\r\n /** @inheritdoc */\r\n protected override updated(_changedProperties: PropertyValues): void {\r\n super.updated(_changedProperties);\r\n\r\n if (_changedProperties.has(\"open\")) {\r\n if (this.open) {\r\n if (!this.dispatchEvent(new Event(\"opening\", { cancelable: true }))) {\r\n this.open = false;\r\n return;\r\n }\r\n\r\n // Only one sheet can be open at a time.\r\n if (M3eBottomSheetElement.__openSheet !== this) {\r\n M3eBottomSheetElement.__openSheet?.hide();\r\n }\r\n M3eBottomSheetElement.__openSheet = this;\r\n\r\n this.inert = false;\r\n\r\n window.addEventListener(\"resize\", this.#windowResizeHandler);\r\n\r\n // If there are detents (regardless of handle) open to the requested, default (or first) detent.\r\n // Otherwise, open to fit unless its greater than half.\r\n\r\n if (this.detents.length > 0) {\r\n this.#activeDetent = Math.min(Math.max(0, this.#requestDetent ?? this.detent), this.detents.length - 1);\r\n this.#updateHeight(this.#computeDetentHeight(this.detents[this.#activeDetent]));\r\n } else {\r\n this.#updateHeight(Math.min(this.#computeDetentHeight(\"fit\"), this.#computeDetentHeight(\"half\")));\r\n }\r\n this.#requestDetent = undefined;\r\n } else {\r\n if (!this.dispatchEvent(new Event(\"closing\", { cancelable: true }))) {\r\n this.open = true;\r\n return;\r\n }\r\n\r\n // The following ensures layout is stable so that first tab isn't \"skipped\"\r\n requestAnimationFrame(() => (this.inert = true));\r\n\r\n window.removeEventListener(\"resize\", this.#windowResizeHandler);\r\n\r\n if (M3eBottomSheetElement.__openSheet === this) {\r\n M3eBottomSheetElement.__openSheet = undefined;\r\n }\r\n }\r\n\r\n if (this.modal) {\r\n if (this.open) {\r\n this.#trigger = document.activeElement;\r\n this.#applyInert();\r\n this.#scrollLockController.lock();\r\n this.showPopover();\r\n requestAnimationFrame(() => {\r\n document.addEventListener(\"click\", this.#documentClickHandler);\r\n document.addEventListener(\"keydown\", this.#documentKeyDownHandler);\r\n });\r\n\r\n let focusable: HTMLElement | null | undefined = this.querySelector<HTMLElement>(\"[autofocus]\");\r\n if (!focusable || !M3eInteractivityChecker.isFocusable(focusable)) {\r\n focusable = this.shadowRoot?.querySelector(\".handle\");\r\n }\r\n if (focusable) {\r\n focusWhenReady(focusable);\r\n }\r\n } else {\r\n this.#snapToHeight(0).then(() => {\r\n this.#restoreInert();\r\n this.#scrollLockController.unlock();\r\n document.removeEventListener(\"click\", this.#documentClickHandler);\r\n document.removeEventListener(\"keydown\", this.#documentKeyDownHandler);\r\n this.hidePopover();\r\n if (this.#trigger instanceof HTMLElement) {\r\n this.#trigger.focus();\r\n }\r\n this.#trigger = null;\r\n });\r\n }\r\n }\r\n\r\n this.dispatchEvent(new Event(this.open ? \"opened\" : \"closed\"));\r\n }\r\n }\r\n\r\n /** @inheritdoc */\r\n protected override render(): unknown {\r\n return html`<m3e-focus-trap ?disabled=\"${!this.modal}\">\r\n <div class=\"base\">\r\n <m3e-elevation class=\"elevation\"></m3e-elevation>\r\n <div\r\n class=\"header\"\r\n @pointerdown=\"${this.#handleHeaderPointerDown}\"\r\n @pointermove=\"${this.#handleHeaderPointerMove}\"\r\n @pointerup=\"${this.#handleHeaderPointerUp}\"\r\n >\r\n ${this.handle\r\n ? html`<div class=\"handle-row\">\r\n <div\r\n id=\"handle\"\r\n class=\"handle\"\r\n role=\"button\"\r\n aria-label=\"${this.handleLabel}\"\r\n tabindex=\"0\"\r\n @click=\"${this.#handleDragHandleClick}\"\r\n @keydown=\"${this.#handleDragHandleKeyDown}\"\r\n >\r\n <m3e-focus-ring class=\"focus-ring\" for=\"handle\"></m3e-focus-ring>\r\n <div class=\"handle-touch\" aria-hidden=\"true\"></div>\r\n </div>\r\n </div>`\r\n : nothing}\r\n <slot name=\"header\" @slotchange=\"${this.#handleHeaderSlotChange}\"></slot>\r\n </div>\r\n <div class=\"body\">\r\n <div class=\"content\">\r\n <slot></slot>\r\n </div>\r\n </div>\r\n </div>\r\n </m3e-focus-trap>`;\r\n }\r\n\r\n /** @private */\r\n #handleHeaderSlotChange(e: Event): void {\r\n this.classList.toggle(\"-has-header\", hasAssignedNodes(e.target as HTMLSlotElement));\r\n }\r\n\r\n /** @private */\r\n #handleHeaderPointerDown(e: PointerEvent): void {\r\n if (e.button === 2) return;\r\n\r\n if (e.target instanceof HTMLElement && M3eInteractivityChecker.isFocusable(e.target)) {\r\n return;\r\n }\r\n\r\n (<HTMLElement>e.target).setPointerCapture(e.pointerId);\r\n (<HTMLElement>e.target).style.cursor = \"grabbing\";\r\n\r\n this.#velocityTracker.reset();\r\n this.#velocityTracker.add(e.clientY);\r\n\r\n this.#dragState = {\r\n startY: e.clientY,\r\n startHeight: this.clientHeight,\r\n maxHeight: this.#computeMaxHeight(),\r\n minHeight: this.#computeMinHeight(),\r\n };\r\n this.#dragged = false;\r\n }\r\n\r\n /** @private */\r\n #handleHeaderPointerMove(e: PointerEvent): void {\r\n if (!this.#dragState) {\r\n return;\r\n }\r\n\r\n const minDragThreshold = 8;\r\n if (Math.abs(e.clientY - this.#dragState.startY) <= minDragThreshold) {\r\n // Ignore movement under threshold\r\n return;\r\n }\r\n\r\n (e.getCoalescedEvents?.() ?? [e]).forEach((x) => this.#velocityTracker.add(x.clientY, e.timeStamp));\r\n\r\n let newHeight = this.#dragState.startHeight - (e.clientY - this.#dragState.startY);\r\n if (newHeight < this.#dragState.minHeight) {\r\n const overshoot = (this.#dragState.minHeight - newHeight) * this.hideFriction;\r\n newHeight = this.#dragState.minHeight - overshoot;\r\n }\r\n\r\n this.#updateHeight(Math.min(this.#dragState.maxHeight, newHeight));\r\n this.#dragged = true;\r\n }\r\n\r\n /** @private */\r\n #handleHeaderPointerUp(e: PointerEvent): void {\r\n if (!this.#dragState) return;\r\n\r\n try {\r\n (<HTMLElement>e.target).releasePointerCapture(e.pointerId);\r\n (<HTMLElement>e.target).style.cursor = \"\";\r\n\r\n if (!this.#dragged) return;\r\n\r\n const significantVelocityThreshold = e.pointerType === \"touch\" ? 1200 : 500;\r\n const velocity = this.#velocityTracker.getVelocity();\r\n\r\n this.#velocityTracker.reset();\r\n\r\n if (this.hideable && velocity >= significantVelocityThreshold) {\r\n if (this.dispatchEvent(new Event(\"cancel\", { cancelable: true }))) {\r\n this.hide();\r\n }\r\n } else if (Math.abs(velocity) >= significantVelocityThreshold) {\r\n if (this.detents.length > 0) {\r\n const nextDetent = this.#getNextHigherDetent();\r\n if (nextDetent !== this.#activeDetent) {\r\n this.#snapToDetent(nextDetent);\r\n }\r\n } else {\r\n this.#snapToHeight(this.#computeDetentHeight(\"full\"));\r\n }\r\n } else {\r\n const hideDistanceThreshold = 20;\r\n if (this.hideable) {\r\n const collapsed = this.#dragState.minHeight;\r\n if (this.clientHeight < collapsed - hideDistanceThreshold) {\r\n this.hide();\r\n return;\r\n }\r\n }\r\n\r\n if (this.detents.length > 0) {\r\n this.#snapToDetent(this.#getClosestDetent());\r\n } else if (this.clientHeight < this.#dragState.minHeight) {\r\n this.#snapToHeight(this.#dragState.minHeight);\r\n }\r\n }\r\n } finally {\r\n this.#dragState = undefined;\r\n }\r\n }\r\n\r\n /** @private */\r\n #handleDocumentClick(e: Event): void {\r\n if (\r\n this.open &&\r\n this.modal &&\r\n !e.composedPath().includes(this) &&\r\n this.dispatchEvent(new Event(\"cancel\", { cancelable: true }))\r\n ) {\r\n this.hide();\r\n }\r\n }\r\n\r\n /** @private */\r\n #handleDocumentKeyDown(e: KeyboardEvent): void {\r\n if (this.open && this.modal && e.key === \"Escape\" && !e.shiftKey && !e.ctrlKey) {\r\n e.preventDefault();\r\n\r\n if (this.dispatchEvent(new Event(\"cancel\", { cancelable: true }))) {\r\n this.hide();\r\n }\r\n }\r\n }\r\n\r\n /** @private */\r\n #handleWindowResize(): void {\r\n if (this.detents.length > 0 && this.detents[this.#activeDetent] === \"half\") {\r\n this.#updateHeight(this.#computeDetentHeight(\"half\"));\r\n return;\r\n }\r\n\r\n const maxHeight = this.#computeMaxHeight();\r\n if (this.classList.contains(\"-full\")) {\r\n this.#updateHeight(maxHeight);\r\n } else if (this.clientHeight > maxHeight) {\r\n this.#updateHeight(maxHeight);\r\n }\r\n }\r\n\r\n /** @private */\r\n #handleDragHandleClick(): void {\r\n if (!this.#dragged) {\r\n this.cycle();\r\n }\r\n this.#dragged = false;\r\n }\r\n\r\n /** @private */\r\n #handleDragHandleKeyDown(e: KeyboardEvent): void {\r\n if (e.defaultPrevented || !isModifierAllowed(e)) return;\r\n\r\n switch (e.key) {\r\n case \"Up\":\r\n case \"ArrowUp\":\r\n e.preventDefault();\r\n if (this.detents.length > 0) {\r\n const nextDetent = this.#getNextHigherDetent();\r\n if (nextDetent !== this.#activeDetent) {\r\n this.#snapToDetent(nextDetent);\r\n }\r\n } else {\r\n this.#snapToHeight(this.#computeDetentHeight(\"full\"));\r\n }\r\n break;\r\n\r\n case \"Down\":\r\n case \"ArrowDown\":\r\n e.preventDefault();\r\n if (this.detents.length > 0) {\r\n const nextDetent = this.#getNextLowerDetent();\r\n if (nextDetent !== this.#activeDetent) {\r\n this.#snapToDetent(nextDetent);\r\n } else if (this.hideable) {\r\n this.hide();\r\n }\r\n } else if (this.hideable) {\r\n this.hide();\r\n }\r\n\r\n break;\r\n }\r\n }\r\n\r\n /** @private */\r\n #getNextHigherDetent(): number {\r\n const currentHeight = this.clientHeight;\r\n let nextHeight = Infinity;\r\n let nextDetent = this.#activeDetent;\r\n for (let i = 0; i < this.detents.length; i++) {\r\n if (i === this.#activeDetent) continue;\r\n const detentHeight = this.#computeDetentHeight(this.detents[i]);\r\n if (detentHeight > currentHeight && detentHeight < nextHeight) {\r\n nextHeight = detentHeight;\r\n nextDetent = i;\r\n }\r\n }\r\n return nextDetent;\r\n }\r\n\r\n /** @private */\r\n #getNextLowerDetent(): number {\r\n const currentHeight = this.clientHeight;\r\n let nextHeight = -Infinity;\r\n let nextDetent = this.#activeDetent;\r\n for (let i = 0; i < this.detents.length; i++) {\r\n if (i === this.#activeDetent) continue;\r\n const detentHeight = this.#computeDetentHeight(this.detents[i]);\r\n if (detentHeight < currentHeight && detentHeight > nextHeight) {\r\n nextHeight = detentHeight;\r\n nextDetent = i;\r\n }\r\n }\r\n return nextDetent;\r\n }\r\n\r\n /** @private */\r\n #getClosestDetent(): number {\r\n const currentHeight = this.clientHeight;\r\n let closestDetent = this.#activeDetent;\r\n let closestDistance = Infinity;\r\n\r\n for (let i = 0; i < this.detents.length; i++) {\r\n const detentHeight = this.#computeDetentHeight(this.detents[i]);\r\n const distance = Math.abs(currentHeight - detentHeight);\r\n\r\n if (distance < closestDistance) {\r\n closestDistance = distance;\r\n closestDetent = i;\r\n }\r\n }\r\n return closestDetent;\r\n }\r\n\r\n /** @private */\r\n #computeDetentHeight(detent: string): number {\r\n switch (detent) {\r\n case \"collapsed\":\r\n return this.#computeMinHeight();\r\n case \"half\":\r\n return this.#computeMaxHeight() * 0.5;\r\n case \"full\":\r\n return this.#computeMaxHeight();\r\n case \"fit\":\r\n return this.#computeFitHeight();\r\n }\r\n\r\n if (detent.endsWith(\"%\")) {\r\n return this.#computeMaxHeight() * (parseFloat(detent) / 100);\r\n }\r\n\r\n if (detent.endsWith(\"px\")) {\r\n return parseFloat(detent);\r\n }\r\n\r\n return this.#computeMinHeight();\r\n }\r\n\r\n /** @private */\r\n #computeMaxHeight(): number {\r\n const base = this.shadowRoot?.querySelector<HTMLElement>(\".base\");\r\n return window.innerHeight - (base ? computeCssSize(base, \"var(--_bottom-sheet-top-space)\") : 0);\r\n }\r\n\r\n /** @private */\r\n #computeMinHeight(): number {\r\n return this.detents.includes(\"fit\") && !this.detents.includes(\"collapsed\")\r\n ? this.#computeFitHeight()\r\n : this.#computePeekHeight();\r\n }\r\n\r\n /** @private */\r\n #computePeekHeight(): number {\r\n const base = this.shadowRoot?.querySelector<HTMLElement>(\".base\");\r\n return this.#cachedHeaderHeight + (base ? computeCssSize(base, \"var(--_bottom-sheet-peek-height)\") : 0);\r\n }\r\n\r\n /** @private */\r\n #computeFitHeight(): number {\r\n const body = this.shadowRoot?.querySelector<HTMLElement>(\".body\");\r\n if (!body) {\r\n return 0;\r\n }\r\n\r\n const bodyStyle = getComputedStyle(body);\r\n return (\r\n this.#cachedHeaderHeight +\r\n this.#cachedContentHeight +\r\n parseFloat(bodyStyle.paddingBlockStart) +\r\n parseFloat(bodyStyle.paddingBlockEnd)\r\n );\r\n }\r\n\r\n /** @private */\r\n #handleSectionResize(entries: ResizeObserverEntry[]): void {\r\n const oldCachedContentHeight = this.#cachedContentHeight;\r\n const oldCachedHeaderHeight = this.#cachedHeaderHeight;\r\n\r\n for (const entry of entries) {\r\n if (entry.target.classList.contains(\"content\")) {\r\n this.#cachedContentHeight = (<ResizeObserverSize>(\r\n (Array.isArray(entry.borderBoxSize) ? entry.borderBoxSize[0] : entry.borderBoxSize)\r\n )).blockSize;\r\n } else if (entry.target.classList.contains(\"header\")) {\r\n this.#cachedHeaderHeight = (<ResizeObserverSize>(\r\n (Array.isArray(entry.borderBoxSize) ? entry.borderBoxSize[0] : entry.borderBoxSize)\r\n )).blockSize;\r\n }\r\n }\r\n\r\n if (\r\n this.open &&\r\n this.detents.length > 0 &&\r\n (oldCachedContentHeight !== this.#cachedContentHeight || oldCachedHeaderHeight !== this.#cachedHeaderHeight)\r\n ) {\r\n switch (this.detents[this.#activeDetent]) {\r\n case \"fit\":\r\n this.#updateHeight(this.#computeFitHeight());\r\n break;\r\n\r\n case \"collapsed\":\r\n this.#updateHeight(this.#computeMinHeight());\r\n break;\r\n }\r\n }\r\n }\r\n\r\n /** @private */\r\n #snapToDetent(detent: number): void {\r\n if (detent >= 0 && detent < this.detents.length) {\r\n this.#activeDetent = detent;\r\n this.#snapToHeight(this.#computeDetentHeight(this.detents[detent]));\r\n }\r\n }\r\n\r\n /** @private */\r\n async #snapToHeight(height: number): Promise<void> {\r\n if (this.#snapAnimation) {\r\n this.#updateHeight(this.clientHeight);\r\n this.#snapAnimation?.cancel();\r\n this.#snapAnimation = undefined;\r\n }\r\n\r\n if (!prefersReducedMotion()) {\r\n this.#snapAnimation = this.animate(\r\n [{ \"--_bottom-sheet-height\": `${this.clientHeight}px` }, { \"--_bottom-sheet-height\": `${height}px` }],\r\n {\r\n duration: 250,\r\n easing: \"cubic-bezier(0.2, 0.0, 0, 1.0)\",\r\n },\r\n );\r\n this.#snapAnimation.onfinish = () => {\r\n this.#updateHeight(height);\r\n this.#snapAnimation = undefined;\r\n };\r\n await this.#snapAnimation.finished;\r\n } else {\r\n this.#updateHeight(height);\r\n }\r\n }\r\n\r\n /** @private */\r\n #updateHeight(height: number): void {\r\n this.style.setProperty(\"--_bottom-sheet-height\", `${height}px`);\r\n this.classList.toggle(\"-full\", height === this.#computeMaxHeight());\r\n const content = this.shadowRoot?.querySelector<HTMLElement>(\".content\");\r\n if (content) {\r\n content.inert = height <= this.#computePeekHeight();\r\n }\r\n }\r\n\r\n /** @private */\r\n #applyInert() {\r\n this.#inerts.length = 0;\r\n\r\n for (\r\n let current: Node = this as Node;\r\n current.parentNode && current.parentNode !== document.documentElement;\r\n current = current.parentNode\r\n ) {\r\n for (const sibling of current.parentNode.children) {\r\n if (sibling instanceof HTMLElement && sibling !== current && !sibling.inert) {\r\n sibling.inert = true;\r\n this.#inerts.push(sibling);\r\n }\r\n }\r\n }\r\n }\r\n\r\n /** @private */\r\n #restoreInert(): void {\r\n this.#inerts.forEach((x) => (x.inert = false));\r\n this.#inerts.length = 0;\r\n }\r\n}\r\n\r\ninterface M3eBottomSheetElementEventMap extends HTMLElementEventMap {\r\n opening: Event;\r\n opened: Event;\r\n closing: Event;\r\n closed: Event;\r\n cancel: Event;\r\n}\r\n\r\nexport interface M3eBottomSheetElement {\r\n addEventListener<K extends keyof M3eBottomSheetElementEventMap>(\r\n type: K,\r\n listener: (this: M3eBottomSheetElement, ev: M3eBottomSheetElementEventMap[K]) => void,\r\n options?: boolean | AddEventListenerOptions,\r\n ): void;\r\n\r\n addEventListener(\r\n type: string,\r\n listener: EventListenerOrEventListenerObject,\r\n options?: boolean | AddEventListenerOptions,\r\n ): void;\r\n\r\n removeEventListener<K extends keyof M3eBottomSheetElementEventMap>(\r\n type: K,\r\n listener: (this: M3eBottomSheetElement, ev: M3eBottomSheetElementEventMap[K]) => void,\r\n options?: boolean | EventListenerOptions,\r\n ): void;\r\n\r\n removeEventListener(\r\n type: string,\r\n listener: EventListenerOrEventListenerObject,\r\n options?: boolean | EventListenerOptions,\r\n ): void;\r\n}\r\n\r\ndeclare global {\r\n interface HTMLElementTagNameMap {\r\n \"m3e-bottom-sheet\": M3eBottomSheetElement;\r\n }\r\n}\r\n","import { customElement, property } from \"lit/decorators.js\";\r\n\r\nimport { ActionElementBase, HtmlFor } from \"@m3e/web/core\";\r\nimport { addAriaReferencedId, removeAriaReferencedId } from \"@m3e/web/core/a11y\";\r\n\r\nimport { M3eBottomSheetElement } from \"./BottomSheetElement\";\r\n\r\n/**\r\n * An element, nested within a clickable element, used to trigger a bottom sheet.\r\n * @tag m3e-bottom-sheet-trigger\r\n *\r\n * @slot - Renders the content of the trigger.\r\n *\r\n * @attr detent - The zero‑based index of the detent the sheet should open to.\r\n * @attr secondary - Marks this trigger as a secondary trigger for accessibility. Secondary triggers do not receive ARIA ownership.\r\n */\r\n@customElement(\"m3e-bottom-sheet-trigger\")\r\nexport class M3eBottomSheetTriggerElement extends HtmlFor(ActionElementBase) {\r\n /**\r\n * The zero‑based index of the detent the sheet should open to.\r\n * @default undefined\r\n */\r\n @property({ type: Number }) detent?: number;\r\n\r\n /**\r\n * Marks this trigger as a secondary trigger for accessibility. Secondary triggers do not receive ARIA ownership.\r\n * @default false\r\n */\r\n @property({ type: Boolean }) secondary = false;\r\n\r\n /** @inheritdoc */\r\n override attach(control: HTMLElement): void {\r\n if (control instanceof M3eBottomSheetElement) {\r\n super.attach(control);\r\n\r\n if (this.parentElement) {\r\n if (!control.modal) {\r\n if (!this.secondary) {\r\n this.parentElement.ariaExpanded = \"false\";\r\n addAriaReferencedId(this.parentElement, \"aria-controls\", control.id);\r\n if (this.parentElement.id) {\r\n addAriaReferencedId(control, \"aria-labelledby\", this.parentElement.id);\r\n }\r\n }\r\n } else {\r\n this.parentElement.ariaHasPopup = \"dialog\";\r\n }\r\n }\r\n }\r\n }\r\n\r\n /** @inheritdoc */\r\n override detach(): void {\r\n if (this.control && this.parentElement && !this.secondary) {\r\n removeAriaReferencedId(this.parentElement, \"aria-controls\", this.control.id);\r\n }\r\n super.detach();\r\n }\r\n\r\n /** @inheritdoc */\r\n protected override _onClick(): void {\r\n if (this.control instanceof M3eBottomSheetElement) {\r\n if (this.control.modal) {\r\n this.control.show(this.detent);\r\n } else {\r\n this.control.toggle(this.detent);\r\n if (!this.secondary && this.parentElement) {\r\n this.parentElement.ariaExpanded = `${this.control.open}`;\r\n }\r\n }\r\n }\r\n }\r\n}\r\n\r\ndeclare global {\r\n interface HTMLElementTagNameMap {\r\n \"m3e-bottom-sheet-trigger\": M3eBottomSheetTriggerElement;\r\n }\r\n}\r\n"],"names":["__decorate","decorators","target","key","desc","c","arguments","length","r","Object","getOwnPropertyDescriptor","d","Reflect","decorate","i","defineProperty","__classPrivateFieldGet","receiver","state","kind","f","TypeError","has","call","value","get","__classPrivateFieldSet","set","SuppressedError","error","suppressed","message","e","Error","name","t","o","addInitializer","customElements","define","globalThis","ShadowRoot","ShadyCSS","nativeShadow","Document","prototype","CSSStyleSheet","s","Symbol","WeakMap","n","constructor","_$cssResult$","cssText","styleSheet","replaceSync","toString","S","adoptStyles","adoptedStyleSheets","map","document","createElement","litNonce","setAttribute","textContent","appendChild","cssRules","is","h","getOwnPropertyNames","getOwnPropertySymbols","getPrototypeOf","a","trustedTypes","l","emptyScript","p","reactiveElementPolyfillSupport","JSCompiler_renameProperty","u","toAttribute","Boolean","Array","JSON","stringify","fromAttribute","Number","parse","notEqual","b","attribute","type","String","converter","reflect","useDefault","hasChanged","metadata","litPropertyMetadata","y","HTMLElement","_$Ei","push","observedAttributes","finalize","_$Eh","keys","createProperty","hasOwnProperty","create","wrapped","elementProperties","noAccessor","getPropertyDescriptor","requestUpdate","configurable","enumerable","getPropertyOptions","Map","finalized","properties","_$Eu","elementStyles","finalizeStyles","styles","isArray","Set","flat","reverse","unshift","toLowerCase","_$Ep","isUpdatePending","hasUpdated","_$Em","_$Ev","_$ES","Promise","enableUpdating","_$AL","_$E_","forEach","addController","_$EO","add","renderRoot","isConnected","hostConnected","removeController","delete","size","createRenderRoot","shadowRoot","attachShadow","shadowRootOptions","connectedCallback","disconnectedCallback","hostDisconnected","attributeChangedCallback","_$AK","_$ET","removeAttribute","_$Ej","hasAttribute","C","_$EP","_$Eq","reject","scheduleUpdate","performUpdate","shouldUpdate","willUpdate","hostUpdate","update","_$EM","_$AE","hostUpdated","firstUpdated","updated","updateComplete","getUpdateComplete","mode","ReactiveElement","reactiveElementVersions","standardProperty","init","M3eBottomSheetActionElement","ActionElementBase","_onClick","closest","hide","customElement","M3eBottomSheetElement","M3eBottomSheetElement_1","EventAttribute","LitElement","_M3eBottomSheetElement_documentClickHandler","_M3eBottomSheetElement_documentKeyDownHandler","_M3eBottomSheetElement_windowResizeHandler","_M3eBottomSheetElement_instances","_M3eBottomSheetElement_handleWindowResize","_M3eBottomSheetElement_inerts","_M3eBottomSheetElement_velocityTracker","VelocityTracker","_M3eBottomSheetElement_scrollLockController","ScrollLockController","_M3eBottomSheetElement_resizeController","ResizeController","skipInitial","callback","x","_M3eBottomSheetElement_handleSectionResize","_M3eBottomSheetElement_trigger","_M3eBottomSheetElement_dragState","_M3eBottomSheetElement_dragged","_M3eBottomSheetElement_activeDetent","_M3eBottomSheetElement_requestDetent","_M3eBottomSheetElement_cachedContentHeight","_M3eBottomSheetElement_cachedHeaderHeight","_M3eBottomSheetElement_snapAnimation","modal","open","handle","handleLabel","detents","detent","hideable","hideFriction","show","undefined","_M3eBottomSheetElement_snapToDetent","toggle","cycle","_a","changedProperties","role","ariaModal","popover","_changedProperties","content","querySelector","clientHeight","observe","header","dispatchEvent","Event","cancelable","__openSheet","inert","window","addEventListener","Math","min","max","_M3eBottomSheetElement_updateHeight","_M3eBottomSheetElement_computeDetentHeight","requestAnimationFrame","removeEventListener","activeElement","_M3eBottomSheetElement_applyInert","lock","showPopover","focusable","M3eInteractivityChecker","isFocusable","focusWhenReady","_M3eBottomSheetElement_snapToHeight","then","_M3eBottomSheetElement_restoreInert","unlock","hidePopover","focus","render","html","_M3eBottomSheetElement_handleHeaderPointerDown","_M3eBottomSheetElement_handleHeaderPointerMove","_M3eBottomSheetElement_handleHeaderPointerUp","_M3eBottomSheetElement_handleDragHandleClick","_M3eBottomSheetElement_handleDragHandleKeyDown","nothing","_M3eBottomSheetElement_handleHeaderSlotChange","classList","hasAssignedNodes","button","setPointerCapture","pointerId","style","cursor","reset","clientY","startY","startHeight","maxHeight","_M3eBottomSheetElement_computeMaxHeight","minHeight","_M3eBottomSheetElement_computeMinHeight","minDragThreshold","abs","getCoalescedEvents","timeStamp","newHeight","overshoot","releasePointerCapture","significantVelocityThreshold","pointerType","velocity","getVelocity","nextDetent","hideDistanceThreshold","collapsed","_M3eBottomSheetElement_getClosestDetent","composedPath","includes","shiftKey","ctrlKey","preventDefault","contains","defaultPrevented","isModifierAllowed","currentHeight","nextHeight","Infinity","detentHeight","closestDetent","closestDistance","distance","_M3eBottomSheetElement_computeFitHeight","endsWith","parseFloat","base","innerHeight","computeCssSize","body","bodyStyle","getComputedStyle","paddingBlockStart","paddingBlockEnd","entries","oldCachedContentHeight","oldCachedHeaderHeight","entry","borderBoxSize","blockSize","height","cancel","prefersReducedMotion","animate","duration","easing","onfinish","finished","setProperty","_M3eBottomSheetElement_computePeekHeight","current","parentNode","documentElement","sibling","children","lightDomStyle","css","DesignToken","color","onSurface","surfaceContainerLow","unsafeCSS","motion","medium2","standardDecelerate","standard","elevation","level1","shape","corner","none","extraLargeTop","short3","scrim","long2","scrollbar","thinWidth","typescale","medium","fontSize","fontWeight","lineHeight","tracking","title","large","full","onSurfaceVariant","property","spaceSeparatedStringConverter","M3eBottomSheetTriggerElement","HtmlFor","secondary","attach","control","parentElement","ariaExpanded","addAriaReferencedId","id","ariaHasPopup","detach","removeAriaReferencedId"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4]}