@lighthouse/common 4.25.0 → 4.25.1-canary.1464

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.
@@ -229,7 +229,8 @@ function buildTemplateFieldRow({
229
229
  const isTextField = fieldtype === 'text';
230
230
  const is12HourTimeField = fieldtype === 'time' && options.format === 'h:mm a';
231
231
  const is24HourTimeField = fieldtype === 'time' && options.format === 'HH:mm';
232
- const isDisplayImageField = fieldtype === 'image-display' && showOnRead; // NOTE: only show field when show on read is true
232
+ const isDisplayImageField = fieldtype === 'image-display' && showOnRead;
233
+ const isReferenceField = fieldtype === 'reference'; // NOTE: only show field when show on read is true
233
234
 
234
235
  if (!showOnRead) return null;
235
236
  const labelText = [{
@@ -319,6 +320,16 @@ function buildTemplateFieldRow({
319
320
  return [labelText, displayValue];
320
321
  }
321
322
 
323
+ if (isReferenceField) {
324
+ const parsedValue = (0, _.parseValue)(value.label);
325
+ const displayValue = (0, _lodash.isArray)(parsedValue) ? {
326
+ text: (0, _lodash.join)(parsedValue, ', ')
327
+ } : {
328
+ text: parsedValue
329
+ };
330
+ return [labelText, displayValue];
331
+ }
332
+
322
333
  if (isStarField) {
323
334
  if (!value) return [labelText, ''];
324
335
  const displayValue = value === '1' ? `${value} star` : `${value} stars`;
@@ -211,7 +211,8 @@ export function buildTemplateFieldRow(_ref3) {
211
211
  var isTextField = fieldtype === 'text';
212
212
  var is12HourTimeField = fieldtype === 'time' && options.format === 'h:mm a';
213
213
  var is24HourTimeField = fieldtype === 'time' && options.format === 'HH:mm';
214
- var isDisplayImageField = fieldtype === 'image-display' && showOnRead; // NOTE: only show field when show on read is true
214
+ var isDisplayImageField = fieldtype === 'image-display' && showOnRead;
215
+ var isReferenceField = fieldtype === 'reference'; // NOTE: only show field when show on read is true
215
216
 
216
217
  if (!showOnRead) return null;
217
218
  var labelText = [{
@@ -323,20 +324,32 @@ export function buildTemplateFieldRow(_ref3) {
323
324
  return [labelText, displayValue];
324
325
  }
325
326
 
327
+ if (isReferenceField) {
328
+ var _parsedValue = parseValue(value.label);
329
+
330
+ var _displayValue3 = isArray(_parsedValue) ? {
331
+ text: join(_parsedValue, ', ')
332
+ } : {
333
+ text: _parsedValue
334
+ };
335
+
336
+ return [labelText, _displayValue3];
337
+ }
338
+
326
339
  if (isStarField) {
327
340
  if (!value) return [labelText, ''];
328
341
 
329
- var _displayValue3 = value === '1' ? "".concat(value, " star") : "".concat(value, " stars");
342
+ var _displayValue4 = value === '1' ? "".concat(value, " star") : "".concat(value, " stars");
330
343
 
331
- return [labelText, _displayValue3];
344
+ return [labelText, _displayValue4];
332
345
  }
333
346
 
334
347
  if (isDayFirstDateField || isMonthFirstDateField || is12HourTimeField || is24HourTimeField) {
335
348
  var format = options.format;
336
349
 
337
- var _displayValue4 = value ? moment(value).tz(timezone).format(format) : '';
350
+ var _displayValue5 = value ? moment(value).tz(timezone).format(format) : '';
338
351
 
339
- return [labelText, _displayValue4];
352
+ return [labelText, _displayValue5];
340
353
  } // NOTE: if no match above null values will be stripped within calling fn
341
354
 
342
355
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/pdf/helpers/fields/index.js"],"names":["isArray","isEmpty","join","first","map","startsWith","Promise","moment","buildFetchUrl","fetchImage","imageNotFound","videoIcon","imageTables","parseValue","text","toPdf","buildFile","file","settings","extension","name","path","awsS3BaseUrl","link","margin","buildImage","options","alignment","filepath","height","width","cloudinaryBaseUrl","isVideoType","RegExp","test","fit","image","url","quality","then","base64String","catch","buildSummaryField","field","timezone","fieldtype","value","isDayFirstDateField","format","isMonthFirstDateField","isFileField","isHtmlField","type","isNumberField","isPhotoField","isSelectField","isSignatureField","isStarField","isSwitchField","isTextField","is12HourTimeField","is24HourTimeField","isDataImage","fileList","ol","parsedValue","displayValue","fontSize","tz","buildTemplateFieldRow","skipped","label","showOnRead","isDisplayImageField","labelText","parsed","replace","values","fieldImages","tables","imagesRow","colSpan","layout","hLineWidth","paddingLeft","paddingRight","paddingTop","paddingBottom","vLineWidth","table","body","widths","string"],"mappings":"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","sourcesContent":["import { isArray, isEmpty, join, first, map, startsWith } from 'lodash'\nimport Promise from 'bluebird'\nimport moment from 'moment-timezone'\n\nimport { buildFetchUrl, fetchImage } from '../../../helpers'\nimport { imageNotFound, videoIcon } from '../../../images'\nimport { imageTables, parseValue, text, toPdf } from '../'\n\nexport function buildFile({ file, settings }) {\n const { extension, name, path } = file\n const { awsS3BaseUrl } = settings\n\n const link = `${awsS3BaseUrl}/${path}`\n return text(`${name}.${extension}`, { link, margin: [0, 0, 0, 10] })\n}\n\nfunction buildImage(options) {\n const {\n alignment = 'center',\n filepath,\n height = 210,\n settings,\n width = 210,\n } = options\n const { awsS3BaseUrl, cloudinaryBaseUrl } = settings\n\n const isVideoType = new RegExp('.mp4$').test(filepath)\n const link = `${awsS3BaseUrl}/${filepath}`\n\n if (isVideoType) {\n return {\n alignment,\n fit: [width, height],\n image: videoIcon,\n link,\n }\n }\n\n const url = buildFetchUrl(filepath, {\n awsS3BaseUrl,\n cloudinaryBaseUrl,\n fit: true,\n height: 400,\n width: 600,\n quality: 50,\n })\n\n return fetchImage(url)\n .then(base64String => ({\n alignment,\n fit: [width, height],\n image: base64String,\n link,\n }))\n .catch(() => ({\n alignment,\n fit: [width, height],\n image: imageNotFound,\n }))\n}\n\nexport function buildSummaryField({ field, settings, timezone }) {\n const { fieldtype, options = {}, value } = field\n\n const isDayFirstDateField =\n fieldtype === 'date' && options.format === 'DD/MM/YY'\n const isMonthFirstDateField =\n fieldtype === 'date' && options.format === 'MM/DD/YY'\n const isFileField = fieldtype === 'file'\n const isHtmlField = fieldtype === 'text' && options.type === 'html'\n const isNumberField = fieldtype === 'number'\n const isPhotoField = fieldtype === 'list' && options.type === 'media'\n const isSelectField = fieldtype === 'select' && options.type !== 'stars'\n const isSignatureField = fieldtype === 'text' && options.type === 'signature'\n const isStarField = fieldtype === 'select' && options.type === 'stars'\n const isSwitchField = fieldtype === 'switch'\n const isTextField = fieldtype === 'text'\n const is12HourTimeField = fieldtype === 'time' && options.format === 'h:mm a'\n const is24HourTimeField = fieldtype === 'time' && options.format === 'HH:mm'\n\n // NOTE: html field is not supported for the summary fields but adding\n // logic to catch this and return empty text for completeness\n if (isHtmlField) {\n return { text: '' }\n }\n\n if (isSignatureField) {\n if (!value) return ''\n\n if (isDataImage(value)) {\n return { alignment: 'left', image: value, width: 140 }\n }\n\n return fetchImage(value)\n .then(base64String => {\n return {\n alignment: 'left',\n image: base64String,\n width: 140,\n }\n })\n .catch(() => {\n return {\n alignment: 'left',\n image: imageNotFound,\n width: 140,\n }\n })\n }\n\n if (isPhotoField) {\n const filepath = first(value)\n\n // NOTE: if no filepath return empty text as user has not uploaded an image\n // for this field\n if (!filepath) {\n return { text: '' }\n }\n\n const image = buildImage({\n alignment: 'left',\n filepath,\n height: 140,\n width: 140,\n settings,\n })\n\n return image\n }\n\n if (isFileField) {\n const fileList = map(value, file => buildFile({ file, settings }))\n return { ol: fileList }\n }\n\n if (isNumberField || isSelectField || isSwitchField || isTextField) {\n const parsedValue = parseValue(value)\n const displayValue = isArray(parsedValue)\n ? { text: join(parsedValue, ', '), fontSize: 7 }\n : { text: parsedValue, fontSize: 7 }\n\n return displayValue\n }\n\n if (isStarField) {\n if (!value) return ''\n const displayValue = value === '1' ? `${value} star` : `${value} stars`\n return displayValue\n }\n\n if (\n isDayFirstDateField ||\n isMonthFirstDateField ||\n is12HourTimeField ||\n is24HourTimeField\n ) {\n const format = options.format\n const displayValue = moment(value)\n .tz(timezone)\n .format(format)\n\n return displayValue\n }\n\n // NOTE: return empty text fallback value when no match\n return { text: '' }\n}\n\nexport function buildTemplateFieldRow({ field, settings, timezone, skipped }) {\n const { fieldtype, label, options = {}, value } = field\n const { showOnRead = true } = options\n\n const isDayFirstDateField =\n fieldtype === 'date' && options.format === 'DD/MM/YY'\n const isMonthFirstDateField =\n fieldtype === 'date' && options.format === 'MM/DD/YY'\n const isFileField = fieldtype === 'file'\n const isHtmlField = fieldtype === 'text' && options.type === 'html'\n const isNumberField = fieldtype === 'number'\n const isPhotoField = fieldtype === 'list' && options.type === 'media'\n const isSelectField = fieldtype === 'select' && options.type !== 'stars'\n const isSignatureField = fieldtype === 'text' && options.type === 'signature'\n const isStarField = fieldtype === 'select' && options.type === 'stars'\n const isSwitchField = fieldtype === 'switch'\n const isTextField = fieldtype === 'text'\n const is12HourTimeField = fieldtype === 'time' && options.format === 'h:mm a'\n const is24HourTimeField = fieldtype === 'time' && options.format === 'HH:mm'\n const isDisplayImageField = fieldtype === 'image-display' && showOnRead\n\n // NOTE: only show field when show on read is true\n if (!showOnRead) return null\n\n const labelText = [{ text: label }]\n\n if (skipped) {\n return [labelText, [{ text: '-' }]]\n }\n\n if (isHtmlField) {\n const parsed = value.replace(/<p><\\/p>/g, '')\n return [labelText, toPdf(parsed)]\n }\n\n if (isSignatureField) {\n if (!value) return [labelText, '']\n\n return fetchImage(value)\n .then(base64String => {\n const values = {\n alignment: 'left',\n image: base64String,\n width: 140,\n }\n return [labelText, values]\n })\n .catch(() => [\n labelText,\n {\n alignment: 'left',\n image: imageNotFound,\n width: 140,\n },\n ])\n }\n\n if (isDisplayImageField) {\n return Promise.map([value], filepath =>\n buildImage({ filepath, settings })\n ).then(fieldImages => [fieldImages, {}])\n }\n\n if (isPhotoField) {\n return Promise.map(value, filepath =>\n buildImage({ filepath, settings })\n ).then(fieldImages => {\n const tables = !isEmpty(fieldImages) ? imageTables(fieldImages) : []\n\n const imagesRow = {\n colSpan: 2,\n layout: {\n hLineWidth: () => 0,\n paddingLeft: () => 0,\n paddingRight: () => 0,\n paddingTop: () => 0,\n paddingBottom: () => 0,\n vLineWidth: () => 0,\n },\n table: {\n body: [labelText, ...tables],\n widths: ['*'],\n },\n }\n\n // NOTE: pass empty value here as otherwise\n // we can accidentally hide content below\n // this row. Please see the following issue:\n // https://github.com/bpampuch/pdfmake/issues/1598\n return [imagesRow, {}]\n })\n }\n\n if (isFileField) {\n const fileList = map(value, file => buildFile({ file, settings }))\n return [labelText, { ol: fileList }]\n }\n\n if (isNumberField || isSelectField || isSwitchField || isTextField) {\n const parsedValue = parseValue(value)\n const displayValue = isArray(parsedValue)\n ? { text: join(parsedValue, ', ') }\n : { text: parsedValue }\n\n return [labelText, displayValue]\n }\n\n if (isStarField) {\n if (!value) return [labelText, '']\n const displayValue = value === '1' ? `${value} star` : `${value} stars`\n return [labelText, displayValue]\n }\n\n if (\n isDayFirstDateField ||\n isMonthFirstDateField ||\n is12HourTimeField ||\n is24HourTimeField\n ) {\n const format = options.format\n const displayValue = value\n ? moment(value)\n .tz(timezone)\n .format(format)\n : ''\n\n return [labelText, displayValue]\n }\n\n // NOTE: if no match above null values will be stripped within calling fn\n return null\n}\n\nfunction isDataImage(string) {\n return startsWith(string, 'data:image/png;')\n}\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../../../src/pdf/helpers/fields/index.js"],"names":["isArray","isEmpty","join","first","map","startsWith","Promise","moment","buildFetchUrl","fetchImage","imageNotFound","videoIcon","imageTables","parseValue","text","toPdf","buildFile","file","settings","extension","name","path","awsS3BaseUrl","link","margin","buildImage","options","alignment","filepath","height","width","cloudinaryBaseUrl","isVideoType","RegExp","test","fit","image","url","quality","then","base64String","catch","buildSummaryField","field","timezone","fieldtype","value","isDayFirstDateField","format","isMonthFirstDateField","isFileField","isHtmlField","type","isNumberField","isPhotoField","isSelectField","isSignatureField","isStarField","isSwitchField","isTextField","is12HourTimeField","is24HourTimeField","isDataImage","fileList","ol","parsedValue","displayValue","fontSize","tz","buildTemplateFieldRow","skipped","label","showOnRead","isDisplayImageField","isReferenceField","labelText","parsed","replace","values","fieldImages","tables","imagesRow","colSpan","layout","hLineWidth","paddingLeft","paddingRight","paddingTop","paddingBottom","vLineWidth","table","body","widths","string"],"mappings":"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","sourcesContent":["import { isArray, isEmpty, join, first, map, startsWith } from 'lodash'\nimport Promise from 'bluebird'\nimport moment from 'moment-timezone'\n\nimport { buildFetchUrl, fetchImage } from '../../../helpers'\nimport { imageNotFound, videoIcon } from '../../../images'\nimport { imageTables, parseValue, text, toPdf } from '../'\n\nexport function buildFile({ file, settings }) {\n const { extension, name, path } = file\n const { awsS3BaseUrl } = settings\n\n const link = `${awsS3BaseUrl}/${path}`\n return text(`${name}.${extension}`, { link, margin: [0, 0, 0, 10] })\n}\n\nfunction buildImage(options) {\n const {\n alignment = 'center',\n filepath,\n height = 210,\n settings,\n width = 210,\n } = options\n const { awsS3BaseUrl, cloudinaryBaseUrl } = settings\n\n const isVideoType = new RegExp('.mp4$').test(filepath)\n const link = `${awsS3BaseUrl}/${filepath}`\n\n if (isVideoType) {\n return {\n alignment,\n fit: [width, height],\n image: videoIcon,\n link,\n }\n }\n\n const url = buildFetchUrl(filepath, {\n awsS3BaseUrl,\n cloudinaryBaseUrl,\n fit: true,\n height: 400,\n width: 600,\n quality: 50,\n })\n\n return fetchImage(url)\n .then(base64String => ({\n alignment,\n fit: [width, height],\n image: base64String,\n link,\n }))\n .catch(() => ({\n alignment,\n fit: [width, height],\n image: imageNotFound,\n }))\n}\n\nexport function buildSummaryField({ field, settings, timezone }) {\n const { fieldtype, options = {}, value } = field\n\n const isDayFirstDateField =\n fieldtype === 'date' && options.format === 'DD/MM/YY'\n const isMonthFirstDateField =\n fieldtype === 'date' && options.format === 'MM/DD/YY'\n const isFileField = fieldtype === 'file'\n const isHtmlField = fieldtype === 'text' && options.type === 'html'\n const isNumberField = fieldtype === 'number'\n const isPhotoField = fieldtype === 'list' && options.type === 'media'\n const isSelectField = fieldtype === 'select' && options.type !== 'stars'\n const isSignatureField = fieldtype === 'text' && options.type === 'signature'\n const isStarField = fieldtype === 'select' && options.type === 'stars'\n const isSwitchField = fieldtype === 'switch'\n const isTextField = fieldtype === 'text'\n const is12HourTimeField = fieldtype === 'time' && options.format === 'h:mm a'\n const is24HourTimeField = fieldtype === 'time' && options.format === 'HH:mm'\n\n // NOTE: html field is not supported for the summary fields but adding\n // logic to catch this and return empty text for completeness\n if (isHtmlField) {\n return { text: '' }\n }\n\n if (isSignatureField) {\n if (!value) return ''\n\n if (isDataImage(value)) {\n return { alignment: 'left', image: value, width: 140 }\n }\n\n return fetchImage(value)\n .then(base64String => {\n return {\n alignment: 'left',\n image: base64String,\n width: 140,\n }\n })\n .catch(() => {\n return {\n alignment: 'left',\n image: imageNotFound,\n width: 140,\n }\n })\n }\n\n if (isPhotoField) {\n const filepath = first(value)\n\n // NOTE: if no filepath return empty text as user has not uploaded an image\n // for this field\n if (!filepath) {\n return { text: '' }\n }\n\n const image = buildImage({\n alignment: 'left',\n filepath,\n height: 140,\n width: 140,\n settings,\n })\n\n return image\n }\n\n if (isFileField) {\n const fileList = map(value, file => buildFile({ file, settings }))\n return { ol: fileList }\n }\n\n if (isNumberField || isSelectField || isSwitchField || isTextField) {\n const parsedValue = parseValue(value)\n const displayValue = isArray(parsedValue)\n ? { text: join(parsedValue, ', '), fontSize: 7 }\n : { text: parsedValue, fontSize: 7 }\n\n return displayValue\n }\n\n if (isStarField) {\n if (!value) return ''\n const displayValue = value === '1' ? `${value} star` : `${value} stars`\n return displayValue\n }\n\n if (\n isDayFirstDateField ||\n isMonthFirstDateField ||\n is12HourTimeField ||\n is24HourTimeField\n ) {\n const format = options.format\n const displayValue = moment(value)\n .tz(timezone)\n .format(format)\n\n return displayValue\n }\n\n // NOTE: return empty text fallback value when no match\n return { text: '' }\n}\n\nexport function buildTemplateFieldRow({ field, settings, timezone, skipped }) {\n const { fieldtype, label, options = {}, value } = field\n const { showOnRead = true } = options\n\n const isDayFirstDateField =\n fieldtype === 'date' && options.format === 'DD/MM/YY'\n const isMonthFirstDateField =\n fieldtype === 'date' && options.format === 'MM/DD/YY'\n const isFileField = fieldtype === 'file'\n const isHtmlField = fieldtype === 'text' && options.type === 'html'\n const isNumberField = fieldtype === 'number'\n const isPhotoField = fieldtype === 'list' && options.type === 'media'\n const isSelectField = fieldtype === 'select' && options.type !== 'stars'\n const isSignatureField = fieldtype === 'text' && options.type === 'signature'\n const isStarField = fieldtype === 'select' && options.type === 'stars'\n const isSwitchField = fieldtype === 'switch'\n const isTextField = fieldtype === 'text'\n const is12HourTimeField = fieldtype === 'time' && options.format === 'h:mm a'\n const is24HourTimeField = fieldtype === 'time' && options.format === 'HH:mm'\n const isDisplayImageField = fieldtype === 'image-display' && showOnRead\n const isReferenceField = fieldtype === 'reference'\n\n // NOTE: only show field when show on read is true\n if (!showOnRead) return null\n\n const labelText = [{ text: label }]\n\n if (skipped) {\n return [labelText, [{ text: '-' }]]\n }\n\n if (isHtmlField) {\n const parsed = value.replace(/<p><\\/p>/g, '')\n return [labelText, toPdf(parsed)]\n }\n\n if (isSignatureField) {\n if (!value) return [labelText, '']\n\n return fetchImage(value)\n .then(base64String => {\n const values = {\n alignment: 'left',\n image: base64String,\n width: 140,\n }\n return [labelText, values]\n })\n .catch(() => [\n labelText,\n {\n alignment: 'left',\n image: imageNotFound,\n width: 140,\n },\n ])\n }\n\n if (isDisplayImageField) {\n return Promise.map([value], filepath =>\n buildImage({ filepath, settings })\n ).then(fieldImages => [fieldImages, {}])\n }\n\n if (isPhotoField) {\n return Promise.map(value, filepath =>\n buildImage({ filepath, settings })\n ).then(fieldImages => {\n const tables = !isEmpty(fieldImages) ? imageTables(fieldImages) : []\n\n const imagesRow = {\n colSpan: 2,\n layout: {\n hLineWidth: () => 0,\n paddingLeft: () => 0,\n paddingRight: () => 0,\n paddingTop: () => 0,\n paddingBottom: () => 0,\n vLineWidth: () => 0,\n },\n table: {\n body: [labelText, ...tables],\n widths: ['*'],\n },\n }\n\n // NOTE: pass empty value here as otherwise\n // we can accidentally hide content below\n // this row. Please see the following issue:\n // https://github.com/bpampuch/pdfmake/issues/1598\n return [imagesRow, {}]\n })\n }\n\n if (isFileField) {\n const fileList = map(value, file => buildFile({ file, settings }))\n return [labelText, { ol: fileList }]\n }\n\n if (isNumberField || isSelectField || isSwitchField || isTextField) {\n const parsedValue = parseValue(value)\n const displayValue = isArray(parsedValue)\n ? { text: join(parsedValue, ', ') }\n : { text: parsedValue }\n\n return [labelText, displayValue]\n }\n\n if (isReferenceField) {\n const parsedValue = parseValue(value.label)\n const displayValue = isArray(parsedValue)\n ? { text: join(parsedValue, ', ') }\n : { text: parsedValue }\n\n return [labelText, displayValue]\n }\n\n if (isStarField) {\n if (!value) return [labelText, '']\n const displayValue = value === '1' ? `${value} star` : `${value} stars`\n return [labelText, displayValue]\n }\n\n if (\n isDayFirstDateField ||\n isMonthFirstDateField ||\n is12HourTimeField ||\n is24HourTimeField\n ) {\n const format = options.format\n const displayValue = value\n ? moment(value)\n .tz(timezone)\n .format(format)\n : ''\n\n return [labelText, displayValue]\n }\n\n // NOTE: if no match above null values will be stripped within calling fn\n return null\n}\n\nfunction isDataImage(string) {\n return startsWith(string, 'data:image/png;')\n}\n"],"file":"index.js"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lighthouse/common",
3
- "version": "4.25.0",
3
+ "version": "4.25.1-canary.1464",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "module": "lib/index.js",