Edits history of script submission #3501 for ' Set custom field contexts default values (jira)'

  • nativets
    One script reply has been approved by the moderators
    Ap­pro­ved
    type Jira = {
      username: string;
      password: string;
      domain: string;
    };
    /**
     * Set custom field contexts default values
     * Sets default for contexts of a custom field.
     */
    export async function main(
      auth: Jira,
      fieldId: string,
      body: {
        defaultValues?: (
          | {
              cascadingOptionId?: string;
              contextId: string;
              optionId: string;
              type: string;
              [k: string]: unknown;
            }
          | {
              contextId: string;
              optionIds: string[];
              type: string;
              [k: string]: unknown;
            }
          | {
              contextId: string;
              optionId: string;
              type: string;
              [k: string]: unknown;
            }
          | {
              accountId: string;
              contextId: string;
              type: string;
              userFilter: {
                enabled: boolean;
                groups?: string[];
                roleIds?: number[];
                [k: string]: unknown;
              };
              [k: string]: unknown;
            }
          | {
              accountIds: string[];
              contextId: string;
              type: string;
              [k: string]: unknown;
            }
          | {
              contextId: string;
              groupId: string;
              type: string;
              [k: string]: unknown;
            }
          | {
              contextId: string;
              groupIds: string[];
              type: string;
              [k: string]: unknown;
            }
          | {
              date?: string;
              type: string;
              useCurrent?: boolean;
              [k: string]: unknown;
            }
          | {
              dateTime?: string;
              type: string;
              useCurrent?: boolean;
              [k: string]: unknown;
            }
          | { contextId: string; type: string; url: string; [k: string]: unknown }
          | {
              contextId: string;
              projectId: string;
              type: string;
              [k: string]: unknown;
            }
          | { number: number; type: string; [k: string]: unknown }
          | { labels: string[]; type: string; [k: string]: unknown }
          | { text?: string; type: string; [k: string]: unknown }
          | { text?: string; type: string; [k: string]: unknown }
          | { text?: string; type: string; [k: string]: unknown }
          | {
              type: string;
              versionId: string;
              versionOrder?: string;
              [k: string]: unknown;
            }
          | {
              type: string;
              versionIds: string[];
              versionOrder?: string;
              [k: string]: unknown;
            }
          | { contextId: string; text?: string; type: string; [k: string]: unknown }
          | { type: string; values?: string[]; [k: string]: unknown }
          | {
              object?: { [k: string]: unknown };
              type: string;
              [k: string]: unknown;
            }
          | {
              contextId: string;
              dateTime?: string;
              type: string;
              useCurrent?: boolean;
              [k: string]: unknown;
            }
          | {
              contextId: string;
              groupId: string;
              type: string;
              [k: string]: unknown;
            }
          | {
              contextId: string;
              groupIds: string[];
              type: string;
              [k: string]: unknown;
            }
          | {
              contextId: string;
              number: number;
              type: string;
              [k: string]: unknown;
            }
          | {
              accountId: string;
              contextId: string;
              type: string;
              userFilter: {
                enabled: boolean;
                groups?: string[];
                roleIds?: number[];
                [k: string]: unknown;
              };
              [k: string]: unknown;
            }
          | {
              accountIds: string[];
              contextId: string;
              type: string;
              [k: string]: unknown;
            }
        )[];
      }
    ) {
      const url = new URL(
        `https://${auth.domain}.atlassian.net/rest/api/2/field/${fieldId}/context/defaultValue`
      );
    
      const response = await fetch(url, {
        method: "PUT",
        headers: {
          "Content-Type": "application/json",
          Authorization: "Basic " + btoa(`${auth.username}:${auth.password}`),
        },
        body: JSON.stringify(body),
      });
      if (!response.ok) {
        const text = await response.text();
        throw new Error(`${response.status} ${text}`);
      }
      return await response.json();
    }
    

    Submitted by hugo697 396 days ago

  • nativets
    type Jira = {
      username: string;
      password: string;
      domain: string;
    };
    /**
     * Set custom field contexts default values
     * Sets default for contexts of a custom field.
     */
    export async function main(
      auth: Jira,
      fieldId: string,
      body: {
        defaultValues?: (
          | {
              cascadingOptionId?: string;
              contextId: string;
              optionId: string;
              type: string;
              [k: string]: unknown;
            }
          | {
              contextId: string;
              optionIds: string[];
              type: string;
              [k: string]: unknown;
            }
          | {
              contextId: string;
              optionId: string;
              type: string;
              [k: string]: unknown;
            }
          | {
              accountId: string;
              contextId: string;
              type: string;
              userFilter: {
                enabled: boolean;
                groups?: string[];
                roleIds?: number[];
                [k: string]: unknown;
              };
              [k: string]: unknown;
            }
          | {
              accountIds: string[];
              contextId: string;
              type: string;
              [k: string]: unknown;
            }
          | {
              contextId: string;
              groupId: string;
              type: string;
              [k: string]: unknown;
            }
          | {
              contextId: string;
              groupIds: string[];
              type: string;
              [k: string]: unknown;
            }
          | {
              date?: string;
              type: string;
              useCurrent?: boolean;
              [k: string]: unknown;
            }
          | {
              dateTime?: string;
              type: string;
              useCurrent?: boolean;
              [k: string]: unknown;
            }
          | { contextId: string; type: string; url: string; [k: string]: unknown }
          | {
              contextId: string;
              projectId: string;
              type: string;
              [k: string]: unknown;
            }
          | { number: number; type: string; [k: string]: unknown }
          | { labels: string[]; type: string; [k: string]: unknown }
          | { text?: string; type: string; [k: string]: unknown }
          | { text?: string; type: string; [k: string]: unknown }
          | { text?: string; type: string; [k: string]: unknown }
          | {
              type: string;
              versionId: string;
              versionOrder?: string;
              [k: string]: unknown;
            }
          | {
              type: string;
              versionIds: string[];
              versionOrder?: string;
              [k: string]: unknown;
            }
          | { contextId: string; text?: string; type: string; [k: string]: unknown }
          | { type: string; values?: string[]; [k: string]: unknown }
          | {
              object?: { [k: string]: unknown };
              type: string;
              [k: string]: unknown;
            }
          | {
              contextId: string;
              dateTime?: string;
              type: string;
              useCurrent?: boolean;
              [k: string]: unknown;
            }
          | {
              contextId: string;
              groupId: string;
              type: string;
              [k: string]: unknown;
            }
          | {
              contextId: string;
              groupIds: string[];
              type: string;
              [k: string]: unknown;
            }
          | {
              contextId: string;
              number: number;
              type: string;
              [k: string]: unknown;
            }
          | {
              accountId: string;
              contextId: string;
              type: string;
              userFilter: {
                enabled: boolean;
                groups?: string[];
                roleIds?: number[];
                [k: string]: unknown;
              };
              [k: string]: unknown;
            }
          | {
              accountIds: string[];
              contextId: string;
              type: string;
              [k: string]: unknown;
            }
        )[];
      }
    ) {
      const url = new URL(
        `https://${auth.domain}.atlassian.net/rest/api/2/field/${fieldId}/context/defaultValue`
      );
    
      const response = await fetch(url, {
        method: "PUT",
        headers: {
          "Content-Type": "application/json",
          Authorization: "Basic " + btoa(`${auth.username}:${auth.password}`),
        },
        body: JSON.stringify(body),
      });
      if (!response.ok) {
        const text = await response.text();
        throw new Error(`${response.status} ${text}`);
      }
      return await response.json();
    }
    

    Submitted by hugo697 948 days ago