| // Copyright 2019 The Chromium Authors |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| import * as issueV0 from './constants-issueV0.js'; |
| import * as users from './constants-users.js'; |
| import 'shared/typedef.js'; |
| |
| /** @type {string} */ |
| export const NAME = 'hotlists/1234'; |
| |
| /** @type {Hotlist} */ |
| export const HOTLIST = Object.freeze({ |
| name: NAME, |
| displayName: 'Hotlist-Name', |
| owner: users.NAME, |
| editors: [users.NAME_2], |
| summary: 'Summary', |
| description: 'Description', |
| defaultColumns: [{column: 'Rank'}, {column: 'ID'}, {column: 'Summary'}], |
| hotlistPrivacy: 'PUBLIC', |
| }); |
| |
| export const HOTLIST_ITEM_NAME = NAME + '/items/56'; |
| |
| /** @type {HotlistItem} */ |
| export const HOTLIST_ITEM = Object.freeze({ |
| name: HOTLIST_ITEM_NAME, |
| issue: issueV0.NAME, |
| // rank: The API excludes the rank field if it's 0. |
| adder: users.NAME, |
| createTime: '2020-01-01T12:00:00Z', |
| }); |
| |
| /** @type {HotlistIssue} */ |
| export const HOTLIST_ISSUE = Object.freeze({ |
| ...issueV0.ISSUE, ...HOTLIST_ITEM, adder: users.USER, |
| }); |
| |
| /** @type {HotlistItem} */ |
| export const HOTLIST_ITEM_OTHER_PROJECT = Object.freeze({ |
| name: NAME + '/items/78', |
| issue: issueV0.NAME_OTHER_PROJECT, |
| rank: 1, |
| adder: users.NAME, |
| createTime: '2020-01-01T12:00:00Z', |
| }); |
| |
| /** @type {HotlistIssue} */ |
| export const HOTLIST_ISSUE_OTHER_PROJECT = Object.freeze({ |
| ...issueV0.ISSUE_OTHER_PROJECT, |
| ...HOTLIST_ITEM_OTHER_PROJECT, |
| adder: users.USER, |
| }); |
| |
| /** @type {HotlistItem} */ |
| export const HOTLIST_ITEM_CLOSED = Object.freeze({ |
| name: NAME + '/items/90', |
| issue: issueV0.NAME_CLOSED, |
| rank: 2, |
| adder: users.NAME, |
| createTime: '2020-01-01T12:00:00Z', |
| }); |
| |
| /** @type {HotlistIssue} */ |
| export const HOTLIST_ISSUE_CLOSED = Object.freeze({ |
| ...issueV0.ISSUE_CLOSED, ...HOTLIST_ITEM_CLOSED, adder: users.USER, |
| }); |
| |
| /** @type {Object<string, Hotlist>} */ |
| export const BY_NAME = Object.freeze({[NAME]: HOTLIST}); |
| |
| /** @type {Object<string, Array<HotlistItem>>} */ |
| export const HOTLIST_ITEMS = Object.freeze({ |
| [NAME]: [HOTLIST_ITEM], |
| }); |