@openremote/or-scheduler 1.12.0-snapshot.20251212165311
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 +31 -0
- package/custom-elements-jsx.d.ts +185 -0
- package/custom-elements.json +632 -0
- package/dist/umd/index.bundle.js +689 -0
- package/dist/umd/index.bundle.js.map +1 -0
- package/dist/umd/index.js +689 -0
- package/dist/umd/index.js.map +1 -0
- package/dist/umd/index.orbundle.js +747 -0
- package/dist/umd/index.orbundle.js.map +1 -0
- package/lib/index.d.ts +125 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +131 -0
- package/lib/index.js.map +1 -0
- package/lib/types.d.ts +33 -0
- package/lib/types.d.ts.map +1 -0
- package/lib/types.js +1 -0
- package/lib/types.js.map +1 -0
- package/lib/util.d.ts +37 -0
- package/lib/util.d.ts.map +1 -0
- package/lib/util.js +1 -0
- package/lib/util.js.map +1 -0
- package/package.json +32 -0
- package/playwright.config.ts +3 -0
package/lib/index.d.ts
ADDED
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
import { LitElement, PropertyValues, TemplateResult } from "lit";
|
|
2
|
+
import { CalendarEvent } from "@openremote/model";
|
|
3
|
+
import { InputType } from "@openremote/or-mwc-components/or-mwc-input";
|
|
4
|
+
import { OrMwcDialog } from "@openremote/or-mwc-components/or-mwc-dialog";
|
|
5
|
+
import { RRule } from "rrule";
|
|
6
|
+
import { EventTypes, rruleEnds } from "./util";
|
|
7
|
+
import type { RulePartKey, RuleParts, LabeledEventTypes, Frequency } from "./types";
|
|
8
|
+
export { RuleParts, RulePartKey, Frequency, LabeledEventTypes };
|
|
9
|
+
export * from "./util";
|
|
10
|
+
export interface OrSchedulerChangedEventDetail {
|
|
11
|
+
value?: CalendarEvent;
|
|
12
|
+
}
|
|
13
|
+
export declare class OrSchedulerChangedEvent extends CustomEvent<OrSchedulerChangedEventDetail> {
|
|
14
|
+
static readonly NAME = "or-scheduler-changed";
|
|
15
|
+
constructor(value?: CalendarEvent);
|
|
16
|
+
}
|
|
17
|
+
declare global {
|
|
18
|
+
export interface HTMLElementEventMap {
|
|
19
|
+
[OrSchedulerChangedEvent.NAME]: OrSchedulerChangedEvent;
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
declare const OrScheduler_base: (new (...args: any[]) => {
|
|
23
|
+
_i18nextJustInitialized: boolean;
|
|
24
|
+
_language: string;
|
|
25
|
+
connectedCallback(): void;
|
|
26
|
+
disconnectedCallback(): void;
|
|
27
|
+
shouldUpdate(changedProps: PropertyValues): any;
|
|
28
|
+
initCallback: (options: import("i18next").InitOptions) => void;
|
|
29
|
+
langChangedCallback: () => void;
|
|
30
|
+
readonly isConnected: boolean;
|
|
31
|
+
}) & typeof LitElement;
|
|
32
|
+
export declare class OrScheduler extends OrScheduler_base {
|
|
33
|
+
defaultSchedule?: CalendarEvent;
|
|
34
|
+
defaultEventTypeLabel: string;
|
|
35
|
+
disabledFrequencies: Frequency[];
|
|
36
|
+
disabledRRuleParts: RulePartKey[];
|
|
37
|
+
header: string;
|
|
38
|
+
isAllDay: boolean;
|
|
39
|
+
schedule?: CalendarEvent;
|
|
40
|
+
timezoneOffset: number;
|
|
41
|
+
protected _ends: keyof typeof rruleEnds;
|
|
42
|
+
protected _normalizedSchedule: CalendarEvent | undefined;
|
|
43
|
+
protected _rrule?: RRule;
|
|
44
|
+
protected dialog?: OrMwcDialog;
|
|
45
|
+
protected _byRRuleParts?: RulePartKey[];
|
|
46
|
+
protected _count: number;
|
|
47
|
+
protected _dialog?: OrMwcDialog;
|
|
48
|
+
protected _eventType: EventTypes;
|
|
49
|
+
protected _eventTypes: LabeledEventTypes;
|
|
50
|
+
protected _until: Date;
|
|
51
|
+
protected firstUpdated(_changedProps: PropertyValues): void;
|
|
52
|
+
protected willUpdate(changedProps: PropertyValues): void;
|
|
53
|
+
protected updated(changedProps: PropertyValues): void;
|
|
54
|
+
/**
|
|
55
|
+
* Converts the recurrence rule to string and normalizes it.
|
|
56
|
+
*
|
|
57
|
+
* The UTC timezone offset 'Z' for the UNTIL rule part is removed,
|
|
58
|
+
* because the backend uses a `LocalDateTime` object to compare.
|
|
59
|
+
* @param rrule The recurrence rule to normalize.
|
|
60
|
+
* @returns String representation of the defined Recurrence Rule
|
|
61
|
+
*/
|
|
62
|
+
protected getRRule(rrule?: RRule | undefined): string | undefined;
|
|
63
|
+
protected setRRuleValue(value: any, key: keyof RuleParts | "start" | "end" | "start-time" | "end-time" | "all-day" | "recurrence-ends"): void;
|
|
64
|
+
protected timeLabel(): string | undefined;
|
|
65
|
+
protected setCalendarEventType(value: any): void;
|
|
66
|
+
/**
|
|
67
|
+
* Apply the timezone offset to the calendarEvent
|
|
68
|
+
* @param schedule The schedule for which to add/substract the offset
|
|
69
|
+
* @param substract Whether to substract the offset
|
|
70
|
+
* @returns The transformed calendar event
|
|
71
|
+
*/
|
|
72
|
+
protected applyTimezoneOffset(schedule?: CalendarEvent, substract?: boolean): CalendarEvent | undefined;
|
|
73
|
+
protected render(): TemplateResult<1>;
|
|
74
|
+
protected showDialog(): void;
|
|
75
|
+
protected getDialogContent(): TemplateResult;
|
|
76
|
+
/**
|
|
77
|
+
* Check if this frequency is allowed
|
|
78
|
+
* @param freq The frequency to check
|
|
79
|
+
* @returns Whether the frequency is allowed
|
|
80
|
+
*/
|
|
81
|
+
protected isAllowedFrequency(freq: Frequency): boolean;
|
|
82
|
+
/**
|
|
83
|
+
* Displays the interval, frequency and BY_XXX RRule part fields
|
|
84
|
+
*
|
|
85
|
+
* Applicable rule parts
|
|
86
|
+
* - `interval`
|
|
87
|
+
* - `freq`
|
|
88
|
+
* - `bysecond`
|
|
89
|
+
* - `byminute`
|
|
90
|
+
* - `byhour`
|
|
91
|
+
* - `byweekday`
|
|
92
|
+
* - `bymonthday`
|
|
93
|
+
* - `byyearday`
|
|
94
|
+
* - `byweekno`
|
|
95
|
+
* - `bymonth`
|
|
96
|
+
*
|
|
97
|
+
* Evaluation order: BYMONTH, BYWEEKNO, BYYEARDAY, BYMONTHDAY, BYDAY, BYHOUR, BYMINUTE and BYSECOND.
|
|
98
|
+
*
|
|
99
|
+
* @returns Inputs for the applicable rule parts
|
|
100
|
+
*/
|
|
101
|
+
protected getRepeatTemplate(): TemplateResult;
|
|
102
|
+
/**
|
|
103
|
+
* Displays the BY_XXX RRule part fields if allowed by the frequency
|
|
104
|
+
*
|
|
105
|
+
* @returns The specified BY_XXX RRule part field or undefined if not applicable
|
|
106
|
+
*/
|
|
107
|
+
protected getByRulePart<T>(part: RulePartKey, type: InputType, options: T[]): TemplateResult | undefined;
|
|
108
|
+
/**
|
|
109
|
+
* Displays the fields that define when and how long the particular event is
|
|
110
|
+
*
|
|
111
|
+
* @param calendar The specified calendar event
|
|
112
|
+
* @returns The periods allDay and from/to date and time fields
|
|
113
|
+
*/
|
|
114
|
+
protected getPeriodTemplate(calendar: CalendarEvent): TemplateResult;
|
|
115
|
+
/**
|
|
116
|
+
* Displays the fields that define how a recurring event should end
|
|
117
|
+
*
|
|
118
|
+
* Applicable rule parts
|
|
119
|
+
* - `until`
|
|
120
|
+
* - `count`
|
|
121
|
+
* @returns The recurrence ends fields
|
|
122
|
+
*/
|
|
123
|
+
protected getEndsTemplate(): TemplateResult;
|
|
124
|
+
}
|
|
125
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/lib/index.js
ADDED
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
var __decorate=this&&this.__decorate||function(e,t,i,l){var r,n=arguments.length,s=n<3?t:null===l?l=Object.getOwnPropertyDescriptor(t,i):l;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,i,l);else for(var a=e.length-1;a>=0;a--)(r=e[a])&&(s=(n<3?r(s):n>3?r(t,i,s):r(t,i))||s);return n>3&&s&&Object.defineProperty(t,i,s),s};import{html as e,LitElement as t}from"lit";import{customElement as i,property as l,query as r,state as n}from"lit/decorators.js";import{InputType as s}from"@openremote/or-mwc-components/or-mwc-input";import{translate as a,i18next as o}from"@openremote/or-translate";import{OrMwcDialog as d,showDialog as u}from"@openremote/or-mwc-components/or-mwc-dialog";import{Frequency as c,RRule as h}from"rrule";import p from"moment";import{Days as m}from"rrule/dist/esm/rrule";import{BY_RRULE_PARTS as y,EventTypes as v,FREQUENCIES as _,MONTHS as f,NOT_APPLICABLE_BY_RRULE_PARTS as g,rruleEnds as S}from"./util";import{when as b}from"lit/directives/when.js";export*from"./util";function range(e,t){return Array.from({length:t-e+1},(t,i)=>e+i)}function toSpliced(e,t,i){let l=[...e];return l.splice(t,i),l}let byWeekNoOptions=toSpliced(range(-53,53),53,1),byYearDayOptions=toSpliced(range(-366,366),366,1),byMonthDayOptions=toSpliced(range(-31,31),31,1),byHourOptions=range(1,24),byMinuteOrSecondsOptions=range(1,60);export class OrSchedulerChangedEvent extends CustomEvent{constructor(e){super(OrSchedulerChangedEvent.NAME,{detail:{value:e},bubbles:!0,composed:!0})}}OrSchedulerChangedEvent.NAME="or-scheduler-changed";let OrScheduler=class extends a(o)(t){constructor(){super(...arguments),this.defaultEventTypeLabel="default",this.disabledFrequencies=[],this.disabledRRuleParts=[],this.header="scheduleActivity",this.isAllDay=!0,this.schedule=this.defaultSchedule,this.timezoneOffset=0,this._ends="never",this._normalizedSchedule=this.applyTimezoneOffset(this.schedule),this._count=1,this._eventType=v.default,this._eventTypes=v,this._until=p().toDate()}firstUpdated(e){var t,i,l;if(this._eventTypes={default:o.t(this.defaultEventTypeLabel),period:o.t("planPeriod"),recurrence:o.t("planRecurrence")},(null==(t=this._normalizedSchedule)?void 0:t.start)&&(null==(i=this._normalizedSchedule)?void 0:i.end)&&(this._normalizedSchedule.recurrence?this._eventType=v.recurrence:this._eventType=v.period,this.isAllDay=this._normalizedSchedule&&p(this._normalizedSchedule.start).isSame(p(this._normalizedSchedule.start).clone().startOf("day"))&&p(this._normalizedSchedule.end).isSame(p(this._normalizedSchedule.end).clone().endOf("day"))),null==(l=this._normalizedSchedule)?void 0:l.recurrence){let e=h.fromString(this._normalizedSchedule.recurrence).origOptions;e.until?this._until=p(e.until).toDate():e.count&&(this._count=e.count)}}willUpdate(e){e.has("schedule")&&(this._normalizedSchedule=this.applyTimezoneOffset(this.schedule))}updated(e){var t,i,l,r,n,s;super.updated(e),e.has("_rrule")&&this._rrule&&(this._byRRuleParts=y.filter(e=>{var t;return!(null==(t=g[c[this._rrule.options.freq]])?void 0:t.includes(e.toUpperCase()))}).filter(e=>!this.disabledRRuleParts.includes(e)),this._ends=(null==(i=null==(t=this._rrule)?void 0:t.origOptions)?void 0:i.until)&&"until"||(null==(r=null==(l=this._rrule)?void 0:l.origOptions)?void 0:r.count)&&"count"||"never"),e.has("_normalizedSchedule")&&((null==(n=this._normalizedSchedule)?void 0:n.recurrence)?this._rrule=h.fromString(this._normalizedSchedule.recurrence):this._eventType===v.default&&(null==(s=this.defaultSchedule)?void 0:s.recurrence)?this._rrule=h.fromString(this.defaultSchedule.recurrence):this._rrule=void 0)}getRRule(e=this._rrule){var t,i,l;return null==(l=null==(i=null==(t=null==e?void 0:e.toString())?void 0:t.split("RRULE:"))?void 0:i[1])?void 0:l.replace(/(UNTIL=\d+T\d+)Z/,"$1")}setRRuleValue(e,t){var i;let l=null==(i=this._rrule)?void 0:i.origOptions,r=this._normalizedSchedule;if("interval"===t||"freq"===t||t.startsWith("by"))"byweekday"===t?l.byweekday=e.map(e=>h[e]):l[t]=e,this._eventType===v.recurrence&&(this._rrule=new h(l));else if("start"===t&&l){let[t,i,n]=e.split("-").map(Number);l.dtstart=p(r.start).set({year:t,month:i-1,date:n}).toDate(),r.start=l.dtstart.getTime(),this._eventType===v.recurrence&&(this._rrule=new h(l))}else if("end"===t){let[t,i,l]=e.split("-").map(Number);r.end=p(r.end).set({year:t,month:i-1,date:l}).toDate().getTime()}else if("start-time"===t){let[t,i]=e.split(":");l?l.dtstart=p(r.start).set({hour:t,minute:i,second:0,millisecond:0}).toDate():l=new h({dtstart:p(r.start).set({hour:t,minute:i,second:0,millisecond:0}).toDate()}).origOptions,r.start=p(l.dtstart).toDate().getTime(),this._eventType===v.recurrence&&(this._rrule=new h(l))}else if("end-time"===t){let[t,i]=e.split(":");r.end=p(r.end).set({hour:t,minute:i,second:0,millisecond:0}).toDate().getTime()}else switch(t){case"all-day":this.isAllDay=e;break;case"recurrence-ends":"until"===e?(l.until=this._until,delete l.count):("count"===e?l.count=this._count:delete l.count,delete l.until),this._ends=e,this._eventType===v.recurrence&&(this._rrule=new h(l));break;case"until":this._until=new Date(e),l.until=this._until,this._eventType===v.recurrence&&(this._rrule=new h(l));break;case"count":this._count=e,l.count=this._count,this._eventType===v.recurrence&&(this._rrule=new h(l))}this._normalizedSchedule=Object.assign({},r),this._dialog.requestUpdate(),this._normalizedSchedule.recurrence=this.getRRule()}timeLabel(){if(this._eventType===v.default)return o.t(this.defaultEventTypeLabel);if(this._normalizedSchedule&&this._rrule){let e=this._normalizedSchedule,t=p(e.end).diff(e.start,"days"),i="";return this.isAllDay?(t>0&&(i=" "+o.t("forDays",{days:t})),this._rrule.toText()+i):(t>0&&(i=o.t("fromToDays",{start:p(e.start).format("HH:mm"),end:p(e.end).format("HH:mm"),days:t})),0===t&&(i=o.t("fromTo",{start:p(e.start).format("HH:mm"),end:p(e.end).format("HH:mm")})),this._rrule.toText()+" "+i)}if(this._normalizedSchedule){let e="DD-MM-YYYY";return this.isAllDay||(e="DD-MM-YYYY HH:mm"),o.t("activeFromTo",{start:p(this._normalizedSchedule.start).format(e),end:p(this._normalizedSchedule.end).format(e)})}}setCalendarEventType(e){var t,i,l,r,n,s,a,o,d,u;switch(e){case v.default:this._normalizedSchedule=this.defaultSchedule,this._rrule=h.fromString(null!=(i=null==(t=this.defaultSchedule)?void 0:t.recurrence)?i:"")||void 0;break;case v.period:this._normalizedSchedule={start:null!=(r=null==(l=this._normalizedSchedule)?void 0:l.start)?r:p().startOf("day").toDate().getTime(),end:null!=(s=null==(n=this._normalizedSchedule)?void 0:n.end)?s:p().startOf("day").endOf("day").toDate().getTime()},this._rrule=void 0;break;case v.recurrence:this._normalizedSchedule={start:null!=(o=null==(a=this._normalizedSchedule)?void 0:a.start)?o:p().startOf("day").toDate().getTime(),end:null!=(u=null==(d=this._normalizedSchedule)?void 0:d.end)?u:p().startOf("day").endOf("day").toDate().getTime(),recurrence:"FREQ=DAILY"}}this._eventType=e,this._dialog.requestUpdate()}applyTimezoneOffset(e,t=!1){if(e){let i=t?-this.timezoneOffset:this.timezoneOffset,{start:l,end:r,recurrence:n}=Object.assign({},e);if(l&&(l+=i),r&&(r+=i),n&&h.fromString(n).origOptions.until){let e=h.fromString(n).origOptions;e.until=new Date(Number(e.until)+i),n=this.getRRule(new h(e))}return{start:l,end:r,recurrence:n}}}render(){return e`
|
|
2
|
+
<or-mwc-input outlined .type="${s.BUTTON}" label="${this.timeLabel()}" @or-mwc-input-changed="${()=>this.showDialog()}"></or-mwc-input>
|
|
3
|
+
`}showDialog(){this._dialog=u(new d().setHeading(o.t(this.header)).setStyles(e`
|
|
4
|
+
<style>
|
|
5
|
+
#dialog-content {
|
|
6
|
+
max-height: 100vh;
|
|
7
|
+
overflow: auto;
|
|
8
|
+
background-color: #f5f5f5;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
.mdc-dialog .mdc-dialog__content {
|
|
12
|
+
padding: 8px 16px !important;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
@media only screen and (max-width: 1279px) {
|
|
16
|
+
.mdc-dialog__surface {
|
|
17
|
+
overflow-x: auto !important;
|
|
18
|
+
overflow-y: auto !important;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
#dialog-content {
|
|
22
|
+
min-height: 230px;
|
|
23
|
+
overflow: auto;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
.section {
|
|
28
|
+
background-color: white;
|
|
29
|
+
margin-top: 10px;
|
|
30
|
+
padding: 8px 16px;
|
|
31
|
+
border-radius: 4px;
|
|
32
|
+
}
|
|
33
|
+
.section > * {
|
|
34
|
+
margin: 8px 0;
|
|
35
|
+
}
|
|
36
|
+
.section:first-child {
|
|
37
|
+
margin-top: 0;
|
|
38
|
+
}
|
|
39
|
+
.section:last-child {
|
|
40
|
+
margin-bottom: 0;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
.title {
|
|
44
|
+
display: block;
|
|
45
|
+
font-weight: bold;
|
|
46
|
+
}
|
|
47
|
+
</style>`).setActions([{actionName:"cancel",content:e`<or-mwc-input class="button" .type="${s.BUTTON}" label="cancel"></or-mwc-input>`,action:()=>{this._dialog=void 0}},{actionName:"ok",default:!0,content:e`<or-mwc-input class="button" .type="${s.BUTTON}" label="apply"></or-mwc-input>`,action:()=>{var e;this._normalizedSchedule&&this.isAllDay&&(this._normalizedSchedule.start=p(this._normalizedSchedule.start).startOf("day").toDate().getTime(),this._normalizedSchedule.end=p(this._normalizedSchedule.end).startOf("day").endOf("day").toDate().getTime()),this._eventType===v.default?delete this._normalizedSchedule:this._eventType===v.recurrence&&(this._normalizedSchedule.recurrence=this.getRRule());let t=this.applyTimezoneOffset(null!=(e=this._normalizedSchedule)?e:this.defaultSchedule,!0);this.dispatchEvent(new OrSchedulerChangedEvent(t)),this._dialog=void 0}}]).setContent(()=>this.getDialogContent()).setDismissAction(null))}getDialogContent(){let t=this._normalizedSchedule;return e`
|
|
48
|
+
<div style="min-width: 635px; display:grid; flex-direction: row;">
|
|
49
|
+
<div id="event-type" class="section">
|
|
50
|
+
<label class="title"><or-translate value="schedule.type"></or-translate></label>
|
|
51
|
+
<div class="layout horizontal">
|
|
52
|
+
<or-mwc-input style="width: 100%"
|
|
53
|
+
.value="${this._eventType}"
|
|
54
|
+
.type="${s.SELECT}"
|
|
55
|
+
.options="${Object.entries(this._eventTypes)}"
|
|
56
|
+
@or-mwc-input-changed="${e=>this.setCalendarEventType(e.detail.value)}"></or-mwc-input>
|
|
57
|
+
</div>
|
|
58
|
+
</div>
|
|
59
|
+
${this._eventType===v.recurrence?this.getRepeatTemplate():""}
|
|
60
|
+
${t&&(this._eventType===v.period||this._eventType===v.recurrence)?this.getPeriodTemplate(t):""}
|
|
61
|
+
${this._eventType===v.recurrence?this.getEndsTemplate():""}
|
|
62
|
+
</div>`}isAllowedFrequency(e){return"SECONDLY"!==e&&!this.disabledFrequencies.includes(e)}getRepeatTemplate(){var t,i,l,r,n;let a=null!=(i=null==(t=this._rrule)?void 0:t.origOptions.interval)?i:1,d=null!=(r=null==(l=this._rrule)?void 0:l.origOptions.freq)?r:c.DAILY,u=Object.entries(_).map(([e,t])=>[String(c[e]),o.t(t,{count:a})]).filter(([e])=>this.isAllowedFrequency(c[e]));return e`
|
|
63
|
+
<div id="recurrence" class="section">
|
|
64
|
+
<label class="title"><or-translate value="schedule.repeat"></or-translate></label>
|
|
65
|
+
<div class="layout horizontal" style="display: flex; gap: 8px;">
|
|
66
|
+
${b(!(null==(n=this.disabledRRuleParts)?void 0:n.includes("interval")),()=>e`
|
|
67
|
+
<or-mwc-input style="width: 60px;" min="1" max="9" .value="${a}" .type="${s.NUMBER}"
|
|
68
|
+
@or-mwc-input-changed="${e=>this.setRRuleValue(e.detail.value,"interval")}"></or-mwc-input>
|
|
69
|
+
`)}
|
|
70
|
+
<or-mwc-input style="flex: 1;" .value="${d.toString()}" .type="${s.SELECT}" .options="${u}"
|
|
71
|
+
@or-mwc-input-changed="${e=>this.setRRuleValue(e.detail.value,"freq")}"></or-mwc-input>
|
|
72
|
+
</div>
|
|
73
|
+
<div>${this.getByRulePart("bymonth",s.CHECKBOX_LIST,Object.entries(f))}</div>
|
|
74
|
+
<div>
|
|
75
|
+
${this.getByRulePart("byweekno",s.SELECT,byWeekNoOptions)}
|
|
76
|
+
${this.getByRulePart("byyearday",s.SELECT,byYearDayOptions)}
|
|
77
|
+
${this.getByRulePart("bymonthday",s.SELECT,byMonthDayOptions)}
|
|
78
|
+
</div>
|
|
79
|
+
<div>${this.getByRulePart("byweekday",s.CHECKBOX_LIST,Object.keys(m))}</div>
|
|
80
|
+
<div>
|
|
81
|
+
${this.getByRulePart("byhour",s.SELECT,byHourOptions)}
|
|
82
|
+
${this.getByRulePart("byminute",s.SELECT,byMinuteOrSecondsOptions)}
|
|
83
|
+
${this.getByRulePart("bysecond",s.SELECT,byMinuteOrSecondsOptions)}
|
|
84
|
+
</div>
|
|
85
|
+
</div>`}getByRulePart(t,i,l){var r,n,s,a,o;if(!(null==(r=this._byRRuleParts)?void 0:r.includes(t)))return;let d="byweekday"===t?null==(a=null==(s=null==(n=this._rrule)?void 0:n.origOptions)?void 0:s.byweekday)?void 0:a.map(String):null==(o=this._rrule)?void 0:o.origOptions[t];return e`<or-mwc-input style="min-width: 30%"
|
|
86
|
+
.value="${null!=d?d:[]}"
|
|
87
|
+
.type="${i}"
|
|
88
|
+
.options="${l}"
|
|
89
|
+
.label="${t}"
|
|
90
|
+
multiple
|
|
91
|
+
@or-mwc-input-changed="${e=>{this.setRRuleValue(e.detail.value,t)}}"></or-mwc-input>`}getPeriodTemplate(t){return e`
|
|
92
|
+
<div id="period" class="section">
|
|
93
|
+
<label class="title"><or-translate value="period"></or-translate></label>
|
|
94
|
+
<div style="display: flex; gap: 8px;" class="layout horizontal">
|
|
95
|
+
<div>
|
|
96
|
+
<or-mwc-input value="${p(t.start).format("YYYY-MM-DD")}" .type="${s.DATE}" @or-mwc-input-changed="${e=>this.setRRuleValue(e.detail.value,"start")}" .label="${o.t("from")}"></or-mwc-input>
|
|
97
|
+
<or-mwc-input .disabled=${this.isAllDay} .value="${p(t.start).format("HH:mm")}" .type="${s.TIME}" @or-mwc-input-changed="${e=>this.setRRuleValue(e.detail.value,"start-time")}" .label="${o.t("from")}"></or-mwc-input>
|
|
98
|
+
</div>
|
|
99
|
+
<div>
|
|
100
|
+
<or-mwc-input .value="${p(t.end).format("YYYY-MM-DD")}" .type="${s.DATE}" @or-mwc-input-changed="${e=>this.setRRuleValue(e.detail.value,"end")}" .label="${o.t("to")}"></or-mwc-input>
|
|
101
|
+
<or-mwc-input .disabled=${this.isAllDay} .value="${p(t.end).format("HH:mm")}" .type="${s.TIME}" @or-mwc-input-changed="${e=>this.setRRuleValue(e.detail.value,"end-time")}" .label="${o.t("to")}"></or-mwc-input>
|
|
102
|
+
</div>
|
|
103
|
+
</div>
|
|
104
|
+
|
|
105
|
+
<div class="layout horizontal">
|
|
106
|
+
<or-mwc-input .value=${this.isAllDay} @or-mwc-input-changed="${e=>this.setRRuleValue(e.detail.value,"all-day")}" .type="${s.CHECKBOX}" .label="${o.t("allDay")}"></or-mwc-input>
|
|
107
|
+
</div>
|
|
108
|
+
</div>`}getEndsTemplate(){return e`
|
|
109
|
+
<div id="recurrence-ends" class="section">
|
|
110
|
+
<label class="title"><or-translate value="schedule._ends"></or-translate></label>
|
|
111
|
+
<div style="display: flex; gap: 8px;" class="layout horizontal">
|
|
112
|
+
<or-mwc-input style="padding-right: 10px" .type="${s.RADIO}"
|
|
113
|
+
.value="${this._ends}"
|
|
114
|
+
.options="${Object.entries(S).filter(([e])=>{var t;return!(null==(t=this.disabledRRuleParts)?void 0:t.includes(e))})}"
|
|
115
|
+
@or-mwc-input-changed="${e=>this.setRRuleValue(e.detail.value,"recurrence-ends")}">
|
|
116
|
+
</or-mwc-input>
|
|
117
|
+
<div style="display: flex; flex-direction: column-reverse; flex: 1">
|
|
118
|
+
${b(!this.disabledRRuleParts.includes("count"),()=>e`
|
|
119
|
+
<or-mwc-input ?disabled="${"count"!==this._ends}" min="1" .type="${s.NUMBER}"
|
|
120
|
+
.value="${this._count}"
|
|
121
|
+
.label="${o.t("schedule.count",{count:this._count})}"
|
|
122
|
+
@or-mwc-input-changed="${e=>this.setRRuleValue(e.detail.value,"count")}">
|
|
123
|
+
</or-mwc-input>`)}
|
|
124
|
+
${b(!this.disabledRRuleParts.includes("until"),()=>e`
|
|
125
|
+
<or-mwc-input ?disabled="${"until"!==this._ends}" .type="${s.DATETIME}"
|
|
126
|
+
.value="${p(this._until).format("YYYY-MM-DD HH:mm")}"
|
|
127
|
+
@or-mwc-input-changed="${e=>this.setRRuleValue(e.detail.value,"until")}">
|
|
128
|
+
</or-mwc-input>`)}
|
|
129
|
+
</div>
|
|
130
|
+
</div>
|
|
131
|
+
</div>`}};__decorate([l({type:Object})],OrScheduler.prototype,"defaultSchedule",void 0),__decorate([l({type:String})],OrScheduler.prototype,"defaultEventTypeLabel",void 0),__decorate([l({type:Array})],OrScheduler.prototype,"disabledFrequencies",void 0),__decorate([l({type:Array})],OrScheduler.prototype,"disabledRRuleParts",void 0),__decorate([l({type:String})],OrScheduler.prototype,"header",void 0),__decorate([l({type:Boolean})],OrScheduler.prototype,"isAllDay",void 0),__decorate([l({type:Object})],OrScheduler.prototype,"schedule",void 0),__decorate([l()],OrScheduler.prototype,"timezoneOffset",void 0),__decorate([n()],OrScheduler.prototype,"_ends",void 0),__decorate([n()],OrScheduler.prototype,"_normalizedSchedule",void 0),__decorate([n()],OrScheduler.prototype,"_rrule",void 0),__decorate([r("#radial-modal")],OrScheduler.prototype,"dialog",void 0),OrScheduler=__decorate([i("or-scheduler")],OrScheduler);export{OrScheduler};
|
package/lib/index.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,EAAE,IAAI,EAAE,UAAU,EAAkC,MAAM,KAAK,CAAC;AACvE,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAE1E,OAAO,EAAE,SAAS,EAAuB,MAAM,4CAA4C,CAAC;AAC5F,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,6CAA6C,CAAC;AACtF,OAAO,EAAE,SAAS,IAAI,cAAc,EAAE,KAAK,EAAuB,MAAM,OAAO,CAAC;AAChF,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,EAAE,6BAA6B,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAEnH,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAG9C,cAAc,QAAQ,CAAC;AAEvB,SAAS,KAAK,CAAC,KAAa,EAAE,GAAW;IACrC,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,GAAG,KAAK,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,KAAK,GAAG,CAAC,CAAE,CAAA;AACxE,CAAC;AAED,mBAAmB;AACnB,SAAS,SAAS,CAAI,GAAQ,EAAE,KAAa,EAAE,KAAa;IACxD,MAAM,WAAW,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC;IAC7B,WAAW,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACjC,OAAO,WAAW,CAAC;AACvB,CAAC;AAED,MAAM,eAAe,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;AACzD,MAAM,gBAAgB,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,kCAAkC;AAChG,MAAM,iBAAiB,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;AAC3D,MAAM,aAAa,GAAG,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AACnC,MAAM,wBAAwB,GAAG,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AAM9C,MAAM,OAAO,uBAAwB,SAAQ,WAA0C;IAInF,YAAY,KAAqB;QAC7B,KAAK,CAAC,uBAAuB,CAAC,IAAI,EAAE;YAChC,MAAM,EAAE,EAAE,KAAK,EAAE;YACjB,OAAO,EAAE,IAAI;YACb,QAAQ,EAAE,IAAI;SACjB,CAAC,CAAC;IACP,CAAC;;AARsB,4BAAI,GAAG,sBAAsB,CAAC;AAkBlD,IAAM,WAAW,GAAjB,MAAM,WAAY,SAAQ,SAAS,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC;IAAxD;;QAMI,0BAAqB,GAAG,SAAS,CAAC;QAGlC,wBAAmB,GAAgB,EAAE,CAAC;QAGtC,uBAAkB,GAAkB,EAAE,CAAC;QAGvC,WAAM,GAAG,kBAAkB,CAAC;QAG5B,aAAQ,GAAG,IAAI,CAAC;QAGhB,aAAQ,GAAmB,IAAI,CAAC,eAAe,CAAC;QAGhD,mBAAc,GAAG,CAAC,CAAC;QAGhB,UAAK,GAA2B,OAAO,CAAC;QAGxC,wBAAmB,GAAG,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAS9D,WAAM,GAAG,CAAC,CAAC;QAEX,eAAU,GAAe,UAAU,CAAC,OAAO,CAAC;QAC5C,gBAAW,GAAsB,UAAU,CAAC;QAC5C,WAAM,GAAG,MAAM,EAAE,CAAC,MAAM,EAAE,CAAC;IA+czC,CAAC;IA7ca,YAAY,CAAC,aAA6B;;QAChD,IAAI,CAAC,WAAW,GAAG;YACf,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC;YAC9C,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC;YAC/B,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,gBAAgB,CAAC;SAC1C,CAAC;QACF,IAAI,CAAA,MAAA,IAAI,CAAC,mBAAmB,0CAAE,KAAK,MAAI,MAAA,IAAI,CAAC,mBAAmB,0CAAE,GAAG,CAAA,EAAE,CAAC;YACnE,IAAI,IAAI,CAAC,mBAAmB,CAAC,UAAU,EAAE,CAAC;gBACtC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,UAAU,CAAC;YAC5C,CAAC;iBAAM,CAAC;gBACJ,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC;YACxC,CAAC;YACD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,mBAAmB;mBACjC,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;mBAC5G,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;QAClH,CAAC;QACD,IAAI,MAAA,IAAI,CAAC,mBAAmB,0CAAE,UAAU,EAAE,CAAC;YACvC,MAAM,WAAW,GAAG,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC,WAAW,CAAC;YACtF,IAAI,WAAW,CAAC,KAAK,EAAE,CAAC;gBACpB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC;YACrD,CAAC;iBAAM,IAAI,WAAW,CAAC,KAAK,EAAE,CAAC;gBAC3B,IAAI,CAAC,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC;YACpC,CAAC;QACL,CAAC;IACL,CAAC;IAES,UAAU,CAAC,YAA4B;QAC7C,IAAI,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;YAC/B,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACvE,CAAC;IACL,CAAC;IAES,OAAO,CAAC,YAA4B;;QAC1C,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;QAE5B,IAAI,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAC5C,IAAI,CAAC,aAAa,GAAG,cAAc;iBAC9B,MAAM,CAAC,CAAC,CAAC,EAAE,WAAC,OAAA,CAAC,CAAA,MAAA,6BAA6B,CAAC,cAAc,CAAC,IAAI,CAAC,MAAO,CAAC,OAAO,CAAC,IAAI,CAAc,CAAC,0CAAE,QAAQ,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAA,CAAA,EAAA,CAAC;iBAC9H,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;YACvD,IAAI,CAAC,KAAK,GAAG,CAAC,CAAA,MAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,WAAW,0CAAE,KAAK,KAAI,OAAO,CAAC,IAAI,CAAC,CAAA,MAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,WAAW,0CAAE,KAAK,KAAI,OAAO,CAAC,IAAI,OAAO,CAAC;QACzH,CAAC;QAED,IAAI,YAAY,CAAC,GAAG,CAAC,qBAAqB,CAAC,EAAE,CAAC;YAC1C,IAAI,MAAA,IAAI,CAAC,mBAAmB,0CAAE,UAAU,EAAE,CAAC;gBACvC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC;YACxE,CAAC;iBAAM,IAAI,IAAI,CAAC,UAAU,KAAK,UAAU,CAAC,OAAO,KAAI,MAAA,IAAI,CAAC,eAAe,0CAAE,UAAU,CAAA,EAAE,CAAC;gBACpF,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;YACpE,CAAC;iBAAM,CAAC;gBACJ,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;YAC5B,CAAC;QACL,CAAC;IACL,CAAC;IAED;;;;;;;OAOG;IACO,QAAQ,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM;;QAClC,OAAO,MAAA,MAAA,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,QAAQ,EAAE,0CAAE,KAAK,CAAC,QAAQ,CAAC,0CAAG,CAAC,CAAC,0CAAE,OAAO,CAAC,kBAAkB,EAAE,IAAI,CAAC,CAAC;IACtF,CAAC;IAES,aAAa,CAAC,KAAU,EAAE,GAAkG;;QAClI,IAAI,WAAW,GAAG,MAAA,IAAI,CAAC,MAAM,0CAAE,WAAW,CAAC;QAC3C,MAAM,aAAa,GAAG,IAAI,CAAC,mBAAoB,CAAC;QAEhD,IAAI,GAAG,KAAK,UAAU,IAAI,GAAG,KAAK,MAAM,IAAI,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YAC/D,IAAI,GAAG,KAAK,WAAW,EAAE,CAAC;gBACtB,WAAY,CAAC,SAAS,GAAI,KAAsB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YACxE,CAAC;iBAAM,CAAC;gBACJ,WAAY,CAAC,GAAsB,CAAC,GAAG,KAAK,CAAC;YACjD,CAAC;YACD,IAAI,IAAI,CAAC,UAAU,KAAK,UAAU,CAAC,UAAU;gBAAE,IAAI,CAAC,MAAM,GAAG,IAAI,KAAK,CAAC,WAAW,CAAC,CAAC;QACxF,CAAC;aAAM,IAAI,GAAG,KAAK,OAAO,IAAI,WAAW,EAAE,CAAC;YACxC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACzD,WAAW,CAAC,OAAO,GAAG,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;YACjG,aAAa,CAAC,KAAK,GAAG,WAAW,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YACpD,IAAI,IAAI,CAAC,UAAU,KAAK,UAAU,CAAC,UAAU;gBAAE,IAAI,CAAC,MAAM,GAAG,IAAI,KAAK,CAAC,WAAW,CAAC,CAAC;QACxF,CAAC;aAAM,IAAI,GAAG,KAAK,KAAK,EAAE,CAAC;YACvB,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACzD,aAAa,CAAC,GAAG,GAAG,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE,CAAC;QAC3G,CAAC;aAAM,IAAI,GAAG,KAAK,YAAY,EAAE,CAAC;YAC9B,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACxC,IAAI,WAAW,EAAE,CAAC;gBACd,WAAW,CAAC,OAAO,GAAG,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;YAChH,CAAC;iBAAM,CAAC;gBACJ,WAAW,GAAG,IAAI,KAAK,CAAC;oBACpB,OAAO,EAAE,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE;iBACjG,CAAC,CAAC,WAAW,CAAC;YACnB,CAAC;YACD,aAAa,CAAC,KAAK,GAAG,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE,CAAC;YACrE,IAAI,IAAI,CAAC,UAAU,KAAK,UAAU,CAAC,UAAU;gBAAE,IAAI,CAAC,MAAM,GAAG,IAAI,KAAK,CAAC,WAAW,CAAC,CAAC;QACxF,CAAC;aAAM,IAAI,GAAG,KAAK,UAAU,EAAE,CAAC;YAC5B,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACxC,aAAa,CAAC,GAAG,GAAG,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE,CAAC;QACtH,CAAC;aAAM,CAAC;YACN,QAAQ,GAAG,EAAE,CAAC;gBACZ,KAAK,SAAS;oBACV,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;oBACtB,MAAM;gBACV,KAAK,iBAAiB;oBAClB,IAAI,KAAK,KAAK,OAAO,EAAE,CAAC;wBACpB,WAAY,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC;wBACjC,OAAO,WAAY,CAAC,KAAK,CAAC;oBAC9B,CAAC;yBAAM,IAAI,KAAK,KAAK,OAAO,EAAE,CAAC;wBAC3B,WAAY,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC;wBACjC,OAAO,WAAY,CAAC,KAAK,CAAC;oBAC9B,CAAC;yBAAM,CAAC;wBACJ,OAAO,WAAY,CAAC,KAAK,CAAC;wBAC1B,OAAO,WAAY,CAAC,KAAK,CAAC;oBAC9B,CAAC;oBACD,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;oBACnB,IAAI,IAAI,CAAC,UAAU,KAAK,UAAU,CAAC,UAAU;wBAAE,IAAI,CAAC,MAAM,GAAG,IAAI,KAAK,CAAC,WAAW,CAAC,CAAC;oBACpF,MAAM;gBACV,KAAK,OAAO;oBACR,IAAI,CAAC,MAAM,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC;oBAC9B,WAAY,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC;oBACjC,IAAI,IAAI,CAAC,UAAU,KAAK,UAAU,CAAC,UAAU;wBAAE,IAAI,CAAC,MAAM,GAAG,IAAI,KAAK,CAAC,WAAW,CAAC,CAAC;oBACpF,MAAM;gBACV,KAAK,OAAO;oBACR,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;oBACpB,WAAY,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC;oBACjC,IAAI,IAAI,CAAC,UAAU,KAAK,UAAU,CAAC,UAAU;wBAAE,IAAI,CAAC,MAAM,GAAG,IAAI,KAAK,CAAC,WAAW,CAAC,CAAC;oBACpF,MAAM;YACZ,CAAC;QACH,CAAC;QAED,IAAI,CAAC,mBAAmB,qBAAQ,aAAa,CAAE,CAAC;QAChD,IAAI,CAAC,OAAQ,CAAC,aAAa,EAAE,CAAC;QAC9B,IAAI,CAAC,mBAAmB,CAAC,UAAU,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;IAC1D,CAAC;IAES,SAAS;QACf,IAAI,IAAI,CAAC,UAAU,KAAK,UAAU,CAAC,OAAO,EAAE,CAAC;YACzC,OAAO,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;QACjD,CAAC;QAAC,IAAI,IAAI,CAAC,mBAAmB,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAC5C,MAAM,aAAa,GAAG,IAAI,CAAC,mBAAmB,CAAC;YAC/C,MAAM,IAAI,GAAG,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YACzE,IAAI,UAAU,GAAG,EAAE,CAAC;YACpB,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAChB,IAAG,IAAI,GAAG,CAAC;oBAAE,UAAU,GAAG,GAAG,GAAC,OAAO,CAAC,CAAC,CAAC,SAAS,EAAE,EAAC,IAAI,EAAE,IAAI,EAAC,CAAC,CAAC;gBACjE,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,UAAU,CAAC;YAC7C,CAAC;iBAAM,CAAC;gBACJ,IAAI,IAAI,GAAG,CAAC;oBAAE,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC,YAAY,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;gBACvK,IAAI,IAAI,KAAK,CAAC;oBAAE,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;gBACzJ,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,GAAG,GAAG,UAAU,CAAC;YACnD,CAAC;QACL,CAAC;aAAM,IAAI,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAClC,IAAI,MAAM,GAAG,YAAY,CAAC;YAC1B,IAAG,CAAC,IAAI,CAAC,QAAQ;gBAAE,MAAM,GAAG,kBAAkB,CAAC;YAC/C,OAAO,OAAO,CAAC,CAAC,CAAC,cAAc,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACjK,CAAC;IACL,CAAC;IAES,oBAAoB,CAAC,KAAU;;QACrC,QAAQ,KAAK,EAAE,CAAC;YACZ,KAAK,UAAU,CAAC,OAAO;gBACnB,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,eAAe,CAAC;gBAChD,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,UAAU,CAAC,MAAA,MAAA,IAAI,CAAC,eAAe,0CAAE,UAAU,mCAAI,EAAE,CAAC,IAAI,SAAS,CAAC;gBACpF,MAAM;YACV,KAAK,UAAU,CAAC,MAAM;gBAClB,IAAI,CAAC,mBAAmB,GAAG;oBACvB,KAAK,EAAE,MAAA,MAAA,IAAI,CAAC,mBAAmB,0CAAE,KAAK,mCAAI,MAAM,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE;oBACpF,GAAG,EAAE,MAAA,MAAA,IAAI,CAAC,mBAAmB,0CAAE,GAAG,mCAAI,MAAM,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE;iBAChG,CAAC;gBACF,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;gBACxB,MAAM;YACV,KAAK,UAAU,CAAC,UAAU;gBACtB,IAAI,CAAC,mBAAmB,GAAG;oBACvB,KAAK,EAAE,MAAA,MAAA,IAAI,CAAC,mBAAmB,0CAAE,KAAK,mCAAI,MAAM,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE;oBACpF,GAAG,EAAE,MAAA,MAAA,IAAI,CAAC,mBAAmB,0CAAE,GAAG,mCAAI,MAAM,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE;oBAC7F,UAAU,EAAE,YAAY;iBAC3B,CAAC;gBACF,MAAM;QACd,CAAC;QACD,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC,OAAQ,CAAC,aAAa,EAAE,CAAC;IAClC,CAAC;IAED;;;;;OAKG;IACO,mBAAmB,CAAC,QAAwB,EAAE,SAAS,GAAG,KAAK;QACrE,IAAI,QAAQ,EAAE,CAAC;YACX,MAAM,MAAM,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YACxE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,UAAU,EAAE,qBAAQ,QAAQ,CAAE,CAAC;YACjD,IAAI,KAAK;gBAAE,KAAK,IAAI,MAAM,CAAC;YAC3B,IAAI,GAAG;gBAAE,GAAG,IAAI,MAAM,CAAC;YACvB,IAAI,UAAU,IAAI,KAAK,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;gBAC/D,MAAM,WAAW,GAAG,KAAK,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,WAAW,CAAC;gBAC7D,WAAW,CAAC,KAAK,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,CAAA;gBAChE,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,KAAK,CAAC,WAAW,CAAC,CAAC,CAAA;YACtD,CAAC;YACD,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,UAAU,EAAE,CAAA;QACrC,CAAC;IACL,CAAC;IAES,MAAM;QACZ,OAAO,IAAI,CAAA;4CACyB,SAAS,CAAC,MAAM,YAAY,IAAI,CAAC,SAAS,EAAE,4BAA4B,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU,EAAE;SAClI,CAAC;IACN,CAAC;IAES,UAAU;QAChB,IAAI,CAAC,OAAO,GAAG,UAAU,CAAC,IAAI,WAAW,EAAE;aACtC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;aAClC,SAAS,CAAC,IAAI,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBA4CF,CAAC;aACb,UAAU,CAAC;YACR;gBACI,UAAU,EAAE,QAAQ;gBACpB,OAAO,EAAE,IAAI,CAAA,uCAAuC,SAAS,CAAC,MAAM,kCAAkC;gBACtG,MAAM,EAAE,GAAG,EAAE;oBACT,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;gBAC7B,CAAC;aACJ;YACD;gBACI,UAAU,EAAE,IAAI;gBAChB,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,IAAI,CAAA,uCAAuC,SAAS,CAAC,MAAM,iCAAiC;gBACrG,MAAM,EAAE,GAAG,EAAE;;oBACT,IAAI,IAAI,CAAC,mBAAmB,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;wBAC5C,IAAI,CAAC,mBAAmB,CAAC,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE,CAAC;wBAC1G,IAAI,CAAC,mBAAmB,CAAC,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE,CAAC;oBACvH,CAAC;oBACD,IAAI,IAAI,CAAC,UAAU,KAAK,UAAU,CAAC,OAAO,EAAE,CAAC;wBACzC,OAAO,IAAI,CAAC,mBAAmB,CAAC;oBACpC,CAAC;yBAAM,IAAI,IAAI,CAAC,UAAU,KAAK,UAAU,CAAC,UAAU,EAAE,CAAC;wBACnD,IAAI,CAAC,mBAAoB,CAAC,UAAU,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;oBAC3D,CAAC;oBACD,MAAM,QAAQ,GAAG,IAAI,CAAC,mBAAmB,CAAC,MAAA,IAAI,CAAC,mBAAmB,mCAAI,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC;oBAClG,IAAI,CAAC,aAAa,CAAC,IAAI,uBAAuB,CAAC,QAAQ,CAAC,CAAC,CAAC;oBAC1D,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;gBAC7B,CAAC;aACJ;SACJ,CAAC;aACD,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;aACzC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC;IACjC,CAAC;IAES,gBAAgB;QACtB,MAAM,QAAQ,GAAG,IAAI,CAAC,mBAAmB,CAAC;QAE1C,OAAO,IAAI,CAAA;;;;;;8CAM2B,IAAI,CAAC,UAAU;6CAChB,SAAS,CAAC,MAAM;gDACb,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC;6DACnB,CAAC,CAAsB,EAAE,EAAE,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;;;kBAGhH,IAAI,CAAC,UAAU,KAAK,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE;kBACzE,QAAQ,IAAI,CAAC,IAAI,CAAC,UAAU,KAAK,UAAU,CAAC,MAAM,IAAI,IAAI,CAAC,UAAU,KAAK,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE;kBACxI,IAAI,CAAC,UAAU,KAAK,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE;mBACtE,CAAC;IAChB,CAAC;IAED;;;;OAIG;IACO,kBAAkB,CAAC,IAAe;QACxC,4FAA4F;QAC5F,iCAAiC;QACjC,OAAO,IAAI,KAAK,UAAU,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC3E,CAAC;IAED;;;;;;;;;;;;;;;;;;OAkBG;IACO,iBAAiB;;QACvB,MAAM,QAAQ,GAAG,MAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,WAAW,CAAC,QAAQ,mCAAI,CAAC,CAAC;QACxD,MAAM,SAAS,GAAG,MAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,WAAW,CAAC,IAAI,mCAAI,cAAc,CAAC,KAAK,CAAC;QACxE,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC;aAC1C,GAAG,CAAC,CAAC,CAAC,CAAC,EAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,CAAc,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC;aAC3F,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,CAAc,CAAQ,CAAC,CAAC,CAAA;QAEpF,OAAO,IAAI,CAAA;;;;sBAIG,IAAI,CAAC,CAAC,CAAA,MAAA,IAAI,CAAC,kBAAkB,0CAAE,QAAQ,CAAC,UAAU,CAAC,CAAA,EAAE,GAAG,EAAE,CAAC,IAAI,CAAA;qFACA,QAAQ,YAAY,SAAS,CAAC,MAAM;qDACpE,CAAC,CAAsB,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,UAAU,CAAC;qBAC1G,CAAC;6DACuC,SAAS,CAAC,QAAQ,EAAE,YAAY,SAAS,CAAC,MAAM,eAAe,WAAW;iDACtF,CAAC,CAAsB,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC;;uBAEhG,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,SAAS,CAAC,aAAa,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;;sBAE/E,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,SAAS,CAAC,MAAM,EAAE,eAAe,CAAC;sBACjE,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,SAAS,CAAC,MAAM,EAAE,gBAAgB,CAAC;sBACnE,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,SAAS,CAAC,MAAM,EAAE,iBAAiB,CAAC;;uBAEpE,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,SAAS,CAAC,aAAa,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;;sBAE5E,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,SAAS,CAAC,MAAM,EAAE,aAAa,CAAC;sBAC7D,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,SAAS,CAAC,MAAM,EAAE,wBAAwB,CAAC;sBAC1E,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,SAAS,CAAC,MAAM,EAAE,wBAAwB,CAAC;;mBAE7E,CAAC;IAChB,CAAC;IAED;;;;OAIG;IACO,aAAa,CAAI,IAAiB,EAAE,IAAe,EAAE,OAAY;;QACvE,IAAI,CAAC,CAAA,MAAA,IAAI,CAAC,aAAa,0CAAE,QAAQ,CAAC,IAAI,CAAC,CAAA,EAAE,CAAC;YACtC,OAAO,SAAS,CAAA;QACpB,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,KAAK,WAAW;YAC9B,CAAC,CAAC,MAAC,MAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,WAAW,0CAAE,SAAuB,0CAAE,GAAG,CAAC,MAAM,CAAC;YACjE,CAAC,CAAC,MAAA,IAAI,CAAC,MAAM,0CAAE,WAAW,CAAC,IAAI,CAAC,CAAC;QAErC,OAAO,IAAI,CAAA;4CACyB,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,EAAE;2CACZ,IAAI;8CACD,OAAO;4CACT,IAAI;;2DAEW,CAAC,CAAsB,EAAE,EAAE;YAChD,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QAC7C,CAAC,mBAAmB,CAAC;IACnD,CAAC;IAED;;;;;OAKG;IACO,iBAAiB,CAAC,QAAuB;QAC/C,OAAO,IAAI,CAAA;;;;;+CAK4B,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,YAAY,SAAS,CAAC,IAAI,4BAA4B,CAAC,CAAsB,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,aAAa,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;kDACnM,IAAI,CAAC,QAAQ,YAAY,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,SAAS,CAAC,IAAI,4BAA4B,CAAC,CAAsB,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,YAAY,CAAC,aAAa,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;;;gDAGjO,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,YAAY,SAAS,CAAC,IAAI,4BAA4B,CAAC,CAAsB,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,aAAa,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;kDAC9L,IAAI,CAAC,QAAQ,YAAY,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,SAAS,CAAC,IAAI,4BAA4B,CAAC,CAAsB,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,UAAU,CAAC,aAAa,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;;;;;2CAKhO,IAAI,CAAC,QAAQ,2BAA2B,CAAC,CAAsB,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,SAAS,CAAC,aAAa,SAAS,CAAC,QAAQ,aAAa,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC;;mBAExM,CAAC;IAChB,CAAC;IAED;;;;;;;OAOG;IACO,eAAe;QACrB,OAAO,IAAI,CAAA;;;;uEAIoD,SAAS,CAAC,KAAK;kCACpD,IAAI,CAAC,KAAK;oCACR,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,WAAC,OAAA,CAAC,CAAA,MAAA,IAAI,CAAC,kBAAkB,0CAAE,QAAQ,CAAC,CAAgB,CAAC,CAAA,CAAA,EAAA,CAAC;iDAClF,CAAC,CAAsB,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,iBAAiB,CAAC;;;0BAGxG,IAAI,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,CAAC,IAAI,CAAA;uDAC9B,IAAI,CAAC,KAAK,KAAK,OAAO,oBAAoB,SAAS,CAAC,MAAM;0CACvE,IAAI,CAAC,MAAM;0CACX,OAAO,CAAC,CAAC,CAAC,gBAAgB,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;yDACpC,CAAC,CAAsB,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC;4CACpF,CACnB;0BACC,IAAI,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,CAAC,IAAI,CAAA;uDAC9B,IAAI,CAAC,KAAK,KAAK,OAAO,YAAY,SAAS,CAAC,QAAQ;0CACjE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,kBAAkB,CAAC;yDAC/B,CAAC,CAAsB,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC;4CACpF,CACnB;;;mBAGN,CAAC;IAChB,CAAC;CACJ,CAAA;AAvfU;IADN,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;oDACY;AAGhC;IADN,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;0DACc;AAGlC;IADN,QAAQ,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;wDACmB;AAGtC;IADN,QAAQ,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;uDACoB;AAGvC;IADN,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;2CACQ;AAG5B;IADN,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;6CACL;AAGhB;IADN,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;6CAC4B;AAGhD;IADN,QAAQ,EAAE;mDACe;AAGhB;IADT,KAAK,EAAE;0CAC0C;AAGxC;IADT,KAAK,EAAE;wDACgE;AAG9D;IADT,KAAK,EAAE;2CACiB;AAGf;IADT,KAAK,CAAC,eAAe,CAAC;2CACQ;AApCtB,WAAW;IADvB,aAAa,CAAC,cAAc,CAAC;GACjB,WAAW,CA0fvB"}
|
package/lib/types.d.ts
ADDED
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { Frequency as FrequencyValue, Options } from "rrule";
|
|
2
|
+
import { EventTypes } from "./util";
|
|
3
|
+
/**
|
|
4
|
+
* Supported recurrence rule parts in evaluation order:
|
|
5
|
+
* - `interval`
|
|
6
|
+
* - `freq`
|
|
7
|
+
* - `bymonth`
|
|
8
|
+
* - `byweekno`
|
|
9
|
+
* - `byyearday`
|
|
10
|
+
* - `bymonthday`
|
|
11
|
+
* - `byweekday` = `byday` in {@link https://datatracker.ietf.org/doc/html/rfc5545#section-3.3.10|rfc5545#section-3.3.10}.
|
|
12
|
+
* - `byhour`
|
|
13
|
+
* - `byminute`
|
|
14
|
+
* - `bysecond`
|
|
15
|
+
* - `count`
|
|
16
|
+
* - `until`
|
|
17
|
+
* @todo wkst not implemented
|
|
18
|
+
*
|
|
19
|
+
* Ignored
|
|
20
|
+
* - | 'byeaster'// Not applicable, introduced by {@link https://labix.org/python-dateutil/#head-a65103993a21b717f6702063f3717e6e75b4ba66|python-dateutil}.
|
|
21
|
+
* - | 'bynmonthday' // Not specified
|
|
22
|
+
* - | 'bynweekday' // Not specified
|
|
23
|
+
* - | 'bysetpos' // Too complex for the time being
|
|
24
|
+
* - | 'dtstart' // Not applicable CalendarEvent already specifies start
|
|
25
|
+
* - | 'tzid' // Not part of the recurrence rule parts
|
|
26
|
+
*
|
|
27
|
+
* @see {@link RRule} and {@link https://labix.org/python-dateutil/#head-a65103993a21b717f6702063f3717e6e75b4ba66|python-dateutil}.
|
|
28
|
+
*/
|
|
29
|
+
export type RuleParts = Pick<Options, "interval" | "freq" | "bymonth" | "byweekno" | "byyearday" | "bymonthday" | "byweekday" | "byhour" | "byminute" | "bysecond" | "count" | "until">;
|
|
30
|
+
export type LabeledEventTypes = Record<EventTypes, string>;
|
|
31
|
+
export type RulePartKey = keyof RuleParts;
|
|
32
|
+
export type Frequency = (keyof typeof FrequencyValue);
|
|
33
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAmBA,OAAO,EAAE,SAAS,IAAI,cAAc,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAEpC;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,MAAM,SAAS,GAAG,IAAI,CACxB,OAAO,EACL,UAAU,GACV,MAAM,GACN,SAAS,GACT,UAAU,GACV,WAAW,GACX,YAAY,GACZ,WAAW,GACX,QAAQ,GACR,UAAU,GACV,UAAU,GACV,OAAO,GACP,OAAO,CACZ,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;AAC3D,MAAM,MAAM,WAAW,GAAG,MAAM,SAAS,CAAC;AAC1C,MAAM,MAAM,SAAS,GAAG,CAAC,MAAM,OAAO,cAAc,CAAC,CAAC"}
|
package/lib/types.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export{};
|
package/lib/types.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}
|
package/lib/util.d.ts
ADDED
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { Frequency } from "rrule";
|
|
2
|
+
export declare const FREQUENCIES: Record<keyof typeof Frequency, string>;
|
|
3
|
+
/**
|
|
4
|
+
* Evaluation order: BYMONTH, BYWEEKNO, BYYEARDAY, BYMONTHDAY, BYDAY, BYHOUR, BYMINUTE and BYSECOND.
|
|
5
|
+
* As per https://datatracker.ietf.org/doc/html/rfc5545#section-3.3.10 page 44
|
|
6
|
+
*/
|
|
7
|
+
export declare const BY_RRULE_PARTS: readonly ["bymonth", "byweekno", "byyearday", "bymonthday", "byweekday", "byhour", "byminute", "bysecond"];
|
|
8
|
+
/**
|
|
9
|
+
* Dependency of by rule parts table
|
|
10
|
+
* As per https://datatracker.ietf.org/doc/html/rfc5545#section-3.3.10 page 44
|
|
11
|
+
*/
|
|
12
|
+
export declare const NOT_APPLICABLE_BY_RRULE_PARTS: Record<keyof typeof Frequency, string[]>;
|
|
13
|
+
export declare const MONTHS: {
|
|
14
|
+
1: string;
|
|
15
|
+
2: string;
|
|
16
|
+
3: string;
|
|
17
|
+
4: string;
|
|
18
|
+
5: string;
|
|
19
|
+
6: string;
|
|
20
|
+
7: string;
|
|
21
|
+
8: string;
|
|
22
|
+
9: string;
|
|
23
|
+
10: string;
|
|
24
|
+
11: string;
|
|
25
|
+
12: string;
|
|
26
|
+
};
|
|
27
|
+
export declare enum EventTypes {
|
|
28
|
+
default = "default",
|
|
29
|
+
period = "period",
|
|
30
|
+
recurrence = "recurrence"
|
|
31
|
+
}
|
|
32
|
+
export declare const rruleEnds: {
|
|
33
|
+
never: string;
|
|
34
|
+
until: string;
|
|
35
|
+
count: string;
|
|
36
|
+
};
|
|
37
|
+
//# sourceMappingURL=util.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"AAmBA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAElC,eAAO,MAAM,WAAW,EAQnB,MAAM,CAAC,MAAM,OAAO,SAAS,EAAE,MAAM,CAAC,CAAC;AAE5C;;;GAGG;AACH,eAAO,MAAM,cAAc,4GASjB,CAAC;AAEX;;;GAGG;AACH,eAAO,MAAM,6BAA6B,EAOrC,MAAM,CAAC,MAAM,OAAO,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC;AAE9C,eAAO,MAAM,MAAM;;;;;;;;;;;;;CAalB,CAAC;AAEF,oBAAY,UAAU;IAClB,OAAO,YAAY;IACnB,MAAM,WAAW;IACjB,UAAU,eAAe;CAC5B;AAED,eAAO,MAAM,SAAS;;;;CAIrB,CAAA"}
|
package/lib/util.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export const FREQUENCIES={YEARLY:"rrule.frequency.YEARLY",MONTHLY:"rrule.frequency.MONTHLY",WEEKLY:"rrule.frequency.WEEKLY",DAILY:"rrule.frequency.DAILY",HOURLY:"rrule.frequency.HOURLY",MINUTELY:"rrule.frequency.MINUTELY",SECONDLY:"rrule.frequency.SECONDLY"};export const BY_RRULE_PARTS=["bymonth","byweekno","byyearday","bymonthday","byweekday","byhour","byminute","bysecond"];export const NOT_APPLICABLE_BY_RRULE_PARTS={SECONDLY:["BYWEEKNO"],MINUTELY:["BYWEEKNO"],HOURLY:["BYWEEKNO"],DAILY:["BYWEEKNO","BYYEARDAY"],WEEKLY:["BYWEEKNO","BYYEARDAY","BYMONTHDAY"],MONTHLY:["BYWEEKNO","BYYEARDAY"]};export const MONTHS={1:"JAN",2:"FEB",3:"MAR",4:"APR",5:"MAY",6:"JUN",7:"JUL",8:"AUG",9:"SEP",10:"OCT",11:"NOV",12:"DEC"};export var EventTypes;!function(e){e.default="default",e.period="period",e.recurrence="recurrence"}(EventTypes||(EventTypes={}));export const rruleEnds={never:"never",until:"schedule.ends.until",count:"schedule.ends.count"};
|
package/lib/util.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"AAqBA,MAAM,CAAC,MAAM,WAAW,GAAG;IACvB,MAAM,EAAE,wBAAwB;IAChC,OAAO,EAAE,yBAAyB;IAClC,MAAM,EAAE,wBAAwB;IAChC,KAAK,EAAE,uBAAuB;IAC9B,MAAM,EAAE,wBAAwB;IAChC,QAAQ,EAAE,0BAA0B;IACpC,QAAQ,EAAE,0BAA0B;CACG,CAAC;AAE5C;;;GAGG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG;IAC1B,SAAS;IACT,UAAU;IACV,WAAW;IACX,YAAY;IACZ,WAAW;IACX,QAAQ;IACR,UAAU;IACV,UAAU;CACJ,CAAC;AAEX;;;GAGG;AACH,MAAM,CAAC,MAAM,6BAA6B,GAAG;IACzC,QAAQ,EAAE,CAAC,UAAU,CAAC;IACtB,QAAQ,EAAE,CAAC,UAAU,CAAC;IACtB,MAAM,EAAE,CAAC,UAAU,CAAC;IACpB,KAAK,EAAE,CAAC,UAAU,EAAE,WAAW,CAAC;IAChC,MAAM,EAAE,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC;IAC/C,OAAO,EAAE,CAAC,UAAU,EAAE,WAAW,CAAC;CACO,CAAC;AAE9C,MAAM,CAAC,MAAM,MAAM,GAAG;IAClB,CAAC,EAAE,KAAK;IACR,CAAC,EAAE,KAAK;IACR,CAAC,EAAE,KAAK;IACR,CAAC,EAAE,KAAK;IACR,CAAC,EAAE,KAAK;IACR,CAAC,EAAE,KAAK;IACR,CAAC,EAAE,KAAK;IACR,CAAC,EAAE,KAAK;IACR,CAAC,EAAE,KAAK;IACR,EAAE,EAAE,KAAK;IACT,EAAE,EAAE,KAAK;IACT,EAAE,EAAE,KAAK;CACZ,CAAC;AAEF,MAAM,CAAN,IAAY,UAIX;AAJD,WAAY,UAAU;IAClB,iCAAmB,CAAA;IACnB,+BAAiB,CAAA;IACjB,uCAAyB,CAAA;AAC7B,CAAC,EAJW,UAAU,KAAV,UAAU,QAIrB;AAED,MAAM,CAAC,MAAM,SAAS,GAAG;IACrB,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,qBAAqB;IAC5B,KAAK,EAAE,qBAAqB;CAC/B,CAAA"}
|
package/package.json
ADDED
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@openremote/or-scheduler",
|
|
3
|
+
"version": "1.12.0-snapshot.20251212165311",
|
|
4
|
+
"description": "OpenRemote scheduler UI component",
|
|
5
|
+
"customElements": "custom-elements.json",
|
|
6
|
+
"main": "dist/umd/index.bundle.js",
|
|
7
|
+
"module": "lib/index.js",
|
|
8
|
+
"exports": {
|
|
9
|
+
".": "./lib/index.js",
|
|
10
|
+
"./*": "./lib/*.js"
|
|
11
|
+
},
|
|
12
|
+
"types": "lib/index.d.ts",
|
|
13
|
+
"scripts": {
|
|
14
|
+
"analyze": "npx cem analyze --config ../custom-elements-manifest.config.mjs",
|
|
15
|
+
"build": "npx tsc -b",
|
|
16
|
+
"test": "npx tsc -b && npx playwright test",
|
|
17
|
+
"prepack": "npx rspack"
|
|
18
|
+
},
|
|
19
|
+
"author": "OpenRemote",
|
|
20
|
+
"license": "AGPL-3.0-or-later",
|
|
21
|
+
"dependencies": {
|
|
22
|
+
"@openremote/model": "1.12.0-snapshot.20251212165311",
|
|
23
|
+
"@openremote/or-mwc-components": "1.12.0-snapshot.20251212165311",
|
|
24
|
+
"@openremote/or-translate": "1.12.0-snapshot.20251212165311",
|
|
25
|
+
"lit": "^3.3.1",
|
|
26
|
+
"moment": "^2.29.4",
|
|
27
|
+
"rrule": "^2.6.4"
|
|
28
|
+
},
|
|
29
|
+
"publishConfig": {
|
|
30
|
+
"access": "public"
|
|
31
|
+
}
|
|
32
|
+
}
|