Skip to main content
Version: Latest (4.5.0)

Function: UxListMenuConfig(config)

Parameters

config

UxListMenuConfig

Properties:

  • $id (required): string | number | ExplicitKey<string>

  • name (required): string

  • $meta (optional): object

    • installMethod: 'first install' | 'demo' Map a record to an output folder that loads only in specific circumstances. 'first install' - > 'unload', 'demo' -> 'unload.demo'
  • active (optional): boolean

  • categories (optional): UxListCategory[]

  • description (optional): string

Examples

ux-list-menu-config-basic

// Source: packages/api/tests/ux-list-menu-config-plugin/ux-list-menu-config-plugin.test.ts

import { UxListMenuConfig } from '@servicenow/sdk/core'

export const BasicListMenuConfigExample = UxListMenuConfig({
$id: Now.ID['basic-config'],
name: 'Test List Menu Config',
description: 'Test description',
active: true,
categories: [
{
$id: Now.ID['category-1'],
title: 'Category 1',
order: 100,
description: 'Category description',
lists: [
{
$id: Now.ID['incidents-list'],
table: 'incident',
title: 'Incidents',
active: true,
order: 100,
columns: 'number,short_description,priority',
condition: 'active=true',
},
],
},
],
})

ux-list-menu-config-with-applicabilities

// Source: examples/workspace/src/fluent/index.now.ts
import { Applicability, Role, UxListMenuConfig } from '@servicenow/sdk/core'

const userRole = Role({
name: 'x_snc_works_7.user',
containsRoles: ['canvas_user'],
})

const applicability = Applicability({
$id: Now.ID['workspace_applicability'],
name: 'Workspace Audience',
roles: [userRole],
})

UxListMenuConfig({
$id: Now.ID['list_config_with_applicabilities'],
name: 'Workspace List Config',
description: 'List config with role-based applicabilities',
categories: [
{
$id: Now.ID['incidents_category'],
title: 'Incidents',
order: 10,
lists: [
{
$id: Now.ID['incidents_open'],
title: 'Open',
order: 10,
condition: 'active=true^EQ',
table: 'incident',
columns: 'number,short_description,priority,state',
applicabilities: [
{
$id: Now.ID['incidents_open_applicability'],
active: true,
applicability: applicability,
},
],
},
],
},
],
})

ux-list-menu-config-with-conditions

// Source: packages/api/tests/ux-list-menu-config-plugin/ux-list-menu-config-plugin.test.ts
// Also: examples/ux-list/src/fluent/index.now.ts

import { UxListMenuConfig } from '@servicenow/sdk/core'

export const ListMenuConfigWithConditionsExample = UxListMenuConfig({
$id: Now.ID['conditions-config'],
name: 'Multi Category Config',
categories: [
{
$id: Now.ID['incidents-category'],
title: 'Incidents',
order: 100,
lists: [
{
$id: Now.ID['incidents-open'],
table: 'incident',
title: 'Open',
order: 10,
condition: 'active=true^EQ',
columns: 'number,short_description,priority,state',
},
{
$id: Now.ID['incidents-all'],
table: 'incident',
title: 'All',
order: 20,
condition: '',
columns: 'number,short_description,priority,state',
},
],
},
{
$id: Now.ID['problems-category'],
title: 'Problems',
order: 200,
lists: [
{
$id: Now.ID['problems-open'],
table: 'problem',
title: 'Open',
order: 10,
condition: 'active=true^EQ',
columns: 'number,short_description,state,assignment_group,assigned_to',
},
],
},
],
})