@m3e/switch 1.0.0-rc.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 (45) hide show
  1. package/LICENSE +22 -0
  2. package/README.md +174 -0
  3. package/cem.config.mjs +16 -0
  4. package/demo/index.html +65 -0
  5. package/dist/css-custom-data.json +352 -0
  6. package/dist/custom-elements.json +633 -0
  7. package/dist/html-custom-data.json +38 -0
  8. package/dist/index.js +774 -0
  9. package/dist/index.js.map +1 -0
  10. package/dist/index.min.js +399 -0
  11. package/dist/index.min.js.map +1 -0
  12. package/dist/src/SwitchElement.d.ts +147 -0
  13. package/dist/src/SwitchElement.d.ts.map +1 -0
  14. package/dist/src/SwitchIcons.d.ts +3 -0
  15. package/dist/src/SwitchIcons.d.ts.map +1 -0
  16. package/dist/src/index.d.ts +3 -0
  17. package/dist/src/index.d.ts.map +1 -0
  18. package/dist/src/styles/SwitchHandleStyle.d.ts +6 -0
  19. package/dist/src/styles/SwitchHandleStyle.d.ts.map +1 -0
  20. package/dist/src/styles/SwitchIconStyle.d.ts +6 -0
  21. package/dist/src/styles/SwitchIconStyle.d.ts.map +1 -0
  22. package/dist/src/styles/SwitchStateLayerStyle.d.ts +6 -0
  23. package/dist/src/styles/SwitchStateLayerStyle.d.ts.map +1 -0
  24. package/dist/src/styles/SwitchStyle.d.ts +6 -0
  25. package/dist/src/styles/SwitchStyle.d.ts.map +1 -0
  26. package/dist/src/styles/SwitchToken.d.ts +76 -0
  27. package/dist/src/styles/SwitchToken.d.ts.map +1 -0
  28. package/dist/src/styles/SwitchTrackStyle.d.ts +6 -0
  29. package/dist/src/styles/SwitchTrackStyle.d.ts.map +1 -0
  30. package/dist/src/styles/index.d.ts +6 -0
  31. package/dist/src/styles/index.d.ts.map +1 -0
  32. package/eslint.config.mjs +13 -0
  33. package/package.json +48 -0
  34. package/rollup.config.js +32 -0
  35. package/src/SwitchElement.ts +268 -0
  36. package/src/SwitchIcons.ts +2 -0
  37. package/src/index.ts +2 -0
  38. package/src/styles/SwitchHandleStyle.ts +140 -0
  39. package/src/styles/SwitchIconStyle.ts +89 -0
  40. package/src/styles/SwitchStateLayerStyle.ts +43 -0
  41. package/src/styles/SwitchStyle.ts +30 -0
  42. package/src/styles/SwitchToken.ts +145 -0
  43. package/src/styles/SwitchTrackStyle.ts +104 -0
  44. package/src/styles/index.ts +5 -0
  45. package/tsconfig.json +9 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.min.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","../../../node_modules/@lit/reactive-element/decorators/query.js","../../../node_modules/@lit/reactive-element/decorators/base.js","../../src/styles/SwitchToken.ts","../../src/styles/SwitchHandleStyle.ts","../../src/styles/SwitchIconStyle.ts","../../src/styles/SwitchStateLayerStyle.ts","../../src/styles/SwitchStyle.ts","../../src/styles/SwitchTrackStyle.ts","../../src/SwitchElement.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{desc as t}from\"./base.js\";\n/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */function e(e,r){return(n,s,i)=>{const o=t=>t.renderRoot?.querySelector(e)??null;if(r){const{get:e,set:r}=\"object\"==typeof s?n:i??(()=>{const t=Symbol();return{get(){return this[t]},set(e){this[t]=e}}})();return t(n,s,{get(){let t=e.call(this);return void 0===t&&(t=o(this),(null!==t||this.hasUpdated)&&r.call(this,t)),t}})}return t(n,s,{get(){return o(this)}})}}export{e as query};\n//# sourceMappingURL=query.js.map\n","/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nconst e=(e,t,c)=>(c.configurable=!0,c.enumerable=!0,Reflect.decorate&&\"object\"!=typeof t&&Object.defineProperty(e,t,c),c);export{e as desc};\n//# sourceMappingURL=base.js.map\n","import { unsafeCSS } from \"lit\";\r\n\r\nimport { DesignToken } from \"@m3e/core\";\r\n\r\n/**\r\n * Component design tokens that control `M3eSwitchElement`.\r\n * @internal\r\n */\r\nexport const SwitchToken = {\r\n selectedIconColor: unsafeCSS(`var(--m3e-switch-selected-icon-color, ${DesignToken.color.onPrimaryContainer})`),\r\n selectedIconSize: unsafeCSS(\"var(--m3e-switch-selected-icon-size, 1rem)\"),\r\n unselectedIconColor: unsafeCSS(\r\n `var(--m3e-switch-unselected-icon-color, ${DesignToken.color.surfaceContainerHighest})`\r\n ),\r\n unselectedIconSize: unsafeCSS(\"var(--m3e-switch-unselected-icon-size, 1rem)\"),\r\n trackHeight: unsafeCSS(\"var(--m3e-switch-track-height, 2rem)\"),\r\n trackWidth: unsafeCSS(\"var(--m3e-switch-track-width, 3.25rem)\"),\r\n trackOutlineColor: unsafeCSS(`var(--m3e-switch-track-outline-color, ${DesignToken.color.outline})`),\r\n trackOutlineWidth: unsafeCSS(\"var(--m3e-switch-track-outline-width, 0.125rem)\"),\r\n trackShape: unsafeCSS(`var(--m3e-switch-track-shape, ${DesignToken.shape.corner.full})`),\r\n selectedTrackColor: unsafeCSS(`var(--m3e-switch-selected-track-color, ${DesignToken.color.primary})`),\r\n unselectedTrackColor: unsafeCSS(\r\n `var(--m3e-switch-unselected-track-color, ${DesignToken.color.surfaceContainerHighest})`\r\n ),\r\n unselectedHandleHeight: unsafeCSS(\"var(--m3e-switch-unselected-handle-height, 1rem)\"),\r\n unselectedHandleWidth: unsafeCSS(\"var(--m3e-switch-unselected-handle-width, 1rem)\"),\r\n withIconHandleHeight: unsafeCSS(\"var(--m3e-switch-with-icon-handle-height, 1.5rem)\"),\r\n withIconHandleWidth: unsafeCSS(\"var(--m3e-switch-with-icon-handle-width, 1.5rem)\"),\r\n selectedHandleHeight: unsafeCSS(\"var(--m3e-switch-selected-handle-height, 1.5rem)\"),\r\n selectedHandleWidth: unsafeCSS(\"var(--m3e-switch-selected-handle-width, 1.5rem)\"),\r\n pressedHandleHeight: unsafeCSS(\"var(--m3e-switch-pressed-handle-height, 1.75rem)\"),\r\n pressedHandleWidth: unsafeCSS(\"var(--m3e-switch-pressed-handle-width, 1.75rem)\"),\r\n handleShape: unsafeCSS(`var(--m3e-switch-handle-shape, ${DesignToken.shape.corner.full})`),\r\n selectedHandleColor: unsafeCSS(`var(--m3e-switch-selected-handle-color, ${DesignToken.color.onPrimary})`),\r\n unselectedHandleColor: unsafeCSS(`var(--m3e-switch-unselected-handle-color, ${DesignToken.color.outline})`),\r\n stateLayerSize: unsafeCSS(\"var(--m3e-switch-state-layer-size, 2.5rem)\"),\r\n stateLayerShape: unsafeCSS(`var(--m3e-switch-state-layer-shape, ${DesignToken.shape.corner.full})`),\r\n disabledSelectedIconColor: unsafeCSS(\r\n `var(--m3e-switch-disabled-selected-icon-color, ${DesignToken.color.onSurface})`\r\n ),\r\n disabledSelectedIconOpacity: unsafeCSS(\"var(--m3e-switch-disabled-selected-icon-opacity, 38%)\"),\r\n disabledUnselectedIconColor: unsafeCSS(\r\n `var(--m3e-switch-disabled-unselected-icon-color, ${DesignToken.color.surfaceContainerHighest})`\r\n ),\r\n disabledUnselectedIconOpacity: unsafeCSS(\"var(--m3e-switch-disabled-unselected-icon-opacity, 38%)\"),\r\n disabledTrackOpacity: unsafeCSS(\"var(--m3e-switch-disabled-track-opacity, 12%)\"),\r\n disabledSelectedTrackColor: unsafeCSS(\r\n `var(--m3e-switch-disabled-selected-track-color, ${DesignToken.color.onSurface})`\r\n ),\r\n disabledUnselectedTrackColor: unsafeCSS(\r\n `var(--m3e-switch-disabled-unselected-track-color, ${DesignToken.color.surfaceContainerHighest})`\r\n ),\r\n disabledUnselectedTrackOutlineColor: unsafeCSS(\r\n `var(--m3e-switch-disabled-unselected-track-outline-color, ${DesignToken.color.onSurface})`\r\n ),\r\n disabledUnselectedHandleOpacity: unsafeCSS(\"var(--m3e-switch-disabled-unselected-handle-opacity, 38%)\"),\r\n disabledSelectedHandleOpacity: unsafeCSS(\"var(--m3e-switch-disabled-selected-handle-opacity, 100%)\"),\r\n disabledSelectedHandleColor: unsafeCSS(\r\n `var(--m3e-switch-disabled-selected-handle-color, ${DesignToken.color.surface})`\r\n ),\r\n disabledUnselectedHandleColor: unsafeCSS(\r\n `var(--m3e-switch-disabled-unselected-handle-color, ${DesignToken.color.onSurface})`\r\n ),\r\n selectedHoverIconColor: unsafeCSS(\r\n `var(--m3e-switch-selected-hover-icon-color, ${DesignToken.color.onPrimaryContainer})`\r\n ),\r\n unselectedHoverIconColor: unsafeCSS(\r\n `var(--m3e-switch-unselected-hover-icon-color, ${DesignToken.color.surfaceContainerHighest})`\r\n ),\r\n selectedHoverTrackColor: unsafeCSS(`var(--m3e-switch-selected-hover-track-color, ${DesignToken.color.primary})`),\r\n selectedHoverStateLayerColor: unsafeCSS(\r\n `var(--m3e-switch-selected-hover-state-layer-color, ${DesignToken.color.primary})`\r\n ),\r\n selectedHoverStateLayerOpacity: unsafeCSS(\"var(--m3e-switch-selected-hover-state-layer-opacity, 8%)\"),\r\n unselectedHoverTrackColor: unsafeCSS(\r\n `var(--m3e-switch-unselected-hover-track-color, ${DesignToken.color.surfaceContainerHighest})`\r\n ),\r\n unselectedHoverTrackOutlineColor: unsafeCSS(\r\n `var(--m3e-switch-unselected-hover-track-outline-color, ${DesignToken.color.outline})`\r\n ),\r\n unselectedHoverStateLayerColor: unsafeCSS(\r\n `var(--m3e-switch-unselected-hover-state-layer-color, ${DesignToken.color.onSurface})`\r\n ),\r\n unselectedHoverStateLayerOpacity: unsafeCSS(\"var(--m3e-switch-unselected-hover-state-layer-opacity, 8%)\"),\r\n selectedHoverHandleColor: unsafeCSS(\r\n `var(--m3e-switch-selected-hover-handle-color, ${DesignToken.color.surfaceContainerHighest})`\r\n ),\r\n unselectedHoverHandleColor: unsafeCSS(\r\n `var(--m3e-switch-unselected-hover-handle-color, ${DesignToken.color.onSurfaceVariant})`\r\n ),\r\n selectedFocusIconColor: unsafeCSS(\r\n `var(--m3e-switch-selected-focus-icon-color, ${DesignToken.color.onPrimaryContainer})`\r\n ),\r\n unselectedFocusIconColor: unsafeCSS(\r\n `var(--m3e-switch-unselected-focus-icon-color, ${DesignToken.color.surfaceContainerHighest})`\r\n ),\r\n selectedFocusTrackColor: unsafeCSS(`var(--m3e-switch-selected-focus-track-color, ${DesignToken.color.primary})`),\r\n selectedFocusStateLayerColor: unsafeCSS(\r\n `var(--m3e-switch-selected-focus-state-layer-color, ${DesignToken.color.primary})`\r\n ),\r\n selectedFocusStateLayerOpacity: unsafeCSS(\"var(--m3e-switch-selected-focus-state-layer-opacity, 10%)\"),\r\n unselectedFocusTrackColor: unsafeCSS(\r\n `var(--m3e-switch-unselected-focus-track-color, ${DesignToken.color.surfaceContainerHighest})`\r\n ),\r\n unselectedFocusTrackOutlineColor: unsafeCSS(\r\n `var(--m3e-switch-unselected-focus-track-outline-color, ${DesignToken.color.outline})`\r\n ),\r\n unselectedFocusStateLayerColor: unsafeCSS(\r\n `var(--m3e-switch-unselected-focus-state-layer-color, ${DesignToken.color.onSurface})`\r\n ),\r\n unselectedFocusStateLayerOpacity: unsafeCSS(\"var(--m3e-switch-unselected-focus-state-layer-opacity, 10%)\"),\r\n selectedFocusHandleColor: unsafeCSS(\r\n `var(--m3e-switch-selected-focus-handle-color, ${DesignToken.color.primaryContainer})`\r\n ),\r\n unselectedFocusHandleColor: unsafeCSS(\r\n `var(--m3e-switch-unselected-focus-handle-color, ${DesignToken.color.onSurfaceVariant})`\r\n ),\r\n selectedPressedIconColor: unsafeCSS(\r\n `var(--m3e-switch-selected-pressed-icon-color, ${DesignToken.color.onPrimaryContainer})`\r\n ),\r\n unselectedPressedIconColor: unsafeCSS(\r\n `var(--m3e-switch-unselected-pressed-icon-color, ${DesignToken.color.surfaceContainerHighest})`\r\n ),\r\n selectedPressedTrackColor: unsafeCSS(`var(--m3e-switch-selected-pressed-track-color, ${DesignToken.color.primary})`),\r\n selectedPressedStateLayerColor: unsafeCSS(\r\n `var(--m3e-switch-selected-pressed-state-layer-color, ${DesignToken.color.primary})`\r\n ),\r\n selectedPressedStateLayerOpacity: unsafeCSS(\"var(--m3e-switch-selected-pressed-state-layer-opacity, 10%)\"),\r\n unselectedPressedTrackColor: unsafeCSS(\r\n `var(--m3e-switch-unselected-pressed-track-color, ${DesignToken.color.surfaceContainerHighest})`\r\n ),\r\n unselectedPressedTrackOutlineColor: unsafeCSS(\r\n `var(--m3e-switch-unselected-pressed-track-outline-color, ${DesignToken.color.outline})`\r\n ),\r\n unselectedPressedStateLayerColor: unsafeCSS(\r\n `var(--m3e-switch-unselected-pressed-state-layer-color, ${DesignToken.color.onSurface})`\r\n ),\r\n unselectedPressedStateLayerOpacity: unsafeCSS(\"var(--m3e-switch-unselected-pressed-state-layer-opacity, 10%)\"),\r\n selectedPressedHandleColor: unsafeCSS(\r\n `var(--m3e-switch-selected-pressed-handle-color, ${DesignToken.color.primaryContainer})`\r\n ),\r\n unselectedPressedHandleColor: unsafeCSS(\r\n `var(--m3e-switch-unselected-pressed-handle-color, ${DesignToken.color.onSurfaceVariant})`\r\n ),\r\n} as const;\r\n","import { css, unsafeCSS } from \"lit\";\r\nimport { DesignToken } from \"@m3e/core\";\r\n\r\nimport { SwitchToken } from \"./SwitchToken\";\r\n\r\n/**\r\n * Handle styles for `M3eSwitchElement`.\r\n * @internal\r\n */\r\nexport const SwitchHandleStyle = css`\r\n .handle {\r\n position: relative;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n pointer-events: none;\r\n transform-origin: center center;\r\n border-radius: ${SwitchToken.handleShape};\r\n transition: ${unsafeCSS(\r\n `background-color ${DesignToken.motion.duration.short4} ${DesignToken.motion.easing.standard},\r\n transform var(--_switch-handle-effect),\r\n width ${DesignToken.motion.spring.fastEffects},\r\n height ${DesignToken.motion.spring.fastEffects}`\r\n )};\r\n }\r\n .track:not(.pressed) .handle {\r\n --_switch-handle-effect: ${DesignToken.motion.spring.fastSpatial};\r\n }\r\n .track.pressed .handle {\r\n --_switch-handle-effect: ${DesignToken.motion.spring.fastEffects};\r\n }\r\n :host(:not([aria-disabled=\"true\"]):not([checked])[icons=\"both\"]) .track:not(.pressed) .handle {\r\n width: ${SwitchToken.withIconHandleWidth};\r\n height: ${SwitchToken.withIconHandleHeight};\r\n }\r\n :host(:not([checked]):not([icons=\"both\"])) .track:not(.pressed) .handle,\r\n :host([aria-disabled=\"true\"]:not([checked])) .handle {\r\n width: ${SwitchToken.unselectedHandleWidth};\r\n height: ${SwitchToken.unselectedHandleHeight};\r\n }\r\n :host([checked]) .track:not(.pressed) .handle {\r\n width: ${SwitchToken.selectedHandleWidth};\r\n height: ${SwitchToken.selectedHandleHeight};\r\n }\r\n .track.pressed .handle {\r\n width: ${SwitchToken.pressedHandleWidth};\r\n height: ${SwitchToken.pressedHandleHeight};\r\n }\r\n :host(:not([aria-disabled=\"true\"]):not([checked]):not(:focus):not(:hover)) .track:not(.pressed) .handle {\r\n background-color: ${SwitchToken.unselectedHandleColor};\r\n }\r\n :host(:not([aria-disabled=\"true\"]):not([checked]):not(:focus):hover) .track:not(.pressed) .handle {\r\n background-color: ${SwitchToken.unselectedHoverHandleColor};\r\n }\r\n :host(:not([aria-disabled=\"true\"]):not([checked]):focus) .track:not(.pressed) .handle {\r\n background-color: ${SwitchToken.unselectedFocusHandleColor};\r\n }\r\n :host(:not([aria-disabled=\"true\"]):not([checked])) .track.pressed .handle {\r\n background-color: ${SwitchToken.unselectedPressedHandleColor};\r\n }\r\n :host(:not([aria-disabled=\"true\"])[checked]:not(:focus):not(:hover)) .track:not(.pressed) .handle {\r\n background-color: ${SwitchToken.selectedHandleColor};\r\n }\r\n :host(:not([aria-disabled=\"true\"])[checked]:not(:focus):hover) .track:not(.pressed) .handle {\r\n background-color: ${SwitchToken.selectedHoverHandleColor};\r\n }\r\n :host(:not([aria-disabled=\"true\"])[checked]:focus) .track:not(.pressed) .handle {\r\n background-color: ${SwitchToken.selectedFocusHandleColor};\r\n }\r\n :host(:not([aria-disabled=\"true\"])[checked]) .track.pressed .handle {\r\n background-color: ${SwitchToken.selectedPressedHandleColor};\r\n }\r\n :host([aria-disabled=\"true\"]:not([checked])) .handle {\r\n background-color: color-mix(\r\n in srgb,\r\n ${SwitchToken.disabledUnselectedHandleColor} ${SwitchToken.disabledUnselectedHandleOpacity},\r\n transparent\r\n );\r\n }\r\n :host([aria-disabled=\"true\"][checked]) .handle {\r\n background-color: color-mix(\r\n in srgb,\r\n ${SwitchToken.disabledSelectedHandleColor} ${SwitchToken.disabledSelectedHandleOpacity},\r\n transparent\r\n );\r\n }\r\n :host([checked]) .track:not(.pressed) .handle {\r\n transform: translateX(\r\n calc(${SwitchToken.trackWidth} - ${SwitchToken.selectedHandleWidth} - ${SwitchToken.trackOutlineWidth})\r\n );\r\n }\r\n :host([checked]) .track.pressed .handle {\r\n transform: translateX(\r\n calc(${SwitchToken.trackWidth} - ${SwitchToken.pressedHandleWidth} - ${SwitchToken.trackOutlineWidth})\r\n );\r\n }\r\n :host(:not([checked]):not([icons=\"both\"])) .track:not(.pressed) .handle,\r\n :host([aria-disabled=\"true\"]:not([checked])) .handle {\r\n transform: translateX(\r\n calc(\r\n ${SwitchToken.trackOutlineWidth} + calc(${SwitchToken.pressedHandleWidth} - ${SwitchToken.withIconHandleWidth})\r\n )\r\n );\r\n }\r\n :host(:not([aria-disabled=\"true\"]):not([checked])[icons=\"both\"]) .track:not(.pressed) .handle {\r\n transform: translateX(${SwitchToken.trackOutlineWidth});\r\n }\r\n @media (forced-colors: active) {\r\n .handle {\r\n transition: ${unsafeCSS(\r\n `transform var(--_switch-handle-effect),\r\n width ${DesignToken.motion.spring.fastEffects},\r\n height ${DesignToken.motion.spring.fastEffects}`\r\n )};\r\n }\r\n :host(:not([aria-disabled=\"true\"]):not([checked]):not(:focus):not(:hover)) .track:not(.pressed) .handle,\r\n :host(:not([aria-disabled=\"true\"]):not([checked]):not(:focus):hover) .track:not(.pressed) .handle,\r\n :host(:not([aria-disabled=\"true\"]):not([checked]):focus) .track:not(.pressed) .handle,\r\n :host(:not([aria-disabled=\"true\"]):not([checked])) .track.pressed .handle {\r\n background-color: ButtonText;\r\n }\r\n :host([aria-disabled=\"true\"]:not([checked])) .handle {\r\n background-color: GrayText;\r\n }\r\n :host(:not([aria-disabled=\"true\"])[checked]:not(:focus):not(:hover)) .track:not(.pressed) .handle,\r\n :host(:not([aria-disabled=\"true\"])[checked]:not(:focus):hover) .track:not(.pressed) .handle,\r\n :host(:not([aria-disabled=\"true\"])[checked]:focus) .track:not(.pressed) .handle,\r\n :host(:not([aria-disabled=\"true\"])[checked]) .track.pressed .handle {\r\n background-color: Canvas;\r\n }\r\n :host([aria-disabled=\"true\"][checked]) .handle {\r\n background-color: Canvas;\r\n }\r\n }\r\n @media (prefers-reduced-motion) {\r\n .handle {\r\n transition: none;\r\n }\r\n }\r\n`;\r\n","import { css, unsafeCSS } from \"lit\";\r\nimport { DesignToken } from \"@m3e/core\";\r\n\r\nimport { SwitchToken } from \"./SwitchToken\";\r\n\r\n/**\r\n * Icon styles for `M3eSwitchElement`.\r\n * @internal\r\n */\r\nexport const SwitchIconStyle = css`\r\n :host([icons=\"none\"]) .icon,\r\n :host([icons=\"selected\"]:not([checked])) .icon,\r\n :host([aria-disabled=\"true\"]:not([checked])) .icon {\r\n display: none;\r\n }\r\n .icon {\r\n width: 1em;\r\n transition: ${unsafeCSS(`color ${DesignToken.motion.duration.short4} ${DesignToken.motion.easing.standard}`)};\r\n }\r\n :host(:not([checked])) .icon {\r\n font-size: ${SwitchToken.unselectedIconSize};\r\n }\r\n :host([checked]) .icon {\r\n font-size: ${SwitchToken.selectedIconSize};\r\n }\r\n :host(:not([aria-disabled=\"true\"]):not([checked]):not(:focus):not(:hover)) .track:not(.pressed) .icon {\r\n color: ${SwitchToken.unselectedIconColor};\r\n }\r\n :host(:not([aria-disabled=\"true\"]):not([checked]):not(:focus):hover) .track:not(.pressed) .icon {\r\n color: ${SwitchToken.unselectedHoverIconColor};\r\n }\r\n :host(:not([aria-disabled=\"true\"]):not([checked]):focus) .track:not(.pressed) .icon {\r\n color: ${SwitchToken.unselectedFocusIconColor};\r\n }\r\n :host(:not([aria-disabled=\"true\"]):not([checked])) .track.pressed .icon {\r\n color: ${SwitchToken.unselectedPressedIconColor};\r\n }\r\n :host(:not([aria-disabled=\"true\"])[checked]:not(:focus):not(:hover)) .track:not(.pressed) .icon {\r\n color: ${SwitchToken.selectedIconColor};\r\n }\r\n :host(:not([aria-disabled=\"true\"])[checked]:not(:focus):hover) .track:not(.pressed) .icon {\r\n color: ${SwitchToken.selectedHoverIconColor};\r\n }\r\n :host(:not([aria-disabled=\"true\"])[checked]:focus) .track:not(.pressed) .icon {\r\n color: ${SwitchToken.selectedFocusIconColor};\r\n }\r\n :host(:not([aria-disabled=\"true\"])[checked]) .track.pressed .icon {\r\n color: ${SwitchToken.selectedPressedIconColor};\r\n }\r\n :host([aria-disabled=\"true\"]:not([checked])) .icon {\r\n color: color-mix(\r\n in srgb,\r\n ${SwitchToken.disabledUnselectedIconColor} ${SwitchToken.disabledUnselectedIconOpacity},\r\n transparent\r\n );\r\n }\r\n :host([aria-disabled=\"true\"][checked]) .icon {\r\n color: color-mix(\r\n in srgb,\r\n ${SwitchToken.disabledSelectedIconColor} ${SwitchToken.disabledSelectedIconOpacity},\r\n transparent\r\n );\r\n }\r\n @media (forced-colors: active) {\r\n :host(:not([aria-disabled=\"true\"]):not([checked]):not(:focus):not(:hover)) .track:not(.pressed) .icon,\r\n :host(:not([aria-disabled=\"true\"]):not([checked]):not(:focus):hover) .track:not(.pressed) .icon,\r\n :host(:not([aria-disabled=\"true\"]):not([checked]):focus) .track:not(.pressed) .icon,\r\n :host(:not([aria-disabled=\"true\"]):not([checked])) .track.pressed .icon {\r\n color: Canvas;\r\n }\r\n :host(:not([aria-disabled=\"true\"])[checked]:not(:focus):not(:hover)) .track:not(.pressed) .icon,\r\n :host(:not([aria-disabled=\"true\"])[checked]:not(:focus):hover) .track:not(.pressed) .icon,\r\n :host(:not([aria-disabled=\"true\"])[checked]:focus) .track:not(.pressed) .icon,\r\n :host(:not([aria-disabled=\"true\"])[checked]) .track.pressed .icon {\r\n color: CanvasText;\r\n }\r\n :host([aria-disabled=\"true\"]:not([checked])) .icon {\r\n color: Canvas;\r\n }\r\n :host([aria-disabled=\"true\"][checked]) .icon {\r\n color: GrayText;\r\n }\r\n }\r\n @media (prefers-reduced-motion) {\r\n .icon {\r\n transition: none;\r\n }\r\n }\r\n`;\r\n","import { css } from \"lit\";\r\n\r\nimport { SwitchToken } from \"./SwitchToken\";\r\n\r\n/**\r\n * State layer styles for `M3eSwitchElement`.\r\n * @internal\r\n */\r\nexport const SwitchStateLayerStyle = css`\r\n .state-layer {\r\n width: ${SwitchToken.stateLayerSize};\r\n height: ${SwitchToken.stateLayerSize};\r\n border-radius: ${SwitchToken.stateLayerShape};\r\n }\r\n :host(:not([checked])[icons=\"both\"]) .track:not(.pressed) .state-layer {\r\n left: calc(0px - calc(calc(${SwitchToken.stateLayerSize} - ${SwitchToken.withIconHandleWidth}) / 2));\r\n top: calc(0px - calc(calc(${SwitchToken.stateLayerSize} - ${SwitchToken.withIconHandleHeight}) / 2));\r\n }\r\n :host(:not([checked]):not([icons=\"both\"])) .track:not(.pressed) .state-layer {\r\n left: calc(0px - calc(calc(${SwitchToken.stateLayerSize} - ${SwitchToken.unselectedHandleWidth}) / 2));\r\n top: calc(0px - calc(calc(${SwitchToken.stateLayerSize} - ${SwitchToken.unselectedHandleHeight}) / 2));\r\n }\r\n :host([checked]) .track:not(.pressed) .state-layer {\r\n left: calc(0px - calc(calc(${SwitchToken.stateLayerSize} - ${SwitchToken.selectedHandleWidth}) / 2));\r\n top: calc(0px - calc(calc(${SwitchToken.stateLayerSize} - ${SwitchToken.selectedHandleHeight}) / 2));\r\n }\r\n .track.pressed .state-layer {\r\n left: calc(0px - calc(calc(${SwitchToken.stateLayerSize} - ${SwitchToken.pressedHandleWidth}) / 2));\r\n top: calc(0px - calc(calc(${SwitchToken.stateLayerSize} - ${SwitchToken.pressedHandleWidth}) / 2));\r\n }\r\n :host(:not([checked])) .state-layer {\r\n --m3e-state-layer-hover-color: ${SwitchToken.unselectedHoverStateLayerColor};\r\n --m3e-state-layer-hover-opacity: ${SwitchToken.unselectedHoverStateLayerOpacity};\r\n --m3e-state-layer-focus-color: ${SwitchToken.unselectedFocusStateLayerColor};\r\n --m3e-state-layer-focus-opacity: ${SwitchToken.unselectedFocusStateLayerOpacity};\r\n }\r\n :host([checked]) .state-layer {\r\n --m3e-state-layer-hover-color: ${SwitchToken.selectedHoverStateLayerColor};\r\n --m3e-state-layer-hover-opacity: ${SwitchToken.selectedHoverStateLayerOpacity};\r\n --m3e-state-layer-focus-color: ${SwitchToken.selectedFocusStateLayerColor};\r\n --m3e-state-layer-focus-opacity: ${SwitchToken.selectedFocusStateLayerOpacity};\r\n }\r\n`;\r\n","import { css } from \"lit\";\r\nimport { SwitchToken } from \"./SwitchToken\";\r\n\r\n/**\r\n * Baseline styles for `M3eSwitchElement`.\r\n * @internal\r\n */\r\nexport const SwitchStyle = css`\r\n :host {\r\n display: inline-block;\r\n position: relative;\r\n outline: none;\r\n height: fit-content;\r\n width: fit-content;\r\n }\r\n .focus-ring {\r\n border-radius: ${SwitchToken.trackShape};\r\n }\r\n .touch {\r\n position: absolute;\r\n height: 3rem;\r\n left: 0;\r\n right: 0;\r\n }\r\n .base {\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n }\r\n`;\r\n","import { css, unsafeCSS } from \"lit\";\r\nimport { DesignToken } from \"@m3e/core\";\r\n\r\nimport { SwitchToken } from \"./SwitchToken\";\r\n\r\n/**\r\n * Track styles for `M3eSwitchElement`.\r\n * @internal\r\n */\r\nexport const SwitchTrackStyle = css`\r\n .track {\r\n display: flex;\r\n align-items: center;\r\n position: relative;\r\n box-sizing: border-box;\r\n border-radius: ${SwitchToken.trackShape};\r\n width: ${SwitchToken.trackWidth};\r\n height: ${SwitchToken.trackHeight};\r\n transition: ${unsafeCSS(\r\n `background-color ${DesignToken.motion.duration.short4} ${DesignToken.motion.easing.standard}`\r\n )};\r\n }\r\n :host(:not([checked])) .track {\r\n border-width: ${SwitchToken.trackOutlineWidth};\r\n border-style: solid;\r\n }\r\n :host(:not([aria-disabled=\"true\"]):not([checked]):not(:focus):not(:hover)) .track:not(.pressed) {\r\n border-color: ${SwitchToken.trackOutlineColor};\r\n background-color: ${SwitchToken.unselectedTrackColor};\r\n }\r\n :host(:not([aria-disabled=\"true\"]):not([checked]):not(:focus):hover) .track:not(.pressed) {\r\n border-color: ${SwitchToken.unselectedHoverTrackOutlineColor};\r\n background-color: ${SwitchToken.unselectedHoverTrackColor};\r\n }\r\n :host(:not([aria-disabled=\"true\"]):not([checked]):focus) .track:not(.pressed) {\r\n border-color: ${SwitchToken.unselectedFocusTrackOutlineColor};\r\n background-color: ${SwitchToken.unselectedFocusTrackColor};\r\n }\r\n :host(:not([aria-disabled=\"true\"]):not([checked])) .track.pressed {\r\n border-color: ${SwitchToken.unselectedPressedTrackOutlineColor};\r\n background-color: ${SwitchToken.unselectedPressedTrackColor};\r\n }\r\n :host([aria-disabled=\"true\"]:not([checked])) .track {\r\n border-color: color-mix(\r\n in srgb,\r\n ${SwitchToken.disabledUnselectedTrackOutlineColor} ${SwitchToken.disabledTrackOpacity},\r\n transparent\r\n );\r\n background-color: color-mix(\r\n in srgb,\r\n ${SwitchToken.disabledUnselectedTrackColor} ${SwitchToken.disabledTrackOpacity},\r\n transparent\r\n );\r\n }\r\n :host(:not([aria-disabled=\"true\"])[checked]:not(:focus):not(:hover)) .track:not(.pressed) {\r\n background-color: ${SwitchToken.selectedTrackColor};\r\n }\r\n :host(:not([aria-disabled=\"true\"])[checked]:not(:focus):hover) .track:not(.pressed) {\r\n background-color: ${SwitchToken.selectedHoverTrackColor};\r\n }\r\n :host(:not([aria-disabled=\"true\"])[checked]:focus) .track:not(.pressed) {\r\n background-color: ${SwitchToken.selectedFocusTrackColor};\r\n }\r\n :host(:not([aria-disabled=\"true\"])[checked]) .track.pressed {\r\n background-color: ${SwitchToken.selectedPressedTrackColor};\r\n }\r\n :host([aria-disabled=\"true\"][checked]) .track {\r\n background-color: color-mix(\r\n in srgb,\r\n ${SwitchToken.disabledSelectedTrackColor} ${SwitchToken.disabledTrackOpacity},\r\n transparent\r\n );\r\n }\r\n @media (forced-colors: active) {\r\n .track {\r\n transition: none;\r\n }\r\n :host(:not([aria-disabled=\"true\"]):not([checked]):not(:focus):not(:hover)) .track:not(.pressed),\r\n :host(:not([aria-disabled=\"true\"]):not([checked]):not(:focus):hover) .track:not(.pressed),\r\n :host(:not([aria-disabled=\"true\"]):not([checked]):focus) .track:not(.pressed),\r\n :host(:not([aria-disabled=\"true\"]):not([checked])) .track.pressed {\r\n border-color: ButtonText;\r\n background-color: Canvas;\r\n }\r\n :host([aria-disabled=\"true\"]:not([checked])) .track {\r\n border-color: GrayText;\r\n background-color: Canvas;\r\n }\r\n :host(:not([aria-disabled=\"true\"])[checked]:not(:focus):not(:hover)) .track:not(.pressed),\r\n :host(:not([aria-disabled=\"true\"])[checked]:not(:focus):hover) .track:not(.pressed),\r\n :host(:not([aria-disabled=\"true\"])[checked]:focus) .track:not(.pressed),\r\n :host(:not([aria-disabled=\"true\"])[checked]) .track.pressed {\r\n background-color: ButtonText;\r\n }\r\n :host([aria-disabled=\"true\"][checked]) .track {\r\n background-color: GrayText;\r\n }\r\n }\r\n @media (prefers-reduced-motion) {\r\n .track {\r\n transition: none;\r\n }\r\n }\r\n`;\r\n","import { CSSResultGroup, html, LitElement, PropertyValues } from \"lit\";\r\nimport { customElement, property, query } from \"lit/decorators.js\";\r\n\r\nimport {\r\n Labelled,\r\n Checked,\r\n ConstraintValidation,\r\n Dirty,\r\n Disabled,\r\n FormAssociated,\r\n formValue,\r\n Touched,\r\n AttachInternals,\r\n Role,\r\n M3eFocusRingElement,\r\n M3eStateLayerElement,\r\n Focusable,\r\n KeyboardClick,\r\n PressedController,\r\n HoverController,\r\n} from \"@m3e/core\";\r\n\r\nimport { SwitchHandleStyle, SwitchIconStyle, SwitchStateLayerStyle, SwitchStyle, SwitchTrackStyle } from \"./styles\";\r\n\r\nimport { SwitchIcons } from \"./SwitchIcons\";\r\n\r\n/**\r\n * @summary\r\n * An on/off control that can be toggled by clicking.\r\n *\r\n * @description\r\n * The `m3e-switch` component is a semantic, accessible toggle control that reflects a binary state.\r\n * Designed according to Material Design 3 guidelines, it supports shape transitions, and adaptive color\r\n * theming across selected, unselected, and disabled states. The component responds to user interaction\r\n * with smooth motion and expressive feedback. It supports optional icons (`none`, `selected`, or `both`)\r\n * and integrates with form-associated behavior, emitting `input` and `change` events when toggled.\r\n *\r\n * @example\r\n * The following example illustrates a switch wrapped by a `label`.\r\n *\r\n * ```html\r\n * <label>Switch label&nbsp;<m3e-switch></m3e-switch></label>\r\n * ```\r\n *\r\n * @example\r\n * By default, icons are not presented. Use the `icons` attribute to control which icons to show. The next\r\n * example illustrates showing both the unselected and selected icons.\r\n *\r\n * ```html\r\n * <label>Switch label&nbsp;<m3e-switch icons=\"both\"></m3e-switch></label>\r\n * ```\r\n *\r\n * @tag m3e-switch\r\n *\r\n * @attr checked - Whether the element is checked.\r\n * @attr disabled - Whether the element is disabled.\r\n * @attr icons - The icons to present.\r\n * @attr name - The name that identifies the element when submitting the associated form.\r\n * @attr value - A string representing the value of the switch.\r\n *\r\n * @fires input - Emitted when the checked state changes.\r\n * @fires change - Emitted when the checked state changes.\r\n *\r\n * @cssprop --m3e-switch-selected-icon-color - Color of the icon when the switch is selected.\r\n * @cssprop --m3e-switch-selected-icon-size - Size of the icon in the selected state.\r\n * @cssprop --m3e-switch-unselected-icon-color - Color of the icon when the switch is unselected.\r\n * @cssprop --m3e-switch-unselected-icon-size - Size of the icon in the unselected state.\r\n * @cssprop --m3e-switch-track-height - Height of the switch track.\r\n * @cssprop --m3e-switch-track-width - Width of the switch track.\r\n * @cssprop --m3e-switch-track-outline-color - Color of the track’s outline.\r\n * @cssprop --m3e-switch-track-outline-width - Thickness of the track’s outline.\r\n * @cssprop --m3e-switch-track-shape - Corner shape of the track.\r\n * @cssprop --m3e-switch-selected-track-color - Track color when selected.\r\n * @cssprop --m3e-switch-unselected-track-color - Track color when unselected.\r\n * @cssprop --m3e-switch-unselected-handle-height - Height of the handle when unselected.\r\n * @cssprop --m3e-switch-unselected-handle-width - Width of the handle when unselected.\r\n * @cssprop --m3e-switch-with-icon-handle-height - Height of the handle when icons are present.\r\n * @cssprop --m3e-switch-with-icon-handle-width - Width of the handle when icons are present.\r\n * @cssprop --m3e-switch-selected-handle-height - Height of the handle when selected.\r\n * @cssprop --m3e-switch-selected-handle-width - Width of the handle when selected.\r\n * @cssprop --m3e-switch-pressed-handle-height - Height of the handle during press.\r\n * @cssprop --m3e-switch-pressed-handle-width - Width of the handle during press.\r\n * @cssprop --m3e-switch-handle-shape - Corner shape of the handle.\r\n * @cssprop --m3e-switch-selected-handle-color - Handle color when selected.\r\n * @cssprop --m3e-switch-unselected-handle-color - Handle color when unselected.\r\n * @cssprop --m3e-switch-state-layer-size - Diameter of the state layer overlay.\r\n * @cssprop --m3e-switch-state-layer-shape - Corner shape of the state layer.\r\n * @cssprop --m3e-switch-disabled-selected-icon-color - Icon color when selected and disabled.\r\n * @cssprop --m3e-switch-disabled-selected-icon-opacity - Icon opacity when selected and disabled.\r\n * @cssprop --m3e-switch-disabled-unselected-icon-color - Icon color when unselected and disabled.\r\n * @cssprop --m3e-switch-disabled-unselected-icon-opacity - Icon opacity when unselected and disabled.\r\n * @cssprop --m3e-switch-disabled-track-opacity - Track opacity when disabled.\r\n * @cssprop --m3e-switch-disabled-selected-track-color - Track color when selected and disabled.\r\n * @cssprop --m3e-switch-disabled-unselected-track-color - Track color when unselected and disabled.\r\n * @cssprop --m3e-switch-disabled-unselected-track-outline-color - Outline color when unselected and disabled.\r\n * @cssprop --m3e-switch-disabled-unselected-handle-opacity - Handle opacity when unselected and disabled.\r\n * @cssprop --m3e-switch-disabled-selected-handle-opacity - Handle opacity when selected and disabled.\r\n * @cssprop --m3e-switch-disabled-selected-handle-color - Handle color when selected and disabled.\r\n * @cssprop --m3e-switch-disabled-unselected-handle-color - Handle color when unselected and disabled.\r\n * @cssprop --m3e-switch-selected-hover-icon-color - Icon color when selected and hovered.\r\n * @cssprop --m3e-switch-unselected-hover-icon-color - Icon color when unselected and hovered.\r\n * @cssprop --m3e-switch-selected-hover-track-color - Track color when selected and hovered.\r\n * @cssprop --m3e-switch-selected-hover-state-layer-color - State layer color when selected and hovered.\r\n * @cssprop --m3e-switch-selected-hover-state-layer-opacity - State layer opacity when selected and hovered.\r\n * @cssprop --m3e-switch-unselected-hover-track-color - Track color when unselected and hovered.\r\n * @cssprop --m3e-switch-unselected-hover-track-outline-color - Outline color when unselected and hovered.\r\n * @cssprop --m3e-switch-unselected-hover-state-layer-color - State layer color when unselected and hovered.\r\n * @cssprop --m3e-switch-unselected-hover-state-layer-opacity - State layer opacity when unselected and hovered.\r\n * @cssprop --m3e-switch-selected-hover-handle-color - Handle color when selected and hovered.\r\n * @cssprop --m3e-switch-unselected-hover-handle-color - Handle color when unselected and hovered.\r\n * @cssprop --m3e-switch-selected-focus-icon-color - Icon color when selected and focused.\r\n * @cssprop --m3e-switch-unselected-focus-icon-color - Icon color when unselected and focused.\r\n * @cssprop --m3e-switch-selected-focus-track-color - Track color when selected and focused.\r\n * @cssprop --m3e-switch-selected-focus-state-layer-color - State layer color when selected and focused.\r\n * @cssprop --m3e-switch-selected-focus-state-layer-opacity - State layer opacity when selected and focused.\r\n * @cssprop --m3e-switch-unselected-focus-track-color - Track color when unselected and focused.\r\n * @cssprop --m3e-switch-unselected-focus-track-outline-color - Outline color when unselected and focused.\r\n * @cssprop --m3e-switch-unselected-focus-state-layer-color - State layer color when unselected and focused.\r\n * @cssprop --m3e-switch-unselected-focus-state-layer-opacity - State layer opacity when unselected and focused.\r\n * @cssprop --m3e-switch-selected-focus-handle-color - Handle color when selected and focused.\r\n * @cssprop --m3e-switch-unselected-focus-handle-color - Handle color when unselected and focused.\r\n * @cssprop --m3e-switch-selected-pressed-icon-color - Icon color when selected and pressed.\r\n * @cssprop --m3e-switch-unselected-pressed-icon-color - Icon color when unselected and pressed.\r\n * @cssprop --m3e-switch-selected-pressed-track-color - Track color when selected and pressed.\r\n * @cssprop --m3e-switch-selected-pressed-state-layer-color - State layer color when selected and pressed.\r\n * @cssprop --m3e-switch-selected-pressed-state-layer-opacity - State layer opacity when selected and pressed.\r\n * @cssprop --m3e-switch-unselected-pressed-track-color - Track color when unselected and pressed.\r\n * @cssprop --m3e-switch-unselected-pressed-track-outline-color - Outline color when unselected and pressed.\r\n * @cssprop --m3e-switch-unselected-pressed-state-layer-color - State layer color when unselected and pressed.\r\n * @cssprop --m3e-switch-unselected-pressed-state-layer-opacity - State layer opacity when unselected and pressed.\r\n * @cssprop --m3e-switch-selected-pressed-handle-color - Handle color when selected and pressed.\r\n * @cssprop --m3e-switch-unselected-pressed-handle-color - Handle color when unselected and pressed.\r\n */\r\n@customElement(\"m3e-switch\")\r\nexport class M3eSwitchElement extends Labelled(\r\n Dirty(\r\n Touched(\r\n ConstraintValidation(\r\n Checked(FormAssociated(KeyboardClick(Focusable(Disabled(AttachInternals(Role(LitElement, \"switch\")))))))\r\n )\r\n )\r\n )\r\n) {\r\n /** The styles of the element. */\r\n static override styles: CSSResultGroup = [\r\n SwitchStyle,\r\n SwitchStateLayerStyle,\r\n SwitchTrackStyle,\r\n SwitchHandleStyle,\r\n SwitchIconStyle,\r\n ];\r\n\r\n /** @private */ @query(\".track\") private readonly _track?: HTMLElement;\r\n /** @private */ @query(\".focus-ring\") private readonly _focusRing?: M3eFocusRingElement;\r\n /** @private */ @query(\".state-layer\") private readonly _stateLayer?: M3eStateLayerElement;\r\n /** @private */ readonly #clickHandler = (e: Event) => this.#handleClick(e);\r\n\r\n /** @private */ readonly #hoverController = new HoverController(this, {\r\n target: null,\r\n callback: (hovering) => {\r\n if (this.disabled) return;\r\n if (hovering) {\r\n this._stateLayer?.show(\"hover\");\r\n } else {\r\n this._stateLayer?.hide(\"hover\");\r\n }\r\n },\r\n });\r\n\r\n /** @private */ readonly #pressedController = new PressedController(this, {\r\n target: null,\r\n callback: (pressed) => this._track?.classList.toggle(\"pressed\", pressed && !this.disabled),\r\n });\r\n\r\n constructor() {\r\n super();\r\n\r\n new PressedController(this, {\r\n isPressedKey: (key) => key === \" \" || key === \"Enter\",\r\n callback: (pressed) => this._track?.classList.toggle(\"pressed\", pressed && !this.disabled),\r\n });\r\n }\r\n\r\n /**\r\n * The icons to present.\r\n * @default \"none\"\r\n */\r\n @property({ reflect: true }) icons: SwitchIcons = \"none\";\r\n\r\n /**\r\n * A string representing the value of the switch.\r\n * @default \"on\"\r\n */\r\n @property() value = \"on\";\r\n\r\n /** @inheritdoc @private */\r\n override get [formValue](): string | File | FormData | null {\r\n return !this.checked ? null : this.value;\r\n }\r\n\r\n /** @inheritdoc */\r\n override connectedCallback(): void {\r\n super.connectedCallback();\r\n\r\n this.addEventListener(\"click\", this.#clickHandler);\r\n for (const label of this.labels) {\r\n this.#hoverController.observe(label);\r\n this.#pressedController.observe(label);\r\n }\r\n }\r\n\r\n /** @inheritdoc */\r\n override disconnectedCallback(): void {\r\n super.disconnectedCallback();\r\n\r\n this.removeEventListener(\"click\", this.#clickHandler);\r\n for (const label of this.labels) {\r\n this.#hoverController.unobserve(label);\r\n this.#pressedController.unobserve(label);\r\n }\r\n }\r\n\r\n /** @inheritdoc */\r\n protected override firstUpdated(_changedProperties: PropertyValues): void {\r\n super.firstUpdated(_changedProperties);\r\n [this._focusRing, this._stateLayer].forEach((x) => x?.attach(this));\r\n }\r\n\r\n /** @inheritdoc */\r\n protected override render(): unknown {\r\n return html`<m3e-focus-ring class=\"focus-ring\"></m3e-focus-ring>\r\n <div class=\"track\" aria-hidden=\"true\">\r\n <div class=\"touch\" aria-hidden=\"true\"></div>\r\n <div class=\"handle\">\r\n <m3e-state-layer class=\"state-layer\" ?disabled=\"${this.disabled}\"></m3e-state-layer>\r\n <div class=\"base\">${this.#renderIcon()}</div>\r\n </div>\r\n </div>`;\r\n }\r\n\r\n /** @private */\r\n #renderIcon(): unknown {\r\n return this.checked\r\n ? html`<svg class=\"icon\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\r\n <path fill=\"currentColor\" d=\"M19.69,5.23L8.96,15.96l-4.23-4.23L2.96,13.5l6,6L21.46,7L19.69,5.23z\"></path>\r\n </svg>`\r\n : html`<svg class=\"icon\" viewBox=\"0 -960 960 960\" fill=\"currentColor\">\r\n <path d=\"m256-200-56-56 224-224-224-224 56-56 224 224 224-224 56 56-224 224 224 224-56 56-224-224-224 224Z\" />\r\n </svg>`;\r\n }\r\n\r\n /** @private */\r\n #handleClick(e: Event): void {\r\n if (e.defaultPrevented) return;\r\n this.checked = !this.checked;\r\n if (this.dispatchEvent(new Event(\"input\", { bubbles: true, composed: true, cancelable: true }))) {\r\n this.dispatchEvent(new Event(\"change\", { bubbles: true }));\r\n } else {\r\n this.checked = !this.checked;\r\n }\r\n }\r\n}\r\n\r\ndeclare global {\r\n interface HTMLElementTagNameMap {\r\n \"m3e-switch\": M3eSwitchElement;\r\n }\r\n}\r\n"],"names":["__decorate","decorators","target","key","desc","d","c","arguments","length","r","Object","getOwnPropertyDescriptor","Reflect","decorate","i","defineProperty","__classPrivateFieldGet","receiver","state","kind","f","TypeError","has","call","value","get","SuppressedError","t","globalThis","e","ShadowRoot","ShadyCSS","nativeShadow","Document","prototype","CSSStyleSheet","s","Symbol","o","WeakMap","n$2","constructor","this","_$cssResult$","Error","cssText","styleSheet","replaceSync","set","toString","S","adoptedStyleSheets","map","document","createElement","n","litNonce","setAttribute","textContent","appendChild","cssRules","is","h","getOwnPropertyNames","getOwnPropertySymbols","getPrototypeOf","a","trustedTypes","l","emptyScript","p","reactiveElementPolyfillSupport","u","toAttribute","Boolean","Array","JSON","stringify","fromAttribute","Number","parse","b","attribute","type","String","converter","reflect","useDefault","hasChanged","metadata","litPropertyMetadata","y","HTMLElement","addInitializer","_$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","super","_$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","name","init","querySelector","SwitchToken","unsafeCSS","DesignToken","color","onPrimaryContainer","surfaceContainerHighest","outline","shape","corner","full","primary","onPrimary","onSurface","surface","onSurfaceVariant","primaryContainer","SwitchHandleStyle","css","motion","duration","short4","easing","standard","spring","fastEffects","fastSpatial","SwitchIconStyle","SwitchStateLayerStyle","SwitchStyle","SwitchTrackStyle","M3eSwitchElement","Labelled","Dirty","Touched","ConstraintValidation","Checked","FormAssociated","KeyboardClick","Focusable","Disabled","AttachInternals","Role","LitElement","_M3eSwitchElement_clickHandler","_M3eSwitchElement_hoverController","HoverController","callback","hovering","disabled","_stateLayer","show","hide","_M3eSwitchElement_pressedController","PressedController","pressed","_track","classList","toggle","icons","isPressedKey","_M3eSwitchElement_instances","WeakSet","formValue","checked","addEventListener","label","labels","observe","removeEventListener","unobserve","_changedProperties","_focusRing","x","attach","render","html","_M3eSwitchElement_renderIcon","defaultPrevented","dispatchEvent","Event","bubbles","composed","cancelable","query","property","customElements","define","customElement"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6]}
