collection
@nishans/core / Exports / Collection
#
Class: CollectionA class to represent collection of Notion
noinheritdoc
#
HierarchyData<ICollection>
↳ Collection
#
Index#
Constructors#
Properties#
Methods- #getRowPages
- addToChildArray
- createPages
- createSchemaUnits
- createTemplates
- deleteCachedData
- deleteIterate
- deletePage
- deletePages
- deleteSchemaUnit
- deleteSchemaUnits
- deleteTemplate
- deleteTemplates
- emptyStack
- executeOperation
- getCachedData
- getCachedParentData
- getIterate
- getLastEditedProps
- getPage
- getPages
- getProps
- getSchemaUnit
- getSchemaUnits
- getTemplate
- getTemplates
- initializeCache
- initializeCacheForSpecificData
- initializeCacheForThisData
- printStack
- returnNonCachedData
- saveToCache
- update
- updateCacheIfNotPresent
- updateCacheLocally
- updateCacheManually
- updateCachedData
- updateIterate
- updateLastEditedProps
- updatePage
- updatePages
- updateSchemaUnit
- updateSchemaUnits
- updateTemplate
- updateTemplates
#
Constructors#
constructor+ new Collection(args
: NishanArg): Collection
#
Parameters:Name | Type |
---|---|
args | NishanArg |
Returns: Collection
Defined in: core/src/Collection.ts:14
#
Properties#
cache• cache: ICache
Defined in: endpoints/dist/src/Cache.d.ts:4
#
getConfigs• Protected
getConfigs: () => Configs
Defined in: endpoints/dist/src/Cache.d.ts:15
#
headers• headers: { headers
: { cookie
: string ; x-notion-active-user-header
: string } }
#
Type declaration:Name | Type |
---|---|
headers | { cookie : string ; x-notion-active-user-header : string } |
Defined in: endpoints/dist/src/Cache.d.ts:7
#
id• id: string
Defined in: core/src/Data.ts:33
#
init_cache• init_cache: boolean= false
Defined in: core/src/Data.ts:35
#
interval• interval: number
Defined in: endpoints/dist/src/Cache.d.ts:6
#
logger• Protected
logger: Logger
Defined in: core/src/Data.ts:36
#
shard_id• shard_id: number
Defined in: core/src/Operations.ts:9
#
space_id• space_id: string
Defined in: core/src/Operations.ts:8
#
stack• stack: IOperation[]
Defined in: core/src/Operations.ts:7
#
token• token: string
Defined in: endpoints/dist/src/Cache.d.ts:5
#
type• type: block | collection | collection_view | space | notion_user | space_view | user_root | user_settings
Defined in: core/src/Data.ts:34
#
user_id• user_id: string
Defined in: endpoints/dist/src/Cache.d.ts:13
#
Methods#
#getRowPagesâ–¸ #getRowPages(): Promise<string[]>
Returns: Promise<string[]>
Defined in: core/src/Collection.ts:20
#
addToChildArrayâ–¸ Protected
addToChildArray(parent
: TData, position
: RepositionParams): void
Adds the passed block id in the child container array of parent
#
Parameters:Name | Type |
---|---|
parent | TData |
position | RepositionParams |
Returns: void
created Operation and a function to update the cache and the class data
Defined in: core/src/Data.ts:86
#
createPagesâ–¸ createPages(rows
: Pick<IPageCreateInput, id | properties | format | isPrivate | contents>[]): Promise<ITBlock>
Add rows of data to the collection block
#
Parameters:Name | Type |
---|---|
rows | Pick<IPageCreateInput, id | properties | format | isPrivate | contents>[] |
Returns: Promise<ITBlock>
An array of newly created page objects
Defined in: core/src/Collection.ts:108
#
createSchemaUnitsâ–¸ createSchemaUnits(args
: TSchemaUnitInput[]): ITSchemaUnit
Create multiple new columns in the collection schema
#
Parameters:Name | Type | Description |
---|---|---|
args | TSchemaUnitInput[] | array of Schema creation properties |
Returns: ITSchemaUnit
An array of SchemaUnit objects representing the columns
Defined in: core/src/Collection.ts:160
#
createTemplatesâ–¸ createTemplates(rows
: Pick<IPageCreateInput, id | properties | format | isPrivate | contents>[]): Promise<ITBlock>
Create multiple templates for the collection
#
Parameters:Name | Type |
---|---|
rows | Pick<IPageCreateInput, id | properties | format | isPrivate | contents>[] |
Returns: Promise<ITBlock>
Defined in: core/src/Collection.ts:44
#
deleteCachedDataâ–¸ Protected
deleteCachedData(): void
Delete the cached data using the id
Returns: void
Defined in: core/src/Data.ts:76
#
deleteIterateâ–¸ Protected
deleteIterate<TD>(args
: FilterTypes<TD>, options
: IterateAndDeleteOptions<ICollection>, transform
: (id
: string) => undefined | TD, cb?
: (id
: string, data
: TD) => void | Promise<any>): Promise<TD[]>
#
Type parameters:Name |
---|
TD |
#
Parameters:Name | Type |
---|---|
args | FilterTypes<TD> |
options | IterateAndDeleteOptions<ICollection> |
transform | (id : string) => undefined | TD |
cb? | (id : string, data : TD) => void | Promise<any> |
Returns: Promise<TD[]>
Defined in: core/src/Data.ts:118
#
deletePageâ–¸ deletePage(args?
: FilterType<IPage>): Promise<void>
#
Parameters:Name | Type |
---|---|
args? | FilterType<IPage> |
Returns: Promise<void>
Defined in: core/src/Collection.ts:138
#
deletePagesâ–¸ deletePages(args?
: FilterTypes<IPage>, multiple?
: boolean): Promise<void>
Delete multiple template pages from the collection
#
Parameters:Name | Type | Description |
---|---|---|
args? | FilterTypes<IPage> | string of ids or a predicate function |
multiple? | boolean | whether multiple or single item is targeted |
Returns: Promise<void>
Defined in: core/src/Collection.ts:147
#
deleteSchemaUnitâ–¸ deleteSchemaUnit(args?
: FilterType<ISchemaMapValue>): Promise<void>
Delete a single column from the collection schema
#
Parameters:Name | Type | Description |
---|---|---|
args? | FilterType<ISchemaMapValue> | schema_id string or predicate function |
Returns: Promise<void>
A SchemaUnit object representing the column
Defined in: core/src/Collection.ts:240
#
deleteSchemaUnitsâ–¸ deleteSchemaUnits(args?
: FilterTypes<ISchemaMapValue>, multiple?
: boolean): Promise<void>
Delete multiple columns from the collection schema
#
Parameters:Name | Type | Description |
---|---|---|
args? | FilterTypes<ISchemaMapValue> | schema_id string array or predicate function |
multiple? | boolean | - |
Returns: Promise<void>
An array of SchemaUnit objects representing the columns
Defined in: core/src/Collection.ts:249
#
deleteTemplateâ–¸ deleteTemplate(args?
: FilterType<IPage>): Promise<void>
Delete a single template page from the collection
#
Parameters:Name | Type | Description |
---|---|---|
args? | FilterType<IPage> | string id or a predicate function |
Returns: Promise<void>
Defined in: core/src/Collection.ts:85
#
deleteTemplatesâ–¸ deleteTemplates(args?
: FilterTypes<IPage>, multiple?
: boolean): Promise<void>
Delete multiple template pages from the collection
#
Parameters:Name | Type | Description |
---|---|---|
args? | FilterTypes<IPage> | string of ids or a predicate function |
multiple? | boolean | whether multiple or single item is targeted |
Returns: Promise<void>
Defined in: core/src/Collection.ts:94
#
emptyStackâ–¸ emptyStack(): void
Returns: void
Defined in: core/src/Operations.ts:18
#
executeOperationâ–¸ executeOperation(): Promise<void>
Returns: Promise<void>
Defined in: core/src/Operations.ts:26
#
getCachedDataâ–¸ getCachedData(): ICollection
Get the cached data using the current data id
Returns: ICollection
Defined in: core/src/Data.ts:62
#
getCachedParentDataâ–¸ getCachedParentData(): TCollectionBlock
Returns: TCollectionBlock
Defined in: core/src/Collection.ts:28
#
getIterateâ–¸ Protected
getIterate<RD, C>(args
: FilterTypes<RD>, options
: IterateAndGetOptions<ICollection, C>, transform
: (id
: string) => undefined | RD, cb?
: (id
: string, data
: RD, container
: C) => any): Promise<C>
#
Type parameters:Name |
---|
RD |
C |
#
Parameters:Name | Type |
---|---|
args | FilterTypes<RD> |
options | IterateAndGetOptions<ICollection, C> |
transform | (id : string) => undefined | RD |
cb? | (id : string, data : RD, container : C) => any |
Returns: Promise<C>
Defined in: core/src/Data.ts:138
#
getLastEditedPropsâ–¸ Protected
getLastEditedProps(): object
Returns: object
Name | Type |
---|---|
last_edited_by_id | string |
last_edited_by_table | string |
last_edited_time | number |
Defined in: core/src/Data.ts:48
#
getPageâ–¸ getPage(arg?
: FilterType<IPage>): Promise<Page>
#
Parameters:Name | Type |
---|---|
arg? | FilterType<IPage> |
Returns: Promise<Page>
Defined in: core/src/Collection.ts:112
#
getPagesâ–¸ getPages(args?
: FilterTypes<IPage>, multiple?
: boolean): Promise<Page[]>
#
Parameters:Name | Type |
---|---|
args? | FilterTypes<IPage> |
multiple? | boolean |
Returns: Promise<Page[]>
Defined in: core/src/Collection.ts:116
#
getPropsâ–¸ getProps(): object
Returns: object
Name | Type |
---|---|
cache | ICache |
interval | number |
logger | Logger |
shard_id | number |
space_id | string |
stack | IOperation[] |
token | string |
user_id | string |
Defined in: core/src/Data.ts:148
#
getSchemaUnitâ–¸ getSchemaUnit(arg?
: FilterType<ISchemaMapValue>): Promise<ITSchemaUnit>
#
Parameters:Name | Type |
---|---|
arg? | FilterType<ISchemaMapValue> |
Returns: Promise<ITSchemaUnit>
Defined in: core/src/Collection.ts:181
#
getSchemaUnitsâ–¸ getSchemaUnits(args?
: FilterTypes<ISchemaMapValue>, multiple?
: boolean): Promise<ITSchemaUnit>
Return multiple columns from the collection schema
#
Parameters:Name | Type | Description |
---|---|---|
args? | FilterTypes<ISchemaMapValue> | schema_id string array or predicate function |
multiple? | boolean | - |
Returns: Promise<ITSchemaUnit>
An array of SchemaUnit objects representing the columns
Defined in: core/src/Collection.ts:190
#
getTemplateâ–¸ getTemplate(args?
: FilterType<IPage>): Promise<Page>
Get a single template page of the collection
#
Parameters:Name | Type | Description |
---|---|---|
args? | FilterType<IPage> | string id or a predicate function |
Returns: Promise<Page>
Template page object
Defined in: core/src/Collection.ts:53
#
getTemplatesâ–¸ getTemplates(args?
: FilterTypes<IPage>, multiple?
: boolean): Promise<Page[]>
#
Parameters:Name | Type |
---|---|
args? | FilterTypes<IPage> |
multiple? | boolean |
Returns: Promise<Page[]>
Defined in: core/src/Collection.ts:57
#
initializeCacheâ–¸ initializeCache(): Promise<void>
Returns: Promise<void>
Defined in: endpoints/dist/src/Cache.d.ts:22
#
initializeCacheForSpecificDataâ–¸ initializeCacheForSpecificData(id
: string, type
: block | collection | collection_view | space | notion_user | space_view | user_root | user_settings): Promise<void>
#
Parameters:Name | Type |
---|---|
id | string |
type | block | collection | collection_view | space | notion_user | space_view | user_root | user_settings |
Returns: Promise<void>
Defined in: endpoints/dist/src/Cache.d.ts:25
#
initializeCacheForThisDataâ–¸ Protected
initializeCacheForThisData(): Promise<void>
Returns: Promise<void>
Defined in: core/src/Data.ts:111
#
printStackâ–¸ printStack(): void
Returns: void
Defined in: core/src/Operations.ts:22
#
returnNonCachedDataâ–¸ returnNonCachedData(ids
: UpdateCacheManuallyParam): UpdateCacheManuallyParam
#
Parameters:Name | Type |
---|---|
ids | UpdateCacheManuallyParam |
Returns: UpdateCacheManuallyParam
Defined in: endpoints/dist/src/Cache.d.ts:21
#
saveToCacheâ–¸ saveToCache(recordMap
: Partial<RecordMap>): void
Save the passed recordMap to cache
#
Parameters:Name | Type | Description |
---|---|---|
recordMap | Partial<RecordMap> | RecordMap map to save to cache |
Returns: void
Defined in: endpoints/dist/src/Cache.d.ts:20
#
updateâ–¸ update(opt
: Partial<Pick<ICollection, name | icon | description>>): void
Update the collection
#
Parameters:Name | Type | Description |
---|---|---|
opt | Partial<Pick<ICollection, name | icon | description>> | CollectionUpdateParam |
Returns: void
Defined in: core/src/Collection.ts:36
#
updateCacheIfNotPresentâ–¸ updateCacheIfNotPresent(arg
: UpdateCacheManuallyParam): Promise<void>
#
Parameters:Name | Type |
---|---|
arg | UpdateCacheManuallyParam |
Returns: Promise<void>
Defined in: endpoints/dist/src/Cache.d.ts:24
#
updateCacheLocallyâ–¸ updateCacheLocally(arg
: Partial<ICollection>, keys
: readonly (id | name | icon | description | template_pages | cover | migrated | schema | alive | version | parent_id | parent_table)[], appendToStack?
: boolean): void
Update the cache of the data using only the passed keys
#
Parameters:Name | Type | Description |
---|---|---|
arg | Partial<ICollection> | |
keys | readonly (id | name | icon | description | template_pages | cover | migrated | schema | alive | version | parent_id | parent_table)[] | |
appendToStack? | boolean | - |
Returns: void
Defined in: core/src/Data.ts:95
#
updateCacheManuallyâ–¸ updateCacheManually(arg
: string | UpdateCacheManuallyParam): Promise<void>
#
Parameters:Name | Type |
---|---|
arg | string | UpdateCacheManuallyParam |
Returns: Promise<void>
Defined in: endpoints/dist/src/Cache.d.ts:23
#
updateCachedDataâ–¸ updateCachedData(): Promise<void>
Returns: Promise<void>
Defined in: core/src/Data.ts:69
#
updateIterateâ–¸ Protected
updateIterate<TD, RD, C>(args
: UpdateTypes<TD, RD>, options
: IterateAndUpdateOptions<ICollection, C>, transform
: (id
: string) => undefined | TD, cb?
: (id
: string, data
: TD, updated\_data
: RD, container
: C) => any): Promise<C>
#
Type parameters:Name | Default |
---|---|
TD | - |
RD | - |
C | any |
#
Parameters:Name | Type |
---|---|
args | UpdateTypes<TD, RD> |
options | IterateAndUpdateOptions<ICollection, C> |
transform | (id : string) => undefined | TD |
cb? | (id : string, data : TD, updated\_data : RD, container : C) => any |
Returns: Promise<C>
Defined in: core/src/Data.ts:128
#
updateLastEditedPropsâ–¸ Protected
updateLastEditedProps(data?
: INotionUser | IText | ITodo | IHeader | ISubHeader | ISubSubHeader | IBulletedList | INumberedList | IToggle | IQuote | IDivider | ICallout | IPage | ICollectionView | ICollectionViewPage | ILinkToPage | IVideo | IAudio | IImage | IWebBookmark | ICode | IFile | ITOC | IEquation | IBreadcrumb | IFactory | IEmbed | ITweet | ICodepen | IMaps | IFigma | IDrive | IGist | IColumnList | IColumn | ICollection | ITableView | IListView | IBoardView | IGalleryView | ICalendarView | ITimelineView | ISpace | ISpaceView | IUserRoot | IUserSettings): void
#
Parameters:Name | Type |
---|---|
data? | INotionUser | IText | ITodo | IHeader | ISubHeader | ISubSubHeader | IBulletedList | INumberedList | IToggle | IQuote | IDivider | ICallout | IPage | ICollectionView | ICollectionViewPage | ILinkToPage | IVideo | IAudio | IImage | IWebBookmark | ICode | IFile | ITOC | IEquation | IBreadcrumb | IFactory | IEmbed | ITweet | ICodepen | IMaps | IFigma | IDrive | IGist | IColumnList | IColumn | ICollection | ITableView | IListView | IBoardView | IGalleryView | ICalendarView | ITimelineView | ISpace | ISpaceView | IUserRoot | IUserSettings |
Returns: void
Defined in: core/src/Data.ts:52
#
updatePageâ–¸ updatePage(args
: UpdateType<IPage, IPageUpdateInput>): Promise<Page>
#
Parameters:Name | Type |
---|---|
args | UpdateType<IPage, IPageUpdateInput> |
Returns: Promise<Page>
Defined in: core/src/Collection.ts:125
#
updatePagesâ–¸ updatePages(args
: UpdateTypes<IPage, IPageUpdateInput>, multiple?
: boolean): Promise<Page[]>
#
Parameters:Name | Type |
---|---|
args | UpdateTypes<IPage, IPageUpdateInput> |
multiple? | boolean |
Returns: Promise<Page[]>
Defined in: core/src/Collection.ts:129
#
updateSchemaUnitâ–¸ updateSchemaUnit(arg
: UpdateType<ISchemaMapValue, Partial<TextSchemaUnit> | Partial<NumberSchemaUnit> | Partial<SelectSchemaUnit> | Partial<MultiSelectSchemaUnit> | Partial<TitleSchemaUnit> | Partial<DateSchemaUnit> | Partial<PersonSchemaUnit> | Partial<FileSchemaUnit> | Partial<CheckboxSchemaUnit> | Partial<UrlSchemaUnit> | Partial<EmailSchemaUnit> | Partial<PhoneNumberSchemaUnit> | Partial<RelationSchemaUnit> | Partial<RollupSchemaUnit> | Partial<CreatedTimeSchemaUnit> | Partial<CreatedBySchemaUnit> | Partial<LastEditedTimeSchemaUnit> | Partial<LastEditedBySchemaUnit> | Partial<FormulaSchemaUnit>>): Promise<ITSchemaUnit>
Update and return a single column from the collection schema
#
Parameters:Name | Type |
---|---|
arg | UpdateType<ISchemaMapValue, Partial<TextSchemaUnit> | Partial<NumberSchemaUnit> | Partial<SelectSchemaUnit> | Partial<MultiSelectSchemaUnit> | Partial<TitleSchemaUnit> | Partial<DateSchemaUnit> | Partial<PersonSchemaUnit> | Partial<FileSchemaUnit> | Partial<CheckboxSchemaUnit> | Partial<UrlSchemaUnit> | Partial<EmailSchemaUnit> | Partial<PhoneNumberSchemaUnit> | Partial<RelationSchemaUnit> | Partial<RollupSchemaUnit> | Partial<CreatedTimeSchemaUnit> | Partial<CreatedBySchemaUnit> | Partial<LastEditedTimeSchemaUnit> | Partial<LastEditedBySchemaUnit> | Partial<FormulaSchemaUnit>> |
Returns: Promise<ITSchemaUnit>
A SchemaUnit object representing the column
Defined in: core/src/Collection.ts:205
#
updateSchemaUnitsâ–¸ updateSchemaUnits(args
: UpdateTypes<ISchemaMapValue, Partial<TextSchemaUnit> | Partial<NumberSchemaUnit> | Partial<SelectSchemaUnit> | Partial<MultiSelectSchemaUnit> | Partial<TitleSchemaUnit> | Partial<DateSchemaUnit> | Partial<PersonSchemaUnit> | Partial<FileSchemaUnit> | Partial<CheckboxSchemaUnit> | Partial<UrlSchemaUnit> | Partial<EmailSchemaUnit> | Partial<PhoneNumberSchemaUnit> | Partial<RelationSchemaUnit> | Partial<RollupSchemaUnit> | Partial<CreatedTimeSchemaUnit> | Partial<CreatedBySchemaUnit> | Partial<LastEditedTimeSchemaUnit> | Partial<LastEditedBySchemaUnit> | Partial<FormulaSchemaUnit>>, multiple?
: boolean): Promise<ITSchemaUnit>
Update and return multiple columns from the collection schema
#
Parameters:Name | Type | Description |
---|---|---|
args | UpdateTypes<ISchemaMapValue, Partial<TextSchemaUnit> | Partial<NumberSchemaUnit> | Partial<SelectSchemaUnit> | Partial<MultiSelectSchemaUnit> | Partial<TitleSchemaUnit> | Partial<DateSchemaUnit> | Partial<PersonSchemaUnit> | Partial<FileSchemaUnit> | Partial<CheckboxSchemaUnit> | Partial<UrlSchemaUnit> | Partial<EmailSchemaUnit> | Partial<PhoneNumberSchemaUnit> | Partial<RelationSchemaUnit> | Partial<RollupSchemaUnit> | Partial<CreatedTimeSchemaUnit> | Partial<CreatedBySchemaUnit> | Partial<LastEditedTimeSchemaUnit> | Partial<LastEditedBySchemaUnit> | Partial<FormulaSchemaUnit>> | schema_id string and schema properties array of tuples |
multiple? | boolean | - |
Returns: Promise<ITSchemaUnit>
An array of SchemaUnit objects representing the columns
Defined in: core/src/Collection.ts:214
#
updateTemplateâ–¸ updateTemplate(args
: UpdateType<IPage, IPageUpdateInput>): Promise<Page>
#
Parameters:Name | Type |
---|---|
args | UpdateType<IPage, IPageUpdateInput> |
Returns: Promise<Page>
Defined in: core/src/Collection.ts:66
#
updateTemplatesâ–¸ updateTemplates(args
: UpdateTypes<IPage, IPageUpdateInput>, multiple?
: boolean): Promise<Page[]>
#
Parameters:Name | Type |
---|---|
args | UpdateTypes<IPage, IPageUpdateInput> |
multiple? | boolean |
Returns: Promise<Page[]>
Defined in: core/src/Collection.ts:71