lucid-extension-sdk 0.0.229 → 0.0.231

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.
@@ -62,6 +62,16 @@ export type ImageBadgeSettings = {
62
62
  height: number;
63
63
  width: number;
64
64
  };
65
+ export type TextBadgeSettings = {
66
+ bold?: boolean;
67
+ italic?: boolean;
68
+ underline?: boolean;
69
+ rounding?: number;
70
+ minwidth?: number;
71
+ minheight?: number;
72
+ maxfontsize?: number;
73
+ maxtextwidth?: number;
74
+ };
65
75
  export interface StencilConfig {
66
76
  /**
67
77
  * How should we generate the stencil/data graphic from the specified field value?
@@ -124,6 +134,11 @@ export interface StencilConfig {
124
134
  * If onClickHandlerKey is OpenBrowserWindow, this formula calculates the URL to open.
125
135
  */
126
136
  linkFormula?: string;
137
+ /**
138
+ * Allows the same card to have multiple textbadges but have different properties.
139
+ * You can change bold, italic, underline, rounding, minwidth, minheight, maxtextwidth, maxfontsize
140
+ */
141
+ textBadgeSettings?: TextBadgeSettings;
127
142
  }
128
143
  /**
129
144
  * Configuration settings for how to display a particular field on the card itself.
@@ -146,6 +161,7 @@ export type SerializedLucidCardFieldDisplaySettings = {
146
161
  'v'?: VerticalBadgePos;
147
162
  'onClickHandlerKey'?: OnClickHandlerKeys;
148
163
  'imageBadgeSettings'?: ImageBadgeSettings;
164
+ 'textBadgeSettings'?: TextBadgeSettings;
149
165
  };
150
166
  };
151
167
  /** @ignore */
@@ -77,6 +77,7 @@ function serializeLucidCardFieldDisplaySettings(settings) {
77
77
  'v': settings.stencilConfig.verticalPosition,
78
78
  'onClickHandlerKey': settings.stencilConfig.onClickHandlerKey,
79
79
  'imageBadgeSettings': settings.stencilConfig.imageBadgeSettings,
80
+ 'textBadgeSettings': settings.stencilConfig.textBadgeSettings,
80
81
  },
81
82
  };
82
83
  }
@@ -95,6 +96,7 @@ function deserializeLucidCardFieldDisplaySettings(settings) {
95
96
  verticalPosition: settings['StencilConfig']['v'],
96
97
  onClickHandlerKey: settings['StencilConfig']['onClickHandlerKey'],
97
98
  imageBadgeSettings: settings['StencilConfig']['imageBadgeSettings'],
99
+ textBadgeSettings: settings['StencilConfig']['textBadgeSettings'],
98
100
  },
99
101
  };
100
102
  }
package/core/checks.d.ts CHANGED
@@ -134,7 +134,7 @@ export declare function isEmptyOrNullishObject(val: unknown): val is {};
134
134
  export declare function isAny(val: unknown): val is any;
135
135
  export declare function isUnknown(val: unknown): val is unknown;
136
136
  export declare function isPromise(val: unknown): val is Promise<unknown>;
137
- export declare function isLiteral<T extends string | number | symbol | true | false>(t: T): (x: unknown) => x is T;
137
+ export declare function isLiteral<T extends string | number | symbol | boolean>(t: T): (x: unknown) => x is T;
138
138
  type AbstractConstructor<T> = Function & {
139
139
  prototype: T;
140
140
  };
@@ -24,7 +24,7 @@ function serializeBaseFieldTypeDefinition(baseFieldType) {
24
24
  baseFieldType instanceof fieldtypearray_1.FieldTypeArray ||
25
25
  baseFieldType instanceof ndimensionalfieldtypearray_1.NDimensionalFieldTypeArray ||
26
26
  baseFieldType instanceof collectionenumfieldtype_1.CollectionEnumFieldType) {
27
- return baseFieldType.serialize();
27
+ return baseFieldType.toJSON();
28
28
  }
29
29
  return baseFieldType;
30
30
  }
@@ -22,7 +22,7 @@ export declare class CollectionEnumFieldType {
22
22
  */
23
23
  static readonly PRIMARY_KEY = CollectionEnumFieldNames.Id;
24
24
  constructor(collectionId: string);
25
- serialize(): SerializedCollectionEnumFieldType;
25
+ toJSON(): SerializedCollectionEnumFieldType;
26
26
  }
27
27
  export declare const isCollectionEnumFieldType: (fieldType: FieldTypeDefinition) => fieldType is CollectionEnumFieldType;
