@frxjs/ngx-timeline 1.1.0 → 1.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -2
- package/esm2020/frxjs-ngx-timeline.mjs +5 -0
- package/{esm2015/lib/components/index.js → esm2020/lib/components/index.mjs} +0 -0
- package/esm2020/lib/components/ngx-timeline-event/ngx-timeline-event.component.mjs +58 -0
- package/esm2020/lib/components/ngx-timeline.component.mjs +167 -0
- package/esm2020/lib/models/NgxConfigObj.mjs +93 -0
- package/esm2020/lib/models/NgxTimelineEvent.mjs +6 -0
- package/{esm2015/lib/models/index.js → esm2020/lib/models/index.mjs} +0 -0
- package/esm2020/lib/ngx-timeline.module.mjs +28 -0
- package/{esm2015/lib/pipes/index.js → esm2020/lib/pipes/index.mjs} +0 -0
- package/esm2020/lib/pipes/ngx-date-pipe.mjs +31 -0
- package/{esm2015/public-api.js → esm2020/public-api.mjs} +0 -0
- package/fesm2015/frxjs-ngx-timeline.mjs +376 -0
- package/fesm2015/frxjs-ngx-timeline.mjs.map +1 -0
- package/fesm2020/frxjs-ngx-timeline.mjs +375 -0
- package/fesm2020/frxjs-ngx-timeline.mjs.map +1 -0
- package/frxjs-ngx-timeline.d.ts +1 -3
- package/lib/components/ngx-timeline-event/ngx-timeline-event.component.d.ts +3 -0
- package/lib/components/ngx-timeline.component.d.ts +7 -0
- package/lib/models/NgxConfigObj.d.ts +6 -6
- package/lib/ngx-timeline.module.d.ts +8 -0
- package/lib/pipes/ngx-date-pipe.d.ts +3 -0
- package/package.json +22 -9
- package/bundles/frxjs-ngx-timeline.umd.js +0 -701
- package/bundles/frxjs-ngx-timeline.umd.js.map +0 -1
- package/esm2015/frxjs-ngx-timeline.js +0 -8
- package/esm2015/lib/components/ngx-timeline-event/ngx-timeline-event.component.js +0 -55
- package/esm2015/lib/components/ngx-timeline.component.js +0 -146
- package/esm2015/lib/models/NgxConfigObj.js +0 -93
- package/esm2015/lib/models/NgxTimelineEvent.js +0 -6
- package/esm2015/lib/ngx-timeline.module.js +0 -23
- package/esm2015/lib/pipes/ngx-date-pipe.js +0 -28
- package/fesm2015/frxjs-ngx-timeline.js +0 -349
- package/fesm2015/frxjs-ngx-timeline.js.map +0 -1
- package/frxjs-ngx-timeline.metadata.json +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"frxjs-ngx-timeline.umd.js","sources":["../../../node_modules/tslib/tslib.es6.js","../../../projects/ngx-timeline/src/lib/models/NgxConfigObj.ts","../../../projects/ngx-timeline/src/lib/models/NgxTimelineEvent.ts","../../../projects/ngx-timeline/src/lib/components/ngx-timeline.component.ts","../../../projects/ngx-timeline/src/lib/components/ngx-timeline-event/ngx-timeline-event.component.ts","../../../projects/ngx-timeline/src/lib/pipes/ngx-date-pipe.ts","../../../projects/ngx-timeline/src/lib/ngx-timeline.module.ts","../../../projects/ngx-timeline/src/public-api.ts","../../../projects/ngx-timeline/src/frxjs-ngx-timeline.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n","export let supportedLanguageCodes = ['en', 'it', 'fr', 'de', 'es'];\n\nexport interface NgxConfigDate {\n code: string;\n dayMonthYear: string;\n fullDate: string;\n hoursMinutes: string;\n monthYear: string;\n year: string;\n}\n\nexport interface NgxDateObjMap {\n [key: string]: NgxConfigDate;\n}\n\nexport let dateConfigMap: NgxDateObjMap = {\n en: {\n code: 'en-US',\n fullDate: 'MM/dd/yyyy h:mm a',\n dayMonthYear: 'dd MMMM yyyy',\n monthYear: 'MMMM yyyy',\n year: 'yyyy',\n hoursMinutes: 'hh:mm a'\n },\n it: {\n code: 'it-IT',\n fullDate: 'dd/MM/yyyy H:mm',\n dayMonthYear: 'dd MMMM yyyy',\n monthYear: 'MMMM yyyy',\n year: 'yyyy',\n hoursMinutes: 'HH:mm'\n },\n fr: {\n code: 'fr-FR',\n fullDate: 'dd/MM/yyyy H:mm',\n dayMonthYear: 'dd MMMM yyyy',\n monthYear: 'MMMM yyyy',\n year: 'yyyy',\n hoursMinutes: 'HH:mm'\n },\n de: {\n code: 'de',\n fullDate: 'dd/MM/yyyy H:mm',\n dayMonthYear: 'dd MMMM yyyy',\n monthYear: 'MMMM yyyy',\n year: 'yyyy',\n hoursMinutes: 'HH:mm'\n },\n es: {\n code: 'es',\n fullDate: 'dd/MM/yyyy H:mm',\n dayMonthYear: 'dd MMMM yyyy',\n monthYear: 'MMMM yyyy',\n year: 'yyyy',\n hoursMinutes: 'HH:mm'\n }\n};\n\nexport enum NgxDateFormat {\n DAY_MONTH_YEAR = 'DAY_MONTH_YEAR',\n FULL_DATE = 'FULL_DATE',\n MONTH_YEAR = 'MONTH_YEAR',\n HOURS_MINUTES = 'HOURS_MINUTES',\n YEAR = 'YEAR'\n}\n\nexport let fieldConfigDate = {\n MONTH_YEAR: 'monthYear',\n YEAR: 'year',\n HOURS_MINUTES: 'hoursMinutes',\n FULL_DATE: 'fullDate',\n DAY_MONTH_YEAR: 'dayMonthYear'\n}\n\n/**\n * Enum used to set the group event logic\n */\nexport enum NgxTimelineEventGroup {\n YEAR = 'YEAR',\n MONTH_YEAR = 'MONTH_YEAR',\n DAY_MONTH_YEAR = 'DAY_MONTH_YEAR'\n}\n\nexport let fieldsToAddEventGroup = {\n YEAR: ['getFullYear'],\n MONTH_YEAR: ['getFullYear', 'getMonth'],\n DAY_MONTH_YEAR: ['getFullYear', 'getMonth', 'getDate']\n};\n\nexport let periodKeyDateFormat = {\n YEAR: NgxDateFormat.YEAR,\n MONTH_YEAR: NgxDateFormat.MONTH_YEAR,\n DAY_MONTH_YEAR: NgxDateFormat.DAY_MONTH_YEAR,\n};\n\n/**\n * Enum used to set the change side event logic\n */\nexport enum NgxTimelineEventChangeSideInGroup {\n ALL = 'ALL',\n ON_DIFFERENT_HMS = 'ON_DIFFERENT_HMS',\n ON_DIFFERENT_DAY = 'ON_DIFFERENT_DAY',\n ON_DIFFERENT_MONTH = 'ON_DIFFERENT_MONTH'\n}\n\nexport let fieldsToCheckEventChangeSideInGroup = {\n ON_DIFFERENT_MONTH: ['getFullYear', 'getMonth'],\n ON_DIFFERENT_DAY: ['getFullYear', 'getMonth', 'getDate'],\n ON_DIFFERENT_HMS: ['getFullYear', 'getMonth', 'getDate', 'getHours', 'getMinutes', 'getSeconds']\n};\n","/**\r\n * Event to be provided from outside the timeline\r\n */\r\nexport interface NgxTimelineEvent {\r\n timestamp?: Date;\r\n title?: string;\r\n description?: string;\r\n id?: any;\r\n}\r\n\r\nexport interface NgxTimelinePeriodInfo {\r\n periodKey?: string;\r\n year?: number;\r\n month?: number;\r\n day?: number;\r\n firstDate?: any;\r\n}\r\n\r\n/**\r\n * Item used inside the timeline\r\n */\r\nexport interface NgxTimelineItem {\r\n type?: string;\r\n position?: NgxTimelineItemPosition.ON_LEFT | NgxTimelineItemPosition.ON_RIGHT;\r\n periodInfo?: NgxTimelinePeriodInfo;\r\n eventInfo?: NgxTimelineEvent;\r\n}\r\n\r\nexport enum NgxTimelineItemPosition {\r\n ON_LEFT = 'ON_LEFT',\r\n ON_RIGHT = 'ON_RIGHT'\r\n}\r\n","import { Component, OnInit, Input, TemplateRef, OnChanges, SimpleChanges, Output } from '@angular/core';\nimport {\n NgxTimelineEvent,\n NgxTimelineItem,\n NgxTimelineItemPosition,\n NgxTimelinePeriodInfo,\n NgxDateFormat,\n NgxTimelineEventGroup,\n NgxTimelineEventChangeSideInGroup,\n periodKeyDateFormat,\n fieldsToCheckEventChangeSideInGroup,\n fieldsToAddEventGroup } from '../models';\nimport { BehaviorSubject } from 'rxjs';\n\n@Component({\n selector: 'ngx-timeline',\n templateUrl: './ngx-timeline.component.html',\n styleUrls: ['./ngx-timeline.scss'],\n})\nexport class NgxTimelineComponent implements OnInit, OnChanges {\n /**\n * List of events to be displayed\n */\n @Input() events: NgxTimelineEvent[];\n /**\n * Language code used to show the date formatted\n */\n @Input() langCode?: string;\n /**\n * Boolean used to enable or disable the animations\n */\n @Input() enableAnimation = true;\n /**\n * Logic to be applied in order to group events\n */\n @Input() groupEvent?: NgxTimelineEventGroup = NgxTimelineEventGroup.MONTH_YEAR;\n /**\n * Logic to be applied in order to put evetns on LEFT or RIGHT\n */\n @Input() changeSideInGroup?: NgxTimelineEventChangeSideInGroup = NgxTimelineEventChangeSideInGroup.ON_DIFFERENT_DAY;\n /**\n * Custom Template displayed before a group of events\n */\n @Input() periodCustomTemplate: TemplateRef<any>;\n /**\n * Custom Template displayed to show a single event\n */\n @Input() eventCustomTemplate: TemplateRef<any>;\n /**\n * Custom Template displayed to show an separator icon\n */\n @Input() centerIconCustomTemplate: TemplateRef<any>;\n /**\n * Custom Template displayed to show the side date\n */\n @Input() dateInstantCustomTemplate: TemplateRef<any>;\n /**\n * Custom Template displayed to show the inner event\n */\n @Input() innerEventCustomTemplate: TemplateRef<any>;\n /**\n * Output click event emitter\n */\n @Output()\n clickEmitter: BehaviorSubject<NgxTimelineItem> = new BehaviorSubject(null);\n\n groups: { [key: string]: NgxTimelineEvent[] } = {};\n periods: NgxTimelineItem[] = [];\n items: NgxTimelineItem[] = [];\n ngxTimelineItemPosition = NgxTimelineItemPosition;\n ngxDateFormat = NgxDateFormat;\n\n private readonly separator = '/';\n\n constructor() {}\n\n\n ngOnInit(): void {\n this.groupEvents(this.events);\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n this.groupEvents(this.events);\n }\n\n getPeriodKeyDateFormat(): string {\n return periodKeyDateFormat[this.groupEvent];\n }\n\n protected clear(): void {\n this.groups = {};\n this.periods = [];\n this.items = [];\n }\n\n protected groupEvents(events: NgxTimelineEvent[]): void {\n if (events) {\n this.clear();\n this.sortEvents(events);\n this.setGroups(events);\n this.setPeriods();\n this.setItems();\n }\n }\n\n protected sortEvents(events: NgxTimelineEvent[]): void {\n events.sort((a, b) => a.timestamp.getTime() - b.timestamp.getTime());\n }\n\n protected setGroups(events: NgxTimelineEvent[]): void {\n events.forEach((event) => {\n // conversion from string to actual Date\n event.timestamp = new Date(event.timestamp);\n const periodKey = this.getPeriodKeyFromEvent(event);\n if (!this.groups[periodKey]) {\n this.groups[periodKey] = [];\n }\n this.groups[periodKey].push(event);\n });\n }\n\n protected setItems(): void {\n this.periods.forEach((p) => {\n // insert first the period\n this.items.push(p);\n // in each period putting items on left\n const onLeft = true;\n const periodInfo = p.periodInfo;\n // insert then all the events in this period\n this.addPeriodEvents(periodInfo, onLeft);\n // onLeft = this.addEventItemsAndGetIfOnLeft(periodInfo, onLeft);\n });\n }\n\n protected addPeriodEvents(periodInfo: NgxTimelinePeriodInfo, onLeft: boolean): void {\n this.groups[periodInfo.periodKey].forEach((event, index) => {\n const prevEvent = this.groups[periodInfo.periodKey][index - 1];\n if (index > 0 && this.compareEvents(prevEvent, event)) {\n onLeft = !onLeft;\n }\n this.pushEventOnItems(event, onLeft);\n });\n // return onLeft;\n }\n\n protected pushEventOnItems(event: NgxTimelineEvent, onLeft: boolean): void {\n this.items.push({\n eventInfo: { ...event }, position: onLeft ?\n this.ngxTimelineItemPosition.ON_LEFT : this.ngxTimelineItemPosition.ON_RIGHT\n });\n }\n\n /**\n * Compare the events inside the same group\n */\n protected compareEvents(prevEvent: NgxTimelineEvent, event: NgxTimelineEvent): boolean {\n return this.changeSideInGroup === NgxTimelineEventChangeSideInGroup.ALL ||\n this.compareEventsField(prevEvent, event, ...fieldsToCheckEventChangeSideInGroup[this.changeSideInGroup]);\n }\n\n protected compareEventsField(prevEvent: NgxTimelineEvent, event: NgxTimelineEvent, ...fields: string[]): boolean {\n return fields.reduce((res, field) => res = res || prevEvent.timestamp[field]() !== event.timestamp[field](), !!false);\n }\n\n protected setPeriods(): void {\n this.periods = Object.keys(this.groups).map((periodKey) => {\n const split = periodKey.split(this.separator);\n return this.getPeriodInfo(split, periodKey);\n });\n }\n\n private getPeriodInfo(split: string[], periodKey: string): { periodInfo: NgxTimelinePeriodInfo } {\n return {\n periodInfo: {\n year: Number(split[0]),\n month: Number(split[1]),\n day: Number(split[2]),\n periodKey,\n firstDate: this.groups[periodKey][0].timestamp as Date,\n },\n };\n }\n\n protected getPeriodKeyFromEvent(event: NgxTimelineEvent): string {\n return fieldsToAddEventGroup[this.groupEvent].map(field => event.timestamp[field]()).join(this.separator);\n }\n}\n","import { Component, Input, Output, TemplateRef } from '@angular/core';\nimport { NgxTimelineItem, NgxTimelineItemPosition } from '../../models/NgxTimelineEvent';\nimport { DatePipe } from '@angular/common';\nimport { BehaviorSubject } from 'rxjs';\nimport { supportedLanguageCodes } from '../../models';\n\n@Component({\n selector: 'ngx-timeline-event',\n templateUrl: './ngx-timeline-event.component.html',\n styleUrls: ['./ngx-timeline-event.component.scss']\n})\nexport class NgxTimelineEventComponent {\n\n /**\n * Event to be displayed\n */\n @Input() event: NgxTimelineItem;\n /**\n * Event position respect to the vertical line (LEFT or RIGHT)\n */\n @Input() colSidePosition: NgxTimelineItemPosition;\n /**\n * Language code used to format the dates\n */\n @Input() langCode?: string;\n /**\n * Inner custom template used to display the event detail\n */\n @Input() innerEventCustomTemplate?: TemplateRef<any>;\n /**\n * Boolean used to enable or disable the animations\n */\n @Input() enableAnimation = true;\n /**\n * Output click event emitter\n */\n @Output() clickEmitter: BehaviorSubject<NgxTimelineItem> = new BehaviorSubject(null);\n\n ngxTimelineItemPosition = NgxTimelineItemPosition;\n\n private readonly monthAbbr = 'MMM';\n private readonly dayFormat = 'dd';\n\n constructor() { }\n\n getDateObj(): any {\n let day;\n let month;\n let year;\n const dateTimestamp = this.event?.eventInfo?.timestamp;\n if (dateTimestamp) {\n const timestamp = new Date(dateTimestamp);\n const langCode = this.getLangCode();\n month = new DatePipe(langCode).transform(timestamp, this.monthAbbr);\n day = new DatePipe(langCode).transform(timestamp, this.dayFormat);\n year = timestamp.getFullYear();\n }\n\n return {day, month, year};\n }\n\n protected getLangCode(): string {\n return this.langCode && supportedLanguageCodes.includes(this.langCode) ? this.langCode : supportedLanguageCodes[0];\n }\n\n}\n","import { DatePipe } from '@angular/common';\r\nimport { Pipe, PipeTransform } from '@angular/core';\r\nimport { NgxConfigDate, NgxDateObjMap, NgxDateFormat, supportedLanguageCodes, fieldConfigDate, dateConfigMap } from '../models';\r\n\r\n@Pipe({ name: 'ngxdate', pure: false })\r\nexport class NgxDatePipe implements PipeTransform {\r\n\r\n constructor() {\r\n }\r\n\r\n transform(date: Date | string, dateFormat?: string, langCode?: string): string {\r\n let transformedDate = null;\r\n if (date) {\r\n const objDate = this.getDateConfig(langCode);\r\n transformedDate = new DatePipe(objDate.code).transform(new Date(date), this.dateFormat(dateFormat, objDate));\r\n }\r\n return transformedDate;\r\n }\r\n\r\n private dateFormat(dateFormat: string, configDate: NgxConfigDate): string {\r\n return configDate[fieldConfigDate[dateFormat]];\r\n }\r\n\r\n private getDateConfig(langCode: string): NgxConfigDate {\r\n const code = langCode || supportedLanguageCodes[0];\r\n const configDate = dateConfigMap[code] || dateConfigMap[supportedLanguageCodes[0]];\r\n return configDate;\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\nimport { NgxTimelineComponent } from './components/ngx-timeline.component';\nimport { NgxTimelineEventComponent } from './components/ngx-timeline-event/ngx-timeline-event.component';\nimport { CommonModule, registerLocaleData } from '@angular/common';\nimport { NgxDatePipe } from './pipes/ngx-date-pipe';\nimport localeIt from '@angular/common/locales/it';\nimport localeFr from '@angular/common/locales/fr';\nimport localeDe from '@angular/common/locales/de';\nimport localeEs from '@angular/common/locales/es';\n\nregisterLocaleData(localeIt);\nregisterLocaleData(localeFr);\nregisterLocaleData(localeDe);\nregisterLocaleData(localeEs);\n\n@NgModule({\n declarations: [NgxTimelineComponent, NgxTimelineEventComponent, NgxDatePipe],\n imports: [CommonModule],\n exports: [NgxTimelineComponent, NgxDatePipe]\n})\nexport class NgxTimelineModule { }\n","/*\n * Public API Surface of ngx-timeline\n */\nexport * from './lib/components';\nexport * from './lib/models';\nexport * from './lib/pipes/';\nexport * from './lib/ngx-timeline.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n\nexport {NgxTimelineEventComponent as ɵb} from './lib/components/ngx-timeline-event/ngx-timeline-event.component';\nexport {NgxTimelineComponent as ɵa} from './lib/components/ngx-timeline.component';\nexport {NgxDatePipe as ɵc} from './lib/pipes/ngx-date-pipe';"],"names":["NgxDateFormat","NgxTimelineEventGroup","NgxTimelineEventChangeSideInGroup","NgxTimelineItemPosition","BehaviorSubject","Component","Input","Output","DatePipe","Pipe","registerLocaleData","localeIt","localeFr","localeDe","localeEs","NgModule","CommonModule"],"mappings":"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"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Generated bundle index. Do not edit.
|
|
3
|
-
*/
|
|
4
|
-
export * from './public-api';
|
|
5
|
-
export { NgxTimelineEventComponent as ɵb } from './lib/components/ngx-timeline-event/ngx-timeline-event.component';
|
|
6
|
-
export { NgxTimelineComponent as ɵa } from './lib/components/ngx-timeline.component';
|
|
7
|
-
export { NgxDatePipe as ɵc } from './lib/pipes/ngx-date-pipe';
|
|
8
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJ4anMtbmd4LXRpbWVsaW5lLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vcHJvamVjdHMvbmd4LXRpbWVsaW5lL3NyYy9mcnhqcy1uZ3gtdGltZWxpbmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQztBQUU3QixPQUFPLEVBQUMseUJBQXlCLElBQUksRUFBRSxFQUFDLE1BQU0sa0VBQWtFLENBQUM7QUFDakgsT0FBTyxFQUFDLG9CQUFvQixJQUFJLEVBQUUsRUFBQyxNQUFNLHlDQUF5QyxDQUFDO0FBQ25GLE9BQU8sRUFBQyxXQUFXLElBQUksRUFBRSxFQUFDLE1BQU0sMkJBQTJCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG5cbmV4cG9ydCB7Tmd4VGltZWxpbmVFdmVudENvbXBvbmVudCBhcyDJtWJ9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvbmd4LXRpbWVsaW5lLWV2ZW50L25neC10aW1lbGluZS1ldmVudC5jb21wb25lbnQnO1xuZXhwb3J0IHtOZ3hUaW1lbGluZUNvbXBvbmVudCBhcyDJtWF9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvbmd4LXRpbWVsaW5lLmNvbXBvbmVudCc7XG5leHBvcnQge05neERhdGVQaXBlIGFzIMm1Y30gZnJvbSAnLi9saWIvcGlwZXMvbmd4LWRhdGUtcGlwZSc7Il19
|
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
import { Component, Input, Output } from '@angular/core';
|
|
2
|
-
import { NgxTimelineItemPosition } from '../../models/NgxTimelineEvent';
|
|
3
|
-
import { DatePipe } from '@angular/common';
|
|
4
|
-
import { BehaviorSubject } from 'rxjs';
|
|
5
|
-
import { supportedLanguageCodes } from '../../models';
|
|
6
|
-
export class NgxTimelineEventComponent {
|
|
7
|
-
constructor() {
|
|
8
|
-
/**
|
|
9
|
-
* Boolean used to enable or disable the animations
|
|
10
|
-
*/
|
|
11
|
-
this.enableAnimation = true;
|
|
12
|
-
/**
|
|
13
|
-
* Output click event emitter
|
|
14
|
-
*/
|
|
15
|
-
this.clickEmitter = new BehaviorSubject(null);
|
|
16
|
-
this.ngxTimelineItemPosition = NgxTimelineItemPosition;
|
|
17
|
-
this.monthAbbr = 'MMM';
|
|
18
|
-
this.dayFormat = 'dd';
|
|
19
|
-
}
|
|
20
|
-
getDateObj() {
|
|
21
|
-
var _a, _b;
|
|
22
|
-
let day;
|
|
23
|
-
let month;
|
|
24
|
-
let year;
|
|
25
|
-
const dateTimestamp = (_b = (_a = this.event) === null || _a === void 0 ? void 0 : _a.eventInfo) === null || _b === void 0 ? void 0 : _b.timestamp;
|
|
26
|
-
if (dateTimestamp) {
|
|
27
|
-
const timestamp = new Date(dateTimestamp);
|
|
28
|
-
const langCode = this.getLangCode();
|
|
29
|
-
month = new DatePipe(langCode).transform(timestamp, this.monthAbbr);
|
|
30
|
-
day = new DatePipe(langCode).transform(timestamp, this.dayFormat);
|
|
31
|
-
year = timestamp.getFullYear();
|
|
32
|
-
}
|
|
33
|
-
return { day, month, year };
|
|
34
|
-
}
|
|
35
|
-
getLangCode() {
|
|
36
|
-
return this.langCode && supportedLanguageCodes.includes(this.langCode) ? this.langCode : supportedLanguageCodes[0];
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
NgxTimelineEventComponent.decorators = [
|
|
40
|
-
{ type: Component, args: [{
|
|
41
|
-
selector: 'ngx-timeline-event',
|
|
42
|
-
template: "<div class=\"event-wrapper-container\" (click)=\"clickEmitter.next(event)\">\n <div *ngIf=\"colSidePosition===ngxTimelineItemPosition.ON_RIGHT\" class=\"arrow left\"></div>\n <div class=\"event\" [ngClass]=\"{'enableAnimation': enableAnimation}\">\n <ng-container *ngTemplateOutlet=\"innerEventCustomTemplate || innerEventContainer; context: {event: event}\">\n </ng-container>\n </div>\n <div *ngIf=\"colSidePosition===ngxTimelineItemPosition.ON_LEFT\" class=\"arrow right\"></div>\n</div>\n\n<ng-template #innerEventContainer let-event=event>\n <div class=\"event-container\" [ngClass]=\"{'reverse': colSidePosition === ngxTimelineItemPosition.ON_LEFT}\">\n <div class=\"event-info-container\">\n <div class=\"event-info-header\">\n <div class=\"title-container\">{{event?.eventInfo?.title | titlecase}}</div>\n </div>\n <div class=\"event-info-body\">\n <p class=\"event-info-description\">{{event?.eventInfo?.description}}</p>\n </div>\n </div>\n\n <div class=\"event-divider-container\">\n <hr/>\n </div>\n\n <div class=\"event-date-container\" *ngIf=\"getDateObj() as dateObj\">\n <div>\n <p>{{dateObj?.month}}</p>\n </div>\n <div>\n <p class=\"day\">{{dateObj?.day}}</p>\n </div>\n <div>\n <p>{{dateObj?.year}}</p>\n </div>\n </div>\n </div>\n</ng-template>\n",
|
|
43
|
-
styles: [".event-wrapper-container{display:flex;justify-content:center;align-items:center;cursor:pointer}.arrow{width:0;height:0;border-top:.5rem solid transparent;border-bottom:.5rem solid transparent;border-radius:6px;z-index:10}.arrow.right{filter:drop-shadow(2px 0px 0px #244a6e22);border-left:.5rem solid white}.arrow.left{filter:drop-shadow(-1px 0px 0px #244a6e22);border-right:.5rem solid white}.event{background:white;border-radius:.8rem;padding:1rem;width:100%;margin:1rem 0}.event.enableAnimation:hover{padding:2rem;transition:all .5s ease-in-out}.event.enableAnimation:not(:hover){padding:1rem;transition:all .5s ease-in-out}.event:not(.hour){background:#ffffff 0% 0% no-repeat padding-box;box-shadow:0 3px 6px #244a6e52}.event.hour{padding:.5rem;background:none;display:flex;justify-content:center;align-items:center}.event.hour.right{justify-content:flex-start}.event.hour.left{justify-content:flex-end}.event .hour-inner-container{margin:0}.event-container{display:flex}.event-container.reverse{flex-direction:row-reverse}.event-container .event-info-container{display:flex;flex-direction:column;align-items:flex-start;padding:.1rem;flex:88 88 0}.event-container .event-info-container .event-info-header{display:flex;align-items:center;width:100%}.event-container .event-info-container .event-info-header .icon-container{margin-right:.3rem}.event-container .event-info-container .event-info-header .icon-container nb-icon{color:orange;width:1.5rem;height:1.5rem;margin-bottom:.1rem}.event-container .event-info-container .event-info-header .title-container{font-weight:bold;font-size:15px}.event-container .event-info-container .event-info-body{padding:.5rem 0;display:flex;flex-direction:column;justify-content:flex-start;overflow-wrap:anywhere}.event-container .event-info-container .event-info-body .event-info-description{margin-bottom:.5rem;font-size:13px}.event-container .event-info-container .event-info-body .expiration-container,.event-container .event-info-container .event-info-body .category-container{display:flex;font-size:13px;justify-content:flex-start;align-items:center}.event-container .event-info-container .event-info-body .expiration-container p,.event-container .event-info-container .event-info-body .category-container p{font-size:13px;margin:0}.event-container .event-info-container .event-info-body .expiration-container .expiration-label,.event-container .event-info-container .event-info-body .expiration-container .category-label,.event-container .event-info-container .event-info-body .category-container .expiration-label,.event-container .event-info-container .event-info-body .category-container .category-label{margin-right:.5rem}.event-container .event-info-container .event-info-body .expiration-container .expiration-value,.event-container .event-info-container .event-info-body .expiration-container .category-value,.event-container .event-info-container .event-info-body .category-container .expiration-value,.event-container .event-info-container .event-info-body .category-container .category-value{font-weight:bold}.event-container .event-info-container .event-info-footer{font-size:15px;cursor:pointer;padding-top:1rem}.event-container .event-info-container .event-info-footer .footer-inner-container{display:flex;justify-content:flex-start;align-items:flex-end}.event-container .event-info-container .event-info-footer .footer-inner-container nb-icon{color:#006cb4;width:1rem;height:1rem;margin-bottom:.1rem}.event-container .event-info-container .event-info-footer p{margin:0;color:#006cb4}.event-container .event-divider-container{display:flex;justify-content:center;align-items:center;padding:.1rem;flex:5 5 0}.event-container .event-divider-container hr{height:100%;width:1px;background:#e9e9e9}.event-container .event-date-container{display:flex;justify-content:center;align-items:center;flex-direction:column;padding:.1rem;flex:15 15 0}.event-container .event-date-container p{margin:0;text-align:center}.event-container .event-date-container p.day{font-size:32px;font-weight:bold;padding:.5rem 0}\n"]
|
|
44
|
-
},] }
|
|
45
|
-
];
|
|
46
|
-
NgxTimelineEventComponent.ctorParameters = () => [];
|
|
47
|
-
NgxTimelineEventComponent.propDecorators = {
|
|
48
|
-
event: [{ type: Input }],
|
|
49
|
-
colSidePosition: [{ type: Input }],
|
|
50
|
-
langCode: [{ type: Input }],
|
|
51
|
-
innerEventCustomTemplate: [{ type: Input }],
|
|
52
|
-
enableAnimation: [{ type: Input }],
|
|
53
|
-
clickEmitter: [{ type: Output }]
|
|
54
|
-
};
|
|
55
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LXRpbWVsaW5lLWV2ZW50LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC10aW1lbGluZS9zcmMvbGliL2NvbXBvbmVudHMvbmd4LXRpbWVsaW5lLWV2ZW50L25neC10aW1lbGluZS1ldmVudC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFlLE1BQU0sZUFBZSxDQUFDO0FBQ3RFLE9BQU8sRUFBbUIsdUJBQXVCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUN6RixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN2QyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFPdEQsTUFBTSxPQUFPLHlCQUF5QjtJQWdDcEM7UUFkQTs7V0FFRztRQUNNLG9CQUFlLEdBQUcsSUFBSSxDQUFDO1FBQ2hDOztXQUVHO1FBQ08saUJBQVksR0FBcUMsSUFBSSxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFckYsNEJBQXVCLEdBQUcsdUJBQXVCLENBQUM7UUFFakMsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUNsQixjQUFTLEdBQUcsSUFBSSxDQUFDO0lBRWxCLENBQUM7SUFFakIsVUFBVTs7UUFDUixJQUFJLEdBQUcsQ0FBQztRQUNSLElBQUksS0FBSyxDQUFDO1FBQ1YsSUFBSSxJQUFJLENBQUM7UUFDVCxNQUFNLGFBQWEsR0FBRyxNQUFBLE1BQUEsSUFBSSxDQUFDLEtBQUssMENBQUUsU0FBUywwQ0FBRSxTQUFTLENBQUM7UUFDdkQsSUFBSSxhQUFhLEVBQUU7WUFDakIsTUFBTSxTQUFTLEdBQUcsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7WUFDMUMsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3BDLEtBQUssR0FBRyxJQUFJLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQyxTQUFTLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUNwRSxHQUFHLEdBQUcsSUFBSSxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUMsU0FBUyxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDbEUsSUFBSSxHQUFHLFNBQVMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztTQUNoQztRQUVELE9BQU8sRUFBQyxHQUFHLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBQyxDQUFDO0lBQzVCLENBQUM7SUFFUyxXQUFXO1FBQ25CLE9BQU8sSUFBSSxDQUFDLFFBQVEsSUFBSSxzQkFBc0IsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNySCxDQUFDOzs7WUF6REYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxvQkFBb0I7Z0JBQzlCLHMzQ0FBa0Q7O2FBRW5EOzs7O29CQU1FLEtBQUs7OEJBSUwsS0FBSzt1QkFJTCxLQUFLO3VDQUlMLEtBQUs7OEJBSUwsS0FBSzsyQkFJTCxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT3V0cHV0LCBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmd4VGltZWxpbmVJdGVtLCBOZ3hUaW1lbGluZUl0ZW1Qb3NpdGlvbiB9IGZyb20gJy4uLy4uL21vZGVscy9OZ3hUaW1lbGluZUV2ZW50JztcbmltcG9ydCB7IERhdGVQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgc3VwcG9ydGVkTGFuZ3VhZ2VDb2RlcyB9IGZyb20gJy4uLy4uL21vZGVscyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ25neC10aW1lbGluZS1ldmVudCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9uZ3gtdGltZWxpbmUtZXZlbnQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9uZ3gtdGltZWxpbmUtZXZlbnQuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBOZ3hUaW1lbGluZUV2ZW50Q29tcG9uZW50IHtcblxuICAvKipcbiAgICogRXZlbnQgdG8gYmUgZGlzcGxheWVkXG4gICAqL1xuICBASW5wdXQoKSBldmVudDogTmd4VGltZWxpbmVJdGVtO1xuICAvKipcbiAgICogRXZlbnQgcG9zaXRpb24gcmVzcGVjdCB0byB0aGUgdmVydGljYWwgbGluZSAoTEVGVCBvciBSSUdIVClcbiAgICovXG4gIEBJbnB1dCgpIGNvbFNpZGVQb3NpdGlvbjogTmd4VGltZWxpbmVJdGVtUG9zaXRpb247XG4gIC8qKlxuICAgKiBMYW5ndWFnZSBjb2RlIHVzZWQgdG8gZm9ybWF0IHRoZSBkYXRlc1xuICAgKi9cbiAgQElucHV0KCkgbGFuZ0NvZGU/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBJbm5lciBjdXN0b20gdGVtcGxhdGUgdXNlZCB0byBkaXNwbGF5IHRoZSBldmVudCBkZXRhaWxcbiAgICovXG4gIEBJbnB1dCgpIGlubmVyRXZlbnRDdXN0b21UZW1wbGF0ZT86IFRlbXBsYXRlUmVmPGFueT47XG4gIC8qKlxuICAgKiBCb29sZWFuIHVzZWQgdG8gZW5hYmxlIG9yIGRpc2FibGUgdGhlIGFuaW1hdGlvbnNcbiAgICovXG4gIEBJbnB1dCgpIGVuYWJsZUFuaW1hdGlvbiA9IHRydWU7XG4gIC8qKlxuICAgKiBPdXRwdXQgY2xpY2sgZXZlbnQgZW1pdHRlclxuICAgKi9cbiAgQE91dHB1dCgpIGNsaWNrRW1pdHRlcjogQmVoYXZpb3JTdWJqZWN0PE5neFRpbWVsaW5lSXRlbT4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KG51bGwpO1xuXG4gIG5neFRpbWVsaW5lSXRlbVBvc2l0aW9uID0gTmd4VGltZWxpbmVJdGVtUG9zaXRpb247XG5cbiAgcHJpdmF0ZSByZWFkb25seSBtb250aEFiYnIgPSAnTU1NJztcbiAgcHJpdmF0ZSByZWFkb25seSBkYXlGb3JtYXQgPSAnZGQnO1xuXG4gIGNvbnN0cnVjdG9yKCkgeyB9XG5cbiAgZ2V0RGF0ZU9iaigpOiBhbnkge1xuICAgIGxldCBkYXk7XG4gICAgbGV0IG1vbnRoO1xuICAgIGxldCB5ZWFyO1xuICAgIGNvbnN0IGRhdGVUaW1lc3RhbXAgPSB0aGlzLmV2ZW50Py5ldmVudEluZm8/LnRpbWVzdGFtcDtcbiAgICBpZiAoZGF0ZVRpbWVzdGFtcCkge1xuICAgICAgY29uc3QgdGltZXN0YW1wID0gbmV3IERhdGUoZGF0ZVRpbWVzdGFtcCk7XG4gICAgICBjb25zdCBsYW5nQ29kZSA9IHRoaXMuZ2V0TGFuZ0NvZGUoKTtcbiAgICAgIG1vbnRoID0gbmV3IERhdGVQaXBlKGxhbmdDb2RlKS50cmFuc2Zvcm0odGltZXN0YW1wLCB0aGlzLm1vbnRoQWJicik7XG4gICAgICBkYXkgPSBuZXcgRGF0ZVBpcGUobGFuZ0NvZGUpLnRyYW5zZm9ybSh0aW1lc3RhbXAsIHRoaXMuZGF5Rm9ybWF0KTtcbiAgICAgIHllYXIgPSB0aW1lc3RhbXAuZ2V0RnVsbFllYXIoKTtcbiAgICB9XG5cbiAgICByZXR1cm4ge2RheSwgbW9udGgsIHllYXJ9O1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldExhbmdDb2RlKCk6IHN0cmluZyAge1xuICAgIHJldHVybiB0aGlzLmxhbmdDb2RlICYmIHN1cHBvcnRlZExhbmd1YWdlQ29kZXMuaW5jbHVkZXModGhpcy5sYW5nQ29kZSkgPyB0aGlzLmxhbmdDb2RlIDogc3VwcG9ydGVkTGFuZ3VhZ2VDb2Rlc1swXTtcbiAgfVxuXG59XG4iXX0=
|
|
@@ -1,146 +0,0 @@
|
|
|
1
|
-
import { Component, Input, Output } from '@angular/core';
|
|
2
|
-
import { NgxTimelineItemPosition, NgxDateFormat, NgxTimelineEventGroup, NgxTimelineEventChangeSideInGroup, periodKeyDateFormat, fieldsToCheckEventChangeSideInGroup, fieldsToAddEventGroup } from '../models';
|
|
3
|
-
import { BehaviorSubject } from 'rxjs';
|
|
4
|
-
export class NgxTimelineComponent {
|
|
5
|
-
constructor() {
|
|
6
|
-
/**
|
|
7
|
-
* Boolean used to enable or disable the animations
|
|
8
|
-
*/
|
|
9
|
-
this.enableAnimation = true;
|
|
10
|
-
/**
|
|
11
|
-
* Logic to be applied in order to group events
|
|
12
|
-
*/
|
|
13
|
-
this.groupEvent = NgxTimelineEventGroup.MONTH_YEAR;
|
|
14
|
-
/**
|
|
15
|
-
* Logic to be applied in order to put evetns on LEFT or RIGHT
|
|
16
|
-
*/
|
|
17
|
-
this.changeSideInGroup = NgxTimelineEventChangeSideInGroup.ON_DIFFERENT_DAY;
|
|
18
|
-
/**
|
|
19
|
-
* Output click event emitter
|
|
20
|
-
*/
|
|
21
|
-
this.clickEmitter = new BehaviorSubject(null);
|
|
22
|
-
this.groups = {};
|
|
23
|
-
this.periods = [];
|
|
24
|
-
this.items = [];
|
|
25
|
-
this.ngxTimelineItemPosition = NgxTimelineItemPosition;
|
|
26
|
-
this.ngxDateFormat = NgxDateFormat;
|
|
27
|
-
this.separator = '/';
|
|
28
|
-
}
|
|
29
|
-
ngOnInit() {
|
|
30
|
-
this.groupEvents(this.events);
|
|
31
|
-
}
|
|
32
|
-
ngOnChanges(changes) {
|
|
33
|
-
this.groupEvents(this.events);
|
|
34
|
-
}
|
|
35
|
-
getPeriodKeyDateFormat() {
|
|
36
|
-
return periodKeyDateFormat[this.groupEvent];
|
|
37
|
-
}
|
|
38
|
-
clear() {
|
|
39
|
-
this.groups = {};
|
|
40
|
-
this.periods = [];
|
|
41
|
-
this.items = [];
|
|
42
|
-
}
|
|
43
|
-
groupEvents(events) {
|
|
44
|
-
if (events) {
|
|
45
|
-
this.clear();
|
|
46
|
-
this.sortEvents(events);
|
|
47
|
-
this.setGroups(events);
|
|
48
|
-
this.setPeriods();
|
|
49
|
-
this.setItems();
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
sortEvents(events) {
|
|
53
|
-
events.sort((a, b) => a.timestamp.getTime() - b.timestamp.getTime());
|
|
54
|
-
}
|
|
55
|
-
setGroups(events) {
|
|
56
|
-
events.forEach((event) => {
|
|
57
|
-
// conversion from string to actual Date
|
|
58
|
-
event.timestamp = new Date(event.timestamp);
|
|
59
|
-
const periodKey = this.getPeriodKeyFromEvent(event);
|
|
60
|
-
if (!this.groups[periodKey]) {
|
|
61
|
-
this.groups[periodKey] = [];
|
|
62
|
-
}
|
|
63
|
-
this.groups[periodKey].push(event);
|
|
64
|
-
});
|
|
65
|
-
}
|
|
66
|
-
setItems() {
|
|
67
|
-
this.periods.forEach((p) => {
|
|
68
|
-
// insert first the period
|
|
69
|
-
this.items.push(p);
|
|
70
|
-
// in each period putting items on left
|
|
71
|
-
const onLeft = true;
|
|
72
|
-
const periodInfo = p.periodInfo;
|
|
73
|
-
// insert then all the events in this period
|
|
74
|
-
this.addPeriodEvents(periodInfo, onLeft);
|
|
75
|
-
// onLeft = this.addEventItemsAndGetIfOnLeft(periodInfo, onLeft);
|
|
76
|
-
});
|
|
77
|
-
}
|
|
78
|
-
addPeriodEvents(periodInfo, onLeft) {
|
|
79
|
-
this.groups[periodInfo.periodKey].forEach((event, index) => {
|
|
80
|
-
const prevEvent = this.groups[periodInfo.periodKey][index - 1];
|
|
81
|
-
if (index > 0 && this.compareEvents(prevEvent, event)) {
|
|
82
|
-
onLeft = !onLeft;
|
|
83
|
-
}
|
|
84
|
-
this.pushEventOnItems(event, onLeft);
|
|
85
|
-
});
|
|
86
|
-
// return onLeft;
|
|
87
|
-
}
|
|
88
|
-
pushEventOnItems(event, onLeft) {
|
|
89
|
-
this.items.push({
|
|
90
|
-
eventInfo: Object.assign({}, event), position: onLeft ?
|
|
91
|
-
this.ngxTimelineItemPosition.ON_LEFT : this.ngxTimelineItemPosition.ON_RIGHT
|
|
92
|
-
});
|
|
93
|
-
}
|
|
94
|
-
/**
|
|
95
|
-
* Compare the events inside the same group
|
|
96
|
-
*/
|
|
97
|
-
compareEvents(prevEvent, event) {
|
|
98
|
-
return this.changeSideInGroup === NgxTimelineEventChangeSideInGroup.ALL ||
|
|
99
|
-
this.compareEventsField(prevEvent, event, ...fieldsToCheckEventChangeSideInGroup[this.changeSideInGroup]);
|
|
100
|
-
}
|
|
101
|
-
compareEventsField(prevEvent, event, ...fields) {
|
|
102
|
-
return fields.reduce((res, field) => res = res || prevEvent.timestamp[field]() !== event.timestamp[field](), !!false);
|
|
103
|
-
}
|
|
104
|
-
setPeriods() {
|
|
105
|
-
this.periods = Object.keys(this.groups).map((periodKey) => {
|
|
106
|
-
const split = periodKey.split(this.separator);
|
|
107
|
-
return this.getPeriodInfo(split, periodKey);
|
|
108
|
-
});
|
|
109
|
-
}
|
|
110
|
-
getPeriodInfo(split, periodKey) {
|
|
111
|
-
return {
|
|
112
|
-
periodInfo: {
|
|
113
|
-
year: Number(split[0]),
|
|
114
|
-
month: Number(split[1]),
|
|
115
|
-
day: Number(split[2]),
|
|
116
|
-
periodKey,
|
|
117
|
-
firstDate: this.groups[periodKey][0].timestamp,
|
|
118
|
-
},
|
|
119
|
-
};
|
|
120
|
-
}
|
|
121
|
-
getPeriodKeyFromEvent(event) {
|
|
122
|
-
return fieldsToAddEventGroup[this.groupEvent].map(field => event.timestamp[field]()).join(this.separator);
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
|
-
NgxTimelineComponent.decorators = [
|
|
126
|
-
{ type: Component, args: [{
|
|
127
|
-
selector: 'ngx-timeline',
|
|
128
|
-
template: "<div class=\"main-container\">\r\n <div class=\"items-container\">\r\n <div *ngFor=\"let item of items; let index = index;\" class=\"row\">\r\n <!-- DESKTOP -->\r\n <div class=\"col col-left desktop\" [ngClass]=\"item.periodInfo ? 'col-period' : 'col-event'\">\r\n <div class=\"event-outer-container\" *ngIf=\"item.eventInfo && item.position === ngxTimelineItemPosition.ON_LEFT\">\r\n <ng-container *ngTemplateOutlet=\"eventCustomTemplate || eventTemplate; context: {event: item, colSidePosition: ngxTimelineItemPosition.ON_LEFT}\"></ng-container>\r\n </div>\r\n <div class=\"hour left\" *ngIf=\"item.eventInfo && item.position === ngxTimelineItemPosition.ON_RIGHT\">\r\n <ng-container *ngTemplateOutlet=\"dateInstantCustomTemplate || dateInstantTemplate; context: {item: item.eventInfo}\" ></ng-container>\r\n </div>\r\n </div>\r\n\r\n <div class=\"col col-center desktop\" [ngClass]=\"item.periodInfo ? 'col-period' : 'col-event'\">\r\n <div class=\"center-inner\" *ngIf=\"item.periodInfo\">\r\n <ng-container *ngTemplateOutlet=\"periodCustomTemplate || periodTemplate; context: {period: item.periodInfo, index: index}\"></ng-container>\r\n </div>\r\n <div class=\"center-inner no-period-key\" *ngIf=\"!item.periodInfo\">\r\n <ng-container *ngTemplateOutlet=\"centerLinesIconTemplate; context: {index: index}\"></ng-container>\r\n </div>\r\n </div>\r\n\r\n <div class=\"col col-right desktop\" [ngClass]=\"item.periodInfo ? 'col-period' : 'col-event'\">\r\n <div class=\"event-outer-container\" *ngIf=\"item.eventInfo && item.position === ngxTimelineItemPosition.ON_RIGHT\">\r\n <ng-container *ngTemplateOutlet=\"eventCustomTemplate || eventTemplate; context: {event: item, colSidePosition: ngxTimelineItemPosition.ON_RIGHT}\"></ng-container>\r\n </div>\r\n <div class=\"hour right\" *ngIf=\"item.eventInfo && item.position === ngxTimelineItemPosition.ON_LEFT\">\r\n <ng-container *ngTemplateOutlet=\"dateInstantCustomTemplate || dateInstantTemplate; context: {item: item.eventInfo}\" ></ng-container>\r\n </div>\r\n </div>\r\n\r\n <!-- MOBILE -->\r\n <div class=\"col col-left mobile\" [ngClass]=\"item.periodInfo ? 'col-period' : 'col-event'\">\r\n <div class=\"hour left\" *ngIf=\"item.eventInfo\">\r\n <div class=\"hour-inner-container\">\r\n <ng-container *ngTemplateOutlet=\"dateInstantCustomTemplate || dateInstantTemplate; context: {item: item.eventInfo}\" ></ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"col col-center mobile\" [ngClass]=\"item.periodInfo ? 'col-period' : 'col-event'\">\r\n <div class=\"center-inner\" *ngIf=\"item.periodInfo;\">\r\n <ng-container *ngTemplateOutlet=\"periodCustomTemplate || periodTemplate; context: {period: item.periodInfo, index: index}\"></ng-container>\r\n </div>\r\n <div class=\"center-inner no-period-key\" *ngIf=\"!item.periodInfo;\">\r\n <ng-container *ngTemplateOutlet=\"centerLinesIconTemplate;context: {index: index}\"></ng-container>\r\n </div>\r\n </div>\r\n\r\n <div class=\"col col-right mobile\" [ngClass]=\"item.periodInfo ? 'col-period' : 'col-event'\">\r\n <div class=\"event-outer-container\" *ngIf=\"item.eventInfo\">\r\n <ng-container *ngTemplateOutlet=\"eventCustomTemplate || eventTemplate; context: {event: item, colSidePosition: ngxTimelineItemPosition.ON_RIGHT}\"></ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n\r\n<ng-template #centerLinesIconTemplate let-index=index>\r\n <div class=\"line\"></div>\r\n <ng-container *ngTemplateOutlet=\"centerIconCustomTemplate || centerIconTemplate\"></ng-container>\r\n <div [ngClass]=\"{'transparent last-line': index === items.length - 1}\" class=\"line\"></div>\r\n</ng-template>\r\n\r\n<ng-template #centerIconTemplate>\r\n <div class=\"center-icon-container\">\r\n <div class=\"icon\"></div>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #dateInstantTemplate let-item=item>\r\n <span>\r\n {{item?.timestamp | ngxdate : ngxDateFormat.HOURS_MINUTES : langCode}}\r\n </span>\r\n</ng-template>\r\n\r\n<ng-template #periodTemplate let-period=period let-index=index>\r\n <div [ngClass]=\"{'transparent first-line': !index}\" class=\"line\"></div>\r\n <div class=\"period-container\">\r\n <div class=\"period-inner-container\">\r\n <span>{{period?.firstDate | ngxdate : getPeriodKeyDateFormat() : langCode}}</span>\r\n </div>\r\n </div>\r\n <div class=\"line\"></div>\r\n</ng-template>\r\n\r\n<ng-template #eventTemplate let-event=event let-colSidePosition=colSidePosition>\r\n <ngx-timeline-event\r\n [event]=\"event\"\r\n [langCode]=\"langCode\"\r\n [enableAnimation]=\"enableAnimation\"\r\n [innerEventCustomTemplate]=\"innerEventCustomTemplate\"\r\n [colSidePosition]=\"colSidePosition\"\r\n (clickEmitter)=\"clickEmitter.next($event)\">\r\n </ngx-timeline-event>\r\n</ng-template>\r\n\r\n",
|
|
129
|
-
styles: [".main-container{display:flex;justify-content:center;width:100%}.items-container{padding:1rem 0;min-width:max(20rem,100%)}.row{display:flex;flex-wrap:wrap}.row>[class*=col-]{display:flex;flex-direction:column;justify-content:center}.col-left{align-items:flex-end;padding:0;flex:49 49 0}.col-right{align-items:flex-start;padding:0;flex:49 49 0}.col-center{min-height:6rem;padding:0;flex:2 2 0}.center-inner{width:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;height:100%}.center-inner .line{min-height:50%;max-height:50%;height:50%;background:#464646;width:.1rem}.center-inner .line.transparent{background:transparent}.period-container{background:orange;color:#fff;margin:0;padding:.2rem .5rem}.period-container .period-inner-container{width:max-content;padding:.2rem .5rem;z-index:10}.center-icon-container{padding:.8rem 0;display:flex;justify-content:center;align-items:center;position:absolute;height:10px;width:10px;background:white}.center-icon-container .icon{height:1rem;width:1rem;border-radius:50%;background:orange;margin:0;position:absolute}.event-outer-container{margin:0 .5rem;width:100%}.hour{padding:.5rem;background:none;display:flex;justify-content:center;align-items:center}.hour.right{justify-content:flex-start}.hour.left{justify-content:flex-end}.hour .hour-inner-container{margin:0}.desktop{display:flex!important}.mobile{display:none!important}@media (max-width: 900px){.desktop{display:none!important}.mobile{display:flex!important}.event-outer-container{margin:.5rem .3rem}.col-left{align-items:flex-start}.col-left .hour{font-size:12px;padding:0;margin-right:.3rem}.col-left.col-period{flex:18 18 0}.col-left.col-event{flex:18 18 0;padding:0;align-items:flex-end}.col-right{align-items:flex-start}.col-right.col-period{flex:77 77 0}.col-right.col-event{flex:77 77 0;padding:0}.col-center{min-height:6rem;justify-content:center;margin:0}.col-center.col-period{flex:5 5 0;min-height:3rem}.col-center.col-event{flex:5 5 0}.center-inner{align-items:center}.period-container{min-height:20%;height:20%;max-height:20%;background:transparent;display:flex;justify-content:center;align-items:center;border-radius:6px}.period-container .period-inner-container{position:absolute;background:orange;color:#fff;width:max-content;padding:.2rem .5rem;z-index:10}.center-icon-container{align-items:center;justify-content:center}.center-icon-container .icon{height:1rem;width:1rem;position:absolute}}\n"]
|
|
130
|
-
},] }
|
|
131
|
-
];
|
|
132
|
-
NgxTimelineComponent.ctorParameters = () => [];
|
|
133
|
-
NgxTimelineComponent.propDecorators = {
|
|
134
|
-
events: [{ type: Input }],
|
|
135
|
-
langCode: [{ type: Input }],
|
|
136
|
-
enableAnimation: [{ type: Input }],
|
|
137
|
-
groupEvent: [{ type: Input }],
|
|
138
|
-
changeSideInGroup: [{ type: Input }],
|
|
139
|
-
periodCustomTemplate: [{ type: Input }],
|
|
140
|
-
eventCustomTemplate: [{ type: Input }],
|
|
141
|
-
centerIconCustomTemplate: [{ type: Input }],
|
|
142
|
-
dateInstantCustomTemplate: [{ type: Input }],
|
|
143
|
-
innerEventCustomTemplate: [{ type: Input }],
|
|
144
|
-
clickEmitter: [{ type: Output }]
|
|
145
|
-
};
|
|
146
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LXRpbWVsaW5lLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC10aW1lbGluZS9zcmMvbGliL2NvbXBvbmVudHMvbmd4LXRpbWVsaW5lLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLEtBQUssRUFBeUMsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3hHLE9BQU8sRUFHTCx1QkFBdUIsRUFFdkIsYUFBYSxFQUNiLHFCQUFxQixFQUNyQixpQ0FBaUMsRUFDakMsbUJBQW1CLEVBQ25CLG1DQUFtQyxFQUNuQyxxQkFBcUIsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUMzQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBT3ZDLE1BQU0sT0FBTyxvQkFBb0I7SUF1RC9CO1FBOUNBOztXQUVHO1FBQ00sb0JBQWUsR0FBRyxJQUFJLENBQUM7UUFDaEM7O1dBRUc7UUFDTSxlQUFVLEdBQTJCLHFCQUFxQixDQUFDLFVBQVUsQ0FBQztRQUMvRTs7V0FFRztRQUNNLHNCQUFpQixHQUF1QyxpQ0FBaUMsQ0FBQyxnQkFBZ0IsQ0FBQztRQXFCcEg7O1dBRUc7UUFFSCxpQkFBWSxHQUFxQyxJQUFJLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUUzRSxXQUFNLEdBQTBDLEVBQUUsQ0FBQztRQUNuRCxZQUFPLEdBQXNCLEVBQUUsQ0FBQztRQUNoQyxVQUFLLEdBQXNCLEVBQUUsQ0FBQztRQUM5Qiw0QkFBdUIsR0FBRyx1QkFBdUIsQ0FBQztRQUNsRCxrQkFBYSxHQUFHLGFBQWEsQ0FBQztRQUViLGNBQVMsR0FBRyxHQUFHLENBQUM7SUFFbEIsQ0FBQztJQUdoQixRQUFRO1FBQ04sSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUFz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Q0FBQyxLQUFLLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDOUMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sYUFBYSxDQUFDLEtBQWUsRUFBRSxTQUFpQjtRQUN0RCxPQUFPO1lBQ0wsVUFBVSxFQUFFO2dCQUNWLElBQUksRUFBRSxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUN0QixLQUFLLEVBQUUsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDdkIsR0FBRyxFQUFFLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ3JCLFNBQVM7Z0JBQ1QsU0FBUyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBaUI7YUFDdkQ7U0FDRixDQUFDO0lBQ0osQ0FBQztJQUVTLHFCQUFxQixDQUFDLEtBQXVCO1FBQ3JELE9BQU8scUJBQXFCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDNUcsQ0FBQzs7O1lBM0tGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsY0FBYztnQkFDeEIsOGhLQUE0Qzs7YUFFN0M7Ozs7cUJBS0UsS0FBSzt1QkFJTCxLQUFLOzhCQUlMLEtBQUs7eUJBSUwsS0FBSztnQ0FJTCxLQUFLO21DQUlMLEtBQUs7a0NBSUwsS0FBSzt1Q0FJTCxLQUFLO3dDQUlMLEtBQUs7dUNBSUwsS0FBSzsyQkFJTCxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIElucHV0LCBUZW1wbGF0ZVJlZiwgT25DaGFuZ2VzLCBTaW1wbGVDaGFuZ2VzLCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIE5neFRpbWVsaW5lRXZlbnQsXG4gIE5neFRpbWVsaW5lSXRlbSxcbiAgTmd4VGltZWxpbmVJdGVtUG9zaXRpb24sXG4gIE5neFRpbWVsaW5lUGVyaW9kSW5mbyxcbiAgTmd4RGF0ZUZvcm1hdCxcbiAgTmd4VGltZWxpbmVFdmVudEdyb3VwLFxuICBOZ3hUaW1lbGluZUV2ZW50Q2hhbmdlU2lkZUluR3JvdXAsXG4gIHBlcmlvZEtleURhdGVGb3JtYXQsXG4gIGZpZWxkc1RvQ2hlY2tFdmVudENoYW5nZVNpZGVJbkdyb3VwLFxuICBmaWVsZHNUb0FkZEV2ZW50R3JvdXAgfSBmcm9tICcuLi9tb2RlbHMnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ25neC10aW1lbGluZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9uZ3gtdGltZWxpbmUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9uZ3gtdGltZWxpbmUuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBOZ3hUaW1lbGluZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcbiAgLyoqXG4gICAqIExpc3Qgb2YgZXZlbnRzIHRvIGJlIGRpc3BsYXllZFxuICAgKi9cbiAgQElucHV0KCkgZXZlbnRzOiBOZ3hUaW1lbGluZUV2ZW50W107XG4gIC8qKlxuICAgKiBMYW5ndWFnZSBjb2RlIHVzZWQgdG8gc2hvdyB0aGUgZGF0ZSBmb3JtYXR0ZWRcbiAgICovXG4gIEBJbnB1dCgpIGxhbmdDb2RlPzogc3RyaW5nO1xuICAvKipcbiAgICogQm9vbGVhbiB1c2VkIHRvIGVuYWJsZSBvciBkaXNhYmxlIHRoZSBhbmltYXRpb25zXG4gICAqL1xuICBASW5wdXQoKSBlbmFibGVBbmltYXRpb24gPSB0cnVlO1xuICAvKipcbiAgICogTG9naWMgdG8gYmUgYXBwbGllZCBpbiBvcmRlciB0byBncm91cCBldmVudHNcbiAgICovXG4gIEBJbnB1dCgpIGdyb3VwRXZlbnQ/OiBOZ3hUaW1lbGluZUV2ZW50R3JvdXAgPSBOZ3hUaW1lbGluZUV2ZW50R3JvdXAuTU9OVEhfWUVBUjtcbiAgLyoqXG4gICAqIExvZ2ljIHRvIGJlIGFwcGxpZWQgaW4gb3JkZXIgdG8gcHV0IGV2ZXRucyBvbiBMRUZUIG9yIFJJR0hUXG4gICAqL1xuICBASW5wdXQoKSBjaGFuZ2VTaWRlSW5Hcm91cD86IE5neFRpbWVsaW5lRXZlbnRDaGFuZ2VTaWRlSW5Hcm91cCA9IE5neFRpbWVsaW5lRXZlbnRDaGFuZ2VTaWRlSW5Hcm91cC5PTl9ESUZGRVJFTlRfREFZO1xuICAvKipcbiAgICogQ3VzdG9tIFRlbXBsYXRlIGRpc3BsYXllZCBiZWZvcmUgYSBncm91cCBvZiBldmVudHNcbiAgICovXG4gIEBJbnB1dCgpIHBlcmlvZEN1c3RvbVRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICAvKipcbiAgICogQ3VzdG9tIFRlbXBsYXRlIGRpc3BsYXllZCB0byBzaG93IGEgc2luZ2xlIGV2ZW50XG4gICAqL1xuICBASW5wdXQoKSBldmVudEN1c3RvbVRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICAvKipcbiAgICogQ3VzdG9tIFRlbXBsYXRlIGRpc3BsYXllZCB0byBzaG93IGFuIHNlcGFyYXRvciBpY29uXG4gICAqL1xuICBASW5wdXQoKSBjZW50ZXJJY29uQ3VzdG9tVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG4gIC8qKlxuICAgKiBDdXN0b20gVGVtcGxhdGUgZGlzcGxheWVkIHRvIHNob3cgdGhlIHNpZGUgZGF0ZVxuICAgKi9cbiAgQElucHV0KCkgZGF0ZUluc3RhbnRDdXN0b21UZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcbiAgLyoqXG4gICAqIEN1c3RvbSBUZW1wbGF0ZSBkaXNwbGF5ZWQgdG8gc2hvdyB0aGUgaW5uZXIgZXZlbnRcbiAgICovXG4gIEBJbnB1dCgpIGlubmVyRXZlbnRDdXN0b21UZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcbiAgLyoqXG4gICAqIE91dHB1dCBjbGljayBldmVudCBlbWl0dGVyXG4gICAqL1xuICBAT3V0cHV0KClcbiAgY2xpY2tFbWl0dGVyOiBCZWhhdmlvclN1YmplY3Q8Tmd4VGltZWxpbmVJdGVtPiA9IG5ldyBCZWhhdmlvclN1YmplY3QobnVsbCk7XG5cbiAgZ3JvdXBzOiB7IFtrZXk6IHN0cmluZ106IE5neFRpbWVsaW5lRXZlbnRbXSB9ID0ge307XG4gIHBlcmlvZHM6IE5neFRpbWVsaW5lSXRlbVtdID0gW107XG4gIGl0ZW1zOiBOZ3hUaW1lbGluZUl0ZW1bXSA9IFtdO1xuICBuZ3hUaW1lbGluZUl0ZW1Qb3NpdGlvbiA9IE5neFRpbWVsaW5lSXRlbVBvc2l0aW9uO1xuICBuZ3hEYXRlRm9ybWF0ID0gTmd4RGF0ZUZvcm1hdDtcblxuICBwcml2YXRlIHJlYWRvbmx5IHNlcGFyYXRvciA9ICcvJztcblxuICBjb25zdHJ1Y3RvcigpIHt9XG5cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmdyb3VwRXZlbnRzKHRoaXMuZXZlbnRzKTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICB0aGlzLmdyb3VwRXZlbnRzKHRoaXMuZXZlbnRzKTtcbiAgfVxuXG4gIGdldFBlcmlvZEtleURhdGVGb3JtYXQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gcGVyaW9kS2V5RGF0ZUZvcm1hdFt0aGlzLmdyb3VwRXZlbnRdO1xuICB9XG5cbiAgcHJvdGVjdGVkIGNsZWFyKCk6IHZvaWQge1xuICAgIHRoaXMuZ3JvdXBzID0ge307XG4gICAgdGhpcy5wZXJpb2RzID0gW107XG4gICAgdGhpcy5pdGVtcyA9IFtdO1xuICB9XG5cbiAgcHJvdGVjdGVkIGdyb3VwRXZlbnRzKGV2ZW50czogTmd4VGltZWxpbmVFdmVudFtdKTogdm9pZCB7XG4gICAgaWYgKGV2ZW50cykge1xuICAgICAgdGhpcy5jbGVhcigpO1xuICAgICAgdGhpcy5zb3J0RXZlbnRzKGV2ZW50cyk7XG4gICAgICB0aGlzLnNldEdyb3VwcyhldmVudHMpO1xuICAgICAgdGhpcy5zZXRQZXJpb2RzKCk7XG4gICAgICB0aGlzLnNldEl0ZW1zKCk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIHNvcnRFdmVudHMoZXZlbnRzOiBOZ3hUaW1lbGluZUV2ZW50W10pOiB2b2lkIHtcbiAgICBldmVudHMuc29ydCgoYSwgYikgPT4gYS50aW1lc3RhbXAuZ2V0VGltZSgpIC0gYi50aW1lc3RhbXAuZ2V0VGltZSgpKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBzZXRHcm91cHMoZXZlbnRzOiBOZ3hUaW1lbGluZUV2ZW50W10pOiB2b2lkIHtcbiAgICBldmVudHMuZm9yRWFjaCgoZXZlbnQpID0+IHtcbiAgICAgIC8vIGNvbnZlcnNpb24gZnJvbSBzdHJpbmcgdG8gYWN0dWFsIERhdGVcbiAgICAgIGV2ZW50LnRpbWVzdGFtcCA9IG5ldyBEYXRlKGV2ZW50LnRpbWVzdGFtcCk7XG4gICAgICBjb25zdCBwZXJpb2RLZXkgPSB0aGlzLmdldFBlcmlvZEtleUZyb21FdmVudChldmVudCk7XG4gICAgICBpZiAoIXRoaXMuZ3JvdXBzW3BlcmlvZEtleV0pIHtcbiAgICAgICAgdGhpcy5ncm91cHNbcGVyaW9kS2V5XSA9IFtdO1xuICAgICAgfVxuICAgICAgdGhpcy5ncm91cHNbcGVyaW9kS2V5XS5wdXNoKGV2ZW50KTtcbiAgICB9KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBzZXRJdGVtcygpOiB2b2lkIHtcbiAgICB0aGlzLnBlcmlvZHMuZm9yRWFjaCgocCkgPT4ge1xuICAgICAgLy8gaW5zZXJ0IGZpcnN0IHRoZSBwZXJpb2RcbiAgICAgIHRoaXMuaXRlbXMucHVzaChwKTtcbiAgICAgIC8vIGluIGVhY2ggcGVyaW9kIHB1dHRpbmcgaXRlbXMgb24gbGVmdFxuICAgICAgY29uc3Qgb25MZWZ0ID0gdHJ1ZTtcbiAgICAgIGNvbnN0IHBlcmlvZEluZm8gPSBwLnBlcmlvZEluZm87XG4gICAgICAvLyBpbnNlcnQgdGhlbiBhbGwgdGhlIGV2ZW50cyBpbiB0aGlzIHBlcmlvZFxuICAgICAgdGhpcy5hZGRQZXJpb2RFdmVudHMocGVyaW9kSW5mbywgb25MZWZ0KTtcbiAgICAgIC8vIG9uTGVmdCA9IHRoaXMuYWRkRXZlbnRJdGVtc0FuZEdldElmT25MZWZ0KHBlcmlvZEluZm8sIG9uTGVmdCk7XG4gICAgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgYWRkUGVyaW9kRXZlbnRzKHBlcmlvZEluZm86IE5neFRpbWVsaW5lUGVyaW9kSW5mbywgb25MZWZ0OiBib29sZWFuKTogdm9pZCB7XG4gICAgdGhpcy5ncm91cHNbcGVyaW9kSW5mby5wZXJpb2RLZXldLmZvckVhY2goKGV2ZW50LCBpbmRleCkgPT4ge1xuICAgICAgY29uc3QgcHJldkV2ZW50ID0gdGhpcy5ncm91cHNbcGVyaW9kSW5mby5wZXJpb2RLZXldW2luZGV4IC0gMV07XG4gICAgICBpZiAoaW5kZXggPiAwICYmIHRoaXMuY29tcGFyZUV2ZW50cyhwcmV2RXZlbnQsIGV2ZW50KSkge1xuICAgICAgICBvbkxlZnQgPSAhb25MZWZ0O1xuICAgICAgfVxuICAgICAgdGhpcy5wdXNoRXZlbnRPbkl0ZW1zKGV2ZW50LCBvbkxlZnQpO1xuICAgIH0pO1xuICAgIC8vIHJldHVybiBvbkxlZnQ7XG4gIH1cblxuICBwcm90ZWN0ZWQgcHVzaEV2ZW50T25JdGVtcyhldmVudDogTmd4VGltZWxpbmVFdmVudCwgb25MZWZ0OiBib29sZWFuKTogdm9pZCB7XG4gICAgdGhpcy5pdGVtcy5wdXNoKHtcbiAgICAgIGV2ZW50SW5mbzogeyAuLi5ldmVudCB9LCBwb3NpdGlvbjogb25MZWZ0ID9cbiAgICAgICAgdGhpcy5uZ3hUaW1lbGluZUl0ZW1Qb3NpdGlvbi5PTl9MRUZUIDogdGhpcy5uZ3hUaW1lbGluZUl0ZW1Qb3NpdGlvbi5PTl9SSUdIVFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbXBhcmUgdGhlIGV2ZW50cyBpbnNpZGUgdGhlIHNhbWUgZ3JvdXBcbiAgICovXG4gIHByb3RlY3RlZCBjb21wYXJlRXZlbnRzKHByZXZFdmVudDogTmd4VGltZWxpbmVFdmVudCwgZXZlbnQ6IE5neFRpbWVsaW5lRXZlbnQpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5jaGFuZ2VTaWRlSW5Hcm91cCA9PT0gTmd4VGltZWxpbmVFdmVudENoYW5nZVNpZGVJbkdyb3VwLkFMTCB8fFxuICAgICAgdGhpcy5jb21wYXJlRXZlbnRzRmllbGQocHJldkV2ZW50LCBldmVudCwgLi4uZmllbGRzVG9DaGVja0V2ZW50Q2hhbmdlU2lkZUluR3JvdXBbdGhpcy5jaGFuZ2VTaWRlSW5Hcm91cF0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIGNvbXBhcmVFdmVudHNGaWVsZChwcmV2RXZlbnQ6IE5neFRpbWVsaW5lRXZlbnQsIGV2ZW50OiBOZ3hUaW1lbGluZUV2ZW50LCAuLi5maWVsZHM6IHN0cmluZ1tdKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGZpZWxkcy5yZWR1Y2UoKHJlcywgZmllbGQpID0+IHJlcyA9IHJlcyB8fCBwcmV2RXZlbnQudGltZXN0YW1wW2ZpZWxkXSgpICE9PSBldmVudC50aW1lc3RhbXBbZmllbGRdKCksICEhZmFsc2UpO1xuICB9XG5cbiAgcHJvdGVjdGVkIHNldFBlcmlvZHMoKTogdm9pZCB7XG4gICAgdGhpcy5wZXJpb2RzID0gT2JqZWN0LmtleXModGhpcy5ncm91cHMpLm1hcCgocGVyaW9kS2V5KSA9PiB7XG4gICAgICBjb25zdCBzcGxpdCA9IHBlcmlvZEtleS5zcGxpdCh0aGlzLnNlcGFyYXRvcik7XG4gICAgICByZXR1cm4gdGhpcy5nZXRQZXJpb2RJbmZvKHNwbGl0LCBwZXJpb2RLZXkpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRQZXJpb2RJbmZvKHNwbGl0OiBzdHJpbmdbXSwgcGVyaW9kS2V5OiBzdHJpbmcpOiB7IHBlcmlvZEluZm86IE5neFRpbWVsaW5lUGVyaW9kSW5mbyB9IHtcbiAgICByZXR1cm4ge1xuICAgICAgcGVyaW9kSW5mbzoge1xuICAgICAgICB5ZWFyOiBOdW1iZXIoc3BsaXRbMF0pLFxuICAgICAgICBtb250aDogTnVtYmVyKHNwbGl0WzFdKSxcbiAgICAgICAgZGF5OiBOdW1iZXIoc3BsaXRbMl0pLFxuICAgICAgICBwZXJpb2RLZXksXG4gICAgICAgIGZpcnN0RGF0ZTogdGhpcy5ncm91cHNbcGVyaW9kS2V5XVswXS50aW1lc3RhbXAgYXMgRGF0ZSxcbiAgICAgIH0sXG4gICAgfTtcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXRQZXJpb2RLZXlGcm9tRXZlbnQoZXZlbnQ6IE5neFRpbWVsaW5lRXZlbnQpOiBzdHJpbmcge1xuICAgIHJldHVybiBmaWVsZHNUb0FkZEV2ZW50R3JvdXBbdGhpcy5ncm91cEV2ZW50XS5tYXAoZmllbGQgPT4gZXZlbnQudGltZXN0YW1wW2ZpZWxkXSgpKS5qb2luKHRoaXMuc2VwYXJhdG9yKTtcbiAgfVxufVxuIl19
|
|
@@ -1,93 +0,0 @@
|
|
|
1
|
-
export let supportedLanguageCodes = ['en', 'it', 'fr', 'de', 'es'];
|
|
2
|
-
export let dateConfigMap = {
|
|
3
|
-
en: {
|
|
4
|
-
code: 'en-US',
|
|
5
|
-
fullDate: 'MM/dd/yyyy h:mm a',
|
|
6
|
-
dayMonthYear: 'dd MMMM yyyy',
|
|
7
|
-
monthYear: 'MMMM yyyy',
|
|
8
|
-
year: 'yyyy',
|
|
9
|
-
hoursMinutes: 'hh:mm a'
|
|
10
|
-
},
|
|
11
|
-
it: {
|
|
12
|
-
code: 'it-IT',
|
|
13
|
-
fullDate: 'dd/MM/yyyy H:mm',
|
|
14
|
-
dayMonthYear: 'dd MMMM yyyy',
|
|
15
|
-
monthYear: 'MMMM yyyy',
|
|
16
|
-
year: 'yyyy',
|
|
17
|
-
hoursMinutes: 'HH:mm'
|
|
18
|
-
},
|
|
19
|
-
fr: {
|
|
20
|
-
code: 'fr-FR',
|
|
21
|
-
fullDate: 'dd/MM/yyyy H:mm',
|
|
22
|
-
dayMonthYear: 'dd MMMM yyyy',
|
|
23
|
-
monthYear: 'MMMM yyyy',
|
|
24
|
-
year: 'yyyy',
|
|
25
|
-
hoursMinutes: 'HH:mm'
|
|
26
|
-
},
|
|
27
|
-
de: {
|
|
28
|
-
code: 'de',
|
|
29
|
-
fullDate: 'dd/MM/yyyy H:mm',
|
|
30
|
-
dayMonthYear: 'dd MMMM yyyy',
|
|
31
|
-
monthYear: 'MMMM yyyy',
|
|
32
|
-
year: 'yyyy',
|
|
33
|
-
hoursMinutes: 'HH:mm'
|
|
34
|
-
},
|
|
35
|
-
es: {
|
|
36
|
-
code: 'es',
|
|
37
|
-
fullDate: 'dd/MM/yyyy H:mm',
|
|
38
|
-
dayMonthYear: 'dd MMMM yyyy',
|
|
39
|
-
monthYear: 'MMMM yyyy',
|
|
40
|
-
year: 'yyyy',
|
|
41
|
-
hoursMinutes: 'HH:mm'
|
|
42
|
-
}
|
|
43
|
-
};
|
|
44
|
-
export var NgxDateFormat;
|
|
45
|
-
(function (NgxDateFormat) {
|
|
46
|
-
NgxDateFormat["DAY_MONTH_YEAR"] = "DAY_MONTH_YEAR";
|
|
47
|
-
NgxDateFormat["FULL_DATE"] = "FULL_DATE";
|
|
48
|
-
NgxDateFormat["MONTH_YEAR"] = "MONTH_YEAR";
|
|
49
|
-
NgxDateFormat["HOURS_MINUTES"] = "HOURS_MINUTES";
|
|
50
|
-
NgxDateFormat["YEAR"] = "YEAR";
|
|
51
|
-
})(NgxDateFormat || (NgxDateFormat = {}));
|
|
52
|
-
export let fieldConfigDate = {
|
|
53
|
-
MONTH_YEAR: 'monthYear',
|
|
54
|
-
YEAR: 'year',
|
|
55
|
-
HOURS_MINUTES: 'hoursMinutes',
|
|
56
|
-
FULL_DATE: 'fullDate',
|
|
57
|
-
DAY_MONTH_YEAR: 'dayMonthYear'
|
|
58
|
-
};
|
|
59
|
-
/**
|
|
60
|
-
* Enum used to set the group event logic
|
|
61
|
-
*/
|
|
62
|
-
export var NgxTimelineEventGroup;
|
|
63
|
-
(function (NgxTimelineEventGroup) {
|
|
64
|
-
NgxTimelineEventGroup["YEAR"] = "YEAR";
|
|
65
|
-
NgxTimelineEventGroup["MONTH_YEAR"] = "MONTH_YEAR";
|
|
66
|
-
NgxTimelineEventGroup["DAY_MONTH_YEAR"] = "DAY_MONTH_YEAR";
|
|
67
|
-
})(NgxTimelineEventGroup || (NgxTimelineEventGroup = {}));
|
|
68
|
-
export let fieldsToAddEventGroup = {
|
|
69
|
-
YEAR: ['getFullYear'],
|
|
70
|
-
MONTH_YEAR: ['getFullYear', 'getMonth'],
|
|
71
|
-
DAY_MONTH_YEAR: ['getFullYear', 'getMonth', 'getDate']
|
|
72
|
-
};
|
|
73
|
-
export let periodKeyDateFormat = {
|
|
74
|
-
YEAR: NgxDateFormat.YEAR,
|
|
75
|
-
MONTH_YEAR: NgxDateFormat.MONTH_YEAR,
|
|
76
|
-
DAY_MONTH_YEAR: NgxDateFormat.DAY_MONTH_YEAR,
|
|
77
|
-
};
|
|
78
|
-
/**
|
|
79
|
-
* Enum used to set the change side event logic
|
|
80
|
-
*/
|
|
81
|
-
export var NgxTimelineEventChangeSideInGroup;
|
|
82
|
-
(function (NgxTimelineEventChangeSideInGroup) {
|
|
83
|
-
NgxTimelineEventChangeSideInGroup["ALL"] = "ALL";
|
|
84
|
-
NgxTimelineEventChangeSideInGroup["ON_DIFFERENT_HMS"] = "ON_DIFFERENT_HMS";
|
|
85
|
-
NgxTimelineEventChangeSideInGroup["ON_DIFFERENT_DAY"] = "ON_DIFFERENT_DAY";
|
|
86
|
-
NgxTimelineEventChangeSideInGroup["ON_DIFFERENT_MONTH"] = "ON_DIFFERENT_MONTH";
|
|
87
|
-
})(NgxTimelineEventChangeSideInGroup || (NgxTimelineEventChangeSideInGroup = {}));
|
|
88
|
-
export let fieldsToCheckEventChangeSideInGroup = {
|
|
89
|
-
ON_DIFFERENT_MONTH: ['getFullYear', 'getMonth'],
|
|
90
|
-
ON_DIFFERENT_DAY: ['getFullYear', 'getMonth', 'getDate'],
|
|
91
|
-
ON_DIFFERENT_HMS: ['getFullYear', 'getMonth', 'getDate', 'getHours', 'getMinutes', 'getSeconds']
|
|
92
|
-
};
|
|
93
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTmd4Q29uZmlnT2JqLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXRpbWVsaW5lL3NyYy9saWIvbW9kZWxzL05neENvbmZpZ09iai50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsSUFBSSxzQkFBc0IsR0FBRyxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztBQWVuRSxNQUFNLENBQUMsSUFBSSxhQUFhLEdBQWtCO0lBQ3hDLEVBQUUsRUFBRTtRQUNGLElBQUksRUFBRSxPQUFPO1FBQ2IsUUFBUSxFQUFFLG1CQUFtQjtRQUM3QixZQUFZLEVBQUUsY0FBYztRQUM1QixTQUFTLEVBQUUsV0FBVztRQUN0QixJQUFJLEVBQUUsTUFBTTtRQUNaLFlBQVksRUFBRSxTQUFTO0tBQ3hCO0lBQ0QsRUFBRSxFQUFFO1FBQ0YsSUFBSSxFQUFFLE9BQU87UUFDYixRQUFRLEVBQUUsaUJBQWlCO1FBQzNCLFlBQVksRUFBRSxjQUFjO1FBQzVCLFNBQVMsRUFBRSxXQUFXO1FBQ3RCLElBQUksRUFBRSxNQUFNO1FBQ1osWUFBWSxFQUFFLE9BQU87S0FDdEI7SUFDRCxFQUFFLEVBQUU7UUFDRixJQUFJLEVBQUUsT0FBTztRQUNiLFFBQVEsRUFBRSxpQkFBaUI7UUFDM0IsWUFBWSxFQUFFLGNBQWM7UUFDNUIsU0FBUyxFQUFFLFdBQVc7UUFDdEIsSUFBSSxFQUFFLE1BQU07UUFDWixZQUFZLEVBQUUsT0FBTztLQUN0QjtJQUNELEVBQUUsRUFBRTtRQUNGLElBQUksRUFBRSxJQUFJO1FBQ1YsUUFBUSxFQUFFLGlCQUFpQjtRQUMzQixZQUFZLEVBQUUsY0FBYztRQUM1QixTQUFTLEVBQUUsV0FBVztRQUN0QixJQUFJLEVBQUUsTUFBTTtRQUNaLFlBQVksRUFBRSxPQUFPO0tBQ3RCO0lBQ0QsRUFBRSxFQUFFO1FBQ0YsSUFBSSxFQUFFLElBQUk7UUFDVixRQUFRLEVBQUUsaUJBQWlCO1FBQzNCLFlBQVksRUFBRSxjQUFjO1FBQzVCLFNBQVMsRUFBRSxXQUFXO1FBQ3RCLElBQUksRUFBRSxNQUFNO1FBQ1osWUFBWSxFQUFFLE9BQU87S0FDdEI7Q0FDRixDQUFDO0FBRUYsTUFBTSxDQUFOLElBQVksYUFNWDtBQU5ELFdBQVksYUFBYTtJQUN2QixrREFBa0MsQ0FBQTtJQUNsQyx3Q0FBd0IsQ0FBQTtJQUN4QiwwQ0FBMEIsQ0FBQTtJQUMxQixnREFBK0IsQ0FBQTtJQUMvQiw4QkFBYyxDQUFBO0FBQ2hCLENBQUMsRUFOVyxhQUFhLEtBQWIsYUFBYSxRQU14QjtBQUVELE1BQU0sQ0FBQyxJQUFJLGVBQWUsR0FBRztJQUMzQixVQUFVLEVBQUUsV0FBVztJQUN2QixJQUFJLEVBQUUsTUFBTTtJQUNaLGFBQWEsRUFBRSxjQUFjO0lBQzdCLFNBQVMsRUFBRSxVQUFVO0lBQ3JCLGNBQWMsRUFBRSxjQUFjO0NBQy9CLENBQUE7QUFFRDs7R0FFRztBQUNILE1BQU0sQ0FBTixJQUFZLHFCQUlYO0FBSkQsV0FBWSxxQkFBcUI7SUFDL0Isc0NBQWEsQ0FBQTtJQUNiLGtEQUF5QixDQUFBO0lBQ3pCLDBEQUFpQyxDQUFBO0FBQ25DLENBQUMsRUFKVyxxQkFBcUIsS0FBckIscUJBQXFCLFFBSWhDO0FBRUQsTUFBTSxDQUFDLElBQUkscUJBQXFCLEdBQUc7SUFDakMsSUFBSSxFQUFFLENBQUMsYUFBYSxDQUFDO0lBQ3JCLFVBQVUsRUFBRSxDQUFDLGFBQWEsRUFBRSxVQUFVLENBQUM7SUFDdkMsY0FBYyxFQUFFLENBQUMsYUFBYSxFQUFFLFVBQVUsRUFBRSxTQUFTLENBQUM7Q0FDdkQsQ0FBQztBQUVGLE1BQU0sQ0FBQyxJQUFJLG1CQUFtQixHQUFHO0lBQy9CLElBQUksRUFBRSxhQUFhLENBQUMsSUFBSTtJQUN4QixVQUFVLEVBQUUsYUFBYSxDQUFDLFVBQVU7SUFDcEMsY0FBYyxFQUFFLGFBQWEsQ0FBQyxjQUFjO0NBQzdDLENBQUM7QUFFRjs7R0FFRztBQUNILE1BQU0sQ0FBTixJQUFZLGlDQUtYO0FBTEQsV0FBWSxpQ0FBaUM7SUFDM0MsZ0RBQVcsQ0FBQTtJQUNYLDBFQUFxQyxDQUFBO0lBQ3JDLDBFQUFxQyxDQUFBO0lBQ3JDLDhFQUF5QyxDQUFBO0FBQzNDLENBQUMsRUFMVyxpQ0FBaUMsS0FBakMsaUNBQWlDLFFBSzVDO0FBRUQsTUFBTSxDQUFDLElBQUksbUNBQW1DLEdBQUc7SUFDL0Msa0JBQWtCLEVBQUUsQ0FBQyxhQUFhLEVBQUUsVUFBVSxDQUFDO0lBQy9DLGdCQUFnQixFQUFFLENBQUMsYUFBYSxFQUFFLFVBQVUsRUFBRSxTQUFTLENBQUM7SUFDeEQsZ0JBQWdCLEVBQUUsQ0FBQyxhQUFhLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLFlBQVksQ0FBQztDQUNqRyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGxldCBzdXBwb3J0ZWRMYW5ndWFnZUNvZGVzID0gWydlbicsICdpdCcsICdmcicsICdkZScsICdlcyddO1xuXG5leHBvcnQgaW50ZXJmYWNlIE5neENvbmZpZ0RhdGUge1xuICBjb2RlOiBzdHJpbmc7XG4gIGRheU1vbnRoWWVhcjogc3RyaW5nO1xuICBmdWxsRGF0ZTogc3RyaW5nO1xuICBob3Vyc01pbnV0ZXM6IHN0cmluZztcbiAgbW9udGhZZWFyOiBzdHJpbmc7XG4gIHllYXI6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBOZ3hEYXRlT2JqTWFwIHtcbiAgW2tleTogc3RyaW5nXTogTmd4Q29uZmlnRGF0ZTtcbn1cblxuZXhwb3J0IGxldCBkYXRlQ29uZmlnTWFwOiBOZ3hEYXRlT2JqTWFwID0ge1xuICBlbjoge1xuICAgIGNvZGU6ICdlbi1VUycsXG4gICAgZnVsbERhdGU6ICdNTS9kZC95eXl5IGg6bW0gYScsXG4gICAgZGF5TW9udGhZZWFyOiAnZGQgTU1NTSB5eXl5JyxcbiAgICBtb250aFllYXI6ICdNTU1NIHl5eXknLFxuICAgIHllYXI6ICd5eXl5JyxcbiAgICBob3Vyc01pbnV0ZXM6ICdoaDptbSBhJ1xuICB9LFxuICBpdDoge1xuICAgIGNvZGU6ICdpdC1JVCcsXG4gICAgZnVsbERhdGU6ICdkZC9NTS95eXl5IEg6bW0nLFxuICAgIGRheU1vbnRoWWVhcjogJ2RkIE1NTU0geXl5eScsXG4gICAgbW9udGhZZWFyOiAnTU1NTSB5eXl5JyxcbiAgICB5ZWFyOiAneXl5eScsXG4gICAgaG91cnNNaW51dGVzOiAnSEg6bW0nXG4gIH0sXG4gIGZyOiB7XG4gICAgY29kZTogJ2ZyLUZSJyxcbiAgICBmdWxsRGF0ZTogJ2RkL01NL3l5eXkgSDptbScsXG4gICAgZGF5TW9udGhZZWFyOiAnZGQgTU1NTSB5eXl5JyxcbiAgICBtb250aFllYXI6ICdNTU1NIHl5eXknLFxuICAgIHllYXI6ICd5eXl5JyxcbiAgICBob3Vyc01pbnV0ZXM6ICdISDptbSdcbiAgfSxcbiAgZGU6IHtcbiAgICBjb2RlOiAnZGUnLFxuICAgIGZ1bGxEYXRlOiAnZGQvTU0veXl5eSBIOm1tJyxcbiAgICBkYXlNb250aFllYXI6ICdkZCBNTU1NIHl5eXknLFxuICAgIG1vbnRoWWVhcjogJ01NTU0geXl5eScsXG4gICAgeWVhcjogJ3l5eXknLFxuICAgIGhvdXJzTWludXRlczogJ0hIOm1tJ1xuICB9LFxuICBlczoge1xuICAgIGNvZGU6ICdlcycsXG4gICAgZnVsbERhdGU6ICdkZC9NTS95eXl5IEg6bW0nLFxuICAgIGRheU1vbnRoWWVhcjogJ2RkIE1NTU0geXl5eScsXG4gICAgbW9udGhZZWFyOiAnTU1NTSB5eXl5JyxcbiAgICB5ZWFyOiAneXl5eScsXG4gICAgaG91cnNNaW51dGVzOiAnSEg6bW0nXG4gIH1cbn07XG5cbmV4cG9ydCBlbnVtIE5neERhdGVGb3JtYXQge1xuICBEQVlfTU9OVEhfWUVBUiAgPSAnREFZX01PTlRIX1lFQVInLFxuICBGVUxMX0RBVEUgID0gJ0ZVTExfREFURScsXG4gIE1PTlRIX1lFQVIgID0gJ01PTlRIX1lFQVInLFxuICBIT1VSU19NSU5VVEVTID0gJ0hPVVJTX01JTlVURVMnLFxuICBZRUFSICA9ICdZRUFSJ1xufVxuXG5leHBvcnQgbGV0IGZpZWxkQ29uZmlnRGF0ZSA9IHtcbiAgTU9OVEhfWUVBUjogJ21vbnRoWWVhcicsXG4gIFlFQVI6ICd5ZWFyJyxcbiAgSE9VUlNfTUlOVVRFUzogJ2hvdXJzTWludXRlcycsXG4gIEZVTExfREFURTogJ2Z1bGxEYXRlJyxcbiAgREFZX01PTlRIX1lFQVI6ICdkYXlNb250aFllYXInXG59XG5cbi8qKlxuICogRW51bSB1c2VkIHRvIHNldCB0aGUgZ3JvdXAgZXZlbnQgbG9naWNcbiAqL1xuZXhwb3J0IGVudW0gTmd4VGltZWxpbmVFdmVudEdyb3VwIHtcbiAgWUVBUiA9ICdZRUFSJyxcbiAgTU9OVEhfWUVBUiA9ICdNT05USF9ZRUFSJyxcbiAgREFZX01PTlRIX1lFQVIgPSAnREFZX01PTlRIX1lFQVInXG59XG5cbmV4cG9ydCBsZXQgZmllbGRzVG9BZGRFdmVudEdyb3VwID0ge1xuICBZRUFSOiBbJ2dldEZ1bGxZZWFyJ10sXG4gIE1PTlRIX1lFQVI6IFsnZ2V0RnVsbFllYXInLCAnZ2V0TW9udGgnXSxcbiAgREFZX01PTlRIX1lFQVI6IFsnZ2V0RnVsbFllYXInLCAnZ2V0TW9udGgnLCAnZ2V0RGF0ZSddXG59O1xuXG5leHBvcnQgbGV0IHBlcmlvZEtleURhdGVGb3JtYXQgPSB7XG4gIFlFQVI6IE5neERhdGVGb3JtYXQuWUVBUixcbiAgTU9OVEhfWUVBUjogTmd4RGF0ZUZvcm1hdC5NT05USF9ZRUFSLFxuICBEQVlfTU9OVEhfWUVBUjogTmd4RGF0ZUZvcm1hdC5EQVlfTU9OVEhfWUVBUixcbn07XG5cbi8qKlxuICogRW51bSB1c2VkIHRvIHNldCB0aGUgY2hhbmdlIHNpZGUgZXZlbnQgbG9naWNcbiAqL1xuZXhwb3J0IGVudW0gTmd4VGltZWxpbmVFdmVudENoYW5nZVNpZGVJbkdyb3VwIHtcbiAgQUxMID0gJ0FMTCcsXG4gIE9OX0RJRkZFUkVOVF9ITVMgPSAnT05fRElGRkVSRU5UX0hNUycsXG4gIE9OX0RJRkZFUkVOVF9EQVkgPSAnT05fRElGRkVSRU5UX0RBWScsXG4gIE9OX0RJRkZFUkVOVF9NT05USCA9ICdPTl9ESUZGRVJFTlRfTU9OVEgnXG59XG5cbmV4cG9ydCBsZXQgZmllbGRzVG9DaGVja0V2ZW50Q2hhbmdlU2lkZUluR3JvdXAgPSB7XG4gIE9OX0RJRkZFUkVOVF9NT05USDogWydnZXRGdWxsWWVhcicsICdnZXRNb250aCddLFxuICBPTl9ESUZGRVJFTlRfREFZOiBbJ2dldEZ1bGxZZWFyJywgJ2dldE1vbnRoJywgJ2dldERhdGUnXSxcbiAgT05fRElGRkVSRU5UX0hNUzogWydnZXRGdWxsWWVhcicsICdnZXRNb250aCcsICdnZXREYXRlJywgJ2dldEhvdXJzJywgJ2dldE1pbnV0ZXMnLCAnZ2V0U2Vjb25kcyddXG59O1xuIl19
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
export var NgxTimelineItemPosition;
|
|
2
|
-
(function (NgxTimelineItemPosition) {
|
|
3
|
-
NgxTimelineItemPosition["ON_LEFT"] = "ON_LEFT";
|
|
4
|
-
NgxTimelineItemPosition["ON_RIGHT"] = "ON_RIGHT";
|
|
5
|
-
})(NgxTimelineItemPosition || (NgxTimelineItemPosition = {}));
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTmd4VGltZWxpbmVFdmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC10aW1lbGluZS9zcmMvbGliL21vZGVscy9OZ3hUaW1lbGluZUV2ZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTRCQSxNQUFNLENBQU4sSUFBWSx1QkFHWDtBQUhELFdBQVksdUJBQXVCO0lBQ2pDLDhDQUFtQixDQUFBO0lBQ25CLGdEQUFxQixDQUFBO0FBQ3ZCLENBQUMsRUFIVyx1QkFBdUIsS0FBdkIsdUJBQXVCLFFBR2xDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIEV2ZW50IHRvIGJlIHByb3ZpZGVkIGZyb20gb3V0c2lkZSB0aGUgdGltZWxpbmVcclxuICovXHJcbmV4cG9ydCBpbnRlcmZhY2UgTmd4VGltZWxpbmVFdmVudCB7XHJcbiAgdGltZXN0YW1wPzogRGF0ZTtcclxuICB0aXRsZT86IHN0cmluZztcclxuICBkZXNjcmlwdGlvbj86IHN0cmluZztcclxuICBpZD86IGFueTtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBOZ3hUaW1lbGluZVBlcmlvZEluZm8ge1xyXG4gIHBlcmlvZEtleT86IHN0cmluZztcclxuICB5ZWFyPzogbnVtYmVyO1xyXG4gIG1vbnRoPzogbnVtYmVyO1xyXG4gIGRheT86IG51bWJlcjtcclxuICBmaXJzdERhdGU/OiBhbnk7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBJdGVtIHVzZWQgaW5zaWRlIHRoZSB0aW1lbGluZVxyXG4gKi9cclxuZXhwb3J0IGludGVyZmFjZSBOZ3hUaW1lbGluZUl0ZW0ge1xyXG4gIHR5cGU/OiBzdHJpbmc7XHJcbiAgcG9zaXRpb24/OiBOZ3hUaW1lbGluZUl0ZW1Qb3NpdGlvbi5PTl9MRUZUIHwgTmd4VGltZWxpbmVJdGVtUG9zaXRpb24uT05fUklHSFQ7XHJcbiAgcGVyaW9kSW5mbz86IE5neFRpbWVsaW5lUGVyaW9kSW5mbztcclxuICBldmVudEluZm8/OiBOZ3hUaW1lbGluZUV2ZW50O1xyXG59XHJcblxyXG5leHBvcnQgZW51bSBOZ3hUaW1lbGluZUl0ZW1Qb3NpdGlvbiB7XHJcbiAgT05fTEVGVCA9ICdPTl9MRUZUJyxcclxuICBPTl9SSUdIVCA9ICdPTl9SSUdIVCdcclxufVxyXG4iXX0=
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { NgxTimelineComponent } from './components/ngx-timeline.component';
|
|
3
|
-
import { NgxTimelineEventComponent } from './components/ngx-timeline-event/ngx-timeline-event.component';
|
|
4
|
-
import { CommonModule, registerLocaleData } from '@angular/common';
|
|
5
|
-
import { NgxDatePipe } from './pipes/ngx-date-pipe';
|
|
6
|
-
import localeIt from '@angular/common/locales/it';
|
|
7
|
-
import localeFr from '@angular/common/locales/fr';
|
|
8
|
-
import localeDe from '@angular/common/locales/de';
|
|
9
|
-
import localeEs from '@angular/common/locales/es';
|
|
10
|
-
registerLocaleData(localeIt);
|
|
11
|
-
registerLocaleData(localeFr);
|
|
12
|
-
registerLocaleData(localeDe);
|
|
13
|
-
registerLocaleData(localeEs);
|
|
14
|
-
export class NgxTimelineModule {
|
|
15
|
-
}
|
|
16
|
-
NgxTimelineModule.decorators = [
|
|
17
|
-
{ type: NgModule, args: [{
|
|
18
|
-
declarations: [NgxTimelineComponent, NgxTimelineEventComponent, NgxDatePipe],
|
|
19
|
-
imports: [CommonModule],
|
|
20
|
-
exports: [NgxTimelineComponent, NgxDatePipe]
|
|
21
|
-
},] }
|
|
22
|
-
];
|
|
23
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LXRpbWVsaW5lLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25neC10aW1lbGluZS9zcmMvbGliL25neC10aW1lbGluZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUMzRSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSw4REFBOEQsQ0FBQztBQUN6RyxPQUFPLEVBQUUsWUFBWSxFQUFFLGtCQUFrQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbkUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3BELE9BQU8sUUFBUSxNQUFNLDRCQUE0QixDQUFDO0FBQ2xELE9BQU8sUUFBUSxNQUFNLDRCQUE0QixDQUFDO0FBQ2xELE9BQU8sUUFBUSxNQUFNLDRCQUE0QixDQUFDO0FBQ2xELE9BQU8sUUFBUSxNQUFNLDRCQUE0QixDQUFDO0FBRWxELGtCQUFrQixDQUFDLFFBQVEsQ0FBQyxDQUFDO0FBQzdCLGtCQUFrQixDQUFDLFFBQVEsQ0FBQyxDQUFDO0FBQzdCLGtCQUFrQixDQUFDLFFBQVEsQ0FBQyxDQUFDO0FBQzdCLGtCQUFrQixDQUFDLFFBQVEsQ0FBQyxDQUFDO0FBTzdCLE1BQU0sT0FBTyxpQkFBaUI7OztZQUw3QixRQUFRLFNBQUM7Z0JBQ1IsWUFBWSxFQUFFLENBQUMsb0JBQW9CLEVBQUUseUJBQXlCLEVBQUUsV0FBVyxDQUFDO2dCQUM1RSxPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUM7Z0JBQ3ZCLE9BQU8sRUFBRSxDQUFDLG9CQUFvQixFQUFFLFdBQVcsQ0FBQzthQUM3QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZ3hUaW1lbGluZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9uZ3gtdGltZWxpbmUuY29tcG9uZW50JztcbmltcG9ydCB7IE5neFRpbWVsaW5lRXZlbnRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbmd4LXRpbWVsaW5lLWV2ZW50L25neC10aW1lbGluZS1ldmVudC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlLCByZWdpc3RlckxvY2FsZURhdGEgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTmd4RGF0ZVBpcGUgfSBmcm9tICcuL3BpcGVzL25neC1kYXRlLXBpcGUnO1xuaW1wb3J0IGxvY2FsZUl0IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL2l0JztcbmltcG9ydCBsb2NhbGVGciBmcm9tICdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9mcic7XG5pbXBvcnQgbG9jYWxlRGUgZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvZGUnO1xuaW1wb3J0IGxvY2FsZUVzIGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL2VzJztcblxucmVnaXN0ZXJMb2NhbGVEYXRhKGxvY2FsZUl0KTtcbnJlZ2lzdGVyTG9jYWxlRGF0YShsb2NhbGVGcik7XG5yZWdpc3RlckxvY2FsZURhdGEobG9jYWxlRGUpO1xucmVnaXN0ZXJMb2NhbGVEYXRhKGxvY2FsZUVzKTtcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbTmd4VGltZWxpbmVDb21wb25lbnQsIE5neFRpbWVsaW5lRXZlbnRDb21wb25lbnQsIE5neERhdGVQaXBlXSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXG4gIGV4cG9ydHM6IFtOZ3hUaW1lbGluZUNvbXBvbmVudCwgTmd4RGF0ZVBpcGVdXG59KVxuZXhwb3J0IGNsYXNzIE5neFRpbWVsaW5lTW9kdWxlIHsgfVxuIl19
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { DatePipe } from '@angular/common';
|
|
2
|
-
import { Pipe } from '@angular/core';
|
|
3
|
-
import { supportedLanguageCodes, fieldConfigDate, dateConfigMap } from '../models';
|
|
4
|
-
export class NgxDatePipe {
|
|
5
|
-
constructor() {
|
|
6
|
-
}
|
|
7
|
-
transform(date, dateFormat, langCode) {
|
|
8
|
-
let transformedDate = null;
|
|
9
|
-
if (date) {
|
|
10
|
-
const objDate = this.getDateConfig(langCode);
|
|
11
|
-
transformedDate = new DatePipe(objDate.code).transform(new Date(date), this.dateFormat(dateFormat, objDate));
|
|
12
|
-
}
|
|
13
|
-
return transformedDate;
|
|
14
|
-
}
|
|
15
|
-
dateFormat(dateFormat, configDate) {
|
|
16
|
-
return configDate[fieldConfigDate[dateFormat]];
|
|
17
|
-
}
|
|
18
|
-
getDateConfig(langCode) {
|
|
19
|
-
const code = langCode || supportedLanguageCodes[0];
|
|
20
|
-
const configDate = dateConfigMap[code] || dateConfigMap[supportedLanguageCodes[0]];
|
|
21
|
-
return configDate;
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
NgxDatePipe.decorators = [
|
|
25
|
-
{ type: Pipe, args: [{ name: 'ngxdate', pure: false },] }
|
|
26
|
-
];
|
|
27
|
-
NgxDatePipe.ctorParameters = () => [];
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWRhdGUtcGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC10aW1lbGluZS9zcmMvbGliL3BpcGVzL25neC1kYXRlLXBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBQ3BELE9BQU8sRUFBK0Msc0JBQXNCLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUdoSSxNQUFNLE9BQU8sV0FBVztJQUV0QjtJQUNBLENBQUM7SUFFRCxTQUFTLENBQUMsSUFBbUIsRUFBRSxVQUFtQixFQUFFLFFBQWlCO1FBQ25FLElBQUksZUFBZSxHQUFHLElBQUksQ0FBQztRQUMzQixJQUFJLElBQUksRUFBRTtZQUNSLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDN0MsZUFBZSxHQUFHLElBQUksUUFBUSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxTQUFTLENBQUMsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxVQUFVLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQztTQUM5RztRQUNELE9BQU8sZUFBZSxDQUFDO0lBQ3pCLENBQUM7SUFFTyxVQUFVLENBQUMsVUFBa0IsRUFBRSxVQUF5QjtRQUM5RCxPQUFPLFVBQVUsQ0FBQyxlQUFlLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztJQUNqRCxDQUFDO0lBRU8sYUFBYSxDQUFDLFFBQWdCO1FBQ3BDLE1BQU0sSUFBSSxHQUFHLFFBQVEsSUFBSSxzQkFBc0IsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNuRCxNQUFNLFVBQVUsR0FBRyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksYUFBYSxDQUFDLHNCQUFzQixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDbkYsT0FBTyxVQUFVLENBQUM7SUFDcEIsQ0FBQzs7O1lBdkJGLElBQUksU0FBQyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERhdGVQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBOZ3hDb25maWdEYXRlLCBOZ3hEYXRlT2JqTWFwLCBOZ3hEYXRlRm9ybWF0LCBzdXBwb3J0ZWRMYW5ndWFnZUNvZGVzLCBmaWVsZENvbmZpZ0RhdGUsIGRhdGVDb25maWdNYXAgfSBmcm9tICcuLi9tb2RlbHMnO1xyXG5cclxuQFBpcGUoeyBuYW1lOiAnbmd4ZGF0ZScsIHB1cmU6IGZhbHNlIH0pXHJcbmV4cG9ydCBjbGFzcyBOZ3hEYXRlUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICB9XHJcblxyXG4gIHRyYW5zZm9ybShkYXRlOiBEYXRlIHwgc3RyaW5nLCBkYXRlRm9ybWF0Pzogc3RyaW5nLCBsYW5nQ29kZT86IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICBsZXQgdHJhbnNmb3JtZWREYXRlID0gbnVsbDtcclxuICAgIGlmIChkYXRlKSB7XHJcbiAgICAgIGNvbnN0IG9iakRhdGUgPSB0aGlzLmdldERhdGVDb25maWcobGFuZ0NvZGUpO1xyXG4gICAgICB0cmFuc2Zvcm1lZERhdGUgPSBuZXcgRGF0ZVBpcGUob2JqRGF0ZS5jb2RlKS50cmFuc2Zvcm0obmV3IERhdGUoZGF0ZSksIHRoaXMuZGF0ZUZvcm1hdChkYXRlRm9ybWF0LCBvYmpEYXRlKSk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdHJhbnNmb3JtZWREYXRlO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBkYXRlRm9ybWF0KGRhdGVGb3JtYXQ6IHN0cmluZywgY29uZmlnRGF0ZTogTmd4Q29uZmlnRGF0ZSk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gY29uZmlnRGF0ZVtmaWVsZENvbmZpZ0RhdGVbZGF0ZUZvcm1hdF1dO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBnZXREYXRlQ29uZmlnKGxhbmdDb2RlOiBzdHJpbmcpOiBOZ3hDb25maWdEYXRlIHtcclxuICAgIGNvbnN0IGNvZGUgPSBsYW5nQ29kZSB8fCBzdXBwb3J0ZWRMYW5ndWFnZUNvZGVzWzBdO1xyXG4gICAgY29uc3QgY29uZmlnRGF0ZSA9IGRhdGVDb25maWdNYXBbY29kZV0gfHwgZGF0ZUNvbmZpZ01hcFtzdXBwb3J0ZWRMYW5ndWFnZUNvZGVzWzBdXTtcclxuICAgIHJldHVybiBjb25maWdEYXRlO1xyXG4gIH1cclxufVxyXG4iXX0=
|