@imbricate/core 3.27.1 → 3.28.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -4,7 +4,7 @@
4
4
  * @description Definition
5
5
  */
6
6
  import { ImbricateAuthor } from "../author/definition";
7
- import { ImbricatePropertyKey } from "../property/definition";
7
+ import { ImbricatePropertyKey, ImbricatePropertyVariant } from "../property/definition";
8
8
  import { IMBRICATE_PROPERTY_TYPE, ImbricatePropertyValueObject } from "../property/type";
9
9
  /**
10
10
  * Edit record type of the document
@@ -19,6 +19,7 @@ export type DocumentEditOperationValuePutProperty<T extends IMBRICATE_PROPERTY_T
19
19
  readonly key: ImbricatePropertyKey;
20
20
  readonly type: T;
21
21
  readonly value: ImbricatePropertyValueObject<T>;
22
+ readonly variant: ImbricatePropertyVariant;
22
23
  };
23
24
  export type DocumentEditOperationPutAnnotation = {
24
25
  readonly annotationNamespace: string;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@imbricate/core",
3
3
  "main": "index.js",
4
- "version": "3.27.1",
4
+ "version": "3.28.0",
5
5
  "description": "Imbricate Core, Notebook for Engineers",
6
6
  "repository": {
7
7
  "type": "git",
@@ -4,7 +4,7 @@
4
4
  * @description Full Feature
5
5
  */
6
6
  import { ImbricateCommonQueryOriginActionsOutcome, ImbricateCommonQueryOriginActionsQuery, ImbricateOriginActionInput, ImbricateOriginActionOutcome } from "../../common/action";
7
- import { ImbricatePropertyKey } from "../definition";
7
+ import { ImbricatePropertyKey, ImbricatePropertyVariant } from "../definition";
8
8
  import { IMBRICATE_PROPERTY_FEATURE } from "../feature";
9
9
  import { IImbricateProperty } from "../interface";
10
10
  import { IMBRICATE_PROPERTY_TYPE, ImbricatePropertyValueObject } from "../type";
@@ -12,6 +12,7 @@ export declare abstract class ImbricatePropertyFullFeatureWithActionBase<T exten
12
12
  abstract readonly propertyKey: ImbricatePropertyKey;
13
13
  abstract readonly propertyType: T;
14
14
  abstract readonly propertyValue: ImbricatePropertyValueObject<T>;
15
+ abstract readonly propertyVariant: ImbricatePropertyVariant;
15
16
  readonly supportedFeatures: IMBRICATE_PROPERTY_FEATURE[];
16
17
  abstract queryOriginActions(query: ImbricateCommonQueryOriginActionsQuery): PromiseLike<ImbricateCommonQueryOriginActionsOutcome>;
17
18
  abstract executeOriginAction(input: ImbricateOriginActionInput): PromiseLike<ImbricateOriginActionOutcome>;
@@ -7,3 +7,7 @@
7
7
  * Imbricate property key, which should match schema properties unique identifier
8
8
  */
9
9
  export type ImbricatePropertyKey = string;
10
+ /**
11
+ * Imbricate property variant, which should match schema property variants unique identifier
12
+ */
13
+ export type ImbricatePropertyVariant = string | null;
@@ -4,7 +4,7 @@
4
4
  * @description Interface
5
5
  */
6
6
  import { ImbricateCommonQueryOriginActionsOutcome, ImbricateCommonQueryOriginActionsQuery, ImbricateOriginActionInput, ImbricateOriginActionOutcome } from "../common/action";
7
- import { ImbricatePropertyKey } from "./definition";
7
+ import { ImbricatePropertyKey, ImbricatePropertyVariant } from "./definition";
8
8
  import { IMBRICATE_PROPERTY_FEATURE } from "./feature";
9
9
  import { IMBRICATE_PROPERTY_TYPE, ImbricatePropertyValueObject } from "./type";
10
10
  export interface IImbricateProperty<T extends IMBRICATE_PROPERTY_TYPE> {
@@ -20,6 +20,10 @@ export interface IImbricateProperty<T extends IMBRICATE_PROPERTY_TYPE> {
20
20
  * Property value
21
21
  */
22
22
  readonly propertyValue: ImbricatePropertyValueObject<T>;
23
+ /**
24
+ * Property variant
25
+ */
26
+ readonly propertyVariant: ImbricatePropertyVariant;
23
27
  /**
24
28
  * Supported features of the property
25
29
  */
package/property/map.d.ts CHANGED
@@ -3,9 +3,9 @@
3
3
  * @namespace Property
4
4
  * @description Map
5
5
  */
6
- import { ImbricatePropertyKey } from "./definition";
6
+ import { ImbricatePropertyKey, ImbricatePropertyVariant } from "./definition";
7
7
  import { IImbricateProperty } from "./interface";
8
8
  import { IMBRICATE_PROPERTY_TYPE, ImbricatePropertyValueObject } from "./type";
9
9
  export type ImbricatePropertyRecord = Record<ImbricatePropertyKey, IImbricateProperty<IMBRICATE_PROPERTY_TYPE>>;
10
- export type ImbricatePropertyGenerator<T extends IMBRICATE_PROPERTY_TYPE> = (propertyKey: ImbricatePropertyKey, propertyType: T, propertyValue: ImbricatePropertyValueObject<T>) => IImbricateProperty<T>;
10
+ export type ImbricatePropertyGenerator<T extends IMBRICATE_PROPERTY_TYPE> = (propertyKey: ImbricatePropertyKey, propertyType: T, propertyValue: ImbricatePropertyValueObject<T>, propertyVariant: ImbricatePropertyVariant) => IImbricateProperty<T>;
11
11
  export type ImbricatePropertiesDrafter = (generator: ImbricatePropertyGenerator<IMBRICATE_PROPERTY_TYPE>) => Array<IImbricateProperty<IMBRICATE_PROPERTY_TYPE>>;