@lighthouse/common 6.7.1 → 6.8.0-canary.99

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.
package/.mise.toml CHANGED
@@ -1,5 +1,5 @@
1
1
  [tools]
2
- node = "22.12.0"
2
+ node = "18"
3
3
  yarn = "1.22.22"
4
4
 
5
5
  [env]
@@ -12,15 +12,18 @@ function getAuditItemsData(items, data) {
12
12
  awsS3BaseUrl,
13
13
  cloudinaryBaseUrl,
14
14
  cloudfrontBaseUrl,
15
- Policy,
16
- KeyPairId,
17
- Signature,
15
+ Policy = '',
16
+ KeyPairId = '',
17
+ Signature = '',
18
18
  shouldUseCloudfront
19
19
  } = {},
20
20
  entity: {
21
21
  groupScores
22
22
  } = {}
23
23
  } = data;
24
+ console.info({
25
+ data
26
+ });
24
27
  const groupedItems = (0, _lodash.groupBy)(items, 'group.id');
25
28
  const auditData = {
26
29
  overallActualScore: 0,
@@ -53,6 +56,10 @@ function getAuditItemsData(items, data) {
53
56
  const hasScore = item.score !== null && item.score !== -1;
54
57
  const rawAssets = item.assets || [];
55
58
  const assetCount = rawAssets.length;
59
+ console.log({
60
+ rawAssets,
61
+ item
62
+ });
56
63
  const assets = rawAssets.map((asset, assetIndex) => {
57
64
  const assetUrl = (0, _.buildFetchUrl)(asset, {
58
65
  awsS3BaseUrl,
@@ -67,6 +74,7 @@ function getAuditItemsData(items, data) {
67
74
  KeyPairId,
68
75
  Signature
69
76
  });
77
+ console.log(JSON.stringify(item, null, 2));
70
78
  const link = shouldUseCloudfront ? `${cloudfrontBaseUrl}/${item.signedAssets[assetIndex]}` : `${awsS3BaseUrl}/${asset}`;
71
79
  const thumbnailUrl = (0, _.buildFetchUrl)(asset, {
72
80
  awsS3BaseUrl,
@@ -35,6 +35,7 @@ var _helpers2 = require("../../helpers");
35
35
  * @returns {Promise} returns pdfmake definition object
36
36
  */
37
37
  function buildAuditPdf(pdfOptions, data) {
38
+ console.info(JSON.stringify(data, null, 2));
38
39
  const {
39
40
  entity,
40
41
  timezone
@@ -15,7 +15,8 @@ var _images = require("../../../images");
15
15
  var _ = require("../");
16
16
  function buildFile({
17
17
  file,
18
- settings
18
+ settings,
19
+ signedAsset
19
20
  }) {
20
21
  const {
21
22
  extension,
@@ -23,9 +24,11 @@ function buildFile({
23
24
  path
24
25
  } = file;
25
26
  const {
26
- awsS3BaseUrl
27
+ awsS3BaseUrl,
28
+ shouldUseCloudfront,
29
+ cloudfrontBaseUrl
27
30
  } = settings;
28
- const link = `${awsS3BaseUrl}/${path}`;
31
+ const link = shouldUseCloudfront ? `${cloudfrontBaseUrl}/${signedAsset}` : `${awsS3BaseUrl}/${path}`;
29
32
  return (0, _.text)(`${name}.${extension}`, {
30
33
  link,
31
34
  margin: [0, 0, 0, 10]
@@ -294,10 +297,14 @@ function buildTemplateFieldRow({
294
297
  });
295
298
  }
296
299
  if (isFileField) {
297
- const fileList = (0, _lodash.map)(value, file => buildFile({
298
- file,
299
- settings
300
- }));
300
+ const fileList = (0, _lodash.map)(value, (file, index) => {
301
+ const signedAsset = signedAssets[index];
302
+ return buildFile({
303
+ file,
304
+ settings,
305
+ signedAsset
306
+ });
307
+ });
301
308
  return [labelText, {
302
309
  ol: fileList
303
310
  }];
@@ -7,13 +7,19 @@ export function getAuditItemsData(items, data) {
7
7
  awsS3BaseUrl = _data$settings2.awsS3BaseUrl,
8
8
  cloudinaryBaseUrl = _data$settings2.cloudinaryBaseUrl,
9
9
  cloudfrontBaseUrl = _data$settings2.cloudfrontBaseUrl,
10
- Policy = _data$settings2.Policy,
11
- KeyPairId = _data$settings2.KeyPairId,
12
- Signature = _data$settings2.Signature,
10
+ _data$settings2$Polic = _data$settings2.Policy,
11
+ Policy = _data$settings2$Polic === void 0 ? '' : _data$settings2$Polic,
12
+ _data$settings2$KeyPa = _data$settings2.KeyPairId,
13
+ KeyPairId = _data$settings2$KeyPa === void 0 ? '' : _data$settings2$KeyPa,
14
+ _data$settings2$Signa = _data$settings2.Signature,
15
+ Signature = _data$settings2$Signa === void 0 ? '' : _data$settings2$Signa,
13
16
  shouldUseCloudfront = _data$settings2.shouldUseCloudfront,
14
17
  _data$entity = data.entity,
15
18
  _data$entity2 = _data$entity === void 0 ? {} : _data$entity,
16
19
  groupScores = _data$entity2.groupScores;
20
+ console.info({
21
+ data: data
22
+ });
17
23
  var groupedItems = groupBy(items, 'group.id');
18
24
  var auditData = {
19
25
  overallActualScore: 0,
@@ -46,6 +52,10 @@ export function getAuditItemsData(items, data) {
46
52
  var hasScore = item.score !== null && item.score !== -1;
47
53
  var rawAssets = item.assets || [];
48
54
  var assetCount = rawAssets.length;
55
+ console.log({
56
+ rawAssets: rawAssets,
57
+ item: item
58
+ });
49
59
  var assets = rawAssets.map(function (asset, assetIndex) {
50
60
  var assetUrl = buildFetchUrl(asset, {
51
61
  awsS3BaseUrl: awsS3BaseUrl,
@@ -60,6 +70,7 @@ export function getAuditItemsData(items, data) {
60
70
  KeyPairId: KeyPairId,
61
71
  Signature: Signature
62
72
  });
73
+ console.log(JSON.stringify(item, null, 2));
63
74
  var link = shouldUseCloudfront ? "".concat(cloudfrontBaseUrl, "/").concat(item.signedAssets[assetIndex]) : "".concat(awsS3BaseUrl, "/").concat(asset);
64
75
  var thumbnailUrl = buildFetchUrl(asset, _defineProperty(_defineProperty(_defineProperty(_defineProperty({
65
76
  awsS3BaseUrl: awsS3BaseUrl,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["find","groupBy","map","get","round","buildFetchUrl","getAuditItemsData","items","data","_data$settings","settings","_data$settings2","awsS3BaseUrl","cloudinaryBaseUrl","cloudfrontBaseUrl","Policy","KeyPairId","Signature","shouldUseCloudfront","_data$entity","entity","_data$entity2","groupScores","groupedItems","auditData","overallActualScore","overallMaximumScore","groupIndex","key","skipped","group","title","label","groupData","groupMaximumScore","groupActualScore","groupResultScore","groupPercentageResultScore","currentGroupScores","max","actual","result","percentageResult","item","itemIndex","hasScore","score","rawAssets","assets","assetCount","length","asset","assetIndex","assetUrl","height","width","quality","fit","link","concat","signedAssets","thumbnailUrl","_defineProperty","comments","matchingScore","scores","value","scoreLabel","scoreWeight","weight","questionId","_id"],"sources":["../../../src/helpers/get-audit-items-data/index.js"],"sourcesContent":["import { find, groupBy, map, get, round } from 'lodash'\n\nimport { buildFetchUrl } from '../'\n\nexport function getAuditItemsData(items, data) {\n const {\n settings: {\n awsS3BaseUrl,\n cloudinaryBaseUrl,\n cloudfrontBaseUrl,\n Policy,\n KeyPairId,\n Signature,\n shouldUseCloudfront,\n } = {},\n entity: { groupScores } = {},\n } = data\n\n const groupedItems = groupBy(items, 'group.id')\n\n const auditData = {\n overallActualScore: 0,\n overallMaximumScore: 0,\n }\n\n auditData.items = map(groupedItems, (items, groupIndex) => {\n const key = groupIndex\n const skipped = !!items[0].group.skipped\n const title = items[0].group.label\n\n const groupData = {\n key,\n groupMaximumScore: 0,\n groupActualScore: 0,\n groupResultScore: 0,\n groupPercentageResultScore: 0,\n skipped,\n title,\n }\n\n const currentGroupScores = get(groupScores, key)\n\n if (currentGroupScores) {\n groupData.groupMaximumScore = round(currentGroupScores.max, 2)\n groupData.groupActualScore = round(currentGroupScores.actual, 2)\n groupData.groupResultScore = currentGroupScores.result\n groupData.groupPercentageResultScore = currentGroupScores.percentageResult\n }\n\n groupData.items = items.map((item, itemIndex) => {\n // NOTE: we handle scores of -1, 0 and 1\n // -1 scores are skipped from group max and actual score\n // 0 and 1 must be included in the final scores\n const hasScore = item.score !== null && item.score !== -1\n const rawAssets = item.assets || []\n const assetCount = rawAssets.length\n\n const assets = rawAssets.map((asset, assetIndex) => {\n const assetUrl = buildFetchUrl(asset, {\n awsS3BaseUrl,\n cloudfrontBaseUrl,\n cloudinaryBaseUrl,\n height: 400,\n width: 600,\n quality: 50,\n fit: true,\n shouldUseCloudfront,\n Policy,\n KeyPairId,\n Signature,\n })\n\n const link = shouldUseCloudfront\n ? `${cloudfrontBaseUrl}/${item.signedAssets[assetIndex]}`\n : `${awsS3BaseUrl}/${asset}`\n\n const thumbnailUrl = buildFetchUrl(asset, {\n awsS3BaseUrl,\n cloudfrontBaseUrl,\n cloudinaryBaseUrl,\n shouldUseCloudfront,\n width: 100,\n quality: 50,\n fit: true,\n shouldUseCloudfront,\n Policy,\n KeyPairId,\n Signature,\n })\n\n const key = `${groupIndex}-item-asset-${assetIndex}`\n\n return {\n assetUrl,\n key,\n link,\n thumbnailUrl,\n }\n })\n\n const comments = item.comments\n const label = item.label\n const score = item.score\n const key = `${groupIndex}-item-${itemIndex}`\n const matchingScore = find(item.scores, { value: score })\n\n // NOTE: ensure we have a score otherwise fallback to - value\n const scoreLabel =\n hasScore && matchingScore && !skipped ? matchingScore.label : '-'\n const scoreWeight = hasScore && !skipped ? item.scoreWeight : '-'\n const weight = hasScore ? item.weight : '-'\n\n return {\n assetCount,\n assets,\n comments,\n key,\n label,\n questionId: item._id,\n score,\n scoreLabel,\n scoreWeight,\n weight,\n }\n })\n\n return groupData\n })\n\n return auditData\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["find","groupBy","map","get","round","buildFetchUrl","getAuditItemsData","items","data","_data$settings","settings","_data$settings2","awsS3BaseUrl","cloudinaryBaseUrl","cloudfrontBaseUrl","_data$settings2$Polic","Policy","_data$settings2$KeyPa","KeyPairId","_data$settings2$Signa","Signature","shouldUseCloudfront","_data$entity","entity","_data$entity2","groupScores","console","info","groupedItems","auditData","overallActualScore","overallMaximumScore","groupIndex","key","skipped","group","title","label","groupData","groupMaximumScore","groupActualScore","groupResultScore","groupPercentageResultScore","currentGroupScores","max","actual","result","percentageResult","item","itemIndex","hasScore","score","rawAssets","assets","assetCount","length","log","asset","assetIndex","assetUrl","height","width","quality","fit","JSON","stringify","link","concat","signedAssets","thumbnailUrl","_defineProperty","comments","matchingScore","scores","value","scoreLabel","scoreWeight","weight","questionId","_id"],"sources":["../../../src/helpers/get-audit-items-data/index.js"],"sourcesContent":["import { find, groupBy, map, get, round } from 'lodash'\n\nimport { buildFetchUrl } from '../'\n\nexport function getAuditItemsData(items, data) {\n const {\n settings: {\n awsS3BaseUrl,\n cloudinaryBaseUrl,\n cloudfrontBaseUrl,\n Policy = '',\n KeyPairId = '',\n Signature = '',\n shouldUseCloudfront,\n } = {},\n entity: { groupScores } = {},\n } = data\n console.info({ data })\n const groupedItems = groupBy(items, 'group.id')\n\n const auditData = {\n overallActualScore: 0,\n overallMaximumScore: 0,\n }\n\n auditData.items = map(groupedItems, (items, groupIndex) => {\n const key = groupIndex\n const skipped = !!items[0].group.skipped\n const title = items[0].group.label\n\n const groupData = {\n key,\n groupMaximumScore: 0,\n groupActualScore: 0,\n groupResultScore: 0,\n groupPercentageResultScore: 0,\n skipped,\n title,\n }\n\n const currentGroupScores = get(groupScores, key)\n\n if (currentGroupScores) {\n groupData.groupMaximumScore = round(currentGroupScores.max, 2)\n groupData.groupActualScore = round(currentGroupScores.actual, 2)\n groupData.groupResultScore = currentGroupScores.result\n groupData.groupPercentageResultScore = currentGroupScores.percentageResult\n }\n\n groupData.items = items.map((item, itemIndex) => {\n // NOTE: we handle scores of -1, 0 and 1\n // -1 scores are skipped from group max and actual score\n // 0 and 1 must be included in the final scores\n const hasScore = item.score !== null && item.score !== -1\n const rawAssets = item.assets || []\n const assetCount = rawAssets.length\n\n console.log({ rawAssets, item })\n const assets = rawAssets.map((asset, assetIndex) => {\n const assetUrl = buildFetchUrl(asset, {\n awsS3BaseUrl,\n cloudfrontBaseUrl,\n cloudinaryBaseUrl,\n height: 400,\n width: 600,\n quality: 50,\n fit: true,\n shouldUseCloudfront,\n Policy,\n KeyPairId,\n Signature,\n })\n\n console.log(JSON.stringify(item, null, 2))\n const link = shouldUseCloudfront\n ? `${cloudfrontBaseUrl}/${item.signedAssets[assetIndex]}`\n : `${awsS3BaseUrl}/${asset}`\n\n const thumbnailUrl = buildFetchUrl(asset, {\n awsS3BaseUrl,\n cloudfrontBaseUrl,\n cloudinaryBaseUrl,\n shouldUseCloudfront,\n width: 100,\n quality: 50,\n fit: true,\n shouldUseCloudfront,\n Policy,\n KeyPairId,\n Signature,\n })\n\n const key = `${groupIndex}-item-asset-${assetIndex}`\n\n return {\n assetUrl,\n key,\n link,\n thumbnailUrl,\n }\n })\n\n const comments = item.comments\n const label = item.label\n const score = item.score\n const key = `${groupIndex}-item-${itemIndex}`\n const matchingScore = find(item.scores, { value: score })\n\n // NOTE: ensure we have a score otherwise fallback to - value\n const scoreLabel =\n hasScore && matchingScore && !skipped ? matchingScore.label : '-'\n const scoreWeight = hasScore && !skipped ? item.scoreWeight : '-'\n const weight = hasScore ? item.weight : '-'\n\n return {\n assetCount,\n assets,\n comments,\n key,\n label,\n questionId: item._id,\n score,\n scoreLabel,\n scoreWeight,\n weight,\n }\n })\n\n return groupData\n })\n\n return auditData\n}\n"],"mappings":"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","ignoreList":[]}
@@ -33,6 +33,7 @@ import { getAuditEntryDetails } from '../../helpers';
33
33
  * @returns {Promise} returns pdfmake definition object
34
34
  */
35
35
  export function buildAuditPdf(pdfOptions, data) {
36
+ console.info(JSON.stringify(data, null, 2));
36
37
  var entity = data.entity,
37
38
  timezone = data.timezone;
38
39
  var _pdfOptions$flags = pdfOptions.flags,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["Promise","isEmpty","round","moment","buildAuditContent","buildAuditFollowUps","buildTemplateContent","generateDefinition","getFormattedAddress","horizontalLine","text","twoColumnTable","getAuditEntryDetails","buildAuditPdf","pdfOptions","data","entity","timezone","_pdfOptions$flags","flags","sequenceId","timestamp","createdAt","title","fileTitle","concat","generateContent","then","content","_objectSpread","type","catch","err","Error","message","_entity$followUps","followUps","_entity$footerFields","footerFields","_entity$gps","gps","_entity$headerFields","headerFields","_entity$score","score","_entity$title","entityDetails","gpsText","groupedData","locationText","referenceValue","timezoneHourTime","scoreText","target","targetServiceLevel","renderTargetFields","headerTitle","style","headerScore","alignment","firstRow","subTitle","headerSubTitle","colSpan","secondRow","reverseGeocoded","address","renderHeaderAddress","dummyColumn","headerAddress","renderThirdRow","thirdRow","serviceLevelBelow","serviceLevelText","scoreServiceLevelSubTitle","truncatedTargetPercent","scoreTargetText","scoreTargetSubTitle","scoreBreakdown","actual","max","scorePercentage","scoreTitle","body","submittedAtInTimezone","submittedAt","tz","format","showSimplifiedDuration","push","startedAtInTimezone","startedAt","momentDuration","duration","Math","abs","formDuration","days","floor","asDays","toString","padStart","hours","minutes","seconds","formattedFormDuration","titleTable","layout","widths","margin","totalScoreTable","hLineTop","hLineBottom","followUpItems","promises","entry","items","settings","footerTemplate","formGroups","headerTemplate","auditItemsTitle","font","lineHeight","props","_ref","_toConsumableArray"],"sources":["../../../src/pdf/audit/index.js"],"sourcesContent":["import Promise from 'bluebird'\nimport { isEmpty, round } from 'lodash'\nimport moment from 'moment-timezone'\n\nimport {\n buildAuditContent,\n buildAuditFollowUps,\n buildTemplateContent,\n generateDefinition,\n getFormattedAddress,\n horizontalLine,\n text,\n twoColumnTable,\n} from '../helpers'\nimport { getAuditEntryDetails } from '../../helpers'\n\n/**\n * buildAuditPdf\n *\n * @param {object} pdfOptions - the pdf options\n * @param {string} pdfOptions.fileTitle - pdf file title\n * @param {function} pdfOptions.footer - function executed to generate footer\n * @param {function} pdfOptions.header - function executed to generate header\n * @param {string} pdfOptions.logoUrl - pdf logo url\n * @param {array} pdfOptions.pageMargins - pdf page margins\n * @param {string} pdfOptions.pageOrientation - pdf page orientation\n * @param {string} pdfOptions.pageSize - pdf page size\n * @param {object} pdfOptions.styles - pdf styles\n * @param {object} pdfOptions.title - pdf title\n * @param {object} pdfOptions.flags - flags to conditionally render parts of the pdf\n * @param {object} data - pdf data\n * @param {object} data.entity - audit document\n * @param {object} data.locations - locations documents\n * @param {object} data.settings - settings properties\n * @param {string} data.settings.awsS3BaseUrl - aws S3 base url\n * @param {string} data.settings.cloudinaryBaseUrl - cloudinary base url\n * @param {string} data.timezone - timezone string\n * @param {object} data.users - application user documents\n * @returns {Promise} returns pdfmake definition object\n */\nexport function buildAuditPdf(pdfOptions, data) {\n const { entity, timezone } = data\n const { flags = {} } = pdfOptions\n\n const sequenceId = entity.sequenceId\n const timestamp = entity.createdAt\n const title = entity.title || 'Unknown'\n const fileTitle = `Audit Report - ${title}`\n\n return generateContent(data, flags)\n .then(content =>\n generateDefinition({\n content,\n fileTitle,\n sequenceId,\n timestamp,\n timezone,\n type: 'Audit',\n ...pdfOptions,\n })\n )\n .catch(err => {\n throw new Error(`BuildAuditPdfError: ${err.message}`)\n })\n}\n\nfunction generateContent(data) {\n const { entity } = data\n\n const {\n followUps = [],\n footerFields = {},\n gps = {},\n headerFields = {},\n score = {},\n title = 'Unknown',\n } = entity\n\n const timezone = entity?.timezone || data?.timezone || 'UTC'\n const entityDetails = getAuditEntryDetails(data)\n\n const {\n gpsText,\n groupedData,\n locationText,\n referenceValue,\n timezoneHourTime,\n scoreText,\n target,\n targetServiceLevel,\n } = entityDetails\n\n const renderTargetFields = !!targetServiceLevel\n const headerTitle = text(title, { style: 'title' })\n const headerScore = text(scoreText, { alignment: 'right', style: 'title' })\n const firstRow = [headerTitle, headerScore]\n const subTitle = `${locationText ||\n gpsText} - ${timezoneHourTime} by ${referenceValue}`\n\n let headerSubTitle = text(subTitle, { colSpan: 2, style: 'subTitle' })\n let secondRow = [headerSubTitle]\n\n const reverseGeocoded = gps.reverseGeocoded\n const address = !isEmpty(reverseGeocoded)\n ? getFormattedAddress(reverseGeocoded)\n : ''\n const renderHeaderAddress = !isEmpty(reverseGeocoded)\n const dummyColumn = text(' ', { style: 'small' })\n\n let headerAddress = text(address, { colSpan: 2, style: 'small' })\n const renderThirdRow = renderHeaderAddress || renderTargetFields\n let thirdRow = renderHeaderAddress ? [headerAddress] : []\n\n if (renderTargetFields) {\n headerSubTitle = text(subTitle, { style: 'subTitle' })\n\n const serviceLevelBelow = targetServiceLevel === 'below'\n const serviceLevelText =\n targetServiceLevel === 'above'\n ? 'Above Target'\n : targetServiceLevel === 'on'\n ? 'On Target'\n : targetServiceLevel === 'below'\n ? 'Below Target'\n : ''\n\n const scoreServiceLevelSubTitle = text(serviceLevelText, {\n alignment: 'right',\n style: serviceLevelBelow ? 'serviceLevelBelow' : 'serviceLevelAboveOrOn',\n })\n\n secondRow = [headerSubTitle, scoreServiceLevelSubTitle]\n headerAddress = text(address, { style: 'small' })\n\n const truncatedTargetPercent = round(target, 2)\n const scoreTargetText = `(Target - ${truncatedTargetPercent}%)`\n const scoreTargetSubTitle = text(scoreTargetText, {\n alignment: 'right',\n style: 'subTitle',\n })\n\n thirdRow = renderHeaderAddress\n ? [headerAddress, scoreTargetSubTitle]\n : [dummyColumn, scoreTargetSubTitle]\n }\n\n const scoreBreakdown = text(\n `${round(score.actual, 2)} / ${round(score.max, 2)}`,\n {\n alignment: 'right',\n style: 'totalScore',\n }\n )\n const scorePercentage = text(scoreText, {\n alignment: 'right',\n colSpan: 2,\n style: 'totalAuditScore',\n })\n const scoreTitle = text('Total Score', { style: 'totalScore' })\n\n const body = renderThirdRow\n ? [firstRow, secondRow, thirdRow]\n : [firstRow, secondRow]\n\n const submittedAtInTimezone = entity.submittedAt\n ? moment(entity.submittedAt)\n .tz(timezone)\n .format('YYYY-MM-DD HH:mm:ss z')\n : 'Not recorded'\n const submittedAt = text(`Submitted: ${submittedAtInTimezone}`, {\n colSpan: 2,\n style: 'small',\n })\n\n if (entity.showSimplifiedDuration) {\n body.push([submittedAt, dummyColumn])\n } else {\n const startedAtInTimezone = entity.startedAt\n ? moment(entity.startedAt)\n .tz(timezone)\n .format('YYYY-MM-DD HH:mm:ss z')\n : 'Not recorded'\n const startedAt = text(`Started: ${startedAtInTimezone}`, {\n colSpan: 2,\n style: 'small',\n })\n\n const submittedAtInTimezone = entity.submittedAt\n ? moment(entity.submittedAt)\n .tz(timezone)\n .format('YYYY-MM-DD HH:mm:ss z')\n : 'Not recorded'\n const submittedAt = text(`Submitted: ${submittedAtInTimezone}`, {\n colSpan: 2,\n style: 'small',\n })\n\n const momentDuration = moment.duration(Math.abs(entity.formDuration))\n const days = Math.floor(momentDuration.asDays())\n .toString()\n .padStart(2, '0')\n const hours = Math.floor(momentDuration.hours())\n .toString()\n .padStart(2, '0')\n const minutes = momentDuration\n .minutes()\n .toString()\n .padStart(2, '0')\n const seconds = momentDuration\n .seconds()\n .toString()\n .padStart(2, '0')\n const formattedFormDuration = entity.formDuration\n ? `${\n entity.formDuration < 0 ? '-' : ''\n }${days}:${hours}:${minutes}:${seconds}`\n : 'Not recorded'\n const formDuration = text(\n `Form Duration (DD:HH:MM:SS): ${formattedFormDuration}`,\n {\n colSpan: 2,\n style: 'small',\n }\n )\n\n body.push([startedAt, dummyColumn])\n body.push([submittedAt, dummyColumn])\n body.push([formDuration, dummyColumn])\n }\n\n const titleTable = twoColumnTable({\n body,\n layout: 'noBorders',\n style: 'titleTable',\n widths: ['*', 100],\n margin: [0, 0, 0, 30],\n })\n\n const totalScoreTable = twoColumnTable({\n body: [[scoreTitle, scoreBreakdown], [scorePercentage]],\n layout: 'noBorders',\n widths: ['*', 100],\n })\n\n const hLineTop = horizontalLine({ margin: [0, 10, 0, 0] })\n const hLineBottom = horizontalLine()\n\n const followUpItems = buildAuditFollowUps(followUps, { timezone })\n\n const promises = {\n entry: buildAuditContent(groupedData.items, data.settings),\n footerTemplate: buildTemplateContent(footerFields.formGroups, data),\n headerTemplate: buildTemplateContent(headerFields.formGroups, data),\n }\n\n const auditItemsTitle = [\n {\n text: 'Audit Items',\n style: {\n font: 'Gotham',\n lineHeight: 1.1,\n },\n },\n hLineTop,\n ]\n\n return Promise.props(promises)\n .then(({ entry, footerTemplate, headerTemplate }) => [\n titleTable,\n followUpItems,\n ...auditItemsTitle,\n ...headerTemplate,\n ...entry,\n hLineTop,\n totalScoreTable,\n hLineBottom,\n ...footerTemplate,\n ])\n .catch(err => {\n throw new Error(`GenerateContentError: ${err.message}`)\n })\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["Promise","isEmpty","round","moment","buildAuditContent","buildAuditFollowUps","buildTemplateContent","generateDefinition","getFormattedAddress","horizontalLine","text","twoColumnTable","getAuditEntryDetails","buildAuditPdf","pdfOptions","data","console","info","JSON","stringify","entity","timezone","_pdfOptions$flags","flags","sequenceId","timestamp","createdAt","title","fileTitle","concat","generateContent","then","content","_objectSpread","type","catch","err","Error","message","_entity$followUps","followUps","_entity$footerFields","footerFields","_entity$gps","gps","_entity$headerFields","headerFields","_entity$score","score","_entity$title","entityDetails","gpsText","groupedData","locationText","referenceValue","timezoneHourTime","scoreText","target","targetServiceLevel","renderTargetFields","headerTitle","style","headerScore","alignment","firstRow","subTitle","headerSubTitle","colSpan","secondRow","reverseGeocoded","address","renderHeaderAddress","dummyColumn","headerAddress","renderThirdRow","thirdRow","serviceLevelBelow","serviceLevelText","scoreServiceLevelSubTitle","truncatedTargetPercent","scoreTargetText","scoreTargetSubTitle","scoreBreakdown","actual","max","scorePercentage","scoreTitle","body","submittedAtInTimezone","submittedAt","tz","format","showSimplifiedDuration","push","startedAtInTimezone","startedAt","momentDuration","duration","Math","abs","formDuration","days","floor","asDays","toString","padStart","hours","minutes","seconds","formattedFormDuration","titleTable","layout","widths","margin","totalScoreTable","hLineTop","hLineBottom","followUpItems","promises","entry","items","settings","footerTemplate","formGroups","headerTemplate","auditItemsTitle","font","lineHeight","props","_ref","_toConsumableArray"],"sources":["../../../src/pdf/audit/index.js"],"sourcesContent":["import Promise from 'bluebird'\nimport { isEmpty, round } from 'lodash'\nimport moment from 'moment-timezone'\n\nimport {\n buildAuditContent,\n buildAuditFollowUps,\n buildTemplateContent,\n generateDefinition,\n getFormattedAddress,\n horizontalLine,\n text,\n twoColumnTable,\n} from '../helpers'\nimport { getAuditEntryDetails } from '../../helpers'\n\n/**\n * buildAuditPdf\n *\n * @param {object} pdfOptions - the pdf options\n * @param {string} pdfOptions.fileTitle - pdf file title\n * @param {function} pdfOptions.footer - function executed to generate footer\n * @param {function} pdfOptions.header - function executed to generate header\n * @param {string} pdfOptions.logoUrl - pdf logo url\n * @param {array} pdfOptions.pageMargins - pdf page margins\n * @param {string} pdfOptions.pageOrientation - pdf page orientation\n * @param {string} pdfOptions.pageSize - pdf page size\n * @param {object} pdfOptions.styles - pdf styles\n * @param {object} pdfOptions.title - pdf title\n * @param {object} pdfOptions.flags - flags to conditionally render parts of the pdf\n * @param {object} data - pdf data\n * @param {object} data.entity - audit document\n * @param {object} data.locations - locations documents\n * @param {object} data.settings - settings properties\n * @param {string} data.settings.awsS3BaseUrl - aws S3 base url\n * @param {string} data.settings.cloudinaryBaseUrl - cloudinary base url\n * @param {string} data.timezone - timezone string\n * @param {object} data.users - application user documents\n * @returns {Promise} returns pdfmake definition object\n */\nexport function buildAuditPdf(pdfOptions, data) {\n console.info(JSON.stringify(data, null, 2))\n const { entity, timezone } = data\n const { flags = {} } = pdfOptions\n\n const sequenceId = entity.sequenceId\n const timestamp = entity.createdAt\n const title = entity.title || 'Unknown'\n const fileTitle = `Audit Report - ${title}`\n\n return generateContent(data, flags)\n .then((content) =>\n generateDefinition({\n content,\n fileTitle,\n sequenceId,\n timestamp,\n timezone,\n type: 'Audit',\n ...pdfOptions,\n })\n )\n .catch((err) => {\n throw new Error(`BuildAuditPdfError: ${err.message}`)\n })\n}\n\nfunction generateContent(data) {\n const { entity } = data\n\n const {\n followUps = [],\n footerFields = {},\n gps = {},\n headerFields = {},\n score = {},\n title = 'Unknown',\n } = entity\n\n const timezone = entity?.timezone || data?.timezone || 'UTC'\n const entityDetails = getAuditEntryDetails(data)\n\n const {\n gpsText,\n groupedData,\n locationText,\n referenceValue,\n timezoneHourTime,\n scoreText,\n target,\n targetServiceLevel,\n } = entityDetails\n\n const renderTargetFields = !!targetServiceLevel\n const headerTitle = text(title, { style: 'title' })\n const headerScore = text(scoreText, { alignment: 'right', style: 'title' })\n const firstRow = [headerTitle, headerScore]\n const subTitle = `${\n locationText || gpsText\n } - ${timezoneHourTime} by ${referenceValue}`\n\n let headerSubTitle = text(subTitle, { colSpan: 2, style: 'subTitle' })\n let secondRow = [headerSubTitle]\n\n const reverseGeocoded = gps.reverseGeocoded\n const address = !isEmpty(reverseGeocoded)\n ? getFormattedAddress(reverseGeocoded)\n : ''\n const renderHeaderAddress = !isEmpty(reverseGeocoded)\n const dummyColumn = text(' ', { style: 'small' })\n\n let headerAddress = text(address, { colSpan: 2, style: 'small' })\n const renderThirdRow = renderHeaderAddress || renderTargetFields\n let thirdRow = renderHeaderAddress ? [headerAddress] : []\n\n if (renderTargetFields) {\n headerSubTitle = text(subTitle, { style: 'subTitle' })\n\n const serviceLevelBelow = targetServiceLevel === 'below'\n const serviceLevelText =\n targetServiceLevel === 'above'\n ? 'Above Target'\n : targetServiceLevel === 'on'\n ? 'On Target'\n : targetServiceLevel === 'below'\n ? 'Below Target'\n : ''\n\n const scoreServiceLevelSubTitle = text(serviceLevelText, {\n alignment: 'right',\n style: serviceLevelBelow ? 'serviceLevelBelow' : 'serviceLevelAboveOrOn',\n })\n\n secondRow = [headerSubTitle, scoreServiceLevelSubTitle]\n headerAddress = text(address, { style: 'small' })\n\n const truncatedTargetPercent = round(target, 2)\n const scoreTargetText = `(Target - ${truncatedTargetPercent}%)`\n const scoreTargetSubTitle = text(scoreTargetText, {\n alignment: 'right',\n style: 'subTitle',\n })\n\n thirdRow = renderHeaderAddress\n ? [headerAddress, scoreTargetSubTitle]\n : [dummyColumn, scoreTargetSubTitle]\n }\n\n const scoreBreakdown = text(\n `${round(score.actual, 2)} / ${round(score.max, 2)}`,\n {\n alignment: 'right',\n style: 'totalScore',\n }\n )\n const scorePercentage = text(scoreText, {\n alignment: 'right',\n colSpan: 2,\n style: 'totalAuditScore',\n })\n const scoreTitle = text('Total Score', { style: 'totalScore' })\n\n const body = renderThirdRow\n ? [firstRow, secondRow, thirdRow]\n : [firstRow, secondRow]\n\n const submittedAtInTimezone = entity.submittedAt\n ? moment(entity.submittedAt).tz(timezone).format('YYYY-MM-DD HH:mm:ss z')\n : 'Not recorded'\n const submittedAt = text(`Submitted: ${submittedAtInTimezone}`, {\n colSpan: 2,\n style: 'small',\n })\n\n if (entity.showSimplifiedDuration) {\n body.push([submittedAt, dummyColumn])\n } else {\n const startedAtInTimezone = entity.startedAt\n ? moment(entity.startedAt).tz(timezone).format('YYYY-MM-DD HH:mm:ss z')\n : 'Not recorded'\n const startedAt = text(`Started: ${startedAtInTimezone}`, {\n colSpan: 2,\n style: 'small',\n })\n\n const submittedAtInTimezone = entity.submittedAt\n ? moment(entity.submittedAt).tz(timezone).format('YYYY-MM-DD HH:mm:ss z')\n : 'Not recorded'\n const submittedAt = text(`Submitted: ${submittedAtInTimezone}`, {\n colSpan: 2,\n style: 'small',\n })\n\n const momentDuration = moment.duration(Math.abs(entity.formDuration))\n const days = Math.floor(momentDuration.asDays()).toString().padStart(2, '0')\n const hours = Math.floor(momentDuration.hours()).toString().padStart(2, '0')\n const minutes = momentDuration.minutes().toString().padStart(2, '0')\n const seconds = momentDuration.seconds().toString().padStart(2, '0')\n const formattedFormDuration = entity.formDuration\n ? `${\n entity.formDuration < 0 ? '-' : ''\n }${days}:${hours}:${minutes}:${seconds}`\n : 'Not recorded'\n const formDuration = text(\n `Form Duration (DD:HH:MM:SS): ${formattedFormDuration}`,\n {\n colSpan: 2,\n style: 'small',\n }\n )\n\n body.push([startedAt, dummyColumn])\n body.push([submittedAt, dummyColumn])\n body.push([formDuration, dummyColumn])\n }\n\n const titleTable = twoColumnTable({\n body,\n layout: 'noBorders',\n style: 'titleTable',\n widths: ['*', 100],\n margin: [0, 0, 0, 30],\n })\n\n const totalScoreTable = twoColumnTable({\n body: [[scoreTitle, scoreBreakdown], [scorePercentage]],\n layout: 'noBorders',\n widths: ['*', 100],\n })\n\n const hLineTop = horizontalLine({ margin: [0, 10, 0, 0] })\n const hLineBottom = horizontalLine()\n\n const followUpItems = buildAuditFollowUps(followUps, { timezone })\n\n const promises = {\n entry: buildAuditContent(groupedData.items, data.settings),\n footerTemplate: buildTemplateContent(footerFields.formGroups, data),\n headerTemplate: buildTemplateContent(headerFields.formGroups, data),\n }\n\n const auditItemsTitle = [\n {\n text: 'Audit Items',\n style: {\n font: 'Gotham',\n lineHeight: 1.1,\n },\n },\n hLineTop,\n ]\n\n return Promise.props(promises)\n .then(({ entry, footerTemplate, headerTemplate }) => [\n titleTable,\n followUpItems,\n ...auditItemsTitle,\n ...headerTemplate,\n ...entry,\n hLineTop,\n totalScoreTable,\n hLineBottom,\n ...footerTemplate,\n ])\n .catch((err) => {\n throw new Error(`GenerateContentError: ${err.message}`)\n })\n}\n"],"mappings":"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","ignoreList":[]}
@@ -7,12 +7,15 @@ import { videoIcon } from '../../../images';
7
7
  import { imageTables, parseValue, text, toPdf } from '../';
8
8
  export function buildFile(_ref) {
9
9
  var file = _ref.file,
10
- settings = _ref.settings;
10
+ settings = _ref.settings,
11
+ signedAsset = _ref.signedAsset;
11
12
  var extension = file.extension,
12
13
  name = file.name,
13
14
  path = file.path;
14
- var awsS3BaseUrl = settings.awsS3BaseUrl;
15
- var link = "".concat(awsS3BaseUrl, "/").concat(path);
15
+ var awsS3BaseUrl = settings.awsS3BaseUrl,
16
+ shouldUseCloudfront = settings.shouldUseCloudfront,
17
+ cloudfrontBaseUrl = settings.cloudfrontBaseUrl;
18
+ var link = shouldUseCloudfront ? "".concat(cloudfrontBaseUrl, "/").concat(signedAsset) : "".concat(awsS3BaseUrl, "/").concat(path);
16
19
  return text("".concat(name, ".").concat(extension), {
17
20
  link: link,
18
21
  margin: [0, 0, 0, 10]
@@ -298,10 +301,12 @@ export function buildTemplateFieldRow(_ref3) {
298
301
  });
299
302
  }
300
303
  if (isFileField) {
301
- var fileList = map(value, function (file) {
304
+ var fileList = map(value, function (file, index) {
305
+ var signedAsset = signedAssets[index];
302
306
  return buildFile({
303
307
  file: file,
304
- settings: settings
308
+ settings: settings,
309
+ signedAsset: signedAsset
305
310
  });
306
311
  });
307
312
  return [labelText, {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["isArray","isEmpty","join","first","map","startsWith","Promise","moment","buildFetchUrl","fetchImage","videoIcon","imageTables","parseValue","text","toPdf","buildFile","_ref","file","settings","extension","name","path","awsS3BaseUrl","link","concat","margin","buildImage","options","_options$alignment","alignment","filepath","_options$height","height","_options$settings","signedAsset","_options$width","width","cloudinaryBaseUrl","cloudfrontBaseUrl","shouldUseCloudfront","isVideoType","RegExp","test","fit","image","url","quality","then","base64String","buildSummaryField","_ref2","field","timezone","fieldtype","_field$options","value","signedAssets","isDayFirstDateField","format","isMonthFirstDateField","isFileField","isHtmlField","type","isNumberField","isPhotoField","isReferenceField","isSelectField","isSignatureField","isStarField","isSwitchField","isTextField","is12HourTimeField","is24HourTimeField","isDataImage","fileList","ol","parsedValue","displayValue","fontSize","filter","val","label","tz","buildTemplateFieldRow","_ref3","skipped","_field$options2","_options$showOnRead","showOnRead","isDisplayImageField","length","labelText","parsed","replace","values","index","signedAssetValue","fieldImages","tables","imagesRow","colSpan","layout","hLineWidth","paddingLeft","paddingRight","paddingTop","paddingBottom","vLineWidth","table","body","_toConsumableArray","widths","string"],"sources":["../../../../src/pdf/helpers/fields/index.js"],"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 { 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 signedAsset,\n width = 210,\n } = options\n const {\n awsS3BaseUrl,\n cloudinaryBaseUrl,\n cloudfrontBaseUrl,\n shouldUseCloudfront,\n } = settings\n\n const isVideoType = new RegExp('.mp4$').test(filepath)\n\n const link = shouldUseCloudfront\n ? `${cloudfrontBaseUrl}/${signedAsset || filepath}`\n : `${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 cloudfrontBaseUrl,\n cloudinaryBaseUrl,\n fit: true,\n height: 400,\n width: 600,\n quality: 50,\n shouldUseCloudfront,\n })\n\n // NOTE: shouldUseCloudfront, Signature, Policy and KeyPairId from settings are used in this context\n return fetchImage(url, settings).then((base64String) => ({\n alignment,\n fit: [width, height],\n image: base64String,\n link,\n }))\n}\n\nexport function buildSummaryField({ field, settings, timezone }) {\n const { fieldtype, options = {}, value, signedAssets } = field\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 isReferenceField = fieldtype === 'reference'\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 // NOTE: shouldUseCloudfront, Signature, Policy and KeyPairId from settings are used in this context\n return fetchImage(value, settings).then((base64String) => {\n return {\n alignment: 'left',\n image: base64String,\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 signedAsset:\n signedAssets && isArray(signedAssets) ? signedAssets[0] : null,\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 (isReferenceField) {\n const parsedValue = parseValue(value)\n const displayValue = isArray(parsedValue)\n ? {\n text: parsedValue\n .filter((val) => val && val.label)\n .map((val) => val.label)\n .join(', '),\n fontSize: 7,\n }\n : { text: parsedValue.label, 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).tz(timezone).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, signedAssets } = 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 =\n fieldtype === 'image-display' &&\n showOnRead &&\n !(isArray(value) && value.length === 0)\n const isReferenceField = fieldtype === 'reference'\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 // NOTE: shouldUseCloudfront, Signature, Policy and KeyPairId from settings are used in this context\n return fetchImage(value, settings).then((base64String) => {\n const values = {\n alignment: 'left',\n image: base64String,\n width: 140,\n }\n return [labelText, values]\n })\n }\n\n if (isDisplayImageField) {\n return Promise.map([value], (filepath, index) => {\n const signedAssetValue = isArray(signedAssets)\n ? signedAssets[index]\n : signedAssets\n return buildImage({ filepath, settings, signedAsset: signedAssetValue })\n }).then((fieldImages) => [fieldImages, {}])\n }\n\n if (isPhotoField) {\n return Promise.map(value, (filepath, index) => {\n const signedAssetValue = isArray(signedAssets)\n ? signedAssets[index]\n : signedAssets\n return buildImage({ filepath, settings, signedAsset: signedAssetValue })\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)\n const displayValue = isArray(parsedValue)\n ? {\n text: parsedValue\n .filter((val) => val && val.label)\n .map((val) => val.label)\n .join(', '),\n fontSize: 7,\n }\n : { text: parsedValue.label, fontSize: 7 }\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 ? moment(value).tz(timezone).format(format) : ''\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"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["isArray","isEmpty","join","first","map","startsWith","Promise","moment","buildFetchUrl","fetchImage","videoIcon","imageTables","parseValue","text","toPdf","buildFile","_ref","file","settings","signedAsset","extension","name","path","awsS3BaseUrl","shouldUseCloudfront","cloudfrontBaseUrl","link","concat","margin","buildImage","options","_options$alignment","alignment","filepath","_options$height","height","_options$settings","_options$width","width","cloudinaryBaseUrl","isVideoType","RegExp","test","fit","image","url","quality","then","base64String","buildSummaryField","_ref2","field","timezone","fieldtype","_field$options","value","signedAssets","isDayFirstDateField","format","isMonthFirstDateField","isFileField","isHtmlField","type","isNumberField","isPhotoField","isReferenceField","isSelectField","isSignatureField","isStarField","isSwitchField","isTextField","is12HourTimeField","is24HourTimeField","isDataImage","fileList","ol","parsedValue","displayValue","fontSize","filter","val","label","tz","buildTemplateFieldRow","_ref3","skipped","_field$options2","_options$showOnRead","showOnRead","isDisplayImageField","length","labelText","parsed","replace","values","index","signedAssetValue","fieldImages","tables","imagesRow","colSpan","layout","hLineWidth","paddingLeft","paddingRight","paddingTop","paddingBottom","vLineWidth","table","body","_toConsumableArray","widths","string"],"sources":["../../../../src/pdf/helpers/fields/index.js"],"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 { videoIcon } from '../../../images'\nimport { imageTables, parseValue, text, toPdf } from '../'\n\nexport function buildFile({ file, settings, signedAsset }) {\n const { extension, name, path } = file\n const { awsS3BaseUrl, shouldUseCloudfront, cloudfrontBaseUrl } = settings\n\n const link = shouldUseCloudfront\n ? `${cloudfrontBaseUrl}/${signedAsset}`\n : `${awsS3BaseUrl}/${path}`\n\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 signedAsset,\n width = 210,\n } = options\n const {\n awsS3BaseUrl,\n cloudinaryBaseUrl,\n cloudfrontBaseUrl,\n shouldUseCloudfront,\n } = settings\n\n const isVideoType = new RegExp('.mp4$').test(filepath)\n\n const link = shouldUseCloudfront\n ? `${cloudfrontBaseUrl}/${signedAsset || filepath}`\n : `${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 cloudfrontBaseUrl,\n cloudinaryBaseUrl,\n fit: true,\n height: 400,\n width: 600,\n quality: 50,\n shouldUseCloudfront,\n })\n\n // NOTE: shouldUseCloudfront, Signature, Policy and KeyPairId from settings are used in this context\n return fetchImage(url, settings).then((base64String) => ({\n alignment,\n fit: [width, height],\n image: base64String,\n link,\n }))\n}\n\nexport function buildSummaryField({ field, settings, timezone }) {\n const { fieldtype, options = {}, value, signedAssets } = field\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 isReferenceField = fieldtype === 'reference'\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 // NOTE: shouldUseCloudfront, Signature, Policy and KeyPairId from settings are used in this context\n return fetchImage(value, settings).then((base64String) => {\n return {\n alignment: 'left',\n image: base64String,\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 signedAsset:\n signedAssets && isArray(signedAssets) ? signedAssets[0] : null,\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 (isReferenceField) {\n const parsedValue = parseValue(value)\n const displayValue = isArray(parsedValue)\n ? {\n text: parsedValue\n .filter((val) => val && val.label)\n .map((val) => val.label)\n .join(', '),\n fontSize: 7,\n }\n : { text: parsedValue.label, 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).tz(timezone).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, signedAssets } = 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 =\n fieldtype === 'image-display' &&\n showOnRead &&\n !(isArray(value) && value.length === 0)\n const isReferenceField = fieldtype === 'reference'\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 // NOTE: shouldUseCloudfront, Signature, Policy and KeyPairId from settings are used in this context\n return fetchImage(value, settings).then((base64String) => {\n const values = {\n alignment: 'left',\n image: base64String,\n width: 140,\n }\n return [labelText, values]\n })\n }\n\n if (isDisplayImageField) {\n return Promise.map([value], (filepath, index) => {\n const signedAssetValue = isArray(signedAssets)\n ? signedAssets[index]\n : signedAssets\n return buildImage({ filepath, settings, signedAsset: signedAssetValue })\n }).then((fieldImages) => [fieldImages, {}])\n }\n\n if (isPhotoField) {\n return Promise.map(value, (filepath, index) => {\n const signedAssetValue = isArray(signedAssets)\n ? signedAssets[index]\n : signedAssets\n return buildImage({ filepath, settings, signedAsset: signedAssetValue })\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, index) => {\n const signedAsset = signedAssets[index]\n return buildFile({ file, settings, signedAsset })\n })\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)\n const displayValue = isArray(parsedValue)\n ? {\n text: parsedValue\n .filter((val) => val && val.label)\n .map((val) => val.label)\n .join(', '),\n fontSize: 7,\n }\n : { text: parsedValue.label, fontSize: 7 }\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 ? moment(value).tz(timezone).format(format) : ''\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"],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lighthouse/common",
3
- "version": "6.7.1",
3
+ "version": "6.8.0-canary.99",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "module": "lib/index.js",
@@ -27,7 +27,9 @@
27
27
  "type-check": "tsc --noEmit",
28
28
  "type-check:watch": "yarn type-check --watch",
29
29
  "validate:circleci": "circleci config validate -c .circleci/config.yml",
30
- "version": "yarn build"
30
+ "version": "yarn build",
31
+ "watch:es": "nodemon --watch src --ext js,ts --exec \"yarn build:es\"",
32
+ "watch:node": "nodemon --watch src --ext js,ts --exec \"yarn build:node\""
31
33
  },
32
34
  "repository": {
33
35
  "type": "git",
@@ -46,6 +48,7 @@
46
48
  "fetch-ponyfill": "^6.1.0",
47
49
  "lodash": "^4.17.15",
48
50
  "moment-timezone": "0.5.28",
51
+ "nodemon": "^3.1.11",
49
52
  "react-html-parser": "^2.0.2",
50
53
  "yup": "^0.27.0"
51
54
  },
@@ -1 +0,0 @@
1
- [17:05:07.504] [ERROR] Error: Unknown codemod storiesof-to-csf. Run --list for options.