@wkly/datetime-picker 11.0.0 → 13.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cdk-overlay/package.json +5 -6
- package/cdk-overlay/public-api.d.ts +10 -0
- package/cdk-overlay/wkly-datetime-picker-cdk-overlay.d.ts +1 -0
- package/config.d.ts +3 -0
- package/esm2020/cdk-overlay/public-api.mjs +137 -0
- package/{esm2015/cdk-overlay/wkly-datetime-picker-cdk-overlay.js → esm2020/cdk-overlay/wkly-datetime-picker-cdk-overlay.mjs} +1 -1
- package/esm2020/config.mjs +100 -0
- package/esm2020/field.component.mjs +253 -0
- package/esm2020/picker.component.mjs +955 -0
- package/esm2020/presentation.mjs +303 -0
- package/esm2020/public-api.mjs +31 -0
- package/{esm2015/wkly-datetime-picker.js → esm2020/wkly-datetime-picker.mjs} +1 -1
- package/fesm2015/wkly-datetime-picker-cdk-overlay.mjs +143 -0
- package/fesm2015/wkly-datetime-picker-cdk-overlay.mjs.map +1 -0
- package/fesm2015/wkly-datetime-picker.mjs +1624 -0
- package/fesm2015/wkly-datetime-picker.mjs.map +1 -0
- package/fesm2020/wkly-datetime-picker-cdk-overlay.mjs +143 -0
- package/fesm2020/wkly-datetime-picker-cdk-overlay.mjs.map +1 -0
- package/fesm2020/wkly-datetime-picker.mjs +1622 -0
- package/fesm2020/wkly-datetime-picker.mjs.map +1 -0
- package/field.component.d.ts +3 -0
- package/package.json +34 -14
- package/picker.component.d.ts +3 -0
- package/presentation.d.ts +7 -0
- package/public-api.d.ts +8 -0
- package/wkly-datetime-picker.d.ts +1 -1
- package/bundles/wkly-datetime-picker-cdk-overlay.umd.js +0 -653
- package/bundles/wkly-datetime-picker-cdk-overlay.umd.js.map +0 -1
- package/bundles/wkly-datetime-picker-cdk-overlay.umd.min.js +0 -2
- package/bundles/wkly-datetime-picker-cdk-overlay.umd.min.js.map +0 -1
- package/bundles/wkly-datetime-picker.umd.js +0 -2354
- package/bundles/wkly-datetime-picker.umd.js.map +0 -1
- package/bundles/wkly-datetime-picker.umd.min.js +0 -2
- package/bundles/wkly-datetime-picker.umd.min.js.map +0 -1
- package/cdk-overlay/public-api.ngfactory.d.ts +0 -3
- package/cdk-overlay/wkly-datetime-picker-cdk-overlay.metadata.json +0 -1
- package/esm2015/cdk-overlay/public-api.js +0 -127
- package/esm2015/cdk-overlay/public-api.ngfactory.js +0 -19
- package/esm2015/cdk-overlay/public-api.ngsummary.json +0 -1
- package/esm2015/cdk-overlay/wkly-datetime-picker-cdk-overlay.ngsummary.json +0 -1
- package/esm2015/config.js +0 -241
- package/esm2015/config.ngsummary.json +0 -1
- package/esm2015/field.component.css.shim.ngstyle.js +0 -9
- package/esm2015/field.component.js +0 -240
- package/esm2015/field.component.ngfactory.js +0 -52
- package/esm2015/field.component.ngsummary.json +0 -1
- package/esm2015/picker.component.js +0 -929
- package/esm2015/picker.component.ngfactory.js +0 -137
- package/esm2015/picker.component.ngsummary.json +0 -1
- package/esm2015/presentation.js +0 -295
- package/esm2015/presentation.ngsummary.json +0 -1
- package/esm2015/public-api.js +0 -24
- package/esm2015/public-api.ngfactory.js +0 -13
- package/esm2015/public-api.ngsummary.json +0 -1
- package/esm2015/wkly-datetime-picker.ngsummary.json +0 -1
- package/fesm2015/wkly-datetime-picker-cdk-overlay.js +0 -131
- package/fesm2015/wkly-datetime-picker-cdk-overlay.js.map +0 -1
- package/fesm2015/wkly-datetime-picker.js +0 -1713
- package/fesm2015/wkly-datetime-picker.js.map +0 -1
- package/field.component.css.shim.ngstyle.d.ts +0 -1
- package/field.component.ngfactory.d.ts +0 -1
- package/picker.component.ngfactory.d.ts +0 -1
- package/public-api.ngfactory.d.ts +0 -3
- package/wkly-datetime-picker.metadata.json +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"wkly-datetime-picker.umd.js","sources":["../../../node_modules/tslib/tslib.es6.mjs","../../../projects/wkly-datetime-picker.11/src/config.ts","../../../projects/wkly-datetime-picker.11/src/picker.component.ts","../../../projects/wkly-datetime-picker.11/src/presentation.ts","../../../projects/wkly-datetime-picker.11/src/field.component.ts","../../../projects/wkly-datetime-picker.11/src/public-api.ts","../../../projects/wkly-datetime-picker.11/src/wkly-datetime-picker.ts"],"sourcesContent":["/******************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\n/* global Reflect, Promise, SuppressedError, Symbol, Iterator */\n\nvar extendStatics = function(d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n};\n\nexport function __extends(d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n}\n\nexport var __assign = function() {\n __assign = Object.assign || function __assign(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\n }\n return t;\n }\n return __assign.apply(this, arguments);\n}\n\nexport function __rest(s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n}\n\nexport function __decorate(decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\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;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n}\n\nexport function __param(paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n}\n\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\n var _, done = false;\n for (var i = decorators.length - 1; i >= 0; i--) {\n var context = {};\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\n if (kind === \"accessor\") {\n if (result === void 0) continue;\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\n if (_ = accept(result.get)) descriptor.get = _;\n if (_ = accept(result.set)) descriptor.set = _;\n if (_ = accept(result.init)) initializers.unshift(_);\n }\n else if (_ = accept(result)) {\n if (kind === \"field\") initializers.unshift(_);\n else descriptor[key] = _;\n }\n }\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\n done = true;\n};\n\nexport function __runInitializers(thisArg, initializers, value) {\n var useValue = arguments.length > 2;\n for (var i = 0; i < initializers.length; i++) {\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\n }\n return useValue ? value : void 0;\n};\n\nexport function __propKey(x) {\n return typeof x === \"symbol\" ? x : \"\".concat(x);\n};\n\nexport function __setFunctionName(f, name, prefix) {\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\n};\n\nexport function __metadata(metadataKey, metadataValue) {\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\n}\n\nexport function __awaiter(thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n}\n\nexport function __generator(thisArg, body) {\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);\n return g.next = verb(0), g[\"throw\"] = verb(1), g[\"return\"] = verb(2), typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\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;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n}\n\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n});\n\nexport function __exportStar(m, o) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\n}\n\nexport function __values(o) {\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\n if (m) return m.call(o);\n if (o && typeof o.length === \"number\") return {\n next: function () {\n if (o && i >= o.length) o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\n}\n\nexport function __read(o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n}\n\n/** @deprecated */\nexport function __spread() {\n for (var ar = [], i = 0; i < arguments.length; i++)\n ar = ar.concat(__read(arguments[i]));\n return ar;\n}\n\n/** @deprecated */\nexport function __spreadArrays() {\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\n r[k] = a[j];\n return r;\n}\n\nexport function __spreadArray(to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n}\n\nexport function __await(v) {\n return this instanceof __await ? (this.v = v, this) : new __await(v);\n}\n\nexport function __asyncGenerator(thisArg, _arguments, generator) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\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;\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\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]); } }\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\n function fulfill(value) { resume(\"next\", value); }\n function reject(value) { resume(\"throw\", value); }\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\n}\n\nexport function __asyncDelegator(o) {\n var i, p;\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\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; }\n}\n\nexport function __asyncValues(o) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var m = o[Symbol.asyncIterator], i;\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);\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); }); }; }\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\n}\n\nexport function __makeTemplateObject(cooked, raw) {\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\n return cooked;\n};\n\nvar __setModuleDefault = Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n};\n\nvar ownKeys = function(o) {\n ownKeys = Object.getOwnPropertyNames || function (o) {\n var ar = [];\n for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;\n return ar;\n };\n return ownKeys(o);\n};\n\nexport function __importStar(mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== \"default\") __createBinding(result, mod, k[i]);\n __setModuleDefault(result, mod);\n return result;\n}\n\nexport function __importDefault(mod) {\n return (mod && mod.__esModule) ? mod : { default: mod };\n}\n\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\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\");\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\n}\n\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\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\");\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\n}\n\nexport function __classPrivateFieldIn(state, receiver) {\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\n}\n\nexport function __addDisposableResource(env, value, async) {\n if (value !== null && value !== void 0) {\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\n var dispose, inner;\n if (async) {\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\n dispose = value[Symbol.asyncDispose];\n }\n if (dispose === void 0) {\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\n dispose = value[Symbol.dispose];\n if (async) inner = dispose;\n }\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\n env.stack.push({ value: value, dispose: dispose, async: async });\n }\n else if (async) {\n env.stack.push({ async: true });\n }\n return value;\n}\n\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\n var e = new Error(message);\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\n};\n\nexport function __disposeResources(env) {\n function fail(e) {\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\n env.hasError = true;\n }\n var r, s = 0;\n function next() {\n while (r = env.stack.pop()) {\n try {\n if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);\n if (r.dispose) {\n var result = r.dispose.call(r.value);\n if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\n }\n else s |= 1;\n }\n catch (e) {\n fail(e);\n }\n }\n if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();\n if (env.hasError) throw env.error;\n }\n return next();\n}\n\nexport function __rewriteRelativeImportExtension(path, preserveJsx) {\n if (typeof path === \"string\" && /^\\.\\.?\\//.test(path)) {\n return path.replace(/\\.(tsx)$|((?:\\.d)?)((?:\\.[^./]+?)?)\\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) {\n return tsx ? preserveJsx ? \".jsx\" : \".js\" : d && (!ext || !cm) ? m : (d + ext + \".\" + cm.toLowerCase() + \"js\");\n });\n }\n return path;\n}\n\nexport default {\n __extends,\n __assign,\n __rest,\n __decorate,\n __param,\n __esDecorate,\n __runInitializers,\n __propKey,\n __setFunctionName,\n __metadata,\n __awaiter,\n __generator,\n __createBinding,\n __exportStar,\n __values,\n __read,\n __spread,\n __spreadArrays,\n __spreadArray,\n __await,\n __asyncGenerator,\n __asyncDelegator,\n __asyncValues,\n __makeTemplateObject,\n __importStar,\n __importDefault,\n __classPrivateFieldGet,\n __classPrivateFieldSet,\n __classPrivateFieldIn,\n __addDisposableResource,\n __disposeResources,\n __rewriteRelativeImportExtension,\n};\n","import {\n Directive,\n EventEmitter,\n InjectionToken,\n Input,\n Output,\n} from \"@angular/core\";\nimport { WklyWeekOffset } from \"@wkly/core\";\nimport {\n WklyCalendarAdapter,\n WklyDisabledDatePredicate,\n WklyDisabledTimePredicate,\n WklyHourCycle,\n WklyPickerValue,\n WklyRangeValidator,\n WklySelectionMode,\n WklyValidationError,\n WklyViewportPreset,\n WklyWeekLabelFormatter,\n WklyWeekLabelMode,\n} from \"@wkly/adapters\";\nimport {\n DEFAULT_OVERSCAN_WEEKS,\n WklyClock,\n WklyConfiguration,\n WklyCloseReason,\n WklyPickerInputs as WklyPickerInputsContract,\n WklyPickerOutputs as WklyPickerOutputsContract,\n WklyStrings,\n WklyTranslations,\n WklyViewportChange,\n WklyPickerInputsPropertyKeys,\n WklyPickerOutputsPropertyKeys,\n} from \"@wkly/presentation\";\nexport * from \"@wkly/presentation\";\nexport const WKLY_CLOCK = new InjectionToken<WklyClock>(\"WKLY_CLOCK\", {\n providedIn: \"root\",\n factory: () => ({ now: () => new Date() }),\n});\nexport const WKLY_CONFIG = new InjectionToken<WklyConfiguration>(\n \"WKLY_CONFIG\",\n { providedIn: \"root\", factory: () => ({}) },\n);\nexport const WKLY_LOCALIZATION = new InjectionToken<WklyStrings>(\n \"WKLY_LOCALIZATION\",\n { providedIn: \"root\", factory: () => ({}) },\n);\nexport const WKLY_TRANSLATIONS = new InjectionToken<WklyTranslations>(\n \"WKLY_TRANSLATIONS\",\n { providedIn: \"root\", factory: () => ({}) },\n);\n/** Shared public inputs/outputs inherited by the picker and both trigger directives. */\n// Angular 11 consumers need literal names in published decorator metadata.\n@Directive({\n inputs: [\n \"mode\",\n \"value\",\n \"calendarAdapter\",\n \"locale\",\n \"weekOffset\",\n \"viewportPreset\",\n \"hourCycle\",\n \"showSeconds\",\n \"minuteStep\",\n \"secondStep\",\n \"min\",\n \"max\",\n \"isDateDisabled\",\n \"isTimeDisabled\",\n \"rangeValidator\",\n \"allowRangeAcrossDisabled\",\n \"required\",\n \"disabled\",\n \"weekLabelMode\",\n \"weekLabelFormatter\",\n \"weekCacheSize\",\n \"overscanWeeks\",\n \"ariaLabel\",\n \"ariaDescribedBy\",\n \"initialEpochDay\",\n \"closeOnBackdrop\",\n \"validators\",\n \"translations\",\n ],\n outputs: [\n \"valueChange\",\n \"validationChange\",\n \"opened\",\n \"closed\",\n \"viewportChange\",\n \"viewModeChange\",\n ],\n})\nexport abstract class WklyPickerInputs\n implements WklyPickerInputsContract, WklyPickerOutputsContract\n{\n @Input() [WklyPickerInputsPropertyKeys.Mode]: WklySelectionMode = \"datetime\";\n @Input() [WklyPickerInputsPropertyKeys.Value]: WklyPickerValue = null;\n @Input() [WklyPickerInputsPropertyKeys.CalendarAdapter]: WklyCalendarAdapter;\n @Input() [WklyPickerInputsPropertyKeys.Locale]: string = \"\";\n @Input() [WklyPickerInputsPropertyKeys.WeekOffset]: WklyWeekOffset | null =\n null;\n @Input() [WklyPickerInputsPropertyKeys.ViewportPreset]: WklyViewportPreset = {\n kind: \"full-month\",\n };\n @Input() [WklyPickerInputsPropertyKeys.HourCycle]: WklyHourCycle = \"locale\";\n @Input() [WklyPickerInputsPropertyKeys.ShowSeconds]: boolean = false;\n @Input() [WklyPickerInputsPropertyKeys.MinuteStep]: number = 1;\n @Input() [WklyPickerInputsPropertyKeys.SecondStep]: number = 1;\n @Input() [WklyPickerInputsPropertyKeys.Min]: string | null = null;\n @Input() [WklyPickerInputsPropertyKeys.Max]: string | null = null;\n @Input()\n [WklyPickerInputsPropertyKeys.IsDateDisabled]: WklyDisabledDatePredicate | null =\n null;\n @Input()\n [WklyPickerInputsPropertyKeys.IsTimeDisabled]: WklyDisabledTimePredicate | null =\n null;\n @Input()\n [WklyPickerInputsPropertyKeys.RangeValidator]: WklyRangeValidator | null =\n null;\n @Input() [WklyPickerInputsPropertyKeys.AllowRangeAcrossDisabled] = false;\n @Input() [WklyPickerInputsPropertyKeys.Required] = false;\n @Input() [WklyPickerInputsPropertyKeys.Disabled] = false;\n @Input() [WklyPickerInputsPropertyKeys.WeekLabelMode]: WklyWeekLabelMode =\n \"locale\";\n @Input()\n [WklyPickerInputsPropertyKeys.WeekLabelFormatter]: WklyWeekLabelFormatter | null =\n null;\n @Input() [WklyPickerInputsPropertyKeys.WeekCacheSize] = 256;\n @Input() [WklyPickerInputsPropertyKeys.OverscanWeeks] =\n DEFAULT_OVERSCAN_WEEKS;\n @Input() [WklyPickerInputsPropertyKeys.AriaLabel]: string | null = null;\n @Input() [WklyPickerInputsPropertyKeys.AriaDescribedBy]: string | null = null;\n @Input() [WklyPickerInputsPropertyKeys.InitialEpochDay]: number | null = null;\n @Input() [WklyPickerInputsPropertyKeys.CloseOnBackdrop] = true;\n @Input() [WklyPickerInputsPropertyKeys.Validators]: readonly ((\n value: WklyPickerValue,\n ) => WklyValidationError | null)[] = [];\n @Input()\n [WklyPickerInputsPropertyKeys.Translations]: WklyTranslations | null = null;\n @Output() [WklyPickerOutputsPropertyKeys.ValueChange] =\n new EventEmitter<WklyPickerValue>();\n @Output() [WklyPickerOutputsPropertyKeys.ValidationChange] = new EventEmitter<\n readonly WklyValidationError[]\n >(true);\n @Output() [WklyPickerOutputsPropertyKeys.Opened] = new EventEmitter<void>();\n @Output() [WklyPickerOutputsPropertyKeys.Closed] =\n new EventEmitter<WklyCloseReason>();\n @Output() [WklyPickerOutputsPropertyKeys.ViewportChange] =\n new EventEmitter<WklyViewportChange>(true);\n @Output() [WklyPickerOutputsPropertyKeys.ViewModeChange] = new EventEmitter<\n \"calendar\" | \"manual\"\n >();\n}\n","import {\n AfterViewInit,\n ChangeDetectorRef,\n Component,\n ElementRef,\n forwardRef,\n Inject,\n LOCALE_ID,\n OnChanges,\n OnDestroy,\n OnInit,\n PLATFORM_ID,\n ViewChild,\n} from \"@angular/core\";\nimport { getLocaleFirstDayOfWeek, isPlatformBrowser } from \"@angular/common\";\nimport {\n AbstractControl,\n ControlValueAccessor,\n NG_VALIDATORS,\n NG_VALUE_ACCESSOR,\n ValidationErrors,\n Validator,\n} from \"@angular/forms\";\nimport {\n absoluteWeekOf,\n createWeekGenerator,\n firstEpochDayOf,\n integer,\n WklyWeekGenerator,\n WklyWeekOffset,\n} from \"@wkly/core\";\nimport {\n decodeIso,\n error,\n resolveWeekOffset,\n validateSelection,\n WklyCalendarAdapter,\n WklyCalendarDate,\n WklyDateTime,\n WklyGregorianCalendarAdapter,\n WklyPickerValue,\n WklyValidationError,\n} from \"@wkly/adapters\";\nimport {\n draftDayDifference,\n setDraftDayDifference,\n calendarMonthBounds,\n resolveWklyTranslation,\n createWeekRows,\n validateDrafts,\n WklyDraft as Draft,\n WklyWeekRow as Row,\n} from \"@wkly/presentation\";\nimport {\n coerceBoolean,\n WKLY_CLOCK,\n WKLY_CONFIG,\n WKLY_LOCALIZATION,\n WKLY_TRANSLATIONS,\n WklyClock,\n WklyCloseReason,\n WklyConfiguration,\n WklyJumpOptions,\n WklyPickerInputs,\n WklyPickerInputsPropertyKeys,\n WklyPickerOutputsPropertyKeys,\n WklyStrings,\n WklyTranslations,\n} from \"./config\";\ndeclare class ResizeObserver {\n constructor(callback: () => void);\n observe(element: Element): void;\n disconnect(): void;\n}\n@Component({\n selector: \"wkly-datetime-picker\",\n templateUrl: \"./picker.component.html\",\n styleUrls: [\"../../wkly-datetime-picker/src/picker.component.css\"],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => WklyDateTimePickerComponent),\n multi: true,\n },\n {\n provide: NG_VALIDATORS,\n useExisting: forwardRef(() => WklyDateTimePickerComponent),\n multi: true,\n },\n ],\n})\nexport class WklyDateTimePickerComponent\n extends WklyPickerInputs\n implements\n OnInit,\n OnChanges,\n AfterViewInit,\n OnDestroy,\n ControlValueAccessor,\n Validator\n{\n @ViewChild(\"scroller\") scroller?: ElementRef<HTMLElement>;\n presentation: \"inline\" | \"transient\" = \"inline\";\n viewMode: \"calendar\" | \"manual\" = \"calendar\";\n endView: \"date\" | \"days\" = \"date\";\n adapter!: WklyCalendarAdapter;\n effectiveLocale = \"en-US\";\n effectiveOffset: WklyWeekOffset = 0;\n effectiveHourCycle: \"h12\" | \"h24\" = \"h24\";\n direction = \"ltr\";\n rows: Row[] = [];\n weekdays: string[] = [];\n drafts: Draft[] = [];\n errors: readonly WklyValidationError[] = [];\n today = 0;\n focused = 0;\n anchorWeek = 0;\n firstWeek = 0;\n visibleCount = 6;\n rowHeight = 76;\n scrollHeight = 152076;\n paddingTop = 0;\n initialized = false;\n compact = false;\n readonly WklyPickerInputsPropertyKeys = WklyPickerInputsPropertyKeys;\n private baseWeek = 0;\n private firstSupportedDay = 0;\n private lastSupportedDay = 0;\n private firstSupportedWeek = 0;\n private lastSupportedWeek = 0;\n private generator!: WklyWeekGenerator;\n private initialMonth = \"\";\n private clipMonth = false;\n private browser = false;\n private observer?: ResizeObserver;\n private destroyed = false;\n private scrollEndTimer?: ReturnType<typeof setTimeout>;\n private snapPending = false;\n private onChange: (value: WklyPickerValue) => void = () => {};\n private onTouched: () => void = () => {};\n private validatorChanged: () => void = () => {};\n private configErrors: WklyValidationError[] = [];\n private pendingValue: WklyPickerValue = null;\n private emittedValue: string | null = null;\n private manualDateEndpoint = 0;\n constructor(\n @Inject(LOCALE_ID) private defaultLocale: string,\n @Inject(WKLY_CONFIG) private defaults: WklyConfiguration,\n @Inject(WKLY_CLOCK) private clock: WklyClock,\n @Inject(WKLY_LOCALIZATION) private strings: WklyStrings,\n @Inject(WKLY_TRANSLATIONS) private defaultTranslations: WklyTranslations,\n @Inject(PLATFORM_ID) platform: Object,\n private host: ElementRef<HTMLElement>,\n private changeDetector: ChangeDetectorRef,\n ) {\n super();\n this.browser = isPlatformBrowser(platform);\n }\n ngOnInit(): void {\n this.initialize();\n }\n ngOnChanges(changes: any): void {\n if (this.initialized) {\n if (\n Object.keys(changes).length === 1 &&\n changes[WklyPickerInputsPropertyKeys.Value] &&\n this.emittedValue ===\n JSON.stringify(this[WklyPickerInputsPropertyKeys.Value])\n ) {\n this.emittedValue = null;\n return;\n }\n const focus = this.focused;\n this.configure();\n if (\n changes[WklyPickerInputsPropertyKeys.Value] ||\n changes[WklyPickerInputsPropertyKeys.Mode] ||\n changes[WklyPickerInputsPropertyKeys.CalendarAdapter]\n ) {\n this.load(this[WklyPickerInputsPropertyKeys.Value]);\n this.position(this.focused, true);\n } else {\n this.check();\n if (changes[WklyPickerInputsPropertyKeys.ViewportPreset])\n this.position(focus, true);\n else this.scrollToEpochDay(focus);\n }\n }\n }\n initialize(): void {\n if (this.initialized) return;\n this.configure();\n const initialEpochDay = this[WklyPickerInputsPropertyKeys.InitialEpochDay];\n this.today = this.browser\n ? Math.floor(this.clock.now().getTime() / 86400000)\n : initialEpochDay === null\n ? 0\n : initialEpochDay;\n this.focused =\n initialEpochDay === null\n ? this.defaults.initialEpochDay === undefined\n ? this.today\n : this.defaults.initialEpochDay\n : initialEpochDay;\n this.load(this[WklyPickerInputsPropertyKeys.Value]);\n this.initialized = true;\n this.position(this.focused, true);\n }\n configure(): void {\n this.configErrors = [];\n [\n WklyPickerInputsPropertyKeys.ShowSeconds,\n WklyPickerInputsPropertyKeys.AllowRangeAcrossDisabled,\n WklyPickerInputsPropertyKeys.Required,\n WklyPickerInputsPropertyKeys.Disabled,\n WklyPickerInputsPropertyKeys.CloseOnBackdrop,\n ].forEach(\n (key) => ((this as any)[key] = coerceBoolean((this as any)[key])),\n );\n this.effectiveLocale =\n this[WklyPickerInputsPropertyKeys.Locale] ||\n this.defaults.locale ||\n this.defaultLocale;\n this.direction = /^(ar|he|fa|ur)(-|$)/.test(this.effectiveLocale)\n ? \"rtl\"\n : \"ltr\";\n this.adapter =\n this[WklyPickerInputsPropertyKeys.CalendarAdapter] ||\n new WklyGregorianCalendarAdapter(this.effectiveLocale);\n try {\n let firstDay: number | undefined;\n try {\n firstDay = getLocaleFirstDayOfWeek(this.effectiveLocale);\n } catch (_) {}\n this.effectiveOffset = resolveWeekOffset(\n this.effectiveLocale,\n this[WklyPickerInputsPropertyKeys.WeekOffset],\n this.defaults.weekOffset,\n firstDay,\n );\n integer(this[WklyPickerInputsPropertyKeys.WeekCacheSize]);\n integer(this[WklyPickerInputsPropertyKeys.OverscanWeeks]);\n if (\n this[WklyPickerInputsPropertyKeys.WeekCacheSize] < 0 ||\n this[WklyPickerInputsPropertyKeys.OverscanWeeks] < 0 ||\n this[WklyPickerInputsPropertyKeys.OverscanWeeks] > 50\n )\n throw new RangeError();\n if (\n ![\n \"datetime\",\n \"date\",\n \"time\",\n \"datetime-range\",\n \"date-range\",\n \"time-range\",\n ].includes(this[WklyPickerInputsPropertyKeys.Mode])\n )\n throw new RangeError();\n const preset = this[WklyPickerInputsPropertyKeys.ViewportPreset];\n if (preset.kind === \"weeks\") {\n integer(preset.visibleWeekCount);\n if (preset.visibleWeekCount < 1 || preset.visibleWeekCount > 52)\n throw new RangeError();\n }\n if (preset.kind === \"full-month-and-around\")\n for (const n of [\n preset.extraWeeksBefore || 0,\n preset.extraWeeksAfter || 0,\n ]) {\n integer(n);\n if (n < 0 || n > 52) throw new RangeError();\n }\n this.generator = createWeekGenerator({\n weekOffset: this.effectiveOffset,\n cacheSize: this[WklyPickerInputsPropertyKeys.WeekCacheSize],\n });\n } catch (_) {\n this.configErrors.push(\n error(\n \"configuration-error\",\n this[WklyPickerInputsPropertyKeys.WeekOffset],\n ),\n );\n this.generator = createWeekGenerator();\n this.effectiveOffset = 0;\n }\n this.setSupportedScrollRange();\n this.effectiveHourCycle =\n this[WklyPickerInputsPropertyKeys.HourCycle] === \"h12\"\n ? \"h12\"\n : this[WklyPickerInputsPropertyKeys.HourCycle] === \"locale\"\n ? new Intl.DateTimeFormat(this.effectiveLocale, {\n hour: \"numeric\",\n timeZone: \"UTC\",\n }).resolvedOptions().hour12\n ? \"h12\"\n : \"h24\"\n : \"h24\";\n this.weekdays = Array.from({ length: 7 }, (_, i) =>\n this.adapter.formatWeekday(this.effectiveOffset + i, \"short\"),\n );\n }\n private setSupportedScrollRange(): void {\n let [first, last] = this.adapter.supportedEpochDayRange;\n const [firstYear, lastYear] = this.adapter.supportedYearRange;\n const yearOf = (day: number) => this.adapter.epochDayToDate(day).year;\n if (yearOf(first) < firstYear) {\n let low = first,\n high = last;\n while (low < high) {\n const mid = Math.floor((low + high) / 2);\n if (yearOf(mid) < firstYear) low = mid + 1;\n else high = mid;\n }\n first = low;\n }\n if (yearOf(last) > lastYear) {\n let low = first,\n high = last;\n while (low < high) {\n const mid = Math.ceil((low + high) / 2);\n if (yearOf(mid) > lastYear) high = mid - 1;\n else low = mid;\n }\n last = low;\n }\n if (\n first > last ||\n yearOf(first) < firstYear ||\n yearOf(first) > lastYear ||\n yearOf(last) < firstYear ||\n yearOf(last) > lastYear\n )\n throw new RangeError(\"No supported days within the calendar year range\");\n this.firstSupportedDay = first;\n this.lastSupportedDay = last;\n this.firstSupportedWeek = absoluteWeekOf(first, this.effectiveOffset);\n this.lastSupportedWeek = absoluteWeekOf(last, this.effectiveOffset);\n }\n private clampFirstWeek(week: number): number {\n // Keep supported weeks inside the viewport; renderRows adds the buffer rows.\n const last = Math.max(\n this.firstSupportedWeek,\n this.lastSupportedWeek - this.visibleCount + 1,\n );\n return Math.max(this.firstSupportedWeek, Math.min(last, week));\n }\n ngAfterViewInit(): void {\n this.resetScroll();\n if (this.browser && typeof ResizeObserver !== \"undefined\") {\n this.observer = new ResizeObserver(() => {\n this.compact = this.host.nativeElement.clientWidth < 338;\n const row = this.host.nativeElement.querySelector(\n \".week-row\",\n ) as HTMLElement;\n // CSS heights and scrollTop use layout pixels; client rectangles include zoom.\n const height = row ? parseFloat(getComputedStyle(row).height) : 0;\n if (height && height !== this.rowHeight) {\n this.rowHeight = height;\n this.scrollHeight = this.rowHeight * 2001;\n this.renderRows();\n this.resetScroll();\n }\n });\n this.observer.observe(this.host.nativeElement);\n }\n }\n ngOnDestroy(): void {\n this.destroyed = true;\n if (this.observer) this.observer.disconnect();\n if (this.scrollEndTimer) clearTimeout(this.scrollEndTimer);\n if (this.generator) this.generator.clearCache();\n }\n t(key: string): string {\n return resolveWklyTranslation(\n key,\n this.effectiveLocale,\n this[WklyPickerInputsPropertyKeys.Translations] ||\n this.defaultTranslations,\n this.strings,\n );\n }\n get isRange(): boolean {\n return this[WklyPickerInputsPropertyKeys.Mode].endsWith(\"-range\");\n }\n get hasDate(): boolean {\n return !this[WklyPickerInputsPropertyKeys.Mode].startsWith(\"time\");\n }\n get hasTime(): boolean {\n return (\n this[WklyPickerInputsPropertyKeys.Mode] !== \"date\" &&\n this[WklyPickerInputsPropertyKeys.Mode] !== \"date-range\"\n );\n }\n get submitVisible(): boolean {\n return (\n this.presentation === \"transient\" &&\n (this[WklyPickerInputsPropertyKeys.Mode] !== \"date\" ||\n this.viewMode === \"manual\")\n );\n }\n get title(): string {\n try {\n const d = this.adapter.epochDayToDate(\n Math.max(\n this.firstSupportedDay,\n Math.min(\n this.lastSupportedDay,\n firstEpochDayOf(this.anchorWeek, this.effectiveOffset),\n ),\n ),\n );\n return this.adapter.formatMonth(d) + \" \" + this.adapter.formatYear(d);\n } catch (_) {\n return \"\";\n }\n }\n get canSubmit(): boolean {\n return (\n !this[WklyPickerInputsPropertyKeys.Disabled] &&\n !this.errors.length &&\n this.pendingValue !== null\n );\n }\n private blank(day: number): Draft {\n const safe = Math.max(\n this.firstSupportedDay,\n Math.min(this.lastSupportedDay, day),\n );\n return {\n date: this.adapter.epochDayToDate(safe),\n hour: 0,\n minute: 0,\n second: 0,\n present: false,\n };\n }\n load(value: WklyPickerValue): void {\n this.drafts = [this.blank(this.focused), this.blank(this.focused)];\n const validation = validateSelection(value, this, this.adapter);\n if (value !== null && !validation.length) {\n const values = typeof value === \"string\" ? [value] : value;\n values.forEach((v, i) => {\n const d = decodeIso(v);\n this.drafts[i] = {\n date: this.hasDate\n ? this.adapter.epochDayToDate(d.epochDay)\n : this.blank(this.today).date,\n hour: d.hour,\n minute: d.minute,\n second: d.second,\n present: true,\n };\n if (i === 0 && this.hasDate) this.focused = d.epochDay;\n });\n }\n if (validation.length) {\n this.pendingValue = null;\n this.report(validation);\n } else this.check();\n }\n writeValue(value: WklyPickerValue): void {\n this[WklyPickerInputsPropertyKeys.Value] = value;\n if (this.initialized) {\n this.load(value);\n this.position(this.focused, true);\n }\n }\n registerOnChange(fn: (value: WklyPickerValue) => void): void {\n this.onChange = fn;\n }\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n setDisabledState(disabled: boolean): void {\n this[WklyPickerInputsPropertyKeys.Disabled] = disabled;\n }\n validate(_control: AbstractControl): ValidationErrors | null {\n return this.errors.length ? { wkly: this.errors } : null;\n }\n registerOnValidatorChange(fn: () => void): void {\n this.validatorChanged = fn;\n }\n touched(): void {\n Promise.resolve().then(() => this.onTouched());\n }\n private report(errors: readonly WklyValidationError[]): void {\n const changed = JSON.stringify(this.errors) !== JSON.stringify(errors);\n this.errors = errors;\n if (changed) {\n this[WklyPickerOutputsPropertyKeys.ValidationChange].emit(errors);\n this.validatorChanged();\n }\n }\n check(): void {\n const result = validateDrafts({\n drafts: this.drafts,\n configErrors: this.configErrors,\n adapter: this.adapter,\n selection: this,\n mode: this[WklyPickerInputsPropertyKeys.Mode],\n isRange: this.isRange,\n hasDate: this.hasDate,\n hasTime: this.hasTime,\n showSeconds: this[WklyPickerInputsPropertyKeys.ShowSeconds],\n required: this[WklyPickerInputsPropertyKeys.Required],\n });\n this.pendingValue = result.pendingValue;\n this.report(result.errors);\n }\n trackDraft(index: number): number {\n // Endpoint controls keep their identity and focus when draft objects swap.\n return index;\n }\n private orderDrafts(): void {\n if (!this.isRange || !this.drafts.every((draft) => draft.present)) return;\n if (this.drafts.some((draft) => draft.unsupportedEpochDay !== undefined))\n return;\n try {\n const a = this.drafts[0],\n b = this.drafts[1];\n const key = (d: Draft) =>\n this.adapter.dateToEpochDay(d.date) * 86400 +\n (d.hour || 0) * 3600 +\n (d.minute || 0) * 60 +\n (d.second || 0);\n if (key(a) > key(b)) this.drafts = [b, a];\n } catch (_) {\n // Impossible or incomplete dates remain editable until corrected.\n }\n }\n finish(): void {\n if (this[WklyPickerInputsPropertyKeys.Disabled]) return;\n this.orderDrafts();\n if (this.viewMode === \"manual\" && this.hasDate) this.positionOnManualDate();\n this.check();\n if (this.presentation === \"inline\" && this.canSubmit) this.commit();\n }\n private commit(): void {\n if (!this.canSubmit) return;\n const next = this.pendingValue;\n if (\n JSON.stringify(next) !==\n JSON.stringify(this[WklyPickerInputsPropertyKeys.Value])\n ) {\n this[WklyPickerInputsPropertyKeys.Value] = next;\n this.emittedValue = JSON.stringify(next);\n this.onChange(next);\n this[WklyPickerOutputsPropertyKeys.ValueChange].emit(next);\n }\n this.onTouched();\n }\n submit(reason: WklyCloseReason = \"submit\"): void {\n this.check();\n if (!this.canSubmit) return;\n this.commit();\n if (this.presentation === \"transient\")\n this[WklyPickerOutputsPropertyKeys.Closed].emit(reason);\n }\n cancel(reason: WklyCloseReason = \"close-button\"): void {\n if (this[WklyPickerInputsPropertyKeys.Disabled]) return;\n this.load(this[WklyPickerInputsPropertyKeys.Value]);\n this.onTouched();\n this[WklyPickerOutputsPropertyKeys.Closed].emit(reason);\n }\n now(): void {\n if (this[WklyPickerInputsPropertyKeys.Disabled]) return;\n const n = this.clock.now();\n const day = Math.floor(n.getTime() / 86400000);\n this.drafts = [0, 1].map((index) => ({\n ...this.clockDraft(day, n),\n present: index === 0 || this.isRange,\n }));\n if (\n this.hasDate &&\n (day < this.firstSupportedDay || day > this.lastSupportedDay)\n ) {\n this.report([error(\"unsupported-adapter-date\", day)]);\n return;\n }\n this.focused = day;\n this.position(day, true);\n this.check();\n this.submit(\"now\");\n }\n private clockDraft(day: number, now: Date): Draft {\n return {\n ...this.blank(day),\n hour: now.getUTCHours(),\n minute:\n Math.floor(\n now.getUTCMinutes() / this[WklyPickerInputsPropertyKeys.MinuteStep],\n ) * this[WklyPickerInputsPropertyKeys.MinuteStep],\n second: this[WklyPickerInputsPropertyKeys.ShowSeconds]\n ? Math.floor(\n now.getUTCSeconds() / this[WklyPickerInputsPropertyKeys.SecondStep],\n ) * this[WklyPickerInputsPropertyKeys.SecondStep]\n : 0,\n };\n }\n private initializeManualRange(): void {\n if (\n !this.isRange ||\n !this.hasDate ||\n this.drafts.every((draft) => draft.present)\n )\n return;\n let seed = this.drafts.find((draft) => draft.present);\n if (!seed) {\n if (this[WklyPickerInputsPropertyKeys.Value] !== null) return;\n const now = this.clock.now();\n const initialEpochDay =\n this[WklyPickerInputsPropertyKeys.InitialEpochDay];\n const day =\n initialEpochDay === null\n ? this.defaults.initialEpochDay === undefined\n ? Math.floor(now.getTime() / 86400000)\n : this.defaults.initialEpochDay\n : initialEpochDay;\n seed = { ...this.clockDraft(day, now), present: true };\n }\n // Complete missing endpoints without replacing selected or invalid drafts.\n const initial = seed;\n this.drafts = this.drafts.map((draft) =>\n draft.present ? draft : { ...initial, date: { ...initial.date } },\n );\n this.finish();\n // Positioning renders before validation; refresh completion controls afterward.\n this.changeDetector.markForCheck();\n }\n toggleView(): void {\n if (this[WklyPickerInputsPropertyKeys.Disabled] || !this.hasDate) return;\n this.viewMode = this.viewMode === \"calendar\" ? \"manual\" : \"calendar\";\n if (this.viewMode === \"manual\") this.initializeManualRange();\n if (this.viewMode === \"calendar\") this.positionOnManualDate();\n this[WklyPickerOutputsPropertyKeys.ViewModeChange].emit(this.viewMode);\n if (this.viewMode === \"calendar\") setTimeout(() => this.resetScroll());\n }\n private positionOnManualDate(): void {\n const draft = this.drafts[this.manualDateEndpoint];\n if (!draft || !draft.present) return;\n try {\n // A valid day follows the selection. An impossible day keeps its draft\n // fields but still shows the chosen month in the calendar.\n const target = this.adapter.dateToEpochDay(draft.date);\n this.focused = target;\n this.position(target, true);\n } catch (_) {\n try {\n const first = this.adapter.dateToEpochDay({ ...draft.date, day: 1 });\n this.focused = first;\n this.position(first, true);\n } catch (_) {}\n }\n }\n months(draft: Draft): readonly string[] {\n try {\n return this.adapter.getMonths(draft.date.year).map((m) => m.label);\n } catch (_) {\n return [];\n }\n }\n monthCount(draft: Draft): number {\n return this.months(draft).length || 12;\n }\n get inDays(): number | null {\n return draftDayDifference(this.drafts, this.adapter);\n }\n get inDaysLabel(): string {\n const days = this.inDays;\n return this.t(\"inDays\").replace(\n /{{\\s*days\\s*}}/g,\n days === null\n ? this.t(\"daysUnavailable\")\n : new Intl.NumberFormat(this.effectiveLocale, {\n useGrouping: false,\n }).format(days),\n );\n }\n get resultingEndDate(): string {\n try {\n const draft = this.drafts[1];\n if (\n draft.unsupportedEpochDay !== undefined ||\n this.adapter.validateDate(draft.date).length\n )\n return \"\";\n return [\n this.adapter.formatDay(draft.date),\n this.adapter.formatMonth(draft.date),\n this.adapter.formatYear(draft.date),\n ].join(\" \");\n } catch (_) {\n return \"\";\n }\n }\n toggleEndView(view: \"date\" | \"days\"): void {\n if (this[WklyPickerInputsPropertyKeys.Disabled]) return;\n this.endView = view;\n }\n days(value: number | null): void {\n if (this[WklyPickerInputsPropertyKeys.Disabled]) return;\n this.manualDateEndpoint = 1;\n setDraftDayDifference(this.drafts, this.adapter, value);\n this.check();\n }\n field(index: number, field: string, value: number | null): void {\n if (this[WklyPickerInputsPropertyKeys.Disabled]) return;\n const draft = this.drafts[index];\n draft.present = true;\n if (field === \"day\" || field === \"year\" || field === \"month\") {\n this.manualDateEndpoint = index;\n delete draft.unsupportedEpochDay;\n let date = { ...draft.date, [field]: value } as WklyCalendarDate;\n if (field === \"month\") {\n let month;\n try {\n month = this.adapter\n .getMonths(date.year)\n .find((m) => m.month === value);\n } catch (_) {}\n date = { ...date, monthCode: month ? month.monthCode : \"\" };\n }\n if (field === \"year\" && value !== null) {\n try {\n const months = this.adapter.getMonths(value);\n const month = months.find((m) => m.monthCode === date.monthCode);\n if (month) date = { ...date, month: month.month };\n } catch (_) {}\n }\n draft.date = date;\n } else if (field === \"hour\" && this.effectiveHourCycle === \"h12\")\n draft.hour =\n value === null\n ? null\n : value >= 1 && value <= 12\n ? (value % 12) + ((draft.hour || 0) >= 12 ? 12 : 0)\n : 24 + value;\n else (draft as any)[field] = value;\n this.check();\n }\n displayHour(draft: Draft): number | null {\n return draft.hour === null\n ? null\n : this.effectiveHourCycle === \"h12\"\n ? draft.hour % 12 || 12\n : draft.hour;\n }\n period(index: number, period: \"am\" | \"pm\" | \"24\"): void {\n if (this[WklyPickerInputsPropertyKeys.Disabled]) return;\n if (period === \"24\") this.effectiveHourCycle = \"h24\";\n else {\n this.effectiveHourCycle = \"h12\";\n this.drafts[index].hour =\n ((this.drafts[index].hour || 0) % 12) + (period === \"pm\" ? 12 : 0);\n this.drafts[index].present = true;\n this.finish();\n }\n }\n selected(day: number): boolean {\n return this.drafts.some((d) => {\n try {\n return d.present && this.adapter.dateToEpochDay(d.date) === day;\n } catch (_) {\n return false;\n }\n });\n }\n inRange(day: number): boolean {\n if (!this.isRange || !this.drafts.every((d) => d.present)) return false;\n try {\n const a = this.adapter.dateToEpochDay(this.drafts[0].date),\n b = this.adapter.dateToEpochDay(this.drafts[1].date);\n return day > Math.min(a, b) && day < Math.max(a, b);\n } catch (_) {\n return false;\n }\n }\n dayDisabled(day: number): boolean {\n if (day < this.firstSupportedDay || day > this.lastSupportedDay)\n return true;\n try {\n const date = this.adapter.epochDayToDate(day);\n const isDateDisabled = this[WklyPickerInputsPropertyKeys.IsDateDisabled];\n if (\n isDateDisabled &&\n isDateDisabled(day, {\n mode: this[WklyPickerInputsPropertyKeys.Mode],\n endpoint: this.isRange\n ? this.drafts[0]?.present && !this.drafts[1]?.present\n ? \"end\"\n : \"start\"\n : \"single\",\n calendarDate: date,\n })\n )\n return true;\n const min = this[WklyPickerInputsPropertyKeys.Min];\n const max = this[WklyPickerInputsPropertyKeys.Max];\n if (min && day < decodeIso(min).epochDay) return true;\n if (max && day > decodeIso(max).epochDay) return true;\n return false;\n } catch (_) {\n return true;\n }\n }\n select(day: number): void {\n if (this[WklyPickerInputsPropertyKeys.Disabled] || this.dayDisabled(day))\n return;\n this.focused = day;\n const index =\n this.isRange && this.drafts[0].present && !this.drafts[1].present ? 1 : 0;\n if (this.isRange && index === 0) this.drafts[1].present = false;\n delete this.drafts[index].unsupportedEpochDay;\n this.drafts[index].date = this.adapter.epochDayToDate(day);\n this.drafts[index].present = true;\n this.orderDrafts();\n this.renderRows();\n this.finish();\n if (\n this.presentation === \"transient\" &&\n this[WklyPickerInputsPropertyKeys.Mode] === \"date\" &&\n this.viewMode === \"calendar\"\n )\n this.submit(\"auto-submit\");\n }\n key(event: KeyboardEvent, day: number): void {\n let delta = 0;\n if (event.key === \"ArrowLeft\") delta = -1;\n if (event.key === \"ArrowRight\") delta = 1;\n if (event.key === \"ArrowUp\") delta = -7;\n if (event.key === \"ArrowDown\") delta = 7;\n if (event.key === \"PageUp\")\n delta = -7 * (event.shiftKey ? this.visibleCount : 1);\n if (event.key === \"PageDown\")\n delta = 7 * (event.shiftKey ? this.visibleCount : 1);\n if (event.key === \"Home\") {\n event.preventDefault();\n this.scrollToEpochDay(this.today, { focus: true });\n }\n if (delta) {\n event.preventDefault();\n const target = day + delta;\n if (target >= this.firstSupportedDay && target <= this.lastSupportedDay)\n this.scrollToEpochDay(target, { focus: true });\n }\n }\n private position(\n day: number,\n preset = false,\n options: WklyJumpOptions = {},\n ): void {\n day = Math.max(\n this.firstSupportedDay,\n Math.min(this.lastSupportedDay, day),\n );\n this.anchorWeek = absoluteWeekOf(day, this.effectiveOffset);\n const viewportPreset = this[WklyPickerInputsPropertyKeys.ViewportPreset];\n this.clipMonth = preset && viewportPreset.kind === \"full-month\";\n if (preset && viewportPreset.kind !== \"weeks\") {\n const d = this.adapter.epochDayToDate(day);\n this.initialMonth = d.year + \"/\" + d.monthCode;\n const [start, end] = calendarMonthBounds(this.adapter, day);\n this.firstWeek = absoluteWeekOf(start, this.effectiveOffset);\n this.visibleCount =\n absoluteWeekOf(end, this.effectiveOffset) - this.firstWeek + 1;\n if (\n viewportPreset.kind === \"full-month-and-around\" &&\n !this.configErrors.length\n ) {\n const before = viewportPreset.extraWeeksBefore || 0,\n after = viewportPreset.extraWeeksAfter || 0;\n this.firstWeek -= before;\n this.visibleCount += before + after;\n }\n } else {\n if (viewportPreset.kind === \"weeks\")\n this.visibleCount = this.configErrors.length\n ? 6\n : viewportPreset.visibleWeekCount;\n this.firstWeek =\n this.anchorWeek -\n (options.align === \"start\"\n ? 0\n : options.align === \"end\"\n ? this.visibleCount - 1\n : Math.floor(this.visibleCount / 2));\n }\n this.firstWeek = this.clampFirstWeek(this.firstWeek);\n this.baseWeek = this.firstWeek - 1000;\n this.renderRows();\n // Apply the new runway before writing scrollTop or locating a focus target.\n this.changeDetector.detectChanges();\n this.resetScroll();\n }\n private resetScroll(): void {\n // Round week boundaries to avoid scrollTop truncation under CSS zoom.\n if (this.scroller)\n this.scroller.nativeElement.scrollTop = Math.round(1000 * this.rowHeight);\n }\n scroll(event: Event): void {\n const element = event.target as HTMLElement;\n this.snapPending = true;\n this.scheduleSnap();\n // Quantize displacement around the reset point, equally in both directions.\n const relativeRows = element.scrollTop / this.rowHeight - 1000;\n const index =\n 1000 + Math.sign(relativeRows) * Math.round(Math.abs(relativeRows));\n const requestedFirst = this.baseWeek + index;\n const first = this.clampFirstWeek(requestedFirst);\n if (requestedFirst !== first) {\n element.scrollTop = Math.round((first - this.baseWeek) * this.rowHeight);\n }\n if (first === this.firstWeek) return;\n this.clipMonth = false;\n this.firstWeek = first;\n this.anchorWeek = first + Math.floor(this.visibleCount / 2);\n if (index < 100 || index > 1900) {\n // Preserve signed displacement from this week; modulo turns fractional\n // rounding just below a boundary into almost a full row after rebasing.\n const offset =\n element.scrollTop - (first - this.baseWeek) * this.rowHeight;\n this.baseWeek = first - 1000;\n element.scrollTop = Math.round(1000 * this.rowHeight + offset);\n }\n this.renderRows();\n }\n private scheduleSnap(): void {\n if (this.scrollEndTimer) clearTimeout(this.scrollEndTimer);\n this.scrollEndTimer = setTimeout(() => this.snapWeek(), 200);\n }\n snapWeek(): void {\n if (this.scrollEndTimer) clearTimeout(this.scrollEndTimer);\n this.scrollEndTimer = undefined;\n if (!this.snapPending || !this.scroller) return;\n this.snapPending = false;\n // Align the current virtual week without rebuilding or rebasing its rows.\n const element = this.scroller.nativeElement;\n const target = Math.round(\n (this.firstWeek - this.baseWeek) * this.rowHeight,\n );\n if (element.scrollTop !== target) element.scrollTop = target;\n }\n private showFirstWeek(week: number): void {\n const first = this.clampFirstWeek(week);\n if (first === this.firstWeek) return;\n this.clipMonth = false;\n this.firstWeek = first;\n this.anchorWeek = first + Math.floor(this.visibleCount / 2);\n this.baseWeek = first - 1000;\n this.renderRows();\n this.resetScroll();\n }\n canMoveWeek(delta: number): boolean {\n return this.clampFirstWeek(this.firstWeek + delta) !== this.firstWeek;\n }\n moveWeek(delta: number): void {\n if (!this[WklyPickerInputsPropertyKeys.Disabled])\n this.showFirstWeek(this.firstWeek + delta);\n }\n private renderRows(): void {\n // Keep the virtual scroll offset here; row data is shared across Angular versions.\n const overscan = Math.max(\n 0,\n Math.min(50, this[WklyPickerInputsPropertyKeys.OverscanWeeks] || 0),\n );\n const start = this.firstWeek - overscan;\n this.paddingTop = (start - this.baseWeek) * this.rowHeight;\n this.rows = createWeekRows({\n generator: this.generator,\n adapter: this.adapter,\n startWeek: start,\n count: this.visibleCount + 2 * overscan,\n firstVisibleWeek: this.firstWeek,\n firstSupportedDay: this.firstSupportedDay,\n lastSupportedDay: this.lastSupportedDay,\n clipMonth: this.clipMonth,\n initialMonth: this.initialMonth,\n weekLabelMode: this[WklyPickerInputsPropertyKeys.WeekLabelMode],\n weekLabelFormatter:\n this[WklyPickerInputsPropertyKeys.WeekLabelFormatter] || null,\n isDayDisabled: (day) => this.dayDisabled(day),\n });\n this[WklyPickerOutputsPropertyKeys.ViewportChange].emit({\n firstVisibleAbsoluteWeek: this.firstWeek,\n lastVisibleAbsoluteWeek: this.firstWeek + this.visibleCount - 1,\n anchorAbsoluteWeek: this.anchorWeek,\n });\n }\n // Retain day DOM nodes and keyboard focus when row metadata is regenerated.\n trackCell(_i: number, cell: { epochDay: number }): number {\n return cell.epochDay;\n }\n trackRow(_i: number, row: Row): number {\n return row.week.absoluteWeek;\n }\n scrollToEpochDay(day: number, options: WklyJumpOptions = {}): void {\n integer(day);\n this.adapter.epochDayToDate(day);\n day = Math.max(\n this.firstSupportedDay,\n Math.min(this.lastSupportedDay, day),\n );\n // position renders synchronously; publish the tab stop before that render.\n if (options.focus) this.focused = day;\n this.position(day, false, options);\n if (options.select) this.select(day);\n if (options.focus) this.focusDay();\n }\n scrollToAbsoluteWeek(week: number, options: WklyJumpOptions = {}): void {\n // A boundary week can start before the adapter's first supported day.\n const first = firstEpochDayOf(week, this.effectiveOffset);\n this.scrollToEpochDay(\n week === this.firstSupportedWeek\n ? Math.max(first, this.firstSupportedDay)\n : first,\n options,\n );\n }\n scrollToCalendarDate(\n date: WklyCalendarDate,\n options: WklyJumpOptions = {},\n ): void {\n this.scrollToEpochDay(this.adapter.dateToEpochDay(date), options);\n }\n scrollToValue(value: string, options: WklyJumpOptions = {}): void {\n this.scrollToEpochDay(decodeIso(value).epochDay, options);\n }\n focusDay(): void {\n if (!this.browser) return;\n setTimeout(() => {\n if (this.destroyed) return;\n this.changeDetector.detectChanges();\n const day = this.host.nativeElement.querySelector(\n '[data-day=\"' + this.focused + '\"]',\n ) as HTMLElement;\n const fallback = this.host.nativeElement.querySelector(\n \"button:not(:disabled),input:not(:disabled)\",\n ) as HTMLElement;\n (day || fallback)?.focus({ preventScroll: true });\n });\n }\n}\n","import {\n ApplicationRef,\n ComponentFactoryResolver,\n ComponentRef,\n Directive,\n ElementRef,\n forwardRef,\n HostListener,\n Inject,\n Injectable,\n Injector,\n OnChanges,\n OnDestroy,\n Optional,\n PLATFORM_ID,\n} from \"@angular/core\";\nimport { DOCUMENT, isPlatformBrowser } from \"@angular/common\";\nimport {\n ControlValueAccessor,\n NG_VALIDATORS,\n NG_VALUE_ACCESSOR,\n ValidationErrors,\n Validator,\n} from \"@angular/forms\";\nimport {\n validateSelection,\n WklyGregorianCalendarAdapter,\n WklyCalendarDate,\n WklyPickerValue,\n WklyValidationError,\n} from \"@wkly/adapters\";\nimport { Subscription } from \"rxjs\";\nimport {\n coerceBoolean,\n INPUT_NAMES,\n WklyCloseReason,\n WklyJumpOptions,\n WklyPickerInputs,\n WklyPickerInputsPropertyKeys,\n WklyPickerOutputsPropertyKeys,\n} from \"./config\";\nimport { WklyDateTimePickerComponent } from \"./picker.component\";\nexport interface WklyPresentationRef {\n readonly component: ComponentRef<WklyDateTimePickerComponent>;\n destroy(): void;\n}\n/** Native-dialog factory. Browser resources are allocated only by open(). */\n@Injectable({ providedIn: \"root\" })\nexport class WklyDateTimePickerDialogService {\n constructor(\n private resolver: ComponentFactoryResolver,\n private injector: Injector,\n private app: ApplicationRef,\n @Inject(DOCUMENT) private document: Document,\n @Inject(PLATFORM_ID) private platform: Object,\n ) {}\n open(\n trigger: HTMLElement,\n onCancel: (reason: WklyCloseReason) => void,\n backdrop = true,\n injector?: Injector,\n ): WklyPresentationRef {\n if (!isPlatformBrowser(this.platform))\n throw new Error(\"Picker presentations can only open in a browser\");\n const dialog = this.document.createElement(\"dialog\");\n dialog.setAttribute(\"aria-label\", \"Date and time picker\");\n Object.assign(dialog.style, {\n padding: \"0\",\n border: \"0\",\n borderRadius: \"14px\",\n width: \"min(390px, 100vw)\",\n maxWidth: \"100vw\",\n maxHeight: \"94vh\",\n background: \"transparent\",\n });\n const component = this.resolver\n .resolveComponentFactory(WklyDateTimePickerComponent)\n .create(injector || this.injector);\n component.instance.presentation = \"transient\";\n dialog.appendChild(component.location.nativeElement);\n this.document.body.appendChild(dialog);\n this.app.attachView(component.hostView);\n const cancel = (event: Event) => {\n event.preventDefault();\n onCancel(\"escape\");\n };\n const click = (event: MouseEvent) => {\n if (backdrop && event.target === dialog) {\n const r = dialog.getBoundingClientRect();\n if (\n event.clientX < r.left ||\n event.clientX > r.right ||\n event.clientY < r.top ||\n event.clientY > r.bottom\n )\n onCancel(\"backdrop\");\n }\n };\n const keydown = (event: KeyboardEvent) => {\n if (event.key !== \"Tab\") return;\n const controls = Array.from(\n dialog.querySelectorAll<HTMLElement>(\n 'button:not(:disabled),input:not(:disabled),[tabindex=\"0\"]',\n ),\n ).filter(\n (el) =>\n el.tabIndex >= 0 &&\n el.getClientRects().length &&\n getComputedStyle(el).visibility !== \"hidden\",\n );\n const first = controls[0],\n last = controls[controls.length - 1];\n if (\n first &&\n (event.shiftKey\n ? this.document.activeElement === first\n : this.document.activeElement === last)\n ) {\n event.preventDefault();\n (event.shiftKey ? last : first).focus();\n }\n };\n dialog.addEventListener(\"cancel\", cancel);\n dialog.addEventListener(\"click\", click);\n dialog.addEventListener(\"keydown\", keydown);\n dialog.showModal();\n return {\n component,\n destroy: () => {\n dialog.removeEventListener(\"cancel\", cancel);\n dialog.removeEventListener(\"click\", click);\n dialog.removeEventListener(\"keydown\", keydown);\n dialog.close();\n this.app.detachView(component.hostView);\n component.destroy();\n dialog.remove();\n trigger.focus();\n },\n };\n }\n}\n/** Shared trigger lifecycle; optional presentation packages extend this class. */\n@Directive()\nexport abstract class WklyTriggerBase\n extends WklyPickerInputs\n implements ControlValueAccessor, Validator, OnChanges, OnDestroy\n{\n protected ref: WklyPresentationRef | null = null;\n protected subscriptions: Subscription[] = [];\n private errors: readonly WklyValidationError[] = [];\n private change: (value: WklyPickerValue) => void = () => {};\n private touched: () => void = () => {};\n private validation: () => void = () => {};\n constructor(protected element: ElementRef<HTMLElement>) {\n super();\n }\n protected abstract create(): WklyPresentationRef;\n @HostListener(\"click\") open(): void {\n if (this[WklyPickerInputsPropertyKeys.Disabled] || this.ref) return;\n this.ref = this.create();\n const picker = this.ref.component.instance;\n this.copy();\n this.subscriptions = [\n picker[WklyPickerOutputsPropertyKeys.ValueChange].subscribe((value) => {\n this[WklyPickerInputsPropertyKeys.Value] = value;\n this.change(value);\n this[WklyPickerOutputsPropertyKeys.ValueChange].emit(value);\n this.display();\n }),\n picker[WklyPickerOutputsPropertyKeys.ValidationChange].subscribe(\n (errors) => {\n this.errors = errors;\n this[WklyPickerOutputsPropertyKeys.ValidationChange].emit(errors);\n this.validation();\n },\n ),\n picker[WklyPickerOutputsPropertyKeys.Closed].subscribe((reason) =>\n this.close(reason),\n ),\n picker[WklyPickerOutputsPropertyKeys.ViewportChange].subscribe((value) =>\n this[WklyPickerOutputsPropertyKeys.ViewportChange].emit(value),\n ),\n picker[WklyPickerOutputsPropertyKeys.ViewModeChange].subscribe((value) =>\n this[WklyPickerOutputsPropertyKeys.ViewModeChange].emit(value),\n ),\n ];\n this.ref.component.changeDetectorRef.detectChanges();\n picker.focusDay();\n this[WklyPickerOutputsPropertyKeys.Opened].emit();\n }\n @HostListener(\"keydown\", [\"$event\"]) key(event: KeyboardEvent): void {\n if (\n event.key === \"Enter\" ||\n event.key === \" \" ||\n event.key === \"ArrowDown\"\n ) {\n event.preventDefault();\n this.open();\n }\n }\n @HostListener(\"blur\") blur(): void {\n this.touched();\n }\n close(reason: WklyCloseReason = \"programmatic\"): void {\n if (!this.ref) return;\n const ref = this.ref;\n this.ref = null;\n this.subscriptions.forEach((s) => s.unsubscribe());\n this.subscriptions = [];\n ref.destroy();\n this.touched();\n this[WklyPickerOutputsPropertyKeys.Closed].emit(reason);\n }\n ngOnChanges(): void {\n [\n WklyPickerInputsPropertyKeys.ShowSeconds,\n WklyPickerInputsPropertyKeys.AllowRangeAcrossDisabled,\n WklyPickerInputsPropertyKeys.Required,\n WklyPickerInputsPropertyKeys.Disabled,\n WklyPickerInputsPropertyKeys.CloseOnBackdrop,\n ].forEach(\n (key) => ((this as any)[key] = coerceBoolean((this as any)[key])),\n );\n this.checkValue();\n this.display();\n if (this.ref) {\n this.copy();\n this.ref.component.instance.ngOnChanges({\n [WklyPickerInputsPropertyKeys.Value]: true,\n });\n this.ref.component.changeDetectorRef.detectChanges();\n }\n }\n ngOnDestroy(): void {\n this.close();\n }\n private copy(): void {\n if (this.ref)\n for (const name of INPUT_NAMES)\n (this.ref.component.instance as any)[name] = (this as any)[name];\n }\n private display(): void {\n const host = this.element.nativeElement as HTMLInputElement;\n if (host.tagName === \"INPUT\") {\n host.readOnly = true;\n const value = this[WklyPickerInputsPropertyKeys.Value];\n host.value =\n value === null\n ? \"\"\n : typeof value === \"string\"\n ? value\n : value.join(\" — \");\n host.disabled = this[WklyPickerInputsPropertyKeys.Disabled];\n host.setAttribute(\"aria-haspopup\", \"dialog\");\n }\n }\n private checkValue(): void {\n this.errors = validateSelection(\n this[WklyPickerInputsPropertyKeys.Value],\n this,\n this[WklyPickerInputsPropertyKeys.CalendarAdapter] ||\n new WklyGregorianCalendarAdapter(\n this[WklyPickerInputsPropertyKeys.Locale] || \"en-US\",\n ),\n );\n this[WklyPickerOutputsPropertyKeys.ValidationChange].emit(this.errors);\n this.validation();\n }\n writeValue(value: WklyPickerValue): void {\n this[WklyPickerInputsPropertyKeys.Value] = value;\n this.checkValue();\n this.display();\n if (this.ref) this.ref.component.instance.writeValue(value);\n }\n registerOnChange(fn: (value: WklyPickerValue) => void): void {\n this.change = fn;\n }\n registerOnTouched(fn: () => void): void {\n this.touched = fn;\n }\n setDisabledState(value: boolean): void {\n this[WklyPickerInputsPropertyKeys.Disabled] = value;\n this.display();\n if (this.ref) this.ref.component.instance.setDisabledState(value);\n }\n validate(): ValidationErrors | null {\n return this.errors.length ? { wkly: this.errors } : null;\n }\n registerOnValidatorChange(fn: () => void): void {\n this.validation = fn;\n }\n scrollToEpochDay(day: number, options?: WklyJumpOptions): void {\n this.open();\n this.ref?.component.instance.scrollToEpochDay(day, options);\n }\n scrollToAbsoluteWeek(week: number, options?: WklyJumpOptions): void {\n this.open();\n this.ref?.component.instance.scrollToAbsoluteWeek(week, options);\n }\n scrollToCalendarDate(\n date: WklyCalendarDate,\n options?: WklyJumpOptions,\n ): void {\n this.open();\n this.ref?.component.instance.scrollToCalendarDate(date, options);\n }\n scrollToValue(value: string, options?: WklyJumpOptions): void {\n this.open();\n this.ref?.component.instance.scrollToValue(value, options);\n }\n}\n@Directive({\n selector: \"[wklyDateTimePickerDialog]\",\n exportAs: \"wklyDialog\",\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => WklyDateTimePickerDialogDirective),\n multi: true,\n },\n {\n provide: NG_VALIDATORS,\n useExisting: forwardRef(() => WklyDateTimePickerDialogDirective),\n multi: true,\n },\n ],\n})\nexport class WklyDateTimePickerDialogDirective extends WklyTriggerBase {\n constructor(\n element: ElementRef<HTMLElement>,\n private service: WklyDateTimePickerDialogService,\n private triggerInjector: Injector,\n ) {\n super(element);\n }\n protected create(): WklyPresentationRef {\n return this.service.open(\n this.element.nativeElement,\n (reason) => this.close(reason),\n this[WklyPickerInputsPropertyKeys.CloseOnBackdrop],\n this.triggerInjector,\n );\n }\n}\n","import {\n Component,\n EventEmitter,\n Input,\n OnChanges,\n OnDestroy,\n Output,\n} from \"@angular/core\";\nimport { floorMod } from \"@wkly/core\";\nimport { normalizeDigits } from \"@wkly/adapters\";\n@Component({\n selector: \"wkly-field\",\n templateUrl: \"./field.component.html\",\n styleUrls: [\"./field.component.css\"],\n})\nexport class WklyFieldComponent implements OnChanges, OnDestroy {\n @Input() value: number | null = 0;\n @Input() label = \"\";\n @Input() hideLabel = false;\n @Input() previousLabel = \"\";\n @Input() nextLabel = \"\";\n @Input() min = 0;\n @Input() max = 59;\n @Input() step = 1;\n @Input() locale = \"en-US\";\n @Input() disabled = false;\n @Input() invalid = false;\n @Input() labels: readonly string[] | null = null;\n @Output() valueChange = new EventEmitter<number | null>();\n @Output() complete = new EventEmitter<void>();\n private before: number | null = null;\n private touchY = 0;\n private touchSteps = 0;\n private touchChanged = false;\n private typed: string | null = null;\n private inputTimer: ReturnType<typeof setTimeout> | null = null;\n private wheelTimer: ReturnType<typeof setTimeout> | null = null;\n get display(): string {\n if (this.typed !== null) return this.typed;\n return this.value === null\n ? \"\"\n : this.labels\n ? this.labels[this.value - this.min] || String(this.value)\n : new Intl.NumberFormat(this.locale, {\n useGrouping: false,\n minimumIntegerDigits: this.max < 60 ? 2 : 1,\n }).format(this.value);\n }\n ngOnChanges(changes: any): void {\n if (changes.value && this.min < 0 && this.typed !== null) {\n const typedValue =\n this.typed === \"\" || this.typed === \"-\" ? null : Number(this.typed);\n if (this.value !== typedValue) {\n // External date edits replace a pending relative-day preview.\n this.cancelInput();\n this.typed = null;\n }\n }\n }\n ngOnDestroy(): void {\n this.cancelInput();\n if (this.wheelTimer !== null) clearTimeout(this.wheelTimer);\n }\n next(delta: number): number {\n const count = Math.floor((this.max - this.min) / this.step) + 1;\n return (\n this.min +\n floorMod(\n Math.floor(\n ((this.value === null ? this.min : this.value) - this.min) /\n this.step,\n ) + delta,\n count,\n ) *\n this.step\n );\n }\n neighbor(delta: number): string {\n const n = this.next(delta);\n return this.labels\n ? this.labels[n - this.min] || \"\"\n : new Intl.NumberFormat(this.locale, { useGrouping: false }).format(n);\n }\n stepBy(delta: number): void {\n if (this.disabled) return;\n this.scrollBy(delta);\n this.complete.emit();\n }\n begin(event: FocusEvent): void {\n this.before = this.value;\n (event.target as HTMLInputElement).select();\n }\n type(event: Event): void {\n if (this.disabled) return;\n const input = event.target as HTMLInputElement;\n const raw = input.value;\n const numeric = Array.from(raw).every(\n (character) => normalizeDigits(character).length === 1,\n );\n if (this.min < 0 && !this.labels) {\n // Preserve the sign while using the same locale digit normalization.\n const signed = raw\n .replace(/[\\u200e\\u200f\\u061c]/g, \"\")\n .replace(/\\u2212/g, \"-\");\n const digits = normalizeDigits(signed);\n this.typed = input.value = (signed.startsWith(\"-\") ? \"-\" : \"\") + digits;\n this.value =\n digits === \"\"\n ? null\n : Math.max(this.min, Math.min(this.max, Number(this.typed)));\n if (this.value !== null && Number(this.typed) !== this.value)\n this.typed = input.value = String(this.value);\n } else if (numeric) {\n const normalized = normalizeDigits(raw);\n this.typed = input.value =\n this.min >= 0 && this.max < 100 ? normalized.slice(-2) : normalized;\n this.value = this.typed === \"\" ? null : Number(this.typed);\n } else if (this.labels) {\n const search = raw.trim().toLocaleLowerCase(this.locale);\n this.typed = raw;\n const matches = this.labels\n .map((label, index) => ({ label, index }))\n .filter((item) =>\n item.label.toLocaleLowerCase(this.locale).includes(search),\n );\n this.value = matches.length === 1 ? this.min + matches[0].index : null;\n } else {\n this.typed = input.value = normalizeDigits(raw);\n this.value = this.typed === \"\" ? null : Number(this.typed);\n }\n this.valueChange.emit(this.value);\n this.cancelInput();\n if (!numeric && this.labels && this.value !== null) this.complete.emit();\n this.inputTimer = setTimeout(() => {\n this.inputTimer = null;\n this.typed = null;\n if (!this.disabled) this.complete.emit();\n }, 1000);\n }\n key(event: KeyboardEvent): void {\n if (event.key === \"Escape\") {\n event.preventDefault();\n event.stopPropagation();\n this.cancelInput();\n this.typed = null;\n this.value = this.before;\n this.valueChange.emit(this.before);\n (event.target as HTMLInputElement).value = this.display;\n (event.target as HTMLInputElement).blur();\n }\n if (event.key === \"Enter\") {\n event.preventDefault();\n event.stopPropagation();\n this.finish();\n }\n const delta =\n event.key === \"ArrowUp\"\n ? -1\n : event.key === \"ArrowDown\"\n ? 1\n : event.key === \"PageUp\"\n ? -5\n : event.key === \"PageDown\"\n ? 5\n : 0;\n if (delta) {\n event.preventDefault();\n this.stepBy(delta);\n }\n }\n finish(): void {\n this.cancelInput();\n this.typed = null;\n this.complete.emit();\n }\n wheel(event: WheelEvent): void {\n if (this.disabled || Math.abs(event.deltaY) < 1) return;\n event.preventDefault();\n this.scrollBy(event.deltaY > 0 ? 1 : -1);\n if (this.wheelTimer !== null) clearTimeout(this.wheelTimer);\n this.wheelTimer = setTimeout(() => {\n this.wheelTimer = null;\n this.complete.emit();\n }, 140);\n }\n touchStart(event: TouchEvent): void {\n this.touchY = event.touches[0].clientY;\n this.touchSteps = 0;\n this.touchChanged = false;\n }\n touchMove(event: TouchEvent): void {\n this.applyTouchY(event.touches[0].clientY);\n }\n touchEnd(event: TouchEvent): void {\n this.applyTouchY(event.changedTouches[0].clientY);\n if (this.touchChanged) this.complete.emit();\n this.touchChanged = false;\n }\n private cancelInput(): void {\n if (this.inputTimer !== null) clearTimeout(this.inputTimer);\n this.inputTimer = null;\n }\n private scrollBy(delta: number): void {\n if (this.disabled || !delta) return;\n this.cancelInput();\n this.typed = null;\n this.value = this.next(delta);\n this.valueChange.emit(this.value);\n }\n private applyTouchY(y: number): void {\n // Count total gesture steps so repeated move events do not duplicate changes.\n if (this.disabled) return;\n const delta = this.touchY - y;\n const steps =\n Math.abs(delta) > 16\n ? Math.sign(delta) * Math.max(1, Math.round(Math.abs(delta) / 40))\n : 0;\n const change = steps - this.touchSteps;\n if (!change) return;\n this.scrollBy(change);\n this.touchSteps = steps;\n this.touchChanged = true;\n }\n}\n","import { NgModule } from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\nimport { WklyDateTimePickerComponent } from \"./picker.component\";\nimport { WklyDateTimePickerDialogDirective } from \"./presentation\";\nimport { WklyFieldComponent } from \"./field.component\";\nexport * from \"./config\";\nexport { WklyDateTimePickerComponent } from \"./picker.component\";\nexport {\n WklyPresentationRef,\n WklyDateTimePickerDialogService,\n WklyTriggerBase,\n WklyDateTimePickerDialogDirective,\n} from \"./presentation\";\nexport { WklyFieldComponent } from \"./field.component\";\nexport {\n WklyPickerValue,\n WklyIsoString,\n WklyRangeValue,\n WklySelectionMode,\n WklyValidationError,\n WklyValidationErrorCode,\n WklyViewportPreset,\n WklyHourCycle,\n WklyEndpoint,\n WklyDisabledDatePredicate,\n WklyDisabledTimePredicate,\n WklyRangeValidator,\n WklyWeekLabelMode,\n WklyWeekLabelFormatter,\n} from \"@wkly/adapters\";\n@NgModule({\n imports: [CommonModule],\n declarations: [\n WklyDateTimePickerComponent,\n WklyDateTimePickerDialogDirective,\n WklyFieldComponent,\n ],\n entryComponents: [WklyDateTimePickerComponent],\n exports: [WklyDateTimePickerComponent, WklyDateTimePickerDialogDirective],\n})\nexport class WklyDateTimePickerModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n\nexport {WklyClock as ɵb,WklyConfiguration as ɵa,WklyStrings as ɵc,WklyTranslations as ɵd} from './config';"],"names":["InjectionToken","DEFAULT_OVERSCAN_WEEKS","EventEmitter","WklyPickerInputsPropertyKeys","WklyPickerOutputsPropertyKeys","Directive","__decorate","Input","Output","isPlatformBrowser","coerceBoolean","WklyGregorianCalendarAdapter","getLocaleFirstDayOfWeek","resolveWeekOffset","integer","createWeekGenerator","error","absoluteWeekOf","resolveWklyTranslation","firstEpochDayOf","validateSelection","decodeIso","validateDrafts","draftDayDifference","setDraftDayDifference","calendarMonthBounds","createWeekRows","Component","NG_VALUE_ACCESSOR","forwardRef","NG_VALIDATORS","Inject","LOCALE_ID","PLATFORM_ID","ElementRef","ChangeDetectorRef","ViewChild","Injectable","ComponentFactoryResolver","Injector","ApplicationRef","DOCUMENT","INPUT_NAMES","HostListener","floorMod","normalizeDigits","NgModule","CommonModule"],"mappings":"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"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("@angular/forms"),require("@wkly/core"),require("@wkly/adapters"),require("@wkly/presentation")):"function"==typeof define&&define.amd?define("@wkly/datetime-picker",["exports","@angular/core","@angular/common","@angular/forms","@wkly/core","@wkly/adapters","@wkly/presentation"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).wkly=e.wkly||{},e.wkly["datetime-picker"]={}),e.ng.core,e.ng.common,e.ng.forms,e.core,e.adapters,e.presentation)}(this,(function(e,t,i,n,r,o,s){"use strict";var a=function(e,t){return(a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i])})(e,t)};function l(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function i(){this.constructor=e}a(e,t),e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)}Object.create;function c(e){var t="function"==typeof Symbol&&Symbol.iterator,i=t&&e[t],n=0;if(i)return i.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function p(e,t){var i="function"==typeof Symbol&&e[Symbol.iterator];if(!i)return e;var n,r,o=i.call(e),s=[];try{for(;(void 0===t||t-- >0)&&!(n=o.next()).done;)s.push(n.value)}catch(e){r={error:e}}finally{try{n&&!n.done&&(i=o.return)&&i.call(o)}finally{if(r)throw r.error}}return s}Object.create;"function"==typeof SuppressedError&&SuppressedError;var u,h,d,y,f,k,b,v,g,m,P,w,W,I,D,K,O,C,x,S,T,M,E,j,L,V,R,A,z,H,N,F,_,B,Y=this&&this.__decorate||function(e,t,i,n){var r,o=arguments.length,s=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(r=e[a])&&(s=(o<3?r(s):o>3?r(t,i,s):r(t,i))||s);return o>3&&s&&Object.defineProperty(t,i,s),s},U=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},$=new t.InjectionToken("WKLY_CLOCK",{providedIn:"root",factory:function(){return{now:function(){return new Date}}}}),q=new t.InjectionToken("WKLY_CONFIG",{providedIn:"root",factory:function(){return{}}}),G=new t.InjectionToken("WKLY_LOCALIZATION",{providedIn:"root",factory:function(){return{}}}),J=new t.InjectionToken("WKLY_TRANSLATIONS",{providedIn:"root",factory:function(){return{}}}),Z=function(){this[u]="datetime",this[h]=null,this[y]="",this[f]=null,this[k]={kind:"full-month"},this[b]="locale",this[v]=!1,this[g]=1,this[m]=1,this[P]=null,this[w]=null,this[W]=null,this[I]=null,this[D]=null,this[K]=!1,this[O]=!1,this[C]=!1,this[x]="locale",this[S]=null,this[T]=256,this[M]=s.DEFAULT_OVERSCAN_WEEKS,this[E]=null,this[j]=null,this[L]=null,this[V]=!0,this[R]=[],this[A]=null,this[z]=new t.EventEmitter,this[H]=new t.EventEmitter(!0),this[N]=new t.EventEmitter,this[F]=new t.EventEmitter,this[_]=new t.EventEmitter(!0),this[B]=new t.EventEmitter};u=s.WklyPickerInputsPropertyKeys.Mode,h=s.WklyPickerInputsPropertyKeys.Value,d=s.WklyPickerInputsPropertyKeys.CalendarAdapter,y=s.WklyPickerInputsPropertyKeys.Locale,f=s.WklyPickerInputsPropertyKeys.WeekOffset,k=s.WklyPickerInputsPropertyKeys.ViewportPreset,b=s.WklyPickerInputsPropertyKeys.HourCycle,v=s.WklyPickerInputsPropertyKeys.ShowSeconds,g=s.WklyPickerInputsPropertyKeys.MinuteStep,m=s.WklyPickerInputsPropertyKeys.SecondStep,P=s.WklyPickerInputsPropertyKeys.Min,w=s.WklyPickerInputsPropertyKeys.Max,W=s.WklyPickerInputsPropertyKeys.IsDateDisabled,I=s.WklyPickerInputsPropertyKeys.IsTimeDisabled,D=s.WklyPickerInputsPropertyKeys.RangeValidator,K=s.WklyPickerInputsPropertyKeys.AllowRangeAcrossDisabled,O=s.WklyPickerInputsPropertyKeys.Required,C=s.WklyPickerInputsPropertyKeys.Disabled,x=s.WklyPickerInputsPropertyKeys.WeekLabelMode,S=s.WklyPickerInputsPropertyKeys.WeekLabelFormatter,T=s.WklyPickerInputsPropertyKeys.WeekCacheSize,M=s.WklyPickerInputsPropertyKeys.OverscanWeeks,E=s.WklyPickerInputsPropertyKeys.AriaLabel,j=s.WklyPickerInputsPropertyKeys.AriaDescribedBy,L=s.WklyPickerInputsPropertyKeys.InitialEpochDay,V=s.WklyPickerInputsPropertyKeys.CloseOnBackdrop,R=s.WklyPickerInputsPropertyKeys.Validators,A=s.WklyPickerInputsPropertyKeys.Translations,z=s.WklyPickerOutputsPropertyKeys.ValueChange,H=s.WklyPickerOutputsPropertyKeys.ValidationChange,N=s.WklyPickerOutputsPropertyKeys.Opened,F=s.WklyPickerOutputsPropertyKeys.Closed,_=s.WklyPickerOutputsPropertyKeys.ViewportChange,B=s.WklyPickerOutputsPropertyKeys.ViewModeChange,Z.decorators=[{type:t.Directive,args:[{inputs:["mode","value","calendarAdapter","locale","weekOffset","viewportPreset","hourCycle","showSeconds","minuteStep","secondStep","min","max","isDateDisabled","isTimeDisabled","rangeValidator","allowRangeAcrossDisabled","required","disabled","weekLabelMode","weekLabelFormatter","weekCacheSize","overscanWeeks","ariaLabel","ariaDescribedBy","initialEpochDay","closeOnBackdrop","validators","translations"],outputs:["valueChange","validationChange","opened","closed","viewportChange","viewModeChange"]}]}],Y([t.Input(),U("design:type",String)],Z.prototype,u,void 0),Y([t.Input(),U("design:type",Object)],Z.prototype,h,void 0),Y([t.Input(),U("design:type",Object)],Z.prototype,d,void 0),Y([t.Input(),U("design:type",String)],Z.prototype,y,void 0),Y([t.Input(),U("design:type",Object)],Z.prototype,f,void 0),Y([t.Input(),U("design:type",Object)],Z.prototype,k,void 0),Y([t.Input(),U("design:type",String)],Z.prototype,b,void 0),Y([t.Input(),U("design:type",Boolean)],Z.prototype,v,void 0),Y([t.Input(),U("design:type",Number)],Z.prototype,g,void 0),Y([t.Input(),U("design:type",Number)],Z.prototype,m,void 0),Y([t.Input(),U("design:type",Object)],Z.prototype,P,void 0),Y([t.Input(),U("design:type",Object)],Z.prototype,w,void 0),Y([t.Input(),U("design:type",Object)],Z.prototype,W,void 0),Y([t.Input(),U("design:type",Object)],Z.prototype,I,void 0),Y([t.Input(),U("design:type",Object)],Z.prototype,D,void 0),Y([t.Input(),U("design:type",Object)],Z.prototype,K,void 0),Y([t.Input(),U("design:type",Object)],Z.prototype,O,void 0),Y([t.Input(),U("design:type",Object)],Z.prototype,C,void 0),Y([t.Input(),U("design:type",String)],Z.prototype,x,void 0),Y([t.Input(),U("design:type",Object)],Z.prototype,S,void 0),Y([t.Input(),U("design:type",Object)],Z.prototype,T,void 0),Y([t.Input(),U("design:type",Object)],Z.prototype,M,void 0),Y([t.Input(),U("design:type",Object)],Z.prototype,E,void 0),Y([t.Input(),U("design:type",Object)],Z.prototype,j,void 0),Y([t.Input(),U("design:type",Object)],Z.prototype,L,void 0),Y([t.Input(),U("design:type",Object)],Z.prototype,V,void 0),Y([t.Input(),U("design:type",Array)],Z.prototype,R,void 0),Y([t.Input(),U("design:type",Object)],Z.prototype,A,void 0),Y([t.Output(),U("design:type",Object)],Z.prototype,z,void 0),Y([t.Output(),U("design:type",Object)],Z.prototype,H,void 0),Y([t.Output(),U("design:type",Object)],Z.prototype,N,void 0),Y([t.Output(),U("design:type",Object)],Z.prototype,F,void 0),Y([t.Output(),U("design:type",Object)],Z.prototype,_,void 0),Y([t.Output(),U("design:type",Object)],Z.prototype,B,void 0);var X=function(e){function t(t,n,r,o,a,l,c,p){var u=e.call(this)||this;return u.defaultLocale=t,u.defaults=n,u.clock=r,u.strings=o,u.defaultTranslations=a,u.host=c,u.changeDetector=p,u.presentation="inline",u.viewMode="calendar",u.endView="date",u.effectiveLocale="en-US",u.effectiveOffset=0,u.effectiveHourCycle="h24",u.direction="ltr",u.rows=[],u.weekdays=[],u.drafts=[],u.errors=[],u.today=0,u.focused=0,u.anchorWeek=0,u.firstWeek=0,u.visibleCount=6,u.rowHeight=76,u.scrollHeight=152076,u.paddingTop=0,u.initialized=!1,u.compact=!1,u.WklyPickerInputsPropertyKeys=s.WklyPickerInputsPropertyKeys,u.baseWeek=0,u.firstSupportedDay=0,u.lastSupportedDay=0,u.firstSupportedWeek=0,u.lastSupportedWeek=0,u.initialMonth="",u.clipMonth=!1,u.browser=!1,u.destroyed=!1,u.snapPending=!1,u.onChange=function(){},u.onTouched=function(){},u.validatorChanged=function(){},u.configErrors=[],u.pendingValue=null,u.emittedValue=null,u.manualDateEndpoint=0,u.browser=i.isPlatformBrowser(l),u}return l(t,e),t.prototype.ngOnInit=function(){this.initialize()},t.prototype.ngOnChanges=function(e){if(this.initialized){if(1===Object.keys(e).length&&e[s.WklyPickerInputsPropertyKeys.Value]&&this.emittedValue===JSON.stringify(this[s.WklyPickerInputsPropertyKeys.Value]))return void(this.emittedValue=null);var t=this.focused;this.configure(),e[s.WklyPickerInputsPropertyKeys.Value]||e[s.WklyPickerInputsPropertyKeys.Mode]||e[s.WklyPickerInputsPropertyKeys.CalendarAdapter]?(this.load(this[s.WklyPickerInputsPropertyKeys.Value]),this.position(this.focused,!0)):(this.check(),e[s.WklyPickerInputsPropertyKeys.ViewportPreset]?this.position(t,!0):this.scrollToEpochDay(t))}},t.prototype.initialize=function(){if(!this.initialized){this.configure();var e=this[s.WklyPickerInputsPropertyKeys.InitialEpochDay];this.today=this.browser?Math.floor(this.clock.now().getTime()/864e5):null===e?0:e,this.focused=null===e?void 0===this.defaults.initialEpochDay?this.today:this.defaults.initialEpochDay:e,this.load(this[s.WklyPickerInputsPropertyKeys.Value]),this.initialized=!0,this.position(this.focused,!0)}},t.prototype.configure=function(){var e,t,n=this;this.configErrors=[],[s.WklyPickerInputsPropertyKeys.ShowSeconds,s.WklyPickerInputsPropertyKeys.AllowRangeAcrossDisabled,s.WklyPickerInputsPropertyKeys.Required,s.WklyPickerInputsPropertyKeys.Disabled,s.WklyPickerInputsPropertyKeys.CloseOnBackdrop].forEach((function(e){return n[e]=s.coerceBoolean(n[e])})),this.effectiveLocale=this[s.WklyPickerInputsPropertyKeys.Locale]||this.defaults.locale||this.defaultLocale,this.direction=/^(ar|he|fa|ur)(-|$)/.test(this.effectiveLocale)?"rtl":"ltr",this.adapter=this[s.WklyPickerInputsPropertyKeys.CalendarAdapter]||new o.WklyGregorianCalendarAdapter(this.effectiveLocale);try{var a=void 0;try{a=i.getLocaleFirstDayOfWeek(this.effectiveLocale)}catch(e){}if(this.effectiveOffset=o.resolveWeekOffset(this.effectiveLocale,this[s.WklyPickerInputsPropertyKeys.WeekOffset],this.defaults.weekOffset,a),r.integer(this[s.WklyPickerInputsPropertyKeys.WeekCacheSize]),r.integer(this[s.WklyPickerInputsPropertyKeys.OverscanWeeks]),this[s.WklyPickerInputsPropertyKeys.WeekCacheSize]<0||this[s.WklyPickerInputsPropertyKeys.OverscanWeeks]<0||this[s.WklyPickerInputsPropertyKeys.OverscanWeeks]>50)throw new RangeError;if(!["datetime","date","time","datetime-range","date-range","time-range"].includes(this[s.WklyPickerInputsPropertyKeys.Mode]))throw new RangeError;var l=this[s.WklyPickerInputsPropertyKeys.ViewportPreset];if("weeks"===l.kind&&(r.integer(l.visibleWeekCount),l.visibleWeekCount<1||l.visibleWeekCount>52))throw new RangeError;if("full-month-and-around"===l.kind)try{for(var p=c([l.extraWeeksBefore||0,l.extraWeeksAfter||0]),u=p.next();!u.done;u=p.next()){var h=u.value;if(r.integer(h),h<0||h>52)throw new RangeError}}catch(t){e={error:t}}finally{try{u&&!u.done&&(t=p.return)&&t.call(p)}finally{if(e)throw e.error}}this.generator=r.createWeekGenerator({weekOffset:this.effectiveOffset,cacheSize:this[s.WklyPickerInputsPropertyKeys.WeekCacheSize]})}catch(e){this.configErrors.push(o.error("configuration-error",this[s.WklyPickerInputsPropertyKeys.WeekOffset])),this.generator=r.createWeekGenerator(),this.effectiveOffset=0}this.setSupportedScrollRange(),this.effectiveHourCycle="h12"===this[s.WklyPickerInputsPropertyKeys.HourCycle]||"locale"===this[s.WklyPickerInputsPropertyKeys.HourCycle]&&new Intl.DateTimeFormat(this.effectiveLocale,{hour:"numeric",timeZone:"UTC"}).resolvedOptions().hour12?"h12":"h24",this.weekdays=Array.from({length:7},(function(e,t){return n.adapter.formatWeekday(n.effectiveOffset+t,"short")}))},t.prototype.setSupportedScrollRange=function(){var e=this,t=p(this.adapter.supportedEpochDayRange,2),i=t[0],n=t[1],o=p(this.adapter.supportedYearRange,2),s=o[0],a=o[1],l=function(t){return e.adapter.epochDayToDate(t).year};if(l(i)<s){for(var c=i,u=n;c<u;){l(h=Math.floor((c+u)/2))<s?c=h+1:u=h}i=c}if(l(n)>a){for(c=i,u=n;c<u;){var h;l(h=Math.ceil((c+u)/2))>a?u=h-1:c=h}n=c}if(i>n||l(i)<s||l(i)>a||l(n)<s||l(n)>a)throw new RangeError("No supported days within the calendar year range");this.firstSupportedDay=i,this.lastSupportedDay=n,this.firstSupportedWeek=r.absoluteWeekOf(i,this.effectiveOffset),this.lastSupportedWeek=r.absoluteWeekOf(n,this.effectiveOffset)},t.prototype.clampFirstWeek=function(e){var t=Math.max(this.firstSupportedWeek,this.lastSupportedWeek-this.visibleCount+1);return Math.max(this.firstSupportedWeek,Math.min(t,e))},t.prototype.ngAfterViewInit=function(){var e=this;this.resetScroll(),this.browser&&"undefined"!=typeof ResizeObserver&&(this.observer=new ResizeObserver((function(){e.compact=e.host.nativeElement.clientWidth<338;var t=e.host.nativeElement.querySelector(".week-row"),i=t?parseFloat(getComputedStyle(t).height):0;i&&i!==e.rowHeight&&(e.rowHeight=i,e.scrollHeight=2001*e.rowHeight,e.renderRows(),e.resetScroll())})),this.observer.observe(this.host.nativeElement))},t.prototype.ngOnDestroy=function(){this.destroyed=!0,this.observer&&this.observer.disconnect(),this.scrollEndTimer&&clearTimeout(this.scrollEndTimer),this.generator&&this.generator.clearCache()},t.prototype.t=function(e){return s.resolveWklyTranslation(e,this.effectiveLocale,this[s.WklyPickerInputsPropertyKeys.Translations]||this.defaultTranslations,this.strings)},Object.defineProperty(t.prototype,"isRange",{get:function(){return this[s.WklyPickerInputsPropertyKeys.Mode].endsWith("-range")},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"hasDate",{get:function(){return!this[s.WklyPickerInputsPropertyKeys.Mode].startsWith("time")},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"hasTime",{get:function(){return"date"!==this[s.WklyPickerInputsPropertyKeys.Mode]&&"date-range"!==this[s.WklyPickerInputsPropertyKeys.Mode]},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"submitVisible",{get:function(){return"transient"===this.presentation&&("date"!==this[s.WklyPickerInputsPropertyKeys.Mode]||"manual"===this.viewMode)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"title",{get:function(){try{var e=this.adapter.epochDayToDate(Math.max(this.firstSupportedDay,Math.min(this.lastSupportedDay,r.firstEpochDayOf(this.anchorWeek,this.effectiveOffset))));return this.adapter.formatMonth(e)+" "+this.adapter.formatYear(e)}catch(e){return""}},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"canSubmit",{get:function(){return!this[s.WklyPickerInputsPropertyKeys.Disabled]&&!this.errors.length&&null!==this.pendingValue},enumerable:!1,configurable:!0}),t.prototype.blank=function(e){var t=Math.max(this.firstSupportedDay,Math.min(this.lastSupportedDay,e));return{date:this.adapter.epochDayToDate(t),hour:0,minute:0,second:0,present:!1}},t.prototype.load=function(e){var t=this;this.drafts=[this.blank(this.focused),this.blank(this.focused)];var i=o.validateSelection(e,this,this.adapter);null===e||i.length||("string"==typeof e?[e]:e).forEach((function(e,i){var n=o.decodeIso(e);t.drafts[i]={date:t.hasDate?t.adapter.epochDayToDate(n.epochDay):t.blank(t.today).date,hour:n.hour,minute:n.minute,second:n.second,present:!0},0===i&&t.hasDate&&(t.focused=n.epochDay)}));i.length?(this.pendingValue=null,this.report(i)):this.check()},t.prototype.writeValue=function(e){this[s.WklyPickerInputsPropertyKeys.Value]=e,this.initialized&&(this.load(e),this.position(this.focused,!0))},t.prototype.registerOnChange=function(e){this.onChange=e},t.prototype.registerOnTouched=function(e){this.onTouched=e},t.prototype.setDisabledState=function(e){this[s.WklyPickerInputsPropertyKeys.Disabled]=e},t.prototype.validate=function(e){return this.errors.length?{wkly:this.errors}:null},t.prototype.registerOnValidatorChange=function(e){this.validatorChanged=e},t.prototype.touched=function(){var e=this;Promise.resolve().then((function(){return e.onTouched()}))},t.prototype.report=function(e){var t=JSON.stringify(this.errors)!==JSON.stringify(e);this.errors=e,t&&(this[s.WklyPickerOutputsPropertyKeys.ValidationChange].emit(e),this.validatorChanged())},t.prototype.check=function(){var e=s.validateDrafts({drafts:this.drafts,configErrors:this.configErrors,adapter:this.adapter,selection:this,mode:this[s.WklyPickerInputsPropertyKeys.Mode],isRange:this.isRange,hasDate:this.hasDate,hasTime:this.hasTime,showSeconds:this[s.WklyPickerInputsPropertyKeys.ShowSeconds],required:this[s.WklyPickerInputsPropertyKeys.Required]});this.pendingValue=e.pendingValue,this.report(e.errors)},t.prototype.trackDraft=function(e){return e},t.prototype.orderDrafts=function(){var e=this;if(this.isRange&&this.drafts.every((function(e){return e.present}))&&!this.drafts.some((function(e){return void 0!==e.unsupportedEpochDay})))try{var t=this.drafts[0],i=this.drafts[1],n=function(t){return 86400*e.adapter.dateToEpochDay(t.date)+3600*(t.hour||0)+60*(t.minute||0)+(t.second||0)};n(t)>n(i)&&(this.drafts=[i,t])}catch(e){}},t.prototype.finish=function(){this[s.WklyPickerInputsPropertyKeys.Disabled]||(this.orderDrafts(),"manual"===this.viewMode&&this.hasDate&&this.positionOnManualDate(),this.check(),"inline"===this.presentation&&this.canSubmit&&this.commit())},t.prototype.commit=function(){if(this.canSubmit){var e=this.pendingValue;JSON.stringify(e)!==JSON.stringify(this[s.WklyPickerInputsPropertyKeys.Value])&&(this[s.WklyPickerInputsPropertyKeys.Value]=e,this.emittedValue=JSON.stringify(e),this.onChange(e),this[s.WklyPickerOutputsPropertyKeys.ValueChange].emit(e)),this.onTouched()}},t.prototype.submit=function(e){void 0===e&&(e="submit"),this.check(),this.canSubmit&&(this.commit(),"transient"===this.presentation&&this[s.WklyPickerOutputsPropertyKeys.Closed].emit(e))},t.prototype.cancel=function(e){void 0===e&&(e="close-button"),this[s.WklyPickerInputsPropertyKeys.Disabled]||(this.load(this[s.WklyPickerInputsPropertyKeys.Value]),this.onTouched(),this[s.WklyPickerOutputsPropertyKeys.Closed].emit(e))},t.prototype.now=function(){var e=this;if(!this[s.WklyPickerInputsPropertyKeys.Disabled]){var t=this.clock.now(),i=Math.floor(t.getTime()/864e5);this.drafts=[0,1].map((function(n){return Object.assign(Object.assign({},e.clockDraft(i,t)),{present:0===n||e.isRange})})),this.hasDate&&(i<this.firstSupportedDay||i>this.lastSupportedDay)?this.report([o.error("unsupported-adapter-date",i)]):(this.focused=i,this.position(i,!0),this.check(),this.submit("now"))}},t.prototype.clockDraft=function(e,t){return Object.assign(Object.assign({},this.blank(e)),{hour:t.getUTCHours(),minute:Math.floor(t.getUTCMinutes()/this[s.WklyPickerInputsPropertyKeys.MinuteStep])*this[s.WklyPickerInputsPropertyKeys.MinuteStep],second:this[s.WklyPickerInputsPropertyKeys.ShowSeconds]?Math.floor(t.getUTCSeconds()/this[s.WklyPickerInputsPropertyKeys.SecondStep])*this[s.WklyPickerInputsPropertyKeys.SecondStep]:0})},t.prototype.initializeManualRange=function(){if(this.isRange&&this.hasDate&&!this.drafts.every((function(e){return e.present}))){var e=this.drafts.find((function(e){return e.present}));if(!e){if(null!==this[s.WklyPickerInputsPropertyKeys.Value])return;var t=this.clock.now(),i=this[s.WklyPickerInputsPropertyKeys.InitialEpochDay],n=null===i?void 0===this.defaults.initialEpochDay?Math.floor(t.getTime()/864e5):this.defaults.initialEpochDay:i;e=Object.assign(Object.assign({},this.clockDraft(n,t)),{present:!0})}var r=e;this.drafts=this.drafts.map((function(e){return e.present?e:Object.assign(Object.assign({},r),{date:Object.assign({},r.date)})})),this.finish(),this.changeDetector.markForCheck()}},t.prototype.toggleView=function(){var e=this;!this[s.WklyPickerInputsPropertyKeys.Disabled]&&this.hasDate&&(this.viewMode="calendar"===this.viewMode?"manual":"calendar","manual"===this.viewMode&&this.initializeManualRange(),"calendar"===this.viewMode&&this.positionOnManualDate(),this[s.WklyPickerOutputsPropertyKeys.ViewModeChange].emit(this.viewMode),"calendar"===this.viewMode&&setTimeout((function(){return e.resetScroll()})))},t.prototype.positionOnManualDate=function(){var e=this.drafts[this.manualDateEndpoint];if(e&&e.present)try{var t=this.adapter.dateToEpochDay(e.date);this.focused=t,this.position(t,!0)}catch(t){try{var i=this.adapter.dateToEpochDay(Object.assign(Object.assign({},e.date),{day:1}));this.focused=i,this.position(i,!0)}catch(e){}}},t.prototype.months=function(e){try{return this.adapter.getMonths(e.date.year).map((function(e){return e.label}))}catch(e){return[]}},t.prototype.monthCount=function(e){return this.months(e).length||12},Object.defineProperty(t.prototype,"inDays",{get:function(){return s.draftDayDifference(this.drafts,this.adapter)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"inDaysLabel",{get:function(){var e=this.inDays;return this.t("inDays").replace(/{{\s*days\s*}}/g,null===e?this.t("daysUnavailable"):new Intl.NumberFormat(this.effectiveLocale,{useGrouping:!1}).format(e))},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"resultingEndDate",{get:function(){try{var e=this.drafts[1];return void 0!==e.unsupportedEpochDay||this.adapter.validateDate(e.date).length?"":[this.adapter.formatDay(e.date),this.adapter.formatMonth(e.date),this.adapter.formatYear(e.date)].join(" ")}catch(e){return""}},enumerable:!1,configurable:!0}),t.prototype.toggleEndView=function(e){this[s.WklyPickerInputsPropertyKeys.Disabled]||(this.endView=e)},t.prototype.days=function(e){this[s.WklyPickerInputsPropertyKeys.Disabled]||(this.manualDateEndpoint=1,s.setDraftDayDifference(this.drafts,this.adapter,e),this.check())},t.prototype.field=function(e,t,i){var n;if(!this[s.WklyPickerInputsPropertyKeys.Disabled]){var r=this.drafts[e];if(r.present=!0,"day"===t||"year"===t||"month"===t){this.manualDateEndpoint=e,delete r.unsupportedEpochDay;var o=Object.assign(Object.assign({},r.date),((n={})[t]=i,n));if("month"===t){var a=void 0;try{a=this.adapter.getMonths(o.year).find((function(e){return e.month===i}))}catch(e){}o=Object.assign(Object.assign({},o),{monthCode:a?a.monthCode:""})}if("year"===t&&null!==i)try{(a=this.adapter.getMonths(i).find((function(e){return e.monthCode===o.monthCode})))&&(o=Object.assign(Object.assign({},o),{month:a.month}))}catch(e){}r.date=o}else"hour"===t&&"h12"===this.effectiveHourCycle?r.hour=null===i?null:i>=1&&i<=12?i%12+((r.hour||0)>=12?12:0):24+i:r[t]=i;this.check()}},t.prototype.displayHour=function(e){return null===e.hour?null:"h12"===this.effectiveHourCycle?e.hour%12||12:e.hour},t.prototype.period=function(e,t){this[s.WklyPickerInputsPropertyKeys.Disabled]||("24"===t?this.effectiveHourCycle="h24":(this.effectiveHourCycle="h12",this.drafts[e].hour=(this.drafts[e].hour||0)%12+("pm"===t?12:0),this.drafts[e].present=!0,this.finish()))},t.prototype.selected=function(e){var t=this;return this.drafts.some((function(i){try{return i.present&&t.adapter.dateToEpochDay(i.date)===e}catch(e){return!1}}))},t.prototype.inRange=function(e){if(!this.isRange||!this.drafts.every((function(e){return e.present})))return!1;try{var t=this.adapter.dateToEpochDay(this.drafts[0].date),i=this.adapter.dateToEpochDay(this.drafts[1].date);return e>Math.min(t,i)&&e<Math.max(t,i)}catch(e){return!1}},t.prototype.dayDisabled=function(e){var t,i;if(e<this.firstSupportedDay||e>this.lastSupportedDay)return!0;try{var n=this.adapter.epochDayToDate(e),r=this[s.WklyPickerInputsPropertyKeys.IsDateDisabled];if(r&&r(e,{mode:this[s.WklyPickerInputsPropertyKeys.Mode],endpoint:this.isRange?(null===(t=this.drafts[0])||void 0===t?void 0:t.present)&&!(null===(i=this.drafts[1])||void 0===i?void 0:i.present)?"end":"start":"single",calendarDate:n}))return!0;var a=this[s.WklyPickerInputsPropertyKeys.Min],l=this[s.WklyPickerInputsPropertyKeys.Max];return!!(a&&e<o.decodeIso(a).epochDay)||!!(l&&e>o.decodeIso(l).epochDay)}catch(e){return!0}},t.prototype.select=function(e){if(!this[s.WklyPickerInputsPropertyKeys.Disabled]&&!this.dayDisabled(e)){this.focused=e;var t=this.isRange&&this.drafts[0].present&&!this.drafts[1].present?1:0;this.isRange&&0===t&&(this.drafts[1].present=!1),delete this.drafts[t].unsupportedEpochDay,this.drafts[t].date=this.adapter.epochDayToDate(e),this.drafts[t].present=!0,this.orderDrafts(),this.renderRows(),this.finish(),"transient"===this.presentation&&"date"===this[s.WklyPickerInputsPropertyKeys.Mode]&&"calendar"===this.viewMode&&this.submit("auto-submit")}},t.prototype.key=function(e,t){var i=0;if("ArrowLeft"===e.key&&(i=-1),"ArrowRight"===e.key&&(i=1),"ArrowUp"===e.key&&(i=-7),"ArrowDown"===e.key&&(i=7),"PageUp"===e.key&&(i=-7*(e.shiftKey?this.visibleCount:1)),"PageDown"===e.key&&(i=7*(e.shiftKey?this.visibleCount:1)),"Home"===e.key&&(e.preventDefault(),this.scrollToEpochDay(this.today,{focus:!0})),i){e.preventDefault();var n=t+i;n>=this.firstSupportedDay&&n<=this.lastSupportedDay&&this.scrollToEpochDay(n,{focus:!0})}},t.prototype.position=function(e,t,i){void 0===t&&(t=!1),void 0===i&&(i={}),e=Math.max(this.firstSupportedDay,Math.min(this.lastSupportedDay,e)),this.anchorWeek=r.absoluteWeekOf(e,this.effectiveOffset);var n=this[s.WklyPickerInputsPropertyKeys.ViewportPreset];if(this.clipMonth=t&&"full-month"===n.kind,t&&"weeks"!==n.kind){var o=this.adapter.epochDayToDate(e);this.initialMonth=o.year+"/"+o.monthCode;var a=p(s.calendarMonthBounds(this.adapter,e),2),l=a[0],c=a[1];if(this.firstWeek=r.absoluteWeekOf(l,this.effectiveOffset),this.visibleCount=r.absoluteWeekOf(c,this.effectiveOffset)-this.firstWeek+1,"full-month-and-around"===n.kind&&!this.configErrors.length){var u=n.extraWeeksBefore||0,h=n.extraWeeksAfter||0;this.firstWeek-=u,this.visibleCount+=u+h}}else"weeks"===n.kind&&(this.visibleCount=this.configErrors.length?6:n.visibleWeekCount),this.firstWeek=this.anchorWeek-("start"===i.align?0:"end"===i.align?this.visibleCount-1:Math.floor(this.visibleCount/2));this.firstWeek=this.clampFirstWeek(this.firstWeek),this.baseWeek=this.firstWeek-1e3,this.renderRows(),this.changeDetector.detectChanges(),this.resetScroll()},t.prototype.resetScroll=function(){this.scroller&&(this.scroller.nativeElement.scrollTop=Math.round(1e3*this.rowHeight))},t.prototype.scroll=function(e){var t=e.target;this.snapPending=!0,this.scheduleSnap();var i=t.scrollTop/this.rowHeight-1e3,n=1e3+Math.sign(i)*Math.round(Math.abs(i)),r=this.baseWeek+n,o=this.clampFirstWeek(r);if(r!==o&&(t.scrollTop=Math.round((o-this.baseWeek)*this.rowHeight)),o!==this.firstWeek){if(this.clipMonth=!1,this.firstWeek=o,this.anchorWeek=o+Math.floor(this.visibleCount/2),n<100||n>1900){var s=t.scrollTop-(o-this.baseWeek)*this.rowHeight;this.baseWeek=o-1e3,t.scrollTop=Math.round(1e3*this.rowHeight+s)}this.renderRows()}},t.prototype.scheduleSnap=function(){var e=this;this.scrollEndTimer&&clearTimeout(this.scrollEndTimer),this.scrollEndTimer=setTimeout((function(){return e.snapWeek()}),200)},t.prototype.snapWeek=function(){if(this.scrollEndTimer&&clearTimeout(this.scrollEndTimer),this.scrollEndTimer=void 0,this.snapPending&&this.scroller){this.snapPending=!1;var e=this.scroller.nativeElement,t=Math.round((this.firstWeek-this.baseWeek)*this.rowHeight);e.scrollTop!==t&&(e.scrollTop=t)}},t.prototype.showFirstWeek=function(e){var t=this.clampFirstWeek(e);t!==this.firstWeek&&(this.clipMonth=!1,this.firstWeek=t,this.anchorWeek=t+Math.floor(this.visibleCount/2),this.baseWeek=t-1e3,this.renderRows(),this.resetScroll())},t.prototype.canMoveWeek=function(e){return this.clampFirstWeek(this.firstWeek+e)!==this.firstWeek},t.prototype.moveWeek=function(e){this[s.WklyPickerInputsPropertyKeys.Disabled]||this.showFirstWeek(this.firstWeek+e)},t.prototype.renderRows=function(){var e=this,t=Math.max(0,Math.min(50,this[s.WklyPickerInputsPropertyKeys.OverscanWeeks]||0)),i=this.firstWeek-t;this.paddingTop=(i-this.baseWeek)*this.rowHeight,this.rows=s.createWeekRows({generator:this.generator,adapter:this.adapter,startWeek:i,count:this.visibleCount+2*t,firstVisibleWeek:this.firstWeek,firstSupportedDay:this.firstSupportedDay,lastSupportedDay:this.lastSupportedDay,clipMonth:this.clipMonth,initialMonth:this.initialMonth,weekLabelMode:this[s.WklyPickerInputsPropertyKeys.WeekLabelMode],weekLabelFormatter:this[s.WklyPickerInputsPropertyKeys.WeekLabelFormatter]||null,isDayDisabled:function(t){return e.dayDisabled(t)}}),this[s.WklyPickerOutputsPropertyKeys.ViewportChange].emit({firstVisibleAbsoluteWeek:this.firstWeek,lastVisibleAbsoluteWeek:this.firstWeek+this.visibleCount-1,anchorAbsoluteWeek:this.anchorWeek})},t.prototype.trackCell=function(e,t){return t.epochDay},t.prototype.trackRow=function(e,t){return t.week.absoluteWeek},t.prototype.scrollToEpochDay=function(e,t){void 0===t&&(t={}),r.integer(e),this.adapter.epochDayToDate(e),e=Math.max(this.firstSupportedDay,Math.min(this.lastSupportedDay,e)),t.focus&&(this.focused=e),this.position(e,!1,t),t.select&&this.select(e),t.focus&&this.focusDay()},t.prototype.scrollToAbsoluteWeek=function(e,t){void 0===t&&(t={});var i=r.firstEpochDayOf(e,this.effectiveOffset);this.scrollToEpochDay(e===this.firstSupportedWeek?Math.max(i,this.firstSupportedDay):i,t)},t.prototype.scrollToCalendarDate=function(e,t){void 0===t&&(t={}),this.scrollToEpochDay(this.adapter.dateToEpochDay(e),t)},t.prototype.scrollToValue=function(e,t){void 0===t&&(t={}),this.scrollToEpochDay(o.decodeIso(e).epochDay,t)},t.prototype.focusDay=function(){var e=this;this.browser&&setTimeout((function(){var t;if(!e.destroyed){e.changeDetector.detectChanges();var i=e.host.nativeElement.querySelector('[data-day="'+e.focused+'"]'),n=e.host.nativeElement.querySelector("button:not(:disabled),input:not(:disabled)");null===(t=i||n)||void 0===t||t.focus({preventScroll:!0})}}))},t}(Z);X.decorators=[{type:t.Component,args:[{selector:"wkly-datetime-picker",template:'<section\n class="wkly"\n [attr.dir]="direction"\n [attr.aria-label]="\n this[WklyPickerInputsPropertyKeys.AriaLabel] || \'Date and time picker\'\n "\n [attr.aria-describedby]="this[WklyPickerInputsPropertyKeys.AriaDescribedBy]"\n (focusout)="touched()"\n>\n <header class="toolbar">\n <button\n *ngIf="hasDate"\n type="button"\n [disabled]="this[WklyPickerInputsPropertyKeys.Disabled]"\n [attr.aria-label]="t(viewMode === \'calendar\' ? \'manual\' : \'calendar\')"\n (click)="toggleView()"\n >\n {{ viewMode === "calendar" ? "☷" : "▦" }}\n </button>\n <span *ngIf="hasDate" class="year-control">{{ title }}</span>\n <span class="spacer"></span\n ><button\n type="button"\n class="now"\n [disabled]="this[WklyPickerInputsPropertyKeys.Disabled]"\n (click)="now()"\n >\n {{ t("now") }}\n </button>\n <button\n *ngIf="presentation === \'transient\'"\n type="button"\n [disabled]="this[WklyPickerInputsPropertyKeys.Disabled]"\n [attr.aria-label]="t(\'close\')"\n (click)="cancel()"\n >\n ×\n </button>\n </header>\n <ng-container *ngIf="hasDate && viewMode === \'calendar\'">\n <div\n role="grid"\n [attr.aria-label]="\n this[WklyPickerInputsPropertyKeys.AriaLabel] || \'Calendar\'\n "\n [attr.aria-multiselectable]="isRange"\n >\n <div\n role="row"\n class="week-head"\n [class.no-label]="\n compact ||\n (this[WklyPickerInputsPropertyKeys.WeekLabelMode] === \'hidden\' &&\n !this[WklyPickerInputsPropertyKeys.WeekLabelFormatter])\n "\n >\n <span\n *ngIf="\n !compact &&\n (this[WklyPickerInputsPropertyKeys.WeekLabelMode] !== \'hidden\' ||\n this[WklyPickerInputsPropertyKeys.WeekLabelFormatter])\n "\n role="columnheader"\n aria-label="Week"\n ></span\n ><span *ngFor="let day of weekdays" role="columnheader">{{ day }}</span>\n </div>\n <div\n #scroller\n class="week-scroll"\n [style.height.px]="visibleCount * rowHeight"\n (scroll)="scroll($event)"\n (scrollend)="snapWeek()"\n >\n <div [style.height.px]="scrollHeight" class="scroll-space">\n <div class="rows" [style.top.px]="paddingTop">\n <div\n *ngFor="let row of rows; trackBy: trackRow"\n role="row"\n class="week-row"\n [class.no-label]="\n compact ||\n (this[WklyPickerInputsPropertyKeys.WeekLabelMode] ===\n \'hidden\' &&\n !this[WklyPickerInputsPropertyKeys.WeekLabelFormatter])\n "\n >\n <span\n *ngIf="\n !compact &&\n (this[WklyPickerInputsPropertyKeys.WeekLabelMode] !==\n \'hidden\' ||\n this[WklyPickerInputsPropertyKeys.WeekLabelFormatter])\n "\n role="rowheader"\n class="week-number"\n >{{ row.label }}</span\n >\n <div\n *ngFor="\n let cell of row.cells;\n let dayIndex = index;\n trackBy: trackCell\n "\n role="gridcell"\n [attr.data-weekday-index]="dayIndex"\n [attr.aria-colindex]="\n dayIndex +\n (compact ||\n (this[WklyPickerInputsPropertyKeys.WeekLabelMode] ===\n \'hidden\' &&\n !this[WklyPickerInputsPropertyKeys.WeekLabelFormatter])\n ? 1\n : 2)\n "\n [attr.aria-selected]="selected(cell.epochDay)"\n [attr.aria-disabled]="\n cell.disabled || this[WklyPickerInputsPropertyKeys.Disabled]\n "\n [class.range]="inRange(cell.epochDay)"\n [class.hidden]="cell.hidden"\n [class.odd-month]="cell.date && cell.date.month % 2 === 1"\n >\n <span [class]="\'annotation annotation--\' + dayIndex">{{\n cell.annotation\n }}</span>\n <button\n type="button"\n class="day"\n [attr.data-day]="cell.epochDay"\n [attr.aria-label]="cell.accessible"\n [attr.aria-current]="cell.epochDay === today ? \'date\' : null"\n [attr.aria-disabled]="\n cell.disabled || this[WklyPickerInputsPropertyKeys.Disabled]\n "\n [attr.tabindex]="\n !cell.hidden && cell.epochDay === focused ? 0 : -1\n "\n [class.selected]="selected(cell.epochDay)"\n [class.today]="cell.epochDay === today"\n (focus)="focused = cell.epochDay"\n (click)="select(cell.epochDay)"\n (keydown)="key($event, cell.epochDay)"\n >\n {{ cell.label }}\n </button>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class="week-navigation">\n <button\n type="button"\n [disabled]="\n this[WklyPickerInputsPropertyKeys.Disabled] || !canMoveWeek(-1)\n "\n [attr.aria-label]="t(\'previous\')"\n (click)="moveWeek(-1)"\n >\n ↑</button\n ><span>{{ title }}</span\n ><button\n type="button"\n [disabled]="\n this[WklyPickerInputsPropertyKeys.Disabled] || !canMoveWeek(1)\n "\n [attr.aria-label]="t(\'next\')"\n (click)="moveWeek(1)"\n >\n ↓\n </button>\n </div>\n </ng-container>\n <ng-container\n *ngFor="let draft of drafts; let i = index; trackBy: trackDraft"\n >\n <fieldset\n *ngIf="(i === 0 || isRange) && (hasTime || viewMode === \'manual\')"\n [disabled]="this[WklyPickerInputsPropertyKeys.Disabled]"\n [attr.aria-label]="isRange ? t(i === 0 ? \'start\' : \'end\') : null"\n >\n <legend *ngIf="isRange">\n <ng-container\n *ngIf="\n i === 1 && hasDate && viewMode === \'manual\';\n else endpointLabel\n "\n >\n <span class="end-view-toggle">\n <button\n type="button"\n [disabled]="this[WklyPickerInputsPropertyKeys.Disabled]"\n [attr.aria-pressed]="endView === \'date\'"\n (click)="toggleEndView(\'date\')"\n >\n {{ t("end") }}\n </button>\n <button\n type="button"\n [disabled]="this[WklyPickerInputsPropertyKeys.Disabled]"\n [attr.aria-pressed]="endView === \'days\'"\n (click)="toggleEndView(\'days\')"\n >\n {{ inDaysLabel }}\n </button>\n </span>\n </ng-container>\n <ng-template #endpointLabel>{{\n t(i === 0 ? "start" : "end")\n }}</ng-template>\n </legend>\n <div\n *ngIf="\n i === 1 && hasDate && viewMode === \'manual\' && endView === \'days\'\n "\n class="date-fields in-days-fields"\n >\n <span class="resulting-end-date" [attr.aria-label]="t(\'endDate\')">{{\n resultingEndDate\n }}</span>\n <wkly-field\n [label]="t(\'days\')"\n [hideLabel]="true"\n [previousLabel]="t(\'daysPrevious\')"\n [nextLabel]="t(\'daysNext\')"\n [locale]="effectiveLocale"\n [value]="inDays"\n [min]="-9999"\n [max]="9999"\n [disabled]="this[WklyPickerInputsPropertyKeys.Disabled]"\n [invalid]="!!errors.length"\n (valueChange)="days($event)"\n (complete)="finish()"\n ></wkly-field>\n </div>\n <div\n *ngIf="\n hasDate && viewMode === \'manual\' && (i === 0 || endView === \'date\')\n "\n class="date-fields"\n >\n <wkly-field\n [label]="t(\'day\')"\n [locale]="effectiveLocale"\n [value]="draft.date.day"\n [min]="1"\n [max]="31"\n [disabled]="this[WklyPickerInputsPropertyKeys.Disabled]"\n [invalid]="!!errors.length"\n (valueChange)="field(i, \'day\', $event)"\n (complete)="finish()"\n ></wkly-field>\n <wkly-field\n [label]="t(\'month\')"\n [locale]="effectiveLocale"\n [value]="draft.date.month"\n [min]="1"\n [max]="monthCount(draft)"\n [labels]="months(draft)"\n [disabled]="this[WklyPickerInputsPropertyKeys.Disabled]"\n [invalid]="!!errors.length"\n (valueChange)="field(i, \'month\', $event)"\n (complete)="finish()"\n ></wkly-field>\n <wkly-field\n [label]="t(\'year\')"\n [locale]="effectiveLocale"\n [value]="draft.date.year"\n [min]="adapter.supportedYearRange[0]"\n [max]="adapter.supportedYearRange[1]"\n [disabled]="this[WklyPickerInputsPropertyKeys.Disabled]"\n [invalid]="!!errors.length"\n (valueChange)="field(i, \'year\', $event)"\n (complete)="finish()"\n ></wkly-field>\n </div>\n <div\n *ngIf="hasTime"\n class="time-fields"\n [class.seconds]="this[WklyPickerInputsPropertyKeys.ShowSeconds]"\n >\n <wkly-field\n [label]="t(\'hour\')"\n [locale]="effectiveLocale"\n [value]="displayHour(draft)"\n [min]="effectiveHourCycle === \'h12\' ? 1 : 0"\n [max]="effectiveHourCycle === \'h12\' ? 12 : 23"\n [disabled]="this[WklyPickerInputsPropertyKeys.Disabled]"\n [invalid]="!!errors.length"\n (valueChange)="field(i, \'hour\', $event)"\n (complete)="finish()"\n ></wkly-field>\n <wkly-field\n [label]="t(\'minute\')"\n [locale]="effectiveLocale"\n [value]="draft.minute"\n [max]="59"\n [step]="\n this[WklyPickerInputsPropertyKeys.MinuteStep] > 0 &&\n 60 % this[WklyPickerInputsPropertyKeys.MinuteStep] === 0\n ? this[WklyPickerInputsPropertyKeys.MinuteStep]\n : 1\n "\n [disabled]="this[WklyPickerInputsPropertyKeys.Disabled]"\n [invalid]="!!errors.length"\n (valueChange)="field(i, \'minute\', $event)"\n (complete)="finish()"\n ></wkly-field>\n <wkly-field\n *ngIf="this[WklyPickerInputsPropertyKeys.ShowSeconds]"\n [label]="t(\'second\')"\n [locale]="effectiveLocale"\n [value]="draft.second"\n [max]="59"\n [step]="\n this[WklyPickerInputsPropertyKeys.SecondStep] > 0 &&\n 60 % this[WklyPickerInputsPropertyKeys.SecondStep] === 0\n ? this[WklyPickerInputsPropertyKeys.SecondStep]\n : 1\n "\n [disabled]="this[WklyPickerInputsPropertyKeys.Disabled]"\n [invalid]="!!errors.length"\n (valueChange)="field(i, \'second\', $event)"\n (complete)="finish()"\n ></wkly-field>\n <div class="period">\n <button\n *ngIf="\n effectiveHourCycle === \'h12\' ||\n this[WklyPickerInputsPropertyKeys.HourCycle] === \'switchable\'\n "\n type="button"\n [disabled]="this[WklyPickerInputsPropertyKeys.Disabled]"\n [attr.aria-pressed]="\n effectiveHourCycle === \'h12\' && (draft.hour || 0) < 12\n "\n (click)="period(i, \'am\')"\n >\n {{ t("am") }}</button\n ><button\n type="button"\n [disabled]="\n this[WklyPickerInputsPropertyKeys.Disabled] ||\n this[WklyPickerInputsPropertyKeys.HourCycle] !== \'switchable\'\n "\n [attr.aria-pressed]="effectiveHourCycle === \'h24\'"\n (click)="period(i, \'24\')"\n >\n 24</button\n ><button\n *ngIf="\n effectiveHourCycle === \'h12\' ||\n this[WklyPickerInputsPropertyKeys.HourCycle] === \'switchable\'\n "\n type="button"\n [disabled]="this[WklyPickerInputsPropertyKeys.Disabled]"\n [attr.aria-pressed]="\n effectiveHourCycle === \'h12\' && (draft.hour || 0) >= 12\n "\n (click)="period(i, \'pm\')"\n >\n {{ t("pm") }}\n </button>\n </div>\n </div>\n </fieldset>\n </ng-container>\n <div class="validation" role="status" aria-live="polite">\n <p *ngFor="let err of errors">! {{ t(err.messageKey) }}</p>\n </div>\n <footer *ngIf="submitVisible">\n <button\n type="button"\n class="confirm"\n [disabled]="!canSubmit"\n (click)="submit()"\n >\n {{ t("confirm") }}\n </button>\n </footer>\n</section>\n',providers:[{provide:n.NG_VALUE_ACCESSOR,useExisting:t.forwardRef((function(){return X})),multi:!0},{provide:n.NG_VALIDATORS,useExisting:t.forwardRef((function(){return X})),multi:!0}],styles:[':host{display:block;width:100%;box-sizing:border-box;--wkly-background-color:#fff;--wkly-background-color-alternate:#fafafa;--wkly-text-color:#192c28;--wkly-muted-color:#52635e;--wkly-border-color:#dce5e1;--wkly-accent-color:#176c55;--wkly-accent-color-alternate:#6ea494;--wkly-accent-text-color:#fff;--wkly-range-color:#e5f1ee;--wkly-error-color:#b42318;--wkly-focus-color:#245bd6;--wkly-size-multiplier:1;--wkly-size-unit:3.5em;color:var(--wkly-text-color);font:14px/1.4 system-ui,sans-serif;container-type:inline-size}.wkly{background:var(--wkly-background-color);border:1px solid var(--wkly-border-color);border-radius:14px;overflow:hidden;min-width:0;font-size:calc(14px * clamp(1, var(--wkly-size-multiplier), 1.5))}button{font:inherit;color:inherit;min-width:var(--wkly-size-unit);min-height:var(--wkly-size-unit);border:0;background:transparent;border-radius:8px;cursor:pointer}button:hover:not(:disabled):not([aria-disabled=true]){background:var(--wkly-accent-color-alternate)}button:disabled,button[aria-disabled=true]{opacity:.4;cursor:default}button:focus-visible{outline:2px solid var(--wkly-focus-color);outline-offset:-2px}.toolbar{display:flex;align-items:center;padding:8px;gap:3px;border-bottom:1px solid var(--wkly-border-color)}.spacer{flex:1}.year-control{padding:0 6px;font-weight:650;text-align:start;line-height:1.2}.now{color:var(--wkly-accent-color);font-weight:650}.week-head,.week-row{display:grid;grid-template-columns:28px repeat(7,minmax(0,1fr))}.week-head{font-size:.85em;color:var(--wkly-muted-color);height:34px;align-items:center;text-align:center}.week-row{height:calc(var(--wkly-size-unit) * clamp(1, var(--wkly-size-multiplier), 1));align-items:end}.no-label{grid-template-columns:repeat(7,minmax(0,1fr))}.week-scroll{overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;overflow-anchor:none;scrollbar-width:thin;max-height:65vh;touch-action:pan-y}.scroll-space{position:relative}.rows{position:absolute;left:0;right:0}.week-number{font-size:.85em;text-align:center;align-self:end;line-height:var(--wkly-size-unit);color:var(--wkly-muted-color)}[role=gridcell]{position:relative;min-width:0;height:var(--wkly-size-unit);text-align:center}[role=gridcell].odd-month:not(.range):not(.today){background:var(--wkly-background-color-alternate)}.day{width:100%;min-width:0;height:var(--wkly-size-unit);padding:0;border-radius:8px}.annotation{position:absolute;bottom:.25em;white-space:nowrap;font-size:1.25em;font-weight:650;line-height:1;pointer-events:none;z-index:1;color:var(--wkly-muted-color);color:color-mix(in srgb,var(--wkly-muted-color) 50%,transparent);text-shadow:0 0 2px --wkly-background-color,0 0 4px --wkly-background-color}.odd-month .annotation{text-shadow:0 0 2px --wkly-background-color-alternate,0 0 4px --wkly-background-color-alternate}.annotation:empty{display:none}.annotation--0{inset-inline-start:10%;bottom:1.75em}.annotation--1{inset-inline-start:-5%}.annotation--2{inset-inline-start:-20%}.annotation--3{inset-inline-start:-50%;inset-inline-end:-50%}.annotation--4{inset-inline-end:-20%}.annotation--5{inset-inline-end:-5%}.annotation--6{inset-inline-end:10%}.range{background:var(--wkly-range-color)}.day.selected{background:var(--wkly-accent-color);color:var(--wkly-accent-text-color);font-weight:700}.today:after{content:"";display:block;width:5px;height:5px;background:currentColor;border-radius:50%;position:absolute;bottom:2px;left:calc(50% - 2px)}.today{font-weight:750;box-shadow:inset 0 0 0 1px var(--wkly-accent-color)}.hidden{visibility:hidden}.week-navigation{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--wkly-border-color);font-size:.85em;color:var(--wkly-muted-color)}fieldset{border:0;padding:0 12px;margin:0;min-width:0}legend{padding-top:.85em;font-weight:650;color:var(--wkly-accent-color)}.date-fields{display:grid;grid-template-columns:1fr 2fr 1.4fr;gap:7px;padding:12px 0}.end-view-toggle{display:inline-flex}.end-view-toggle button{min-height:0;min-width:0;padding:0 6px;border-radius:0;line-height:inherit}.end-view-toggle button:first-child{padding-inline-start:0}.end-view-toggle button+button{border-inline-start:1px solid var(--wkly-text-color)}.end-view-toggle button[aria-pressed=false]{color:var(--wkly-muted-color);font-weight:400}.in-days-fields{grid-template-columns:minmax(0,1fr);gap:0;text-align:center}.resulting-end-date{font-size:11px;color:var(--wkly-muted-color);height:1.4em;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.time-fields{display:grid;grid-template-columns:1fr 1fr 52px;gap:8px;padding:14px 0;border-top:1px solid var(--wkly-border-color)}.time-fields.seconds{grid-template-columns:1fr 1fr 1fr 48px}.period{display:flex;flex-direction:column;justify-content:center;gap:2px;padding-top:1.25em}.period button{font-size:.85em}.period [aria-pressed=true]{background:var(--wkly-range-color);box-shadow:inset 0 0 0 1px var(--wkly-accent-color);font-weight:700}.validation{color:var(--wkly-error-color);font-size:.85em}.validation p{margin:.5em .85em}footer{padding:12px;border-top:1px solid var(--wkly-border-color)}.confirm{background:var(--wkly-accent-color);color:var(--wkly-accent-text-color);width:100%;font-weight:650}.confirm:hover:not(:disabled){background:var(--wkly-accent-color-alternate)}@media (forced-colors:active){.day.selected{outline:2px solid Highlight}.range{border-bottom:2px solid Highlight}.today{outline:1px dashed CanvasText}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important}}']}]}],X.ctorParameters=function(){return[{type:String,decorators:[{type:t.Inject,args:[t.LOCALE_ID]}]},{type:void 0,decorators:[{type:t.Inject,args:[q]}]},{type:void 0,decorators:[{type:t.Inject,args:[$]}]},{type:void 0,decorators:[{type:t.Inject,args:[G]}]},{type:void 0,decorators:[{type:t.Inject,args:[J]}]},{type:Object,decorators:[{type:t.Inject,args:[t.PLATFORM_ID]}]},{type:t.ElementRef},{type:t.ChangeDetectorRef}]},X.propDecorators={scroller:[{type:t.ViewChild,args:["scroller"]}]};var Q=function(){function e(e,t,i,n,r){this.resolver=e,this.injector=t,this.app=i,this.document=n,this.platform=r}return e.prototype.open=function(e,t,n,r){var o=this;if(void 0===n&&(n=!0),!i.isPlatformBrowser(this.platform))throw new Error("Picker presentations can only open in a browser");var s=this.document.createElement("dialog");s.setAttribute("aria-label","Date and time picker"),Object.assign(s.style,{padding:"0",border:"0",borderRadius:"14px",width:"min(390px, 100vw)",maxWidth:"100vw",maxHeight:"94vh",background:"transparent"});var a=this.resolver.resolveComponentFactory(X).create(r||this.injector);a.instance.presentation="transient",s.appendChild(a.location.nativeElement),this.document.body.appendChild(s),this.app.attachView(a.hostView);var l=function(e){e.preventDefault(),t("escape")},c=function(e){if(n&&e.target===s){var i=s.getBoundingClientRect();(e.clientX<i.left||e.clientX>i.right||e.clientY<i.top||e.clientY>i.bottom)&&t("backdrop")}},p=function(e){if("Tab"===e.key){var t=Array.from(s.querySelectorAll('button:not(:disabled),input:not(:disabled),[tabindex="0"]')).filter((function(e){return e.tabIndex>=0&&e.getClientRects().length&&"hidden"!==getComputedStyle(e).visibility})),i=t[0],n=t[t.length-1];i&&(e.shiftKey?o.document.activeElement===i:o.document.activeElement===n)&&(e.preventDefault(),(e.shiftKey?n:i).focus())}};return s.addEventListener("cancel",l),s.addEventListener("click",c),s.addEventListener("keydown",p),s.showModal(),{component:a,destroy:function(){s.removeEventListener("cancel",l),s.removeEventListener("click",c),s.removeEventListener("keydown",p),s.close(),o.app.detachView(a.hostView),a.destroy(),s.remove(),e.focus()}}},e}();Q.ɵprov=t.ɵɵdefineInjectable({factory:function(){return new Q(t.ɵɵinject(t.ComponentFactoryResolver),t.ɵɵinject(t.INJECTOR),t.ɵɵinject(t.ApplicationRef),t.ɵɵinject(i.DOCUMENT),t.ɵɵinject(t.PLATFORM_ID))},token:Q,providedIn:"root"}),Q.decorators=[{type:t.Injectable,args:[{providedIn:"root"}]}],Q.ctorParameters=function(){return[{type:t.ComponentFactoryResolver},{type:t.Injector},{type:t.ApplicationRef},{type:Document,decorators:[{type:t.Inject,args:[i.DOCUMENT]}]},{type:Object,decorators:[{type:t.Inject,args:[t.PLATFORM_ID]}]}]};var ee=function(e){function t(t){var i=e.call(this)||this;return i.element=t,i.ref=null,i.subscriptions=[],i.errors=[],i.change=function(){},i.touched=function(){},i.validation=function(){},i}return l(t,e),t.prototype.open=function(){var e=this;if(!this[s.WklyPickerInputsPropertyKeys.Disabled]&&!this.ref){this.ref=this.create();var t=this.ref.component.instance;this.copy(),this.subscriptions=[t[s.WklyPickerOutputsPropertyKeys.ValueChange].subscribe((function(t){e[s.WklyPickerInputsPropertyKeys.Value]=t,e.change(t),e[s.WklyPickerOutputsPropertyKeys.ValueChange].emit(t),e.display()})),t[s.WklyPickerOutputsPropertyKeys.ValidationChange].subscribe((function(t){e.errors=t,e[s.WklyPickerOutputsPropertyKeys.ValidationChange].emit(t),e.validation()})),t[s.WklyPickerOutputsPropertyKeys.Closed].subscribe((function(t){return e.close(t)})),t[s.WklyPickerOutputsPropertyKeys.ViewportChange].subscribe((function(t){return e[s.WklyPickerOutputsPropertyKeys.ViewportChange].emit(t)})),t[s.WklyPickerOutputsPropertyKeys.ViewModeChange].subscribe((function(t){return e[s.WklyPickerOutputsPropertyKeys.ViewModeChange].emit(t)}))],this.ref.component.changeDetectorRef.detectChanges(),t.focusDay(),this[s.WklyPickerOutputsPropertyKeys.Opened].emit()}},t.prototype.key=function(e){"Enter"!==e.key&&" "!==e.key&&"ArrowDown"!==e.key||(e.preventDefault(),this.open())},t.prototype.blur=function(){this.touched()},t.prototype.close=function(e){if(void 0===e&&(e="programmatic"),this.ref){var t=this.ref;this.ref=null,this.subscriptions.forEach((function(e){return e.unsubscribe()})),this.subscriptions=[],t.destroy(),this.touched(),this[s.WklyPickerOutputsPropertyKeys.Closed].emit(e)}},t.prototype.ngOnChanges=function(){var e,t=this;[s.WklyPickerInputsPropertyKeys.ShowSeconds,s.WklyPickerInputsPropertyKeys.AllowRangeAcrossDisabled,s.WklyPickerInputsPropertyKeys.Required,s.WklyPickerInputsPropertyKeys.Disabled,s.WklyPickerInputsPropertyKeys.CloseOnBackdrop].forEach((function(e){return t[e]=s.coerceBoolean(t[e])})),this.checkValue(),this.display(),this.ref&&(this.copy(),this.ref.component.instance.ngOnChanges(((e={})[s.WklyPickerInputsPropertyKeys.Value]=!0,e)),this.ref.component.changeDetectorRef.detectChanges())},t.prototype.ngOnDestroy=function(){this.close()},t.prototype.copy=function(){var e,t;if(this.ref)try{for(var i=c(s.INPUT_NAMES),n=i.next();!n.done;n=i.next()){var r=n.value;this.ref.component.instance[r]=this[r]}}catch(t){e={error:t}}finally{try{n&&!n.done&&(t=i.return)&&t.call(i)}finally{if(e)throw e.error}}},t.prototype.display=function(){var e=this.element.nativeElement;if("INPUT"===e.tagName){e.readOnly=!0;var t=this[s.WklyPickerInputsPropertyKeys.Value];e.value=null===t?"":"string"==typeof t?t:t.join(" — "),e.disabled=this[s.WklyPickerInputsPropertyKeys.Disabled],e.setAttribute("aria-haspopup","dialog")}},t.prototype.checkValue=function(){this.errors=o.validateSelection(this[s.WklyPickerInputsPropertyKeys.Value],this,this[s.WklyPickerInputsPropertyKeys.CalendarAdapter]||new o.WklyGregorianCalendarAdapter(this[s.WklyPickerInputsPropertyKeys.Locale]||"en-US")),this[s.WklyPickerOutputsPropertyKeys.ValidationChange].emit(this.errors),this.validation()},t.prototype.writeValue=function(e){this[s.WklyPickerInputsPropertyKeys.Value]=e,this.checkValue(),this.display(),this.ref&&this.ref.component.instance.writeValue(e)},t.prototype.registerOnChange=function(e){this.change=e},t.prototype.registerOnTouched=function(e){this.touched=e},t.prototype.setDisabledState=function(e){this[s.WklyPickerInputsPropertyKeys.Disabled]=e,this.display(),this.ref&&this.ref.component.instance.setDisabledState(e)},t.prototype.validate=function(){return this.errors.length?{wkly:this.errors}:null},t.prototype.registerOnValidatorChange=function(e){this.validation=e},t.prototype.scrollToEpochDay=function(e,t){var i;this.open(),null===(i=this.ref)||void 0===i||i.component.instance.scrollToEpochDay(e,t)},t.prototype.scrollToAbsoluteWeek=function(e,t){var i;this.open(),null===(i=this.ref)||void 0===i||i.component.instance.scrollToAbsoluteWeek(e,t)},t.prototype.scrollToCalendarDate=function(e,t){var i;this.open(),null===(i=this.ref)||void 0===i||i.component.instance.scrollToCalendarDate(e,t)},t.prototype.scrollToValue=function(e,t){var i;this.open(),null===(i=this.ref)||void 0===i||i.component.instance.scrollToValue(e,t)},t}(Z);ee.decorators=[{type:t.Directive}],ee.ctorParameters=function(){return[{type:t.ElementRef}]},ee.propDecorators={open:[{type:t.HostListener,args:["click"]}],key:[{type:t.HostListener,args:["keydown",["$event"]]}],blur:[{type:t.HostListener,args:["blur"]}]};var te=function(e){function t(t,i,n){var r=e.call(this,t)||this;return r.service=i,r.triggerInjector=n,r}return l(t,e),t.prototype.create=function(){var e=this;return this.service.open(this.element.nativeElement,(function(t){return e.close(t)}),this[s.WklyPickerInputsPropertyKeys.CloseOnBackdrop],this.triggerInjector)},t}(ee);te.decorators=[{type:t.Directive,args:[{selector:"[wklyDateTimePickerDialog]",exportAs:"wklyDialog",providers:[{provide:n.NG_VALUE_ACCESSOR,useExisting:t.forwardRef((function(){return te})),multi:!0},{provide:n.NG_VALIDATORS,useExisting:t.forwardRef((function(){return te})),multi:!0}]}]}],te.ctorParameters=function(){return[{type:t.ElementRef},{type:Q},{type:t.Injector}]};var ie=function(){function e(){this.value=0,this.label="",this.hideLabel=!1,this.previousLabel="",this.nextLabel="",this.min=0,this.max=59,this.step=1,this.locale="en-US",this.disabled=!1,this.invalid=!1,this.labels=null,this.valueChange=new t.EventEmitter,this.complete=new t.EventEmitter,this.before=null,this.touchY=0,this.touchSteps=0,this.touchChanged=!1,this.typed=null,this.inputTimer=null,this.wheelTimer=null}return Object.defineProperty(e.prototype,"display",{get:function(){return null!==this.typed?this.typed:null===this.value?"":this.labels?this.labels[this.value-this.min]||String(this.value):new Intl.NumberFormat(this.locale,{useGrouping:!1,minimumIntegerDigits:this.max<60?2:1}).format(this.value)},enumerable:!1,configurable:!0}),e.prototype.ngOnChanges=function(e){if(e.value&&this.min<0&&null!==this.typed){var t=""===this.typed||"-"===this.typed?null:Number(this.typed);this.value!==t&&(this.cancelInput(),this.typed=null)}},e.prototype.ngOnDestroy=function(){this.cancelInput(),null!==this.wheelTimer&&clearTimeout(this.wheelTimer)},e.prototype.next=function(e){var t=Math.floor((this.max-this.min)/this.step)+1;return this.min+r.floorMod(Math.floor(((null===this.value?this.min:this.value)-this.min)/this.step)+e,t)*this.step},e.prototype.neighbor=function(e){var t=this.next(e);return this.labels?this.labels[t-this.min]||"":new Intl.NumberFormat(this.locale,{useGrouping:!1}).format(t)},e.prototype.stepBy=function(e){this.disabled||(this.scrollBy(e),this.complete.emit())},e.prototype.begin=function(e){this.before=this.value,e.target.select()},e.prototype.type=function(e){var t=this;if(!this.disabled){var i=e.target,n=i.value,r=Array.from(n).every((function(e){return 1===o.normalizeDigits(e).length}));if(this.min<0&&!this.labels){var s=n.replace(/[\u200e\u200f\u061c]/g,"").replace(/\u2212/g,"-"),a=o.normalizeDigits(s);this.typed=i.value=(s.startsWith("-")?"-":"")+a,this.value=""===a?null:Math.max(this.min,Math.min(this.max,Number(this.typed))),null!==this.value&&Number(this.typed)!==this.value&&(this.typed=i.value=String(this.value))}else if(r){var l=o.normalizeDigits(n);this.typed=i.value=this.min>=0&&this.max<100?l.slice(-2):l,this.value=""===this.typed?null:Number(this.typed)}else if(this.labels){var c=n.trim().toLocaleLowerCase(this.locale);this.typed=n;var p=this.labels.map((function(e,t){return{label:e,index:t}})).filter((function(e){return e.label.toLocaleLowerCase(t.locale).includes(c)}));this.value=1===p.length?this.min+p[0].index:null}else this.typed=i.value=o.normalizeDigits(n),this.value=""===this.typed?null:Number(this.typed);this.valueChange.emit(this.value),this.cancelInput(),!r&&this.labels&&null!==this.value&&this.complete.emit(),this.inputTimer=setTimeout((function(){t.inputTimer=null,t.typed=null,t.disabled||t.complete.emit()}),1e3)}},e.prototype.key=function(e){"Escape"===e.key&&(e.preventDefault(),e.stopPropagation(),this.cancelInput(),this.typed=null,this.value=this.before,this.valueChange.emit(this.before),e.target.value=this.display,e.target.blur()),"Enter"===e.key&&(e.preventDefault(),e.stopPropagation(),this.finish());var t="ArrowUp"===e.key?-1:"ArrowDown"===e.key?1:"PageUp"===e.key?-5:"PageDown"===e.key?5:0;t&&(e.preventDefault(),this.stepBy(t))},e.prototype.finish=function(){this.cancelInput(),this.typed=null,this.complete.emit()},e.prototype.wheel=function(e){var t=this;this.disabled||Math.abs(e.deltaY)<1||(e.preventDefault(),this.scrollBy(e.deltaY>0?1:-1),null!==this.wheelTimer&&clearTimeout(this.wheelTimer),this.wheelTimer=setTimeout((function(){t.wheelTimer=null,t.complete.emit()}),140))},e.prototype.touchStart=function(e){this.touchY=e.touches[0].clientY,this.touchSteps=0,this.touchChanged=!1},e.prototype.touchMove=function(e){this.applyTouchY(e.touches[0].clientY)},e.prototype.touchEnd=function(e){this.applyTouchY(e.changedTouches[0].clientY),this.touchChanged&&this.complete.emit(),this.touchChanged=!1},e.prototype.cancelInput=function(){null!==this.inputTimer&&clearTimeout(this.inputTimer),this.inputTimer=null},e.prototype.scrollBy=function(e){!this.disabled&&e&&(this.cancelInput(),this.typed=null,this.value=this.next(e),this.valueChange.emit(this.value))},e.prototype.applyTouchY=function(e){if(!this.disabled){var t=this.touchY-e,i=Math.abs(t)>16?Math.sign(t)*Math.max(1,Math.round(Math.abs(t)/40)):0,n=i-this.touchSteps;n&&(this.scrollBy(n),this.touchSteps=i,this.touchChanged=!0)}},e}();ie.decorators=[{type:t.Component,args:[{selector:"wkly-field",template:'<div\n class="field"\n (wheel)="wheel($event)"\n (touchstart)="touchStart($event)"\n (touchmove)="touchMove($event)"\n (touchend)="touchEnd($event)"\n (touchcancel)="touchEnd($event)"\n>\n <span *ngIf="!hideLabel" class="label">{{ label }}</span>\n <button\n type="button"\n [disabled]="disabled"\n [attr.aria-label]="previousLabel || label + \': previous\'"\n (click)="stepBy(-1)"\n >\n {{ neighbor(-1) }}\n </button>\n <input\n [attr.aria-label]="label"\n [attr.aria-invalid]="invalid"\n [disabled]="disabled"\n [value]="display"\n [attr.inputmode]="labels ? \'text\' : min < 0 ? \'text\' : \'numeric\'"\n autocomplete="off"\n (focus)="begin($event)"\n (input)="type($event)"\n (blur)="finish()"\n (keydown)="key($event)"\n />\n <button\n type="button"\n [disabled]="disabled"\n [attr.aria-label]="nextLabel || label + \': next\'"\n (click)="stepBy(1)"\n >\n {{ neighbor(1) }}\n </button>\n</div>\n',styles:[".field{display:flex;flex-direction:column;align-items:stretch;min-width:0;text-align:center;touch-action:pan-x}.label{font-size:11px;color:var(--wkly-muted-color,#54616e);margin-bottom:4px}button,input{font:inherit;box-sizing:border-box;min-height:44px;width:100%;border:0;text-align:center;background:transparent;color:inherit;border-radius:7px}button{color:var(--wkly-muted-color,#54616e);cursor:pointer}input{font-size:18px;font-weight:650;background:var(--wkly-range-color,#e5f1ee);border-block:2px solid var(--wkly-accent-color,#176c55)}input[aria-invalid=true]{border-color:var(--wkly-error-color,#b42318)}:focus-visible{outline:2px solid var(--wkly-focus-color,#124ee0);outline-offset:1px}button:disabled,input:disabled{opacity:.45}button:hover:not(:disabled){background:var(--wkly-range-color,#e5f1ee)}"]}]}],ie.propDecorators={value:[{type:t.Input}],label:[{type:t.Input}],hideLabel:[{type:t.Input}],previousLabel:[{type:t.Input}],nextLabel:[{type:t.Input}],min:[{type:t.Input}],max:[{type:t.Input}],step:[{type:t.Input}],locale:[{type:t.Input}],disabled:[{type:t.Input}],invalid:[{type:t.Input}],labels:[{type:t.Input}],valueChange:[{type:t.Output}],complete:[{type:t.Output}]};var ne=function(){};ne.decorators=[{type:t.NgModule,args:[{imports:[i.CommonModule],declarations:[X,te,ie],entryComponents:[X],exports:[X,te]}]}],Object.keys(s).forEach((function(t){"default"!==t&&Object.defineProperty(e,t,{enumerable:!0,get:function(){return s[t]}})})),e.WKLY_CLOCK=$,e.WKLY_CONFIG=q,e.WKLY_LOCALIZATION=G,e.WKLY_TRANSLATIONS=J,e.WklyDateTimePickerComponent=X,e.WklyDateTimePickerDialogDirective=te,e.WklyDateTimePickerDialogService=Q,e.WklyDateTimePickerModule=ne,e.WklyFieldComponent=ie,e.WklyPickerInputs=Z,e.WklyTriggerBase=ee,Object.defineProperty(e,"__esModule",{value:!0})}));
|
|
2
|
-
//# sourceMappingURL=wkly-datetime-picker.umd.min.js.map
|