Some checks failed
Create issues from TODOs / todos (push) Failing after 3s
Close inactive issues / close-issues (push) Has been cancelled
Deploy GitHub Pages / deploy-preview (push) Has been cancelled
CI / ⚙️ Variables Setup (push) Has been cancelled
CI / ⚙️ Test Guard (push) Has been cancelled
CI / 🚀 Notify external services - draft (push) Has been cancelled
CI / 📦 Build Packages (push) Has been cancelled
CI / 📦 Meteor Build (coverage) (push) Has been cancelled
CI / 📦 Meteor Build (production) (push) Has been cancelled
CI / 🚢 Build Docker (amd64, [account-service presence-service omnichannel-transcript-service], ${{ (github.event_name != 'release' && github.ref != 'refs/heads/develop') && 'coverage' || 'production' }}) (push) Has been cancelled
CI / 🚢 Build Docker (amd64, [account-service presence-service omnichannel-transcript-service], fips) (push) Has been cancelled
CI / 🚢 Build Docker (amd64, [authorization-service queue-worker-service ddp-streamer-service], ${{ (github.event_name != 'release' && github.ref != 'refs/heads/develop') && 'coverage' || 'production' }}) (push) Has been cancelled
CI / 🚢 Build Docker (amd64, [authorization-service queue-worker-service ddp-streamer-service], fips) (push) Has been cancelled
CI / 🚢 Build Docker (amd64, [rocketchat], ${{ (github.event_name != 'release' && github.ref != 'refs/heads/develop') && 'coverage' || 'production' }}) (push) Has been cancelled
CI / 🚢 Build Docker (amd64, [rocketchat], coverage) (push) Has been cancelled
CI / 🚢 Build Docker (amd64, [rocketchat], fips) (push) Has been cancelled
CI / 🚢 Build Docker (arm64, [account-service presence-service omnichannel-transcript-service], ${{ (github.event_name != 'release' && github.ref != 'refs/heads/develop') && 'coverage' || 'production' }}) (push) Has been cancelled
CI / 🚢 Build Docker (arm64, [authorization-service queue-worker-service ddp-streamer-service], ${{ (github.event_name != 'release' && github.ref != 'refs/heads/develop') && 'coverage' || 'production' }}) (push) Has been cancelled
CI / 🚢 Build Docker (arm64, [rocketchat], ${{ (github.event_name != 'release' && github.ref != 'refs/heads/develop') && 'coverage' || 'production' }}) (push) Has been cancelled
CI / 🚢 Build Docker (arm64, [rocketchat], coverage) (push) Has been cancelled
CI / 🚢 Publish Docker Images (ghcr.io) (push) Has been cancelled
CI / 📦 Track Image Sizes (push) Has been cancelled
CI / 🔎 Code Check - Action Lint (push) Has been cancelled
CI / 🔎 Code Check (push) Has been cancelled
CI / 🔨 Test Storybook (push) Has been cancelled
CI / 🔨 Test Unit (push) Has been cancelled
CI / 🔨 Test API (CE) (push) Has been cancelled
CI / 🔨 Test API Livechat (CE) (push) Has been cancelled
CI / 🔨 Test UI (CE) (push) Has been cancelled
CI / 🔨 Test API (EE) (push) Has been cancelled
CI / 🔨 Test API Livechat (EE) (push) Has been cancelled
CI / 🔨 Test API Apps (deno-runtime - EE) (push) Has been cancelled
CI / 🔨 Test UI (EE) (push) Has been cancelled
CI / 🔨 Test API (FIPS) (push) Has been cancelled
CI / 🔨 Test API Livechat (FIPS) (push) Has been cancelled
CI / 🔨 Test UI (FIPS) (push) Has been cancelled
CI / 🔨 Test Federation Matrix (push) Has been cancelled
CI / 📊 Report Coverage (push) Has been cancelled
CI / ✅ Tests Done (push) Has been cancelled
CI / 🚀 Publish build assets (push) Has been cancelled
CI / 🚀 Publish Docker Images (DockerHub) (push) Has been cancelled
CI / 🚀 Notify external services (push) Has been cancelled
CI / Update Version Durability (push) Has been cancelled
Release / Release (push) Has been cancelled
Auto-close duplicate issues / auto-close-duplicates (push) Failing after 1s
Code scanning - action / CodeQL-Build (push) Failing after 2s
94 lines
3.3 KiB
JSON
94 lines
3.3 KiB
JSON
{
|
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
"$id": "https://rocket.chat/schemas/classification-banners/v1.json",
|
|
"title": "Rocket.Chat Classification Banners configuration",
|
|
"type": "object",
|
|
"required": ["version", "enabled", "banner", "attributes"],
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"$schema": { "type": "string" },
|
|
"version": { "const": 1 },
|
|
"enabled": { "type": "boolean" },
|
|
"banner": {
|
|
"type": "object",
|
|
"required": ["style", "uppercase", "monospace", "delimiter", "colorMode", "fallbackText", "fallbackColor"],
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"style": { "enum": ["classic"] },
|
|
"uppercase": { "type": "boolean" },
|
|
"monospace": { "type": "boolean" },
|
|
"delimiter": { "type": "string", "minLength": 1, "maxLength": 8 },
|
|
"colorMode": { "enum": ["highest", "attribute"] },
|
|
"fallbackText": { "type": "string", "minLength": 1 },
|
|
"fallbackColor": { "$ref": "#/$defs/hexColor" }
|
|
}
|
|
},
|
|
"attributes": {
|
|
"type": "array",
|
|
"minItems": 1,
|
|
"uniqueItems": true,
|
|
"description": "Attribute ids must be unique across entries (uniqueness by id is not expressible in JSON Schema; validated by tooling)",
|
|
"items": { "$ref": "#/$defs/attribute" }
|
|
}
|
|
},
|
|
"$defs": {
|
|
"hexColor": {
|
|
"type": "string",
|
|
"pattern": "^#[0-9a-fA-F]{6}$"
|
|
},
|
|
"attribute": {
|
|
"type": "object",
|
|
"required": [
|
|
"id",
|
|
"source",
|
|
"label",
|
|
"showInBanner",
|
|
"showLabel",
|
|
"bannerLabel",
|
|
"labelSeparator",
|
|
"valueSeparator",
|
|
"sortAlpha",
|
|
"groupThreshold",
|
|
"multipleLabel",
|
|
"drivesColor",
|
|
"values"
|
|
],
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"id": { "type": "string", "pattern": "^[a-z][a-z0-9_-]*$" },
|
|
"source": { "type": "string", "minLength": 1, "description": "Raw attribute key from the IdP (SAML/LDAP)" },
|
|
"label": { "type": "string", "minLength": 1, "description": "Friendly admin-facing name" },
|
|
"showInBanner": { "type": "boolean" },
|
|
"showLabel": { "type": "boolean" },
|
|
"bannerLabel": { "type": "string" },
|
|
"labelSeparator": { "enum": ["-", " ", ""] },
|
|
"valueSeparator": { "enum": ["/", ", ", " "] },
|
|
"sortAlpha": { "type": "boolean" },
|
|
"groupThreshold": {
|
|
"type": "integer",
|
|
"description": "0 = never collapse; otherwise collapse when value count >= threshold (2-20)",
|
|
"oneOf": [{ "const": 0 }, { "minimum": 2, "maximum": 20 }]
|
|
},
|
|
"multipleLabel": { "type": "string" },
|
|
"drivesColor": { "type": "boolean" },
|
|
"values": {
|
|
"type": "array",
|
|
"minItems": 1,
|
|
"uniqueItems": true,
|
|
"description": "Value sources must be unique within the attribute (uniqueness by source is not expressible in JSON Schema; validated by tooling)",
|
|
"items": {
|
|
"type": "object",
|
|
"required": ["source", "label", "color"],
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"source": { "type": "string", "minLength": 1 },
|
|
"label": { "type": "string", "minLength": 1 },
|
|
"color": { "$ref": "#/$defs/hexColor" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|