28
28
  export type SerializedCollectionEnumFieldType = {
@@ -22,7 +22,7 @@ class CollectionEnumFieldType {
22
22
  constructor(collectionId) {
23
23
  this.collectionId = collectionId;
24
24
  }
25
- serialize() {
25
+ toJSON() {
26
26
  return { [exports.CollectionEnumFieldTypeKey]: this.collectionId };
27
27
  }
28
28
  }
@@ -7,7 +7,7 @@ export declare abstract class BaseFieldTypeArray<Type> {
7
7
  protected abstract serializeType(t: Type): SerializedFieldTypeArraySubTypes;
8
8
  getInnerTypes(): Type[];
9
9
  getInnerNonArrayTypes(): Exclude<Type, BaseFieldTypeArray<Type>>[];
10
- serialize(): SerializedFieldTypeArray;
10
+ toJSON(): SerializedFieldTypeArray;
11
11
  }
12
12
  export type FieldTypeArraySubTypes = ScalarFieldTypeEnum | CollectionEnumFieldType | LiteralFieldType | FieldTypeArray<any>;
13
13
  export type SerializedFieldTypeArraySubTypes = ScalarFieldTypeEnum | SerializedLiteralFieldType | SerializedFieldTypeArray | SerializedCollectionEnumFieldType;
@@ -15,7 +15,7 @@ class BaseFieldTypeArray {
15
15
  getInnerNonArrayTypes() {
16
16
  return this.validTypesArray.filter((innerType) => !(innerType instanceof BaseFieldTypeArray));
17
17
  }
18
- serialize() {
18
+ toJSON() {
19
19
  return {
20
20
  'ND': false,
21
21
  'validTypes': this.validTypesArray.map((t) => this.serializeType(t)),
@@ -25,7 +25,7 @@ class BaseFieldTypeArray {
25
25
  exports.BaseFieldTypeArray = BaseFieldTypeArray;
26
26
  class FieldTypeArray extends BaseFieldTypeArray {
27
27
  serializeType(t) {
28
- return (0, scalarfieldtype_1.isScalarFieldTypeEnum)(t) ? t : t.serialize();
28
+ return (0, scalarfieldtype_1.isScalarFieldTypeEnum)(t) ? t : t.toJSON();
29
29
  }
30
30
  }
31
31
  exports.FieldTypeArray = FieldTypeArray;
@@ -6,7 +6,7 @@ export declare class LiteralFieldType {
6
6
  constructor(literal: boolean | number | string);
7
7
  getLiteral(): string | number | boolean;
8
8
  getScalarFieldType(): ScalarFieldTypeEnum;
9
- serialize(): SerializedLiteralFieldType;
9
+ toJSON(): SerializedLiteralFieldType;
10
10
  }
11
11
  export declare function isLiteralFieldType(fieldType: any): fieldType is LiteralFieldType;
12
12
  export type SerializedLiteralFieldType = string;
@@ -25,7 +25,7 @@ class LiteralFieldType {
25
25
  getScalarFieldType() {
26
26
  return this.scalarFieldType;
27
27
  }
28
- serialize() {
28
+ toJSON() {
29
29
  if (this.scalarFieldType === scalarfieldtype_1.ScalarFieldTypeEnum.STRING) {
30
30
  return LiteralFieldType.literalStringPrefix + this.literal;
31
31
  }
@@ -5,7 +5,7 @@ export declare class NDimensionalFieldTypeArray {
5
5
  constructor(validTypesArray: (ScalarFieldTypeEnum | LiteralFieldType)[]);
6
6
  getInnerTypes(): (ScalarFieldTypeEnum | LiteralFieldType | this)[];
7
7
  getInnerNonArrayTypes(): (ScalarFieldTypeEnum | LiteralFieldType)[];
8
- serialize(): SerializedNDimensionalFieldTypeArray;
8
+ toJSON(): SerializedNDimensionalFieldTypeArray;
9
9
  }
10
10
  export declare function isValidTypeForNDimensionalFieldTypeArray(fieldType: any): fieldType is ScalarFieldTypeEnum | LiteralFieldType;
11
11
  export declare function isNDimensionalFieldTypeArray(fieldType: any): fieldType is NDimensionalFieldTypeArray;
@@ -14,10 +14,10 @@ class NDimensionalFieldTypeArray {
14
14
  getInnerNonArrayTypes() {
15
15
  return this.validTypesArray.filter((innerType) => (0, scalarfieldtype_1.isScalarFieldTypeEnum)(innerType) || (0, literalfieldtype_1.isLiteralFieldType)(innerType));
16
16
  }
17
- serialize() {
17
+ toJSON() {
18
18
  return {
19
19
  'ND': true,
20
- 'validTypes': this.validTypesArray.map((t) => ((0, scalarfieldtype_1.isScalarFieldTypeEnum)(t) ? t : t.serialize())),
20
+ 'validTypes': this.validTypesArray.map((t) => ((0, scalarfieldtype_1.isScalarFieldTypeEnum)(t) ? t : t.toJSON())),
21
21
  };
22
22
  }
23
23
  }
@@ -7,7 +7,7 @@ export interface JsonObject {
7
7
  * @ignore
8
8
  */
9
9
  export interface JsonObjectConvertible {
10
- toJsonObject(): JsonObject;
10
+ toJSON(): JsonSerializable;
11
11
  }
12
12
  /**
13
13
  * Any type that can be natively converted to a string with JSON.stringify.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lucid-extension-sdk",
3
- "version": "0.0.229",
3
+ "version": "0.0.231",
4
4
  "description": "Utility classes for writing Lucid Software editor extensions",
5
5
  "main": "index.js",
6
6
  "types": "index.d.ts",