- OpenAPI: add missing endpoints (add-from-url, subscriptions, public availability) - OpenAPI: CalendarSubscription schema, Subscriptions tag - Frontend app - Migrations: count_for_availability, subscriptions_sync, user_preferences, calendar_settings - Config, rate limit, auth, calendar, booking, ICS, availability, user service updates Made-with: Cursor
28 lines
569 B
JavaScript
28 lines
569 B
JavaScript
'use strict'
|
|
|
|
let Container = require('./container')
|
|
let list = require('./list')
|
|
|
|
class Rule extends Container {
|
|
get selectors() {
|
|
return list.comma(this.selector)
|
|
}
|
|
|
|
set selectors(values) {
|
|
let match = this.selector ? this.selector.match(/,\s*/) : null
|
|
let sep = match ? match[0] : ',' + this.raw('between', 'beforeOpen')
|
|
this.selector = values.join(sep)
|
|
}
|
|
|
|
constructor(defaults) {
|
|
super(defaults)
|
|
this.type = 'rule'
|
|
if (!this.nodes) this.nodes = []
|
|
}
|
|
}
|
|
|
|
module.exports = Rule
|
|
Rule.default = Rule
|
|
|
|
Container.registerRule(Rule)
|