1 // Copyright (C) The Arvados Authors. All rights reserved.
3 // SPDX-License-Identifier: AGPL-3.0
5 import { ResourceKind, TrashableResource, ResourceObjectType, RESOURCE_UUID_REGEX } from "./resource";
7 export interface GroupResource extends TrashableResource {
8 kind: ResourceKind.GROUP;
10 groupClass: GroupClass | null;
14 ensure_unique_name: boolean;
17 export enum GroupClass {
23 export const BUILTIN_GROUP_IDS = [
29 export const isBuiltinGroup = (uuid: string) => {
30 const match = RESOURCE_UUID_REGEX.exec(uuid);
31 const parts = match ? match[0].split('-') : [];
32 return parts.length === 3 && parts[1] === ResourceObjectType.GROUP && BUILTIN_GROUP_IDS.includes(parts[2]);