@contrail/documents 1.1.15 → 1.1.17

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.
@@ -1,5 +1,11 @@
1
1
  import { TypeProperty } from '@contrail/types';
2
2
  import { DocumentElement } from '../../types/document-element';
3
+ export declare enum DYNAMIC_TEXT_DATA_SOURCE {
4
+ PROJECT = "project",
5
+ BOARD = "board",
6
+ SHOWCASE = "showcase",
7
+ FRAME = "frame"
8
+ }
3
9
  export declare enum DynamicTextDisplayFunction {
4
10
  VALUE = "value",
5
11
  LABEL = "label",
@@ -34,6 +40,7 @@ export declare class DynamicTextUtil {
34
40
  name: string;
35
41
  id?: string;
36
42
  }, componentModels: any[], ownerReferenceModel?: any): string;
43
+ static calculateSize(dynamicTextElement: DocumentElement, entityType: any, text: string): import("../..").SizeDefinition;
37
44
  static getTextFromFrameMemberValues(displayFunction: string, property: any, memberValues: any[]): string;
38
45
  private static getItemCount;
39
46
  }
@@ -1,8 +1,16 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DynamicTextUtil = exports.HARD_CODED_TEXT = exports.CLICK_TO_CONFIGURE = exports.MOVE_TO_FRAME_TEXT = exports.DynamicTextDisplayFunction = void 0;
3
+ exports.DynamicTextUtil = exports.HARD_CODED_TEXT = exports.CLICK_TO_CONFIGURE = exports.MOVE_TO_FRAME_TEXT = exports.DynamicTextDisplayFunction = exports.DYNAMIC_TEXT_DATA_SOURCE = void 0;
4
4
  const types_1 = require("@contrail/types");
5
5
  const util_1 = require("@contrail/util");
6
+ const document_util_1 = require("@contrail/document-util");
7
+ var DYNAMIC_TEXT_DATA_SOURCE;
8
+ (function (DYNAMIC_TEXT_DATA_SOURCE) {
9
+ DYNAMIC_TEXT_DATA_SOURCE["PROJECT"] = "project";
10
+ DYNAMIC_TEXT_DATA_SOURCE["BOARD"] = "board";
11
+ DYNAMIC_TEXT_DATA_SOURCE["SHOWCASE"] = "showcase";
12
+ DYNAMIC_TEXT_DATA_SOURCE["FRAME"] = "frame";
13
+ })(DYNAMIC_TEXT_DATA_SOURCE = exports.DYNAMIC_TEXT_DATA_SOURCE || (exports.DYNAMIC_TEXT_DATA_SOURCE = {}));
6
14
  var DynamicTextDisplayFunction;
7
15
  (function (DynamicTextDisplayFunction) {
8
16
  DynamicTextDisplayFunction["VALUE"] = "value";
@@ -119,6 +127,37 @@ class DynamicTextUtil {
119
127
  }
120
128
  return text;
121
129
  }
130
+ static calculateSize(dynamicTextElement, entityType, text) {
131
+ var _a, _b, _c, _d;
132
+ let size = dynamicTextElement.size;
133
+ const fontFamily = (_a = document_util_1.DocumentStyleUtil.getFirstFontFamily(dynamicTextElement === null || dynamicTextElement === void 0 ? void 0 : dynamicTextElement.text)) !== null && _a !== void 0 ? _a : document_util_1.DEFAULT_TEXT_FONT_FAMILY;
134
+ const fontSize = document_util_1.DocumentStyleUtil.toPx((_d = (_c = (_b = dynamicTextElement.style) === null || _b === void 0 ? void 0 : _b.font) === null || _c === void 0 ? void 0 : _c.size) !== null && _d !== void 0 ? _d : document_util_1.DEFAULT_TEXT_FONT_SIZE, 4);
135
+ const padding = dynamicTextElement.isTextTool ? document_util_1.TEXT_TOOL_PADDING : document_util_1.TEXT_BOX_PADDING;
136
+ const bold = document_util_1.DocumentStyleUtil.isBold(dynamicTextElement === null || dynamicTextElement === void 0 ? void 0 : dynamicTextElement.text, fontFamily);
137
+ const italic = document_util_1.DocumentStyleUtil.isItalic(dynamicTextElement === null || dynamicTextElement === void 0 ? void 0 : dynamicTextElement.text);
138
+ const measureTextSettings = {
139
+ fontFamily,
140
+ fontSize,
141
+ fallbackFontFamily: document_util_1.DEFAULT_TEXT_FONT_FAMILY,
142
+ letterSpacing: document_util_1.DEFAULT_LETTER_SPACING,
143
+ bold,
144
+ italic,
145
+ };
146
+ if (!dynamicTextElement.isTextTool) {
147
+ measureTextSettings.width = dynamicTextElement.size.width - padding * 2;
148
+ }
149
+ try {
150
+ const dimensions = document_util_1.DocumentTextUtil.measureText(text, measureTextSettings);
151
+ const width = dimensions.width + padding * 2;
152
+ const height = dimensions.height + padding * 2;
153
+ size = {
154
+ width,
155
+ height: dynamicTextElement.isTextTool ? height : Math.max(size.height, height),
156
+ };
157
+ }
158
+ catch (e) { }
159
+ return size;
160
+ }
122
161
  static getTextFromFrameMemberValues(displayFunction, property, memberValues) {
123
162
  let text = '';
124
163
  if (memberValues.length === 0) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@contrail/documents",
3
- "version": "1.1.15",
3
+ "version": "1.1.17",
4
4
  "description": "Documents library for contrail platform",
5
5
  "main": "lib/index.js",
6
6
  "types": "lib/index.d.ts",
@@ -41,7 +41,7 @@
41
41
  "@contrail/actions": "^1.0.14",
42
42
  "@contrail/document-table": "^1.0.2",
43
43
  "@contrail/types": "^3.0.95",
44
- "@contrail/util": "^1.0.19",
44
+ "@contrail/document-util": "^1.0.7",
45
45
  "reflect-metadata": "^0.1.13"
46
46
  }
47
47
  }