-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMicrosoft.TimeWindow.v2.0.0.schema.json
170 lines (170 loc) · 6.68 KB
/
Microsoft.TimeWindow.v2.0.0.schema.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
{
"definitions": {},
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://azconfig.io/schemas/FeatureManagement/v2.0.0/TimeWindowFilter.json",
"type": "object",
"title": "A Microsoft Time Window Filter Declaration",
"required": [
"name"
],
"properties": {
"name": {
"$id": "#/properties/name",
"type": "string",
"title": "Time Window Filter Name",
"enum": [
"Microsoft.TimeWindow"
]
},
"parameters": {
"$id": "#/properties/parameters",
"type": "object",
"title": "Time Window Filter Parameters",
"properties": {
"Start": {
"$id": "#/properties/parameter/properties/Start",
"type": "string",
"title": "Time Window Filter Start Parameter",
"examples": [
"Wed, 1 May 2024 12:00:00 GMT",
"Wed, 1 May 2024 20:00:00 +0800"
]
},
"End": {
"$id": "#/properties/parameters/properties/End",
"type": "string",
"title": "Time Window Filter End Parameter",
"examples": [
"Thu, 2 May 2024 12:00:00 GMT",
"Thu, 2 May 2024 20:00:00 +0800"
]
},
"Recurrence": {
"$id": "#/properties/parameters/properties/Recurrence",
"type": "object",
"title": "Time Window Filter Recurrence Parameter",
"required": [
"Pattern",
"Range"
],
"properties": {
"Pattern": {
"$id": "#/properties/parameters/properties/Recurrence/properties/Pattern",
"type": "object",
"title": "Time Window Filter Recurrence Pattern Parameter",
"required": [
"Type"
],
"properties": {
"Type": {
"$id": "#/properties/parameters/properties/Recurrence/properties/Pattern/properties/Type",
"type": "string",
"title": "Time Window Filter Recurrence Pattern Type Parameter",
"enum": [
"Daily",
"Weekly"
]
},
"Interval": {
"$id": "#/properties/parameters/properties/Recurrence/properties/Pattern/properties/Interval",
"type": "integer",
"title": "Time Window Filter Recurrence Pattern Interval Parameter",
"description": "The number of units between occurrences, where units can be in days or weeks depending on the recurrence pattern type.",
"default": 1
},
"DaysOfWeek": {
"$id": "#/properties/parameters/properties/Recurrence/properties/Pattern/properties/DaysOfWeek",
"type": "array",
"title": "Time Window Filter Recurrence Weekly Pattern DaysOfWeek Parameter",
"description": "A list of days of week used to specify on which day the time window will recur, which only applies to the weekly recurrence pattern.",
"items": {
"$id": "#/properties/parameters/properties/Recurrence/properties/Pattern/properties/DaysOfWeek/items",
"type": "string",
"title": "DayOfWeek",
"enum": [
"Monday",
"Tuesday",
"Wednesday",
"Thursday",
"Friday",
"Saturday",
"Sunday"
]
}
},
"FirstDayOfWeek": {
"$id": "#/properties/parameters/properties/Recurrence/properties/Pattern/properties/FirstDayOfWeek",
"type": "string",
"title": "Time Window Filter Recurrence Weekly Pattern FirstDayOfWeek Parameter",
"description": "The first day of the week which only applies to the weekly recurrence pattern. Here is an example of how this property takes effect: if we have a weekly recurrence pattern which recurs on Monday and Sunday every other week and first occurrence (Start) date is on Sunday. If the first day of week is set to Monday, the second occurrence will be the Monday two weeks from the first occurrence instead of the following Monday.",
"enum": [
"Monday",
"Tuesday",
"Wednesday",
"Thursday",
"Friday",
"Saturday",
"Sunday"
],
"default": "Sunday"
}
}
},
"Range": {
"required": [
"Type"
],
"properties": {
"Type": {
"$id": "#/properties/parameters/properties/Recurrence/properties/Range/properties/Type",
"type": "string",
"title": "Time Window Filter Recurrence Range Type Parameter",
"enum": [
"NoEnd",
"EndDate",
"Numbered"
]
},
"EndDate": {
"$id": "#/properties/parameters/properties/Recurrence/properties/Range/properties/EndDate",
"type": "string",
"title": "Time Window Filter Recurrence End Date Parameter",
"description": "The date to stop applying the recurrence pattern, which only applies to the EndDate recurrence range type. As long as the start time of the last occurrence falls before the end date, the end time of that occurrence is allowed to extend beyond it.",
"examples": [
"Wed, 1 May 2024 12:00:00 GMT",
"Wed, 1 May 2024 20:00:00 +0800"
]
},
"NumberOfOccurrences": {
"$id": "#/properties/parameters/properties/Recurrence/properties/Range/properties/NumberOfOccurrences",
"type": "integer",
"title": "Time Window Filter Recurrence NumberOfOccurrences Parameter",
"description": "The number of times to repeat the time window, which only applies to the Numbered recurrence range type."
}
}
}
}
}
},
"anyOf": [
{
"required": [
"Start"
]
},
{
"required": [
"End"
]
},
{
"required": [
"Start",
"End",
"Recurrence"
]
}
]
}
}
}