@@ -0,0 +1,147 @@
1
+ import { CSSResultGroup, LitElement, PropertyValues } from "lit";
2
+ import { formValue } from "@m3e/core";
3
+ import { SwitchIcons } from "./SwitchIcons";
4
+ declare const M3eSwitchElement_base: import("node_modules/@m3e/core/dist/src/shared/mixins/Constructor").Constructor<import("@m3e/core").LabelledMixin> & import("node_modules/@m3e/core/dist/src/shared/mixins/Constructor").Constructor<import("@m3e/core").DirtyMixin> & import("node_modules/@m3e/core/dist/src/shared/mixins/Constructor").Constructor<import("@m3e/core").TouchedMixin> & import("node_modules/@m3e/core/dist/src/shared/mixins/Constructor").Constructor<import("@m3e/core").ConstraintValidationMixin> & import("node_modules/@m3e/core/dist/src/shared/mixins/Constructor").Constructor<import("@m3e/core").CheckedMixin> & import("node_modules/@m3e/core/dist/src/shared/mixins/Constructor").Constructor<import("@m3e/core").FormAssociatedMixin> & import("node_modules/@m3e/core/dist/src/shared/mixins/Constructor").Constructor & import("node_modules/@m3e/core/dist/src/shared/mixins/Constructor").Constructor<import("@m3e/core").DisabledMixin> & import("node_modules/@m3e/core/dist/src/shared/mixins/Constructor").Constructor<import("@m3e/core").AttachInternalsMixin> & typeof LitElement;
5
+ /**
6
+ * @summary
7
+ * An on/off control that can be toggled by clicking.
8
+ *
9
+ * @description
10
+ * The `m3e-switch` component is a semantic, accessible toggle control that reflects a binary state.
11
+ * Designed according to Material Design 3 guidelines, it supports shape transitions, and adaptive color
12
+ * theming across selected, unselected, and disabled states. The component responds to user interaction
13
+ * with smooth motion and expressive feedback. It supports optional icons (`none`, `selected`, or `both`)
14
+ * and integrates with form-associated behavior, emitting `input` and `change` events when toggled.
15
+ *
16
+ * @example
17
+ * The following example illustrates a switch wrapped by a `label`.
18
+ *
19
+ * ```html
20
+ * <label>Switch label&nbsp;<m3e-switch></m3e-switch></label>
21
+ * ```
22
+ *
23
+ * @example
24
+ * By default, icons are not presented. Use the `icons` attribute to control which icons to show. The next
25
+ * example illustrates showing both the unselected and selected icons.
26
+ *
27
+ * ```html
28
+ * <label>Switch label&nbsp;<m3e-switch icons="both"></m3e-switch></label>
29
+ * ```
30
+ *
31
+ * @tag m3e-switch
32
+ *
33
+ * @attr checked - Whether the element is checked.
34
+ * @attr disabled - Whether the element is disabled.
35
+ * @attr icons - The icons to present.
36
+ * @attr name - The name that identifies the element when submitting the associated form.
37
+ * @attr value - A string representing the value of the switch.
38
+ *
39
+ * @fires input - Emitted when the checked state changes.
40
+ * @fires change - Emitted when the checked state changes.
41
+ *
42
+ * @cssprop --m3e-switch-selected-icon-color - Color of the icon when the switch is selected.
43
+ * @cssprop --m3e-switch-selected-icon-size - Size of the icon in the selected state.
44
+ * @cssprop --m3e-switch-unselected-icon-color - Color of the icon when the switch is unselected.
45
+ * @cssprop --m3e-switch-unselected-icon-size - Size of the icon in the unselected state.
46
+ * @cssprop --m3e-switch-track-height - Height of the switch track.
47
+ * @cssprop --m3e-switch-track-width - Width of the switch track.
48
+ * @cssprop --m3e-switch-track-outline-color - Color of the track’s outline.
49
+ * @cssprop --m3e-switch-track-outline-width - Thickness of the track’s outline.
50
+ * @cssprop --m3e-switch-track-shape - Corner shape of the track.
51
+ * @cssprop --m3e-switch-selected-track-color - Track color when selected.
52
+ * @cssprop --m3e-switch-unselected-track-color - Track color when unselected.
53
+ * @cssprop --m3e-switch-unselected-handle-height - Height of the handle when unselected.
54
+ * @cssprop --m3e-switch-unselected-handle-width - Width of the handle when unselected.
55
+ * @cssprop --m3e-switch-with-icon-handle-height - Height of the handle when icons are present.
56
+ * @cssprop --m3e-switch-with-icon-handle-width - Width of the handle when icons are present.
57
+ * @cssprop --m3e-switch-selected-handle-height - Height of the handle when selected.
58
+ * @cssprop --m3e-switch-selected-handle-width - Width of the handle when selected.
59
+ * @cssprop --m3e-switch-pressed-handle-height - Height of the handle during press.
60
+ * @cssprop --m3e-switch-pressed-handle-width - Width of the handle during press.
61
+ * @cssprop --m3e-switch-handle-shape - Corner shape of the handle.
62
+ * @cssprop --m3e-switch-selected-handle-color - Handle color when selected.
63
+ * @cssprop --m3e-switch-unselected-handle-color - Handle color when unselected.
64
+ * @cssprop --m3e-switch-state-layer-size - Diameter of the state layer overlay.
65
+ * @cssprop --m3e-switch-state-layer-shape - Corner shape of the state layer.
66
+ * @cssprop --m3e-switch-disabled-selected-icon-color - Icon color when selected and disabled.
67
+ * @cssprop --m3e-switch-disabled-selected-icon-opacity - Icon opacity when selected and disabled.
68
+ * @cssprop --m3e-switch-disabled-unselected-icon-color - Icon color when unselected and disabled.
69
+ * @cssprop --m3e-switch-disabled-unselected-icon-opacity - Icon opacity when unselected and disabled.
70
+ * @cssprop --m3e-switch-disabled-track-opacity - Track opacity when disabled.
71
+ * @cssprop --m3e-switch-disabled-selected-track-color - Track color when selected and disabled.
72
+ * @cssprop --m3e-switch-disabled-unselected-track-color - Track color when unselected and disabled.
73
+ * @cssprop --m3e-switch-disabled-unselected-track-outline-color - Outline color when unselected and disabled.
74
+ * @cssprop --m3e-switch-disabled-unselected-handle-opacity - Handle opacity when unselected and disabled.
75
+ * @cssprop --m3e-switch-disabled-selected-handle-opacity - Handle opacity when selected and disabled.
76
+ * @cssprop --m3e-switch-disabled-selected-handle-color - Handle color when selected and disabled.
77
+ * @cssprop --m3e-switch-disabled-unselected-handle-color - Handle color when unselected and disabled.
78
+ * @cssprop --m3e-switch-selected-hover-icon-color - Icon color when selected and hovered.
79
+ * @cssprop --m3e-switch-unselected-hover-icon-color - Icon color when unselected and hovered.
80
+ * @cssprop --m3e-switch-selected-hover-track-color - Track color when selected and hovered.
81
+ * @cssprop --m3e-switch-selected-hover-state-layer-color - State layer color when selected and hovered.
82
+ * @cssprop --m3e-switch-selected-hover-state-layer-opacity - State layer opacity when selected and hovered.
83
+ * @cssprop --m3e-switch-unselected-hover-track-color - Track color when unselected and hovered.
84
+ * @cssprop --m3e-switch-unselected-hover-track-outline-color - Outline color when unselected and hovered.
85
+ * @cssprop --m3e-switch-unselected-hover-state-layer-color - State layer color when unselected and hovered.
86
+ * @cssprop --m3e-switch-unselected-hover-state-layer-opacity - State layer opacity when unselected and hovered.
87
+ * @cssprop --m3e-switch-selected-hover-handle-color - Handle color when selected and hovered.
88
+ * @cssprop --m3e-switch-unselected-hover-handle-color - Handle color when unselected and hovered.
89
+ * @cssprop --m3e-switch-selected-focus-icon-color - Icon color when selected and focused.
90
+ * @cssprop --m3e-switch-unselected-focus-icon-color - Icon color when unselected and focused.
91
+ * @cssprop --m3e-switch-selected-focus-track-color - Track color when selected and focused.
92
+ * @cssprop --m3e-switch-selected-focus-state-layer-color - State layer color when selected and focused.
93
+ * @cssprop --m3e-switch-selected-focus-state-layer-opacity - State layer opacity when selected and focused.
94
+ * @cssprop --m3e-switch-unselected-focus-track-color - Track color when unselected and focused.
95
+ * @cssprop --m3e-switch-unselected-focus-track-outline-color - Outline color when unselected and focused.
96
+ * @cssprop --m3e-switch-unselected-focus-state-layer-color - State layer color when unselected and focused.
97
+ * @cssprop --m3e-switch-unselected-focus-state-layer-opacity - State layer opacity when unselected and focused.
98
+ * @cssprop --m3e-switch-selected-focus-handle-color - Handle color when selected and focused.
99
+ * @cssprop --m3e-switch-unselected-focus-handle-color - Handle color when unselected and focused.
100
+ * @cssprop --m3e-switch-selected-pressed-icon-color - Icon color when selected and pressed.
101
+ * @cssprop --m3e-switch-unselected-pressed-icon-color - Icon color when unselected and pressed.
102
+ * @cssprop --m3e-switch-selected-pressed-track-color - Track color when selected and pressed.
103
+ * @cssprop --m3e-switch-selected-pressed-state-layer-color - State layer color when selected and pressed.
104
+ * @cssprop --m3e-switch-selected-pressed-state-layer-opacity - State layer opacity when selected and pressed.
105
+ * @cssprop --m3e-switch-unselected-pressed-track-color - Track color when unselected and pressed.
106
+ * @cssprop --m3e-switch-unselected-pressed-track-outline-color - Outline color when unselected and pressed.
107
+ * @cssprop --m3e-switch-unselected-pressed-state-layer-color - State layer color when unselected and pressed.
108
+ * @cssprop --m3e-switch-unselected-pressed-state-layer-opacity - State layer opacity when unselected and pressed.
109
+ * @cssprop --m3e-switch-selected-pressed-handle-color - Handle color when selected and pressed.
110
+ * @cssprop --m3e-switch-unselected-pressed-handle-color - Handle color when unselected and pressed.
111
+ */
112
+ export declare class M3eSwitchElement extends M3eSwitchElement_base {
113
+ #private;
114
+ /** The styles of the element. */
115
+ static styles: CSSResultGroup;
116
+ /** @private */ private readonly _track?;
117
+ /** @private */ private readonly _focusRing?;
118
+ /** @private */ private readonly _stateLayer?;
119
+ constructor();
120
+ /**
121
+ * The icons to present.
122
+ * @default "none"
123
+ */
124
+ icons: SwitchIcons;
125
+ /**
126
+ * A string representing the value of the switch.
127
+ * @default "on"
128
+ */
129
+ value: string;
130
+ /** @inheritdoc @private */
131
+ get [formValue](): string | File | FormData | null;
132
+ /** @inheritdoc */
133
+ connectedCallback(): void;
134
+ /** @inheritdoc */
135
+ disconnectedCallback(): void;
136
+ /** @inheritdoc */
137
+ protected firstUpdated(_changedProperties: PropertyValues): void;
138
+ /** @inheritdoc */
139
+ protected render(): unknown;
140
+ }
141
+ declare global {
142
+ interface HTMLElementTagNameMap {
143
+ "m3e-switch": M3eSwitchElement;
144
+ }
145
+ }
146
+ export {};
147
+ //# sourceMappingURL=SwitchElement.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SwitchElement.d.ts","sourceRoot":"","sources":["../../src/SwitchElement.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAQ,UAAU,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAGvE,OAAO,EAOL,SAAS,EAUV,MAAM,WAAW,CAAC;AAInB,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;;AAE5C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0GG;AACH,qBACa,gBAAiB,SAAQ,qBAQrC;;IACC,iCAAiC;IACjC,OAAgB,MAAM,EAAE,cAAc,CAMpC;IAEF,eAAe,CAAkB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAc;IACvE,eAAe,CAAuB,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAsB;IACxF,eAAe,CAAwB,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAuB;;IA6B3F;;;OAGG;IAC0B,KAAK,EAAE,WAAW,CAAU;IAEzD;;;OAGG;IACS,KAAK,SAAQ;IAEzB,2BAA2B;IAC3B,IAAa,CAAC,SAAS,CAAC,IAAI,MAAM,GAAG,IAAI,GAAG,QAAQ,GAAG,IAAI,CAE1D;IAED,kBAAkB;IACT,iBAAiB,IAAI,IAAI;IAUlC,kBAAkB;IACT,oBAAoB,IAAI,IAAI;IAUrC,kBAAkB;cACC,YAAY,CAAC,kBAAkB,EAAE,cAAc,GAAG,IAAI;IAKzE,kBAAkB;cACC,MAAM,IAAI,OAAO;CAgCrC;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,YAAY,EAAE,gBAAgB,CAAC;KAChC;CACF"}
@@ -0,0 +1,3 @@
1
+ /** Specifies the possible icons to display in a switch. */
2
+ export type SwitchIcons = "none" | "selected" | "both";
3
+ //# sourceMappingURL=SwitchIcons.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SwitchIcons.d.ts","sourceRoot":"","sources":["../../src/SwitchIcons.ts"],"names":[],"mappings":"AAAA,2DAA2D;AAC3D,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,UAAU,GAAG,MAAM,CAAC"}
@@ -0,0 +1,3 @@
1
+ export * from "./SwitchElement";
2
+ export * from "./SwitchIcons";
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Handle styles for `M3eSwitchElement`.
3
+ * @internal
4
+ */
5
+ export declare const SwitchHandleStyle: import("lit").CSSResult;
6
+ //# sourceMappingURL=SwitchHandleStyle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SwitchHandleStyle.d.ts","sourceRoot":"","sources":["../../../src/styles/SwitchHandleStyle.ts"],"names":[],"mappings":"AAKA;;;GAGG;AACH,eAAO,MAAM,iBAAiB,yBAkI7B,CAAC"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Icon styles for `M3eSwitchElement`.
3
+ * @internal
4
+ */
5
+ export declare const SwitchIconStyle: import("lit").CSSResult;
6
+ //# sourceMappingURL=SwitchIconStyle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SwitchIconStyle.d.ts","sourceRoot":"","sources":["../../../src/styles/SwitchIconStyle.ts"],"names":[],"mappings":"AAKA;;;GAGG;AACH,eAAO,MAAM,eAAe,yBA+E3B,CAAC"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * State layer styles for `M3eSwitchElement`.
3
+ * @internal
4
+ */
5
+ export declare const SwitchStateLayerStyle: import("lit").CSSResult;
6
+ //# sourceMappingURL=SwitchStateLayerStyle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SwitchStateLayerStyle.d.ts","sourceRoot":"","sources":["../../../src/styles/SwitchStateLayerStyle.ts"],"names":[],"mappings":"AAIA;;;GAGG;AACH,eAAO,MAAM,qBAAqB,yBAkCjC,CAAC"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Baseline styles for `M3eSwitchElement`.
3
+ * @internal
4
+ */
5
+ export declare const SwitchStyle: import("lit").CSSResult;
6
+ //# sourceMappingURL=SwitchStyle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SwitchStyle.d.ts","sourceRoot":"","sources":["../../../src/styles/SwitchStyle.ts"],"names":[],"mappings":"AAGA;;;GAGG;AACH,eAAO,MAAM,WAAW,yBAsBvB,CAAC"}
@@ -0,0 +1,76 @@
1
+ /**
2
+ * Component design tokens that control `M3eSwitchElement`.
3
+ * @internal
4
+ */
5
+ export declare const SwitchToken: {
6
+ readonly selectedIconColor: import("lit").CSSResult;
7
+ readonly selectedIconSize: import("lit").CSSResult;
8
+ readonly unselectedIconColor: import("lit").CSSResult;
9
+ readonly unselectedIconSize: import("lit").CSSResult;
10
+ readonly trackHeight: import("lit").CSSResult;
11
+ readonly trackWidth: import("lit").CSSResult;
12
+ readonly trackOutlineColor: import("lit").CSSResult;
13
+ readonly trackOutlineWidth: import("lit").CSSResult;
14
+ readonly trackShape: import("lit").CSSResult;
15
+ readonly selectedTrackColor: import("lit").CSSResult;
16
+ readonly unselectedTrackColor: import("lit").CSSResult;
17
+ readonly unselectedHandleHeight: import("lit").CSSResult;
18
+ readonly unselectedHandleWidth: import("lit").CSSResult;
19
+ readonly withIconHandleHeight: import("lit").CSSResult;
20
+ readonly withIconHandleWidth: import("lit").CSSResult;
21
+ readonly selectedHandleHeight: import("lit").CSSResult;
22
+ readonly selectedHandleWidth: import("lit").CSSResult;
23
+ readonly pressedHandleHeight: import("lit").CSSResult;
24
+ readonly pressedHandleWidth: import("lit").CSSResult;
25
+ readonly handleShape: import("lit").CSSResult;
26
+ readonly selectedHandleColor: import("lit").CSSResult;
27
+ readonly unselectedHandleColor: import("lit").CSSResult;
28
+ readonly stateLayerSize: import("lit").CSSResult;
29
+ readonly stateLayerShape: import("lit").CSSResult;
30
+ readonly disabledSelectedIconColor: import("lit").CSSResult;
31
+ readonly disabledSelectedIconOpacity: import("lit").CSSResult;
32
+ readonly disabledUnselectedIconColor: import("lit").CSSResult;
33
+ readonly disabledUnselectedIconOpacity: import("lit").CSSResult;
34
+ readonly disabledTrackOpacity: import("lit").CSSResult;
35
+ readonly disabledSelectedTrackColor: import("lit").CSSResult;
36
+ readonly disabledUnselectedTrackColor: import("lit").CSSResult;
37
+ readonly disabledUnselectedTrackOutlineColor: import("lit").CSSResult;
38
+ readonly disabledUnselectedHandleOpacity: import("lit").CSSResult;
39
+ readonly disabledSelectedHandleOpacity: import("lit").CSSResult;
40
+ readonly disabledSelectedHandleColor: import("lit").CSSResult;
41
+ readonly disabledUnselectedHandleColor: import("lit").CSSResult;
42
+ readonly selectedHoverIconColor: import("lit").CSSResult;
43
+ readonly unselectedHoverIconColor: import("lit").CSSResult;
44
+ readonly selectedHoverTrackColor: import("lit").CSSResult;
45
+ readonly selectedHoverStateLayerColor: import("lit").CSSResult;
46
+ readonly selectedHoverStateLayerOpacity: import("lit").CSSResult;
47
+ readonly unselectedHoverTrackColor: import("lit").CSSResult;
48
+ readonly unselectedHoverTrackOutlineColor: import("lit").CSSResult;
49
+ readonly unselectedHoverStateLayerColor: import("lit").CSSResult;
50
+ readonly unselectedHoverStateLayerOpacity: import("lit").CSSResult;
51
+ readonly selectedHoverHandleColor: import("lit").CSSResult;
52
+ readonly unselectedHoverHandleColor: import("lit").CSSResult;
53
+ readonly selectedFocusIconColor: import("lit").CSSResult;
54
+ readonly unselectedFocusIconColor: import("lit").CSSResult;
55
+ readonly selectedFocusTrackColor: import("lit").CSSResult;
56
+ readonly selectedFocusStateLayerColor: import("lit").CSSResult;
57
+ readonly selectedFocusStateLayerOpacity: import("lit").CSSResult;
58
+ readonly unselectedFocusTrackColor: import("lit").CSSResult;
59
+ readonly unselectedFocusTrackOutlineColor: import("lit").CSSResult;
60
+ readonly unselectedFocusStateLayerColor: import("lit").CSSResult;
61
+ readonly unselectedFocusStateLayerOpacity: import("lit").CSSResult;
62
+ readonly selectedFocusHandleColor: import("lit").CSSResult;
63
+ readonly unselectedFocusHandleColor: import("lit").CSSResult;
64
+ readonly selectedPressedIconColor: import("lit").CSSResult;
65
+ readonly unselectedPressedIconColor: import("lit").CSSResult;
66
+ readonly selectedPressedTrackColor: import("lit").CSSResult;
67
+ readonly selectedPressedStateLayerColor: import("lit").CSSResult;
68
+ readonly selectedPressedStateLayerOpacity: import("lit").CSSResult;
69
+ readonly unselectedPressedTrackColor: import("lit").CSSResult;
70
+ readonly unselectedPressedTrackOutlineColor: import("lit").CSSResult;
71
+ readonly unselectedPressedStateLayerColor: import("lit").CSSResult;
72
+ readonly unselectedPressedStateLayerOpacity: import("lit").CSSResult;
73
+ readonly selectedPressedHandleColor: import("lit").CSSResult;
74
+ readonly unselectedPressedHandleColor: import("lit").CSSResult;
75
+ };
76
+ //# sourceMappingURL=SwitchToken.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SwitchToken.d.ts","sourceRoot":"","sources":["../../../src/styles/SwitchToken.ts"],"names":[],"mappings":"AAIA;;;GAGG;AACH,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwId,CAAC"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Track styles for `M3eSwitchElement`.
3
+ * @internal
4
+ */
5
+ export declare const SwitchTrackStyle: import("lit").CSSResult;
6
+ //# sourceMappingURL=SwitchTrackStyle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SwitchTrackStyle.d.ts","sourceRoot":"","sources":["../../../src/styles/SwitchTrackStyle.ts"],"names":[],"mappings":"AAKA;;;GAGG;AACH,eAAO,MAAM,gBAAgB,yBA8F5B,CAAC"}
@@ -0,0 +1,6 @@
1
+ export * from "./SwitchHandleStyle";
2
+ export * from "./SwitchIconStyle";
3
+ export * from "./SwitchStateLayerStyle";
4
+ export * from "./SwitchStyle";
5
+ export * from "./SwitchTrackStyle";
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/styles/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,yBAAyB,CAAC;AACxC,cAAc,eAAe,CAAC;AAC9B,cAAc,oBAAoB,CAAC"}
@@ -0,0 +1,13 @@
1
+ import eslint from "@eslint/js";
2
+ import tseslint from "typescript-eslint";
3
+ import { fileURLToPath } from "url";
4
+ import { dirname } from "path";
5
+
6
+ export default tseslint.config(eslint.configs.recommended, tseslint.configs.recommended, {
7
+ languageOptions: {
8
+ parserOptions: {
9
+ project: true,
10
+ tsconfigRootDir: dirname(fileURLToPath(import.meta.url)),
11
+ },
12
+ },
13
+ });
package/package.json ADDED
@@ -0,0 +1,48 @@
1
+ {
2
+ "name": "@m3e/switch",
3
+ "version": "1.0.0-rc.1",
4
+ "description": "Switch for M3E",
5
+ "author": "matraic <matraic@yahoo.com>",
6
+ "license": "MIT",
7
+ "homepage": "https://matraic.github.io/m3e/",
8
+ "repository": {
9
+ "type": "git",
10
+ "url": "https://github.com/matraic/m3e.git"
11
+ },
12
+ "keywords": [
13
+ "material design",
14
+ "web components",
15
+ "switch"
16
+ ],
17
+ "main": "dist/index.js",
18
+ "module": "dist/index.js",
19
+ "browser": "dist/index.min.js",
20
+ "unpkg": "dist/index.min.js",
21
+ "types": "dist/src/index.d.ts",
22
+ "type": "module",
23
+ "scripts": {
24
+ "build": "rollup -c",
25
+ "cem": "cem analyze --config cem.config.mjs",
26
+ "lint": "npx eslint ./src",
27
+ "clean": "rimraf dist"
28
+ },
29
+ "peerDependencies": {
30
+ "@m3e/core": "1.0.0-rc.1",
31
+ "lit": "^3.3.0"
32
+ },
33
+ "devDependencies": {
34
+ "@custom-elements-manifest/analyzer": "^0.10.4",
35
+ "@eslint/js": "^9.30.1",
36
+ "@rollup/plugin-node-resolve": "^16.0.0",
37
+ "@rollup/plugin-terser": "^0.4.4",
38
+ "@rollup/plugin-typescript": "12.1.0",
39
+ "custom-element-vs-code-integration": "^1.5.0",
40
+ "eslint": "^9.32.0",
41
+ "rimraf": "^6.0.1",
42
+ "rollup": "^4.44.2",
43
+ "tslib": "^2.8.1",
44
+ "typescript": "~5.8.2",
45
+ "typescript-eslint": "^8.38.0"
46
+ },
47
+ "customElements": "dist/custom-elements.json"
48
+ }