@verdocs/web-sdk 5.0.67 → 5.0.68

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.
Files changed (135) hide show
  1. package/dist/cjs/verdocs-contact-picker.verdocs-multiselect.entry.cjs.js.map +1 -1
  2. package/dist/cjs/verdocs-contact-picker_2.cjs.entry.js +13 -8
  3. package/dist/cjs/verdocs-contact-picker_2.cjs.entry.js.map +1 -1
  4. package/dist/cjs/verdocs-organization-card.verdocs-portal.entry.cjs.js.map +1 -1
  5. package/dist/cjs/verdocs-organization-card_2.cjs.entry.js +5 -1
  6. package/dist/cjs/verdocs-organization-card_2.cjs.entry.js.map +1 -1
  7. package/dist/cjs/verdocs-templates-list.cjs.entry.js +7 -7
  8. package/dist/cjs/verdocs-templates-list.cjs.entry.js.map +1 -1
  9. package/dist/cjs/verdocs-templates-list.entry.cjs.js.map +1 -1
  10. package/dist/collection/components/controls/verdocs-multiselect/verdocs-multiselect.css +23 -0
  11. package/dist/collection/components/controls/verdocs-multiselect/verdocs-multiselect.js +1 -1
  12. package/dist/collection/components/controls/verdocs-multiselect/verdocs-multiselect.js.map +1 -1
  13. package/dist/collection/components/controls/verdocs-portal/verdocs-portal.js +5 -1
  14. package/dist/collection/components/controls/verdocs-portal/verdocs-portal.js.map +1 -1
  15. package/dist/collection/components/envelopes/verdocs-contact-picker/verdocs-contact-picker.js +11 -6
  16. package/dist/collection/components/envelopes/verdocs-contact-picker/verdocs-contact-picker.js.map +1 -1
  17. package/dist/collection/components/templates/verdocs-templates-list/verdocs-templates-list.js +17 -10
  18. package/dist/collection/components/templates/verdocs-templates-list/verdocs-templates-list.js.map +1 -1
  19. package/dist/components/{p-ChSdhofj.js → p-B8oLX6-0.js} +3 -3
  20. package/dist/components/{p-ChSdhofj.js.map → p-B8oLX6-0.js.map} +1 -1
  21. package/dist/components/{p-FMmdRAwT.js → p-BC9E1lIr.js} +14 -14
  22. package/dist/components/{p-FMmdRAwT.js.map → p-BC9E1lIr.js.map} +1 -1
  23. package/dist/components/{p-DcGAyXll.js → p-BPaxQrtW.js} +7 -3
  24. package/dist/components/p-BPaxQrtW.js.map +1 -0
  25. package/dist/components/{p-BF25av2F.js → p-BSopvRgr.js} +3 -3
  26. package/dist/components/{p-BF25av2F.js.map → p-BSopvRgr.js.map} +1 -1
  27. package/dist/components/{p-D-eXKBQK.js → p-BVwBJvZX.js} +3 -3
  28. package/dist/components/{p-D-eXKBQK.js.map → p-BVwBJvZX.js.map} +1 -1
  29. package/dist/components/{p-a2mcI8jM.js → p-BXnjauAt.js} +3 -3
  30. package/dist/components/{p-a2mcI8jM.js.map → p-BXnjauAt.js.map} +1 -1
  31. package/dist/components/{p-C_Iua_8I.js → p-Bd_tIPj6.js} +3 -3
  32. package/dist/components/{p-C_Iua_8I.js.map → p-Bd_tIPj6.js.map} +1 -1
  33. package/dist/components/{p-BiJg4trF.js → p-Blv4Px1q.js} +3 -3
  34. package/dist/components/{p-BiJg4trF.js.map → p-Blv4Px1q.js.map} +1 -1
  35. package/dist/components/{p-BK1G2TCe.js → p-BqQxZHHz.js} +3 -3
  36. package/dist/components/{p-BK1G2TCe.js.map → p-BqQxZHHz.js.map} +1 -1
  37. package/dist/components/{p-BERtpjuC.js → p-C-l2dmJo.js} +3 -3
  38. package/dist/components/{p-BERtpjuC.js.map → p-C-l2dmJo.js.map} +1 -1
  39. package/dist/components/{p-MZFye18Y.js → p-Ch6Kdfra.js} +3 -3
  40. package/dist/components/{p-MZFye18Y.js.map → p-Ch6Kdfra.js.map} +1 -1
  41. package/dist/components/{p-DL0ugSd9.js → p-CkX7jHYc.js} +14 -14
  42. package/dist/components/{p-DL0ugSd9.js.map → p-CkX7jHYc.js.map} +1 -1
  43. package/dist/components/{p-D6z0a96H.js → p-CsnQa5sQ.js} +4 -4
  44. package/dist/components/{p-D6z0a96H.js.map → p-CsnQa5sQ.js.map} +1 -1
  45. package/dist/components/{p-BXN75-nb.js → p-DC--nyvW.js} +5 -5
  46. package/dist/components/{p-BXN75-nb.js.map → p-DC--nyvW.js.map} +1 -1
  47. package/dist/components/{p-mxrRjSEM.js → p-DhrRkOUi.js} +3 -3
  48. package/dist/components/{p-mxrRjSEM.js.map → p-DhrRkOUi.js.map} +1 -1
  49. package/dist/components/{p-BRr3-bHO.js → p-DpbDLSke.js} +6 -12
  50. package/dist/components/p-DpbDLSke.js.map +1 -0
  51. package/dist/components/{p-Oos-rvdo.js → p-cJMs8iXW.js} +15 -10
  52. package/dist/components/p-cJMs8iXW.js.map +1 -0
  53. package/dist/components/{p-C7Cguo-b.js → p-eXVwQFzY.js} +3 -3
  54. package/dist/components/{p-C7Cguo-b.js.map → p-eXVwQFzY.js.map} +1 -1
  55. package/dist/components/{p-D3eafwac.js → p-r_GHGV6q.js} +13 -13
  56. package/dist/components/{p-D3eafwac.js.map → p-r_GHGV6q.js.map} +1 -1
  57. package/dist/components/verdocs-build.js +17 -17
  58. package/dist/components/verdocs-contact-picker.js +1 -1
  59. package/dist/components/verdocs-dropdown.js +1 -1
  60. package/dist/components/verdocs-envelope-sidebar.js +2 -2
  61. package/dist/components/verdocs-envelopes-list.js +2 -2
  62. package/dist/components/verdocs-field-attachment.js +1 -1
  63. package/dist/components/verdocs-field-checkbox.js +1 -1
  64. package/dist/components/verdocs-field-date.js +1 -1
  65. package/dist/components/verdocs-field-dropdown.js +1 -1
  66. package/dist/components/verdocs-field-initial.js +1 -1
  67. package/dist/components/verdocs-field-payment.js +1 -1
  68. package/dist/components/verdocs-field-radio.js +1 -1
  69. package/dist/components/verdocs-field-signature.js +1 -1
  70. package/dist/components/verdocs-field-textarea.js +1 -1
  71. package/dist/components/verdocs-field-textbox.js +1 -1
  72. package/dist/components/verdocs-field-timestamp.js +1 -1
  73. package/dist/components/verdocs-multiselect.js +1 -1
  74. package/dist/components/verdocs-organization-card.js +1 -1
  75. package/dist/components/verdocs-portal.js +1 -1
  76. package/dist/components/verdocs-preview.js +1 -1
  77. package/dist/components/verdocs-send.js +1 -1
  78. package/dist/components/verdocs-sign.js +3 -3
  79. package/dist/components/verdocs-template-document-page.js +1 -1
  80. package/dist/components/verdocs-template-fields.js +1 -1
  81. package/dist/components/verdocs-templates-list.js +9 -9
  82. package/dist/components/verdocs-templates-list.js.map +1 -1
  83. package/dist/components/verdocs-view.js +1 -1
  84. package/dist/custom-elements.json +1 -1
  85. package/dist/esm/verdocs-contact-picker.verdocs-multiselect.entry.js.map +1 -1
  86. package/dist/esm/verdocs-contact-picker_2.entry.js +13 -8
  87. package/dist/esm/verdocs-contact-picker_2.entry.js.map +1 -1
  88. package/dist/esm/verdocs-organization-card.verdocs-portal.entry.js.map +1 -1
  89. package/dist/esm/verdocs-organization-card_2.entry.js +5 -1
  90. package/dist/esm/verdocs-organization-card_2.entry.js.map +1 -1
  91. package/dist/esm/verdocs-templates-list.entry.js +7 -7
  92. package/dist/esm/verdocs-templates-list.entry.js.map +1 -1
  93. package/dist/esm-es5/verdocs-contact-picker.verdocs-multiselect.entry.js.map +1 -1
  94. package/dist/esm-es5/verdocs-contact-picker_2.entry.js +1 -1
  95. package/dist/esm-es5/verdocs-contact-picker_2.entry.js.map +1 -1
  96. package/dist/esm-es5/verdocs-organization-card.verdocs-portal.entry.js.map +1 -1
  97. package/dist/esm-es5/verdocs-organization-card_2.entry.js +1 -1
  98. package/dist/esm-es5/verdocs-organization-card_2.entry.js.map +1 -1
  99. package/dist/esm-es5/verdocs-templates-list.entry.js +1 -1
  100. package/dist/esm-es5/verdocs-templates-list.entry.js.map +1 -1
  101. package/dist/types/components/templates/verdocs-templates-list/verdocs-templates-list.d.ts +10 -3
  102. package/dist/types/components.d.ts +32 -4
  103. package/dist/verdocs-web-sdk/{p-15fdb9df.system.entry.js → p-22539b25.system.entry.js} +3 -3
  104. package/dist/verdocs-web-sdk/p-22539b25.system.entry.js.map +1 -0
  105. package/dist/verdocs-web-sdk/{p-80e61388.system.entry.js → p-289ad8d2.system.entry.js} +2 -2
  106. package/dist/verdocs-web-sdk/p-289ad8d2.system.entry.js.map +1 -0
  107. package/dist/verdocs-web-sdk/{p-4437b439.entry.js → p-5badc484.entry.js} +3 -3
  108. package/dist/verdocs-web-sdk/p-5badc484.entry.js.map +1 -0
  109. package/dist/verdocs-web-sdk/{p-e2985bcb.entry.js → p-720ceced.entry.js} +2 -2
  110. package/dist/verdocs-web-sdk/p-720ceced.entry.js.map +1 -0
  111. package/dist/verdocs-web-sdk/{p-6743a4ec.system.entry.js → p-795cb651.system.entry.js} +2 -2
  112. package/dist/verdocs-web-sdk/p-795cb651.system.entry.js.map +1 -0
  113. package/dist/verdocs-web-sdk/p-9b1b273c.entry.js +2 -0
  114. package/dist/verdocs-web-sdk/p-9b1b273c.entry.js.map +1 -0
  115. package/dist/verdocs-web-sdk/{p-C7nljRlm.system.js.map → p-BlaEjWtc.system.js.map} +1 -1
  116. package/dist/verdocs-web-sdk/p-CNuYIT4Z.system.js.map +1 -0
  117. package/dist/verdocs-web-sdk/p-CwXSduhy.system.js +1 -1
  118. package/dist/verdocs-web-sdk/p-D3kzqvo2.system.js.map +1 -0
  119. package/dist/verdocs-web-sdk/verdocs-contact-picker.verdocs-multiselect.entry.esm.js.map +1 -1
  120. package/dist/verdocs-web-sdk/verdocs-organization-card.verdocs-portal.entry.esm.js.map +1 -1
  121. package/dist/verdocs-web-sdk/verdocs-templates-list.entry.esm.js.map +1 -1
  122. package/dist/verdocs-web-sdk/verdocs-web-sdk.esm.js +1 -1
  123. package/package.json +1 -1
  124. package/dist/components/p-BRr3-bHO.js.map +0 -1
  125. package/dist/components/p-DcGAyXll.js.map +0 -1
  126. package/dist/components/p-Oos-rvdo.js.map +0 -1
  127. package/dist/verdocs-web-sdk/p-15fdb9df.system.entry.js.map +0 -1
  128. package/dist/verdocs-web-sdk/p-36e094d6.entry.js +0 -2
  129. package/dist/verdocs-web-sdk/p-36e094d6.entry.js.map +0 -1
  130. package/dist/verdocs-web-sdk/p-4437b439.entry.js.map +0 -1
  131. package/dist/verdocs-web-sdk/p-6743a4ec.system.entry.js.map +0 -1
  132. package/dist/verdocs-web-sdk/p-80e61388.system.entry.js.map +0 -1
  133. package/dist/verdocs-web-sdk/p-BIoNmybA.system.js.map +0 -1
  134. package/dist/verdocs-web-sdk/p-CMYmkzNA.system.js.map +0 -1
  135. package/dist/verdocs-web-sdk/p-e2985bcb.entry.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"verdocs-organization-card.verdocs-portal.entry.cjs.js","sources":["src/components/controls/verdocs-organization-card/verdocs-organization-card.scss?tag=verdocs-organization-card","src/components/controls/verdocs-organization-card/verdocs-organization-card.tsx","src/components/controls/verdocs-portal/verdocs-portal.scss?tag=verdocs-portal","src/components/controls/verdocs-portal/verdocs-portal.tsx"],"sourcesContent":["@import '../../../theme.scss';\n\nverdocs-organization-card {\n font-family: $primary-font;\n display: flex;\n flex-direction: row;\n align-items: center;\n border: 1px solid $light-border-color;\n background: #ffffff;\n border-radius: 8px;\n padding: 7px 15px;\n\n .icon {\n flex: 0;\n height: 24px;\n width: 24px;\n margin: 0 14px 0 0;\n\n svg {\n fill: $icon-color;\n height: 24px;\n width: 24px;\n }\n }\n\n .content {\n margin-top: 2px;\n }\n}\n\n.verdocs-org-card-popup {\n font-family: $primary-font;\n background: #ffffff;\n border-radius: 10px;\n width: 326px;\n padding: 20px 40px 0 40px;\n flex-direction: column;\n flex-wrap: nowrap;\n border: 1px solid $light-border-color;\n\n .popup-header-with-logo {\n display: flex;\n flex: 0;\n gap: 20px;\n flex-direction: column;\n margin: 0 0 20px 0;\n font-size: 21px;\n line-height: 16px;\n color: $secondary-color;\n\n img {\n max-width: 300px;\n max-height: 50px;\n }\n }\n\n .popup-header {\n display: flex;\n flex: 0;\n gap: 20px;\n flex-direction: row;\n align-items: flex-end;\n margin: 0 0 20px 0;\n font-size: 21px;\n line-height: 16px;\n color: $secondary-color;\n }\n\n .popup-body {\n display: flex;\n flex-direction: column;\n font-size: 14px;\n text-transform: uppercase;\n }\n\n .status {\n transform: scale(1.5);\n width: 24px;\n height: 24px;\n }\n\n .field {\n margin: 0 0 20px 0;\n\n strong {\n color: $label-color-very-light;\n display: block;\n margin: 0 0 5px 0;\n }\n\n a {\n color: $verdocs-purple;\n text-transform: uppercase;\n }\n }\n}\n","import {format} from 'date-fns';\nimport {Component, Prop, h, Host, Listen, State} from '@stencil/core';\nimport type {IOrganization} from '@verdocs/js-sdk';\n\n// TODO: See what was done in Storybook. Move all SVG icons to a common file that both projects can share\n// and reduce duplication between components for re-used icons. Also bring icons into Figma for reuse there.\n\nconst BusinessIcon =\n '<svg xmlns=\"http://www.w3.org/2000/svg\" focusable=\"false\" aria-hidden=\"true\" height=\"24px\" viewBox=\"0 0 24 24\" width=\"24px\"><path d=\"M12 7V3H2v18h20V7H12zM6 19H4v-2h2v2zm0-4H4v-2h2v2zm0-4H4V9h2v2zm0-4H4V5h2v2zm4 12H8v-2h2v2zm0-4H8v-2h2v2zm0-4H8V9h2v2zm0-4H8V5h2v2zm10 12h-8v-2h2v-2h-2v-2h2v-2h-2V9h8v10zm-2-8h-2v2h2v-2zm0 4h-2v2h2v-2z\"></path></svg>';\n\n/**\n * Display a small summary card describing an organization.\n *\n * ```ts\n * <verdocs-organization-card organization={organization} />\n * ```\n */\n@Component({\n tag: 'verdocs-organization-card',\n styleUrl: 'verdocs-organization-card.scss',\n})\nexport class VerdocsOrganizationCard {\n /**\n * The organization to display\n */\n @Prop() organization: IOrganization;\n\n @State()\n hovered: boolean = false;\n\n @Listen('mouseover')\n onMouseOver() {\n this.hovered = true;\n }\n\n @Listen('mouseout')\n onMouseOut() {\n this.hovered = false;\n }\n\n render() {\n console.log('Rendering org card', this.organization.thumbnail_url, this.organization);\n const fallbackIcon = BusinessIcon;\n const portalId = `verdocs-org-card-${this.organization.id}`;\n\n return (\n <Host id={portalId}>\n {this.organization.thumbnail_url ? <img class=\"icon\" src={this.organization.thumbnail_url} alt=\"Logo\" /> : <span class=\"icon\" innerHTML={fallbackIcon} />}\n\n <span class=\"content\">{this.organization?.name}</span>\n\n <verdocs-portal anchor={portalId}>\n <div class=\"verdocs-org-card-popup\" style={{display: this.hovered ? 'block' : 'none'}}>\n {this.organization.full_logo_url ? (\n <div class=\"popup-header-with-logo\">\n <img src={this.organization.full_logo_url} alt=\"Logo\" />\n <div class=\"title\">{this.organization?.name}</div>\n </div>\n ) : (\n <div class=\"popup-header\">\n <span class=\"status\">\n <span class=\"icon\" innerHTML={fallbackIcon} />\n </span>\n <span class=\"title\">{this.organization?.name}</span>\n </div>\n )}\n\n <div class=\"popup-body\">\n <div class=\"field\">\n <strong>Joined</strong>\n {format(new Date(this.organization?.created_at || undefined), 'LLL d, Y')}\n </div>\n {this.organization.url && (\n <div class=\"field\">\n <strong>Website</strong>\n <a href={this.organization?.url} target=\"_blank\" rel=\"nofollow\">\n {this.organization?.url}\n </a>\n </div>\n )}\n </div>\n </div>\n </verdocs-portal>\n </Host>\n );\n }\n}\n","@import '../../../theme.scss';\n\nverdocs-portal {\n}\n","import {Component, EventEmitter, h, Host, Listen, Prop, Event} from '@stencil/core';\n\nconst Z_INDEX = '10001';\n\n/**\n * Display a child component in a \"portal\", popping it out of the main DOM tree\n * to allow it to escape the bounds set by its parent.\n * @credit https://github.com/tomas-teston/stencil-portal for the basic\n * technique. This has been altered in a few ways to make it more friendly\n * to cases where there may be multiple portals on the page and provide more\n * alignment options for the child to be displayed.\n *\n * ```ts\n * <div style=\"padding: 40px\">\n * <div id=\"sample-tooltip\" style=\"border: 1px solid green; padding: 3px 10px;\">\n * Tooltip Anchor\n * <verdocs-portal anchor=\"sample-tooltip\" .align=${align} .voffset=${voffset}>\n * <div style=\"border: 1px solid red; padding: 3px 10px;\">Tooltip</div>\n * </verdocs-portal>\n * </div>\n * </div>\n * ```\n */\n@Component({\n tag: 'verdocs-portal',\n styleUrl: 'verdocs-portal.scss',\n shadow: false,\n})\nexport class VerdocsPortal {\n private portal: HTMLElement;\n private element: HTMLElement;\n private moved: boolean = false;\n\n /**\n * Unique ID of the parent element to anchor to.\n */\n @Prop() anchor: string;\n\n /**\n * Vertical offset from the parent.\n */\n @Prop() voffset: number = 0;\n\n @Event() clickAway: EventEmitter<void>;\n\n @Listen('scroll', {target: 'window', capture: true})\n handleScroll() {\n this.calculatePosition();\n }\n\n @Listen('resize', {target: 'window'})\n handleResize() {\n this.calculatePosition();\n }\n\n @Listen('click', {target: 'document'})\n handleClick(e) {\n const closest = e.target.closest('.verdocs-portal');\n if (!this.element.contains(e.target) && !closest) {\n this.clickAway?.emit();\n }\n }\n\n private calculateLeft() {\n const anchorEl = document.getElementById(this.anchor);\n if (!anchorEl) return 0;\n\n const anchorRect = anchorEl.getBoundingClientRect();\n\n const rightOfViewportWithScroll = document.documentElement.clientWidth + document.documentElement.scrollLeft;\n const leftOfPopup = Math.max(anchorRect.left, 0);\n // Old centering logic, disabled temporarily\n // Math.max(anchorRect.left - this.portal.offsetWidth / 2 + anchorRect.width / 2, 0);\n // Old right-align logic, disabled temporarily\n // Math.max(anchorRect.left + anchorRect.width - this.portal.offsetWidth, 0);\n const popupWidth = this.element?.offsetWidth || 400;\n const offRightEdge = leftOfPopup + popupWidth > rightOfViewportWithScroll;\n\n return offRightEdge ? rightOfViewportWithScroll - popupWidth - 20 : leftOfPopup;\n }\n\n private calculateTop() {\n const anchorEl = document.getElementById(this.anchor);\n if (!anchorEl) return 0;\n\n const anchorRect = anchorEl.getBoundingClientRect();\n\n const bottomOfViewportWithScroll = document.documentElement.clientHeight + document.documentElement.scrollTop;\n const topOfPopup = anchorRect.bottom + this.voffset + document.documentElement.scrollTop;\n const popupHeight = this.element?.offsetHeight || 300;\n const offBottomEdge = topOfPopup + popupHeight > bottomOfViewportWithScroll;\n\n return offBottomEdge ? topOfPopup - popupHeight - anchorRect.height : topOfPopup;\n }\n\n private calculatePosition() {\n this.portal.style.top = `${this.calculateTop()}px`;\n this.portal.style.left = `${this.calculateLeft()}px`;\n }\n\n componentWillLoad() {\n const id = `${this.anchor}-portal`;\n document.getElementById(id)?.remove();\n\n this.portal = document.createElement('div');\n this.portal.setAttribute('id', id);\n this.portal.style.zIndex = Z_INDEX;\n this.portal.style.position = 'absolute';\n document.body.append(this.portal);\n }\n\n componentDidLoad() {\n this.portal.appendChild(this.element);\n this.calculatePosition();\n }\n\n disconnectedCallback() {\n this.moved ? this.portal.remove() : (this.moved = true);\n }\n\n render() {\n return (\n <Host ref={el => (this.element = el)} class=\"verdocs-portal\">\n <slot />\n </Host>\n );\n }\n}\n"],"names":["h","Host","format"],"mappings":"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"}
1
+ {"version":3,"file":"verdocs-organization-card.verdocs-portal.entry.cjs.js","sources":["src/components/controls/verdocs-organization-card/verdocs-organization-card.scss?tag=verdocs-organization-card","src/components/controls/verdocs-organization-card/verdocs-organization-card.tsx","src/components/controls/verdocs-portal/verdocs-portal.scss?tag=verdocs-portal","src/components/controls/verdocs-portal/verdocs-portal.tsx"],"sourcesContent":["@import '../../../theme.scss';\n\nverdocs-organization-card {\n font-family: $primary-font;\n display: flex;\n flex-direction: row;\n align-items: center;\n border: 1px solid $light-border-color;\n background: #ffffff;\n border-radius: 8px;\n padding: 7px 15px;\n\n .icon {\n flex: 0;\n height: 24px;\n width: 24px;\n margin: 0 14px 0 0;\n\n svg {\n fill: $icon-color;\n height: 24px;\n width: 24px;\n }\n }\n\n .content {\n margin-top: 2px;\n }\n}\n\n.verdocs-org-card-popup {\n font-family: $primary-font;\n background: #ffffff;\n border-radius: 10px;\n width: 326px;\n padding: 20px 40px 0 40px;\n flex-direction: column;\n flex-wrap: nowrap;\n border: 1px solid $light-border-color;\n\n .popup-header-with-logo {\n display: flex;\n flex: 0;\n gap: 20px;\n flex-direction: column;\n margin: 0 0 20px 0;\n font-size: 21px;\n line-height: 16px;\n color: $secondary-color;\n\n img {\n max-width: 300px;\n max-height: 50px;\n }\n }\n\n .popup-header {\n display: flex;\n flex: 0;\n gap: 20px;\n flex-direction: row;\n align-items: flex-end;\n margin: 0 0 20px 0;\n font-size: 21px;\n line-height: 16px;\n color: $secondary-color;\n }\n\n .popup-body {\n display: flex;\n flex-direction: column;\n font-size: 14px;\n text-transform: uppercase;\n }\n\n .status {\n transform: scale(1.5);\n width: 24px;\n height: 24px;\n }\n\n .field {\n margin: 0 0 20px 0;\n\n strong {\n color: $label-color-very-light;\n display: block;\n margin: 0 0 5px 0;\n }\n\n a {\n color: $verdocs-purple;\n text-transform: uppercase;\n }\n }\n}\n","import {format} from 'date-fns';\nimport {Component, Prop, h, Host, Listen, State} from '@stencil/core';\nimport type {IOrganization} from '@verdocs/js-sdk';\n\n// TODO: See what was done in Storybook. Move all SVG icons to a common file that both projects can share\n// and reduce duplication between components for re-used icons. Also bring icons into Figma for reuse there.\n\nconst BusinessIcon =\n '<svg xmlns=\"http://www.w3.org/2000/svg\" focusable=\"false\" aria-hidden=\"true\" height=\"24px\" viewBox=\"0 0 24 24\" width=\"24px\"><path d=\"M12 7V3H2v18h20V7H12zM6 19H4v-2h2v2zm0-4H4v-2h2v2zm0-4H4V9h2v2zm0-4H4V5h2v2zm4 12H8v-2h2v2zm0-4H8v-2h2v2zm0-4H8V9h2v2zm0-4H8V5h2v2zm10 12h-8v-2h2v-2h-2v-2h2v-2h-2V9h8v10zm-2-8h-2v2h2v-2zm0 4h-2v2h2v-2z\"></path></svg>';\n\n/**\n * Display a small summary card describing an organization.\n *\n * ```ts\n * <verdocs-organization-card organization={organization} />\n * ```\n */\n@Component({\n tag: 'verdocs-organization-card',\n styleUrl: 'verdocs-organization-card.scss',\n})\nexport class VerdocsOrganizationCard {\n /**\n * The organization to display\n */\n @Prop() organization: IOrganization;\n\n @State()\n hovered: boolean = false;\n\n @Listen('mouseover')\n onMouseOver() {\n this.hovered = true;\n }\n\n @Listen('mouseout')\n onMouseOut() {\n this.hovered = false;\n }\n\n render() {\n console.log('Rendering org card', this.organization.thumbnail_url, this.organization);\n const fallbackIcon = BusinessIcon;\n const portalId = `verdocs-org-card-${this.organization.id}`;\n\n return (\n <Host id={portalId}>\n {this.organization.thumbnail_url ? <img class=\"icon\" src={this.organization.thumbnail_url} alt=\"Logo\" /> : <span class=\"icon\" innerHTML={fallbackIcon} />}\n\n <span class=\"content\">{this.organization?.name}</span>\n\n <verdocs-portal anchor={portalId}>\n <div class=\"verdocs-org-card-popup\" style={{display: this.hovered ? 'block' : 'none'}}>\n {this.organization.full_logo_url ? (\n <div class=\"popup-header-with-logo\">\n <img src={this.organization.full_logo_url} alt=\"Logo\" />\n <div class=\"title\">{this.organization?.name}</div>\n </div>\n ) : (\n <div class=\"popup-header\">\n <span class=\"status\">\n <span class=\"icon\" innerHTML={fallbackIcon} />\n </span>\n <span class=\"title\">{this.organization?.name}</span>\n </div>\n )}\n\n <div class=\"popup-body\">\n <div class=\"field\">\n <strong>Joined</strong>\n {format(new Date(this.organization?.created_at || undefined), 'LLL d, Y')}\n </div>\n {this.organization.url && (\n <div class=\"field\">\n <strong>Website</strong>\n <a href={this.organization?.url} target=\"_blank\" rel=\"nofollow\">\n {this.organization?.url}\n </a>\n </div>\n )}\n </div>\n </div>\n </verdocs-portal>\n </Host>\n );\n }\n}\n","@import '../../../theme.scss';\n\nverdocs-portal {\n}\n","import {Component, EventEmitter, h, Host, Listen, Prop, Event} from '@stencil/core';\n\nconst Z_INDEX = '10001';\n\n/**\n * Display a child component in a \"portal\", popping it out of the main DOM tree\n * to allow it to escape the bounds set by its parent.\n * @credit https://github.com/tomas-teston/stencil-portal for the basic\n * technique. This has been altered in a few ways to make it more friendly\n * to cases where there may be multiple portals on the page and provide more\n * alignment options for the child to be displayed.\n *\n * ```ts\n * <div style=\"padding: 40px\">\n * <div id=\"sample-tooltip\" style=\"border: 1px solid green; padding: 3px 10px;\">\n * Tooltip Anchor\n * <verdocs-portal anchor=\"sample-tooltip\" .align=${align} .voffset=${voffset}>\n * <div style=\"border: 1px solid red; padding: 3px 10px;\">Tooltip</div>\n * </verdocs-portal>\n * </div>\n * </div>\n * ```\n */\n@Component({\n tag: 'verdocs-portal',\n styleUrl: 'verdocs-portal.scss',\n shadow: false,\n})\nexport class VerdocsPortal {\n private portal: HTMLElement;\n private element: HTMLElement;\n private moved: boolean = false;\n\n /**\n * Unique ID of the parent element to anchor to.\n */\n @Prop() anchor: string;\n\n /**\n * Vertical offset from the parent.\n */\n @Prop() voffset: number = 0;\n\n @Event() clickAway: EventEmitter<void>;\n\n @Listen('scroll', {target: 'window', capture: true})\n handleScroll() {\n this.calculatePosition();\n }\n\n @Listen('resize', {target: 'window'})\n handleResize() {\n this.calculatePosition();\n }\n\n @Listen('click', {target: 'document'})\n handleClick(e) {\n const closest = e.target.closest('.verdocs-portal');\n if (!this.element.contains(e.target) && !closest) {\n this.clickAway?.emit();\n }\n\n // Temporary hack to dismiss portals-in-portals, which right now is pretty much just\n // multiselect.\n document.querySelectorAll('.verdocs-multiselect-dropdown').forEach(el => el.remove());\n }\n\n private calculateLeft() {\n const anchorEl = document.getElementById(this.anchor);\n if (!anchorEl) return 0;\n\n const anchorRect = anchorEl.getBoundingClientRect();\n\n const rightOfViewportWithScroll = document.documentElement.clientWidth + document.documentElement.scrollLeft;\n const leftOfPopup = Math.max(anchorRect.left, 0);\n // Old centering logic, disabled temporarily\n // Math.max(anchorRect.left - this.portal.offsetWidth / 2 + anchorRect.width / 2, 0);\n // Old right-align logic, disabled temporarily\n // Math.max(anchorRect.left + anchorRect.width - this.portal.offsetWidth, 0);\n const popupWidth = this.element?.offsetWidth || 400;\n const offRightEdge = leftOfPopup + popupWidth > rightOfViewportWithScroll;\n\n return offRightEdge ? rightOfViewportWithScroll - popupWidth - 20 : leftOfPopup;\n }\n\n private calculateTop() {\n const anchorEl = document.getElementById(this.anchor);\n if (!anchorEl) return 0;\n\n const anchorRect = anchorEl.getBoundingClientRect();\n\n const bottomOfViewportWithScroll = document.documentElement.clientHeight + document.documentElement.scrollTop;\n const topOfPopup = anchorRect.bottom + this.voffset + document.documentElement.scrollTop;\n const popupHeight = this.element?.offsetHeight || 300;\n const offBottomEdge = topOfPopup + popupHeight > bottomOfViewportWithScroll;\n\n return offBottomEdge ? topOfPopup - popupHeight - anchorRect.height : topOfPopup;\n }\n\n private calculatePosition() {\n this.portal.style.top = `${this.calculateTop()}px`;\n this.portal.style.left = `${this.calculateLeft()}px`;\n }\n\n componentWillLoad() {\n const id = `${this.anchor}-portal`;\n document.getElementById(id)?.remove();\n\n this.portal = document.createElement('div');\n this.portal.setAttribute('id', id);\n this.portal.style.zIndex = Z_INDEX;\n this.portal.style.position = 'absolute';\n this.portal.className = 'verdocs-portal-wrapper';\n document.body.append(this.portal);\n }\n\n componentDidLoad() {\n this.portal.appendChild(this.element);\n this.calculatePosition();\n }\n\n disconnectedCallback() {\n this.moved ? this.portal.remove() : (this.moved = true);\n }\n\n render() {\n return (\n <Host ref={el => (this.element = el)} class=\"verdocs-portal\">\n <slot />\n </Host>\n );\n }\n}\n"],"names":["h","Host","format"],"mappings":"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"}
@@ -54,6 +54,9 @@ const VerdocsPortal = class {
54
54
  if (!this.element.contains(e.target) && !closest) {
55
55
  (_a = this.clickAway) === null || _a === void 0 ? void 0 : _a.emit();
56
56
  }
57
+ // Temporary hack to dismiss portals-in-portals, which right now is pretty much just
58
+ // multiselect.
59
+ document.querySelectorAll('.verdocs-multiselect-dropdown').forEach(el => el.remove());
57
60
  }
58
61
  calculateLeft() {
59
62
  var _a;
@@ -95,6 +98,7 @@ const VerdocsPortal = class {
95
98
  this.portal.setAttribute('id', id);
96
99
  this.portal.style.zIndex = Z_INDEX;
97
100
  this.portal.style.position = 'absolute';
101
+ this.portal.className = 'verdocs-portal-wrapper';
98
102
  document.body.append(this.portal);
99
103
  }
100
104
  componentDidLoad() {
@@ -105,7 +109,7 @@ const VerdocsPortal = class {
105
109
  this.moved ? this.portal.remove() : (this.moved = true);
106
110
  }
107
111
  render() {
108
- return (index.h(index.Host, { key: '6cd36148f5c2845915d9c799c53181d63ef092f4', ref: el => (this.element = el), class: "verdocs-portal" }, index.h("slot", { key: '1852433ec3a6203a5d732375dcf7e245c2245b81' })));
112
+ return (index.h(index.Host, { key: '6496c55ff467085e8d1d660f749abb2e70eb8c95', ref: el => (this.element = el), class: "verdocs-portal" }, index.h("slot", { key: '731cefa0a79a520279e255455a95e22d1255f424' })));
109
113
  }
110
114
  };
111
115
  VerdocsPortal.style = verdocsPortalCss;
@@ -1 +1 @@
1
- {"file":"verdocs-organization-card.verdocs-portal.entry.cjs.js","mappings":"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","names":["h","Host","format"],"sources":["src/components/controls/verdocs-organization-card/verdocs-organization-card.scss?tag=verdocs-organization-card","src/components/controls/verdocs-organization-card/verdocs-organization-card.tsx","src/components/controls/verdocs-portal/verdocs-portal.scss?tag=verdocs-portal","src/components/controls/verdocs-portal/verdocs-portal.tsx"],"sourcesContent":["@import '../../../theme.scss';\n\nverdocs-organization-card {\n font-family: $primary-font;\n display: flex;\n flex-direction: row;\n align-items: center;\n border: 1px solid $light-border-color;\n background: #ffffff;\n border-radius: 8px;\n padding: 7px 15px;\n\n .icon {\n flex: 0;\n height: 24px;\n width: 24px;\n margin: 0 14px 0 0;\n\n svg {\n fill: $icon-color;\n height: 24px;\n width: 24px;\n }\n }\n\n .content {\n margin-top: 2px;\n }\n}\n\n.verdocs-org-card-popup {\n font-family: $primary-font;\n background: #ffffff;\n border-radius: 10px;\n width: 326px;\n padding: 20px 40px 0 40px;\n flex-direction: column;\n flex-wrap: nowrap;\n border: 1px solid $light-border-color;\n\n .popup-header-with-logo {\n display: flex;\n flex: 0;\n gap: 20px;\n flex-direction: column;\n margin: 0 0 20px 0;\n font-size: 21px;\n line-height: 16px;\n color: $secondary-color;\n\n img {\n max-width: 300px;\n max-height: 50px;\n }\n }\n\n .popup-header {\n display: flex;\n flex: 0;\n gap: 20px;\n flex-direction: row;\n align-items: flex-end;\n margin: 0 0 20px 0;\n font-size: 21px;\n line-height: 16px;\n color: $secondary-color;\n }\n\n .popup-body {\n display: flex;\n flex-direction: column;\n font-size: 14px;\n text-transform: uppercase;\n }\n\n .status {\n transform: scale(1.5);\n width: 24px;\n height: 24px;\n }\n\n .field {\n margin: 0 0 20px 0;\n\n strong {\n color: $label-color-very-light;\n display: block;\n margin: 0 0 5px 0;\n }\n\n a {\n color: $verdocs-purple;\n text-transform: uppercase;\n }\n }\n}\n","import {format} from 'date-fns';\nimport {Component, Prop, h, Host, Listen, State} from '@stencil/core';\nimport type {IOrganization} from '@verdocs/js-sdk';\n\n// TODO: See what was done in Storybook. Move all SVG icons to a common file that both projects can share\n// and reduce duplication between components for re-used icons. Also bring icons into Figma for reuse there.\n\nconst BusinessIcon =\n '<svg xmlns=\"http://www.w3.org/2000/svg\" focusable=\"false\" aria-hidden=\"true\" height=\"24px\" viewBox=\"0 0 24 24\" width=\"24px\"><path d=\"M12 7V3H2v18h20V7H12zM6 19H4v-2h2v2zm0-4H4v-2h2v2zm0-4H4V9h2v2zm0-4H4V5h2v2zm4 12H8v-2h2v2zm0-4H8v-2h2v2zm0-4H8V9h2v2zm0-4H8V5h2v2zm10 12h-8v-2h2v-2h-2v-2h2v-2h-2V9h8v10zm-2-8h-2v2h2v-2zm0 4h-2v2h2v-2z\"></path></svg>';\n\n/**\n * Display a small summary card describing an organization.\n *\n * ```ts\n * <verdocs-organization-card organization={organization} />\n * ```\n */\n@Component({\n tag: 'verdocs-organization-card',\n styleUrl: 'verdocs-organization-card.scss',\n})\nexport class VerdocsOrganizationCard {\n /**\n * The organization to display\n */\n @Prop() organization: IOrganization;\n\n @State()\n hovered: boolean = false;\n\n @Listen('mouseover')\n onMouseOver() {\n this.hovered = true;\n }\n\n @Listen('mouseout')\n onMouseOut() {\n this.hovered = false;\n }\n\n render() {\n console.log('Rendering org card', this.organization.thumbnail_url, this.organization);\n const fallbackIcon = BusinessIcon;\n const portalId = `verdocs-org-card-${this.organization.id}`;\n\n return (\n <Host id={portalId}>\n {this.organization.thumbnail_url ? <img class=\"icon\" src={this.organization.thumbnail_url} alt=\"Logo\" /> : <span class=\"icon\" innerHTML={fallbackIcon} />}\n\n <span class=\"content\">{this.organization?.name}</span>\n\n <verdocs-portal anchor={portalId}>\n <div class=\"verdocs-org-card-popup\" style={{display: this.hovered ? 'block' : 'none'}}>\n {this.organization.full_logo_url ? (\n <div class=\"popup-header-with-logo\">\n <img src={this.organization.full_logo_url} alt=\"Logo\" />\n <div class=\"title\">{this.organization?.name}</div>\n </div>\n ) : (\n <div class=\"popup-header\">\n <span class=\"status\">\n <span class=\"icon\" innerHTML={fallbackIcon} />\n </span>\n <span class=\"title\">{this.organization?.name}</span>\n </div>\n )}\n\n <div class=\"popup-body\">\n <div class=\"field\">\n <strong>Joined</strong>\n {format(new Date(this.organization?.created_at || undefined), 'LLL d, Y')}\n </div>\n {this.organization.url && (\n <div class=\"field\">\n <strong>Website</strong>\n <a href={this.organization?.url} target=\"_blank\" rel=\"nofollow\">\n {this.organization?.url}\n </a>\n </div>\n )}\n </div>\n </div>\n </verdocs-portal>\n </Host>\n );\n }\n}\n","@import '../../../theme.scss';\n\nverdocs-portal {\n}\n","import {Component, EventEmitter, h, Host, Listen, Prop, Event} from '@stencil/core';\n\nconst Z_INDEX = '10001';\n\n/**\n * Display a child component in a \"portal\", popping it out of the main DOM tree\n * to allow it to escape the bounds set by its parent.\n * @credit https://github.com/tomas-teston/stencil-portal for the basic\n * technique. This has been altered in a few ways to make it more friendly\n * to cases where there may be multiple portals on the page and provide more\n * alignment options for the child to be displayed.\n *\n * ```ts\n * <div style=\"padding: 40px\">\n * <div id=\"sample-tooltip\" style=\"border: 1px solid green; padding: 3px 10px;\">\n * Tooltip Anchor\n * <verdocs-portal anchor=\"sample-tooltip\" .align=${align} .voffset=${voffset}>\n * <div style=\"border: 1px solid red; padding: 3px 10px;\">Tooltip</div>\n * </verdocs-portal>\n * </div>\n * </div>\n * ```\n */\n@Component({\n tag: 'verdocs-portal',\n styleUrl: 'verdocs-portal.scss',\n shadow: false,\n})\nexport class VerdocsPortal {\n private portal: HTMLElement;\n private element: HTMLElement;\n private moved: boolean = false;\n\n /**\n * Unique ID of the parent element to anchor to.\n */\n @Prop() anchor: string;\n\n /**\n * Vertical offset from the parent.\n */\n @Prop() voffset: number = 0;\n\n @Event() clickAway: EventEmitter<void>;\n\n @Listen('scroll', {target: 'window', capture: true})\n handleScroll() {\n this.calculatePosition();\n }\n\n @Listen('resize', {target: 'window'})\n handleResize() {\n this.calculatePosition();\n }\n\n @Listen('click', {target: 'document'})\n handleClick(e) {\n const closest = e.target.closest('.verdocs-portal');\n if (!this.element.contains(e.target) && !closest) {\n this.clickAway?.emit();\n }\n }\n\n private calculateLeft() {\n const anchorEl = document.getElementById(this.anchor);\n if (!anchorEl) return 0;\n\n const anchorRect = anchorEl.getBoundingClientRect();\n\n const rightOfViewportWithScroll = document.documentElement.clientWidth + document.documentElement.scrollLeft;\n const leftOfPopup = Math.max(anchorRect.left, 0);\n // Old centering logic, disabled temporarily\n // Math.max(anchorRect.left - this.portal.offsetWidth / 2 + anchorRect.width / 2, 0);\n // Old right-align logic, disabled temporarily\n // Math.max(anchorRect.left + anchorRect.width - this.portal.offsetWidth, 0);\n const popupWidth = this.element?.offsetWidth || 400;\n const offRightEdge = leftOfPopup + popupWidth > rightOfViewportWithScroll;\n\n return offRightEdge ? rightOfViewportWithScroll - popupWidth - 20 : leftOfPopup;\n }\n\n private calculateTop() {\n const anchorEl = document.getElementById(this.anchor);\n if (!anchorEl) return 0;\n\n const anchorRect = anchorEl.getBoundingClientRect();\n\n const bottomOfViewportWithScroll = document.documentElement.clientHeight + document.documentElement.scrollTop;\n const topOfPopup = anchorRect.bottom + this.voffset + document.documentElement.scrollTop;\n const popupHeight = this.element?.offsetHeight || 300;\n const offBottomEdge = topOfPopup + popupHeight > bottomOfViewportWithScroll;\n\n return offBottomEdge ? topOfPopup - popupHeight - anchorRect.height : topOfPopup;\n }\n\n private calculatePosition() {\n this.portal.style.top = `${this.calculateTop()}px`;\n this.portal.style.left = `${this.calculateLeft()}px`;\n }\n\n componentWillLoad() {\n const id = `${this.anchor}-portal`;\n document.getElementById(id)?.remove();\n\n this.portal = document.createElement('div');\n this.portal.setAttribute('id', id);\n this.portal.style.zIndex = Z_INDEX;\n this.portal.style.position = 'absolute';\n document.body.append(this.portal);\n }\n\n componentDidLoad() {\n this.portal.appendChild(this.element);\n this.calculatePosition();\n }\n\n disconnectedCallback() {\n this.moved ? this.portal.remove() : (this.moved = true);\n }\n\n render() {\n return (\n <Host ref={el => (this.element = el)} class=\"verdocs-portal\">\n <slot />\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"verdocs-organization-card.verdocs-portal.entry.cjs.js","mappings":"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","names":["h","Host","format"],"sources":["src/components/controls/verdocs-organization-card/verdocs-organization-card.scss?tag=verdocs-organization-card","src/components/controls/verdocs-organization-card/verdocs-organization-card.tsx","src/components/controls/verdocs-portal/verdocs-portal.scss?tag=verdocs-portal","src/components/controls/verdocs-portal/verdocs-portal.tsx"],"sourcesContent":["@import '../../../theme.scss';\n\nverdocs-organization-card {\n font-family: $primary-font;\n display: flex;\n flex-direction: row;\n align-items: center;\n border: 1px solid $light-border-color;\n background: #ffffff;\n border-radius: 8px;\n padding: 7px 15px;\n\n .icon {\n flex: 0;\n height: 24px;\n width: 24px;\n margin: 0 14px 0 0;\n\n svg {\n fill: $icon-color;\n height: 24px;\n width: 24px;\n }\n }\n\n .content {\n margin-top: 2px;\n }\n}\n\n.verdocs-org-card-popup {\n font-family: $primary-font;\n background: #ffffff;\n border-radius: 10px;\n width: 326px;\n padding: 20px 40px 0 40px;\n flex-direction: column;\n flex-wrap: nowrap;\n border: 1px solid $light-border-color;\n\n .popup-header-with-logo {\n display: flex;\n flex: 0;\n gap: 20px;\n flex-direction: column;\n margin: 0 0 20px 0;\n font-size: 21px;\n line-height: 16px;\n color: $secondary-color;\n\n img {\n max-width: 300px;\n max-height: 50px;\n }\n }\n\n .popup-header {\n display: flex;\n flex: 0;\n gap: 20px;\n flex-direction: row;\n align-items: flex-end;\n margin: 0 0 20px 0;\n font-size: 21px;\n line-height: 16px;\n color: $secondary-color;\n }\n\n .popup-body {\n display: flex;\n flex-direction: column;\n font-size: 14px;\n text-transform: uppercase;\n }\n\n .status {\n transform: scale(1.5);\n width: 24px;\n height: 24px;\n }\n\n .field {\n margin: 0 0 20px 0;\n\n strong {\n color: $label-color-very-light;\n display: block;\n margin: 0 0 5px 0;\n }\n\n a {\n color: $verdocs-purple;\n text-transform: uppercase;\n }\n }\n}\n","import {format} from 'date-fns';\nimport {Component, Prop, h, Host, Listen, State} from '@stencil/core';\nimport type {IOrganization} from '@verdocs/js-sdk';\n\n// TODO: See what was done in Storybook. Move all SVG icons to a common file that both projects can share\n// and reduce duplication between components for re-used icons. Also bring icons into Figma for reuse there.\n\nconst BusinessIcon =\n '<svg xmlns=\"http://www.w3.org/2000/svg\" focusable=\"false\" aria-hidden=\"true\" height=\"24px\" viewBox=\"0 0 24 24\" width=\"24px\"><path d=\"M12 7V3H2v18h20V7H12zM6 19H4v-2h2v2zm0-4H4v-2h2v2zm0-4H4V9h2v2zm0-4H4V5h2v2zm4 12H8v-2h2v2zm0-4H8v-2h2v2zm0-4H8V9h2v2zm0-4H8V5h2v2zm10 12h-8v-2h2v-2h-2v-2h2v-2h-2V9h8v10zm-2-8h-2v2h2v-2zm0 4h-2v2h2v-2z\"></path></svg>';\n\n/**\n * Display a small summary card describing an organization.\n *\n * ```ts\n * <verdocs-organization-card organization={organization} />\n * ```\n */\n@Component({\n tag: 'verdocs-organization-card',\n styleUrl: 'verdocs-organization-card.scss',\n})\nexport class VerdocsOrganizationCard {\n /**\n * The organization to display\n */\n @Prop() organization: IOrganization;\n\n @State()\n hovered: boolean = false;\n\n @Listen('mouseover')\n onMouseOver() {\n this.hovered = true;\n }\n\n @Listen('mouseout')\n onMouseOut() {\n this.hovered = false;\n }\n\n render() {\n console.log('Rendering org card', this.organization.thumbnail_url, this.organization);\n const fallbackIcon = BusinessIcon;\n const portalId = `verdocs-org-card-${this.organization.id}`;\n\n return (\n <Host id={portalId}>\n {this.organization.thumbnail_url ? <img class=\"icon\" src={this.organization.thumbnail_url} alt=\"Logo\" /> : <span class=\"icon\" innerHTML={fallbackIcon} />}\n\n <span class=\"content\">{this.organization?.name}</span>\n\n <verdocs-portal anchor={portalId}>\n <div class=\"verdocs-org-card-popup\" style={{display: this.hovered ? 'block' : 'none'}}>\n {this.organization.full_logo_url ? (\n <div class=\"popup-header-with-logo\">\n <img src={this.organization.full_logo_url} alt=\"Logo\" />\n <div class=\"title\">{this.organization?.name}</div>\n </div>\n ) : (\n <div class=\"popup-header\">\n <span class=\"status\">\n <span class=\"icon\" innerHTML={fallbackIcon} />\n </span>\n <span class=\"title\">{this.organization?.name}</span>\n </div>\n )}\n\n <div class=\"popup-body\">\n <div class=\"field\">\n <strong>Joined</strong>\n {format(new Date(this.organization?.created_at || undefined), 'LLL d, Y')}\n </div>\n {this.organization.url && (\n <div class=\"field\">\n <strong>Website</strong>\n <a href={this.organization?.url} target=\"_blank\" rel=\"nofollow\">\n {this.organization?.url}\n </a>\n </div>\n )}\n </div>\n </div>\n </verdocs-portal>\n </Host>\n );\n }\n}\n","@import '../../../theme.scss';\n\nverdocs-portal {\n}\n","import {Component, EventEmitter, h, Host, Listen, Prop, Event} from '@stencil/core';\n\nconst Z_INDEX = '10001';\n\n/**\n * Display a child component in a \"portal\", popping it out of the main DOM tree\n * to allow it to escape the bounds set by its parent.\n * @credit https://github.com/tomas-teston/stencil-portal for the basic\n * technique. This has been altered in a few ways to make it more friendly\n * to cases where there may be multiple portals on the page and provide more\n * alignment options for the child to be displayed.\n *\n * ```ts\n * <div style=\"padding: 40px\">\n * <div id=\"sample-tooltip\" style=\"border: 1px solid green; padding: 3px 10px;\">\n * Tooltip Anchor\n * <verdocs-portal anchor=\"sample-tooltip\" .align=${align} .voffset=${voffset}>\n * <div style=\"border: 1px solid red; padding: 3px 10px;\">Tooltip</div>\n * </verdocs-portal>\n * </div>\n * </div>\n * ```\n */\n@Component({\n tag: 'verdocs-portal',\n styleUrl: 'verdocs-portal.scss',\n shadow: false,\n})\nexport class VerdocsPortal {\n private portal: HTMLElement;\n private element: HTMLElement;\n private moved: boolean = false;\n\n /**\n * Unique ID of the parent element to anchor to.\n */\n @Prop() anchor: string;\n\n /**\n * Vertical offset from the parent.\n */\n @Prop() voffset: number = 0;\n\n @Event() clickAway: EventEmitter<void>;\n\n @Listen('scroll', {target: 'window', capture: true})\n handleScroll() {\n this.calculatePosition();\n }\n\n @Listen('resize', {target: 'window'})\n handleResize() {\n this.calculatePosition();\n }\n\n @Listen('click', {target: 'document'})\n handleClick(e) {\n const closest = e.target.closest('.verdocs-portal');\n if (!this.element.contains(e.target) && !closest) {\n this.clickAway?.emit();\n }\n\n // Temporary hack to dismiss portals-in-portals, which right now is pretty much just\n // multiselect.\n document.querySelectorAll('.verdocs-multiselect-dropdown').forEach(el => el.remove());\n }\n\n private calculateLeft() {\n const anchorEl = document.getElementById(this.anchor);\n if (!anchorEl) return 0;\n\n const anchorRect = anchorEl.getBoundingClientRect();\n\n const rightOfViewportWithScroll = document.documentElement.clientWidth + document.documentElement.scrollLeft;\n const leftOfPopup = Math.max(anchorRect.left, 0);\n // Old centering logic, disabled temporarily\n // Math.max(anchorRect.left - this.portal.offsetWidth / 2 + anchorRect.width / 2, 0);\n // Old right-align logic, disabled temporarily\n // Math.max(anchorRect.left + anchorRect.width - this.portal.offsetWidth, 0);\n const popupWidth = this.element?.offsetWidth || 400;\n const offRightEdge = leftOfPopup + popupWidth > rightOfViewportWithScroll;\n\n return offRightEdge ? rightOfViewportWithScroll - popupWidth - 20 : leftOfPopup;\n }\n\n private calculateTop() {\n const anchorEl = document.getElementById(this.anchor);\n if (!anchorEl) return 0;\n\n const anchorRect = anchorEl.getBoundingClientRect();\n\n const bottomOfViewportWithScroll = document.documentElement.clientHeight + document.documentElement.scrollTop;\n const topOfPopup = anchorRect.bottom + this.voffset + document.documentElement.scrollTop;\n const popupHeight = this.element?.offsetHeight || 300;\n const offBottomEdge = topOfPopup + popupHeight > bottomOfViewportWithScroll;\n\n return offBottomEdge ? topOfPopup - popupHeight - anchorRect.height : topOfPopup;\n }\n\n private calculatePosition() {\n this.portal.style.top = `${this.calculateTop()}px`;\n this.portal.style.left = `${this.calculateLeft()}px`;\n }\n\n componentWillLoad() {\n const id = `${this.anchor}-portal`;\n document.getElementById(id)?.remove();\n\n this.portal = document.createElement('div');\n this.portal.setAttribute('id', id);\n this.portal.style.zIndex = Z_INDEX;\n this.portal.style.position = 'absolute';\n this.portal.className = 'verdocs-portal-wrapper';\n document.body.append(this.portal);\n }\n\n componentDidLoad() {\n this.portal.appendChild(this.element);\n this.calculatePosition();\n }\n\n disconnectedCallback() {\n this.moved ? this.portal.remove() : (this.moved = true);\n }\n\n render() {\n return (\n <Host ref={el => (this.element = el)} class=\"verdocs-portal\">\n <slot />\n </Host>\n );\n }\n}\n"],"version":3}
@@ -185,24 +185,24 @@ const VerdocsTemplatesList = class {
185
185
  // In addition to the server query we also filter locally. This provides a faster UI update
186
186
  // while the onBlur re-queries the server for any new records that now qualify by the filter.
187
187
  const locallyFilteredTemplates = !this.localNameFilter ? this.templates : this.templates.filter(t => t.name.toLowerCase().includes(this.localNameFilter.toLowerCase()));
188
- return (index.h(index.Host, { key: 'e7e90b641fbea53569365333de5671fe8056ad00' }, index.h("div", { key: '800eaf67dd2c153ec9730952ecf86c2c883f3a59', class: "header" }, index.h("div", { key: '0566a72ae5b65cae1d3d1ab9ee1f92193b28c7b7', class: "filter" }, index.h("verdocs-text-input", { key: '18339e5f5219d4a874863483a5519313d62e5f39', id: "verdocs-filter-name", value: this.name, clearable: true, autocomplete: "off", placeholder: "Filter by Name...", onInput: (e) => (this.localNameFilter = e.target.value.trim()), onFocusout: (e) => {
188
+ return (index.h(index.Host, { key: '09f26fe2ca274c54c4a445b6fbd2b5b0e0b4e587' }, index.h("div", { key: '419453dcda9b282dbb221e21c59c3b9ab805ccb3', class: "header" }, index.h("div", { key: '0874a0b65a716901f2a974c6d9a687f94598bb7f', class: "filter" }, index.h("verdocs-text-input", { key: '3f333fd5a1c0b450af04d8ea48922ced96f23e2b', id: "verdocs-filter-name", value: this.name, clearable: true, autocomplete: "off", placeholder: "Filter by Name...", onInput: (e) => (this.localNameFilter = e.target.value.trim()), onFocusout: (e) => {
189
189
  var _a;
190
190
  this.name = e.target.value.trim();
191
191
  this.localNameFilter = e.target.value.trim();
192
192
  (_a = this.changeName) === null || _a === void 0 ? void 0 : _a.emit(this.name);
193
- } })), index.h("verdocs-quick-filter", { key: 'eb436954742039fe8e238e3f9e29323b284499fe', label: "Visibility", value: this.visibility, options: VisibilityFilters, onOptionSelected: e => {
193
+ } })), index.h("verdocs-quick-filter", { key: '89ef45476a685f220aa9511556b7f60ad8ff5cf3', label: "Visibility", value: this.visibility, options: VisibilityFilters, onOptionSelected: e => {
194
194
  var _a;
195
195
  this.visibility = e.detail.value;
196
196
  (_a = this.changeVisibility) === null || _a === void 0 ? void 0 : _a.emit(this.visibility);
197
- } }), index.h("verdocs-quick-filter", { key: '9a384e6a64b56c25ede399db0cfe691651712f08', label: "Starred", value: this.starred, options: StarredFilters, onOptionSelected: e => {
197
+ } }), index.h("verdocs-quick-filter", { key: '434e0caca9b04f840b841359b7ef94856676f957', label: "Starred", value: this.starred, options: StarredFilters, onOptionSelected: e => {
198
198
  var _a;
199
199
  this.starred = e.detail.value;
200
200
  (_a = this.changeStarred) === null || _a === void 0 ? void 0 : _a.emit(this.starred);
201
- } }), index.h("verdocs-quick-filter", { key: '12b8d9bcbf43f10b98d19b429adeb2bb1fb9fa2d', label: "Sort By", value: this.sort, options: SortOptions, onOptionSelected: e => {
201
+ } }), index.h("verdocs-quick-filter", { key: '34b7ad87857dd9de3bfab997239c7e616716c8c0', label: "Sort By", value: this.sort, options: SortOptions, onOptionSelected: e => {
202
202
  var _a;
203
203
  this.sort = e.detail.value;
204
204
  (_a = this.changeSort) === null || _a === void 0 ? void 0 : _a.emit(this.sort);
205
- } }), this.loading && index.h("verdocs-spinner", { key: '1c2a66d3549ee80decf1d523c9dece2416146a0b', mode: "dark", size: 24 }), index.h("div", { key: '6ecb8f54e7bb8a1b8e71497cfd78a5a8487466c5', style: { display: 'flex', flex: '1' } })), locallyFilteredTemplates.map(template => {
205
+ } }), this.loading && index.h("verdocs-spinner", { key: '5d237a87ce4be276951b27e18c9597ee551f7ce3', mode: "dark", size: 24 }), index.h("div", { key: '91b04bd0fb46e2b9d712f3fdf9d162ed77f8af63', style: { display: 'flex', flex: '1' } })), locallyFilteredTemplates.map(template => {
206
206
  const dateToShow = this.sort === 'created_at' ? 'created_at' : this.sort === 'updated_at' ? 'updated_at' : 'last_used_at';
207
207
  const date = template[dateToShow];
208
208
  const MENU_OPTIONS = [];
@@ -249,9 +249,9 @@ const VerdocsTemplatesList = class {
249
249
  var _a;
250
250
  (_a = this.viewTemplate) === null || _a === void 0 ? void 0 : _a.emit({ endpoint: this.endpoint, template });
251
251
  } }, index.h("div", { class: "inner" }, index.h("verdocs-template-star", { template: template, endpoint: this.endpoint }), index.h("div", { class: "spacer icon-spacer" }), index.h("div", { class: "name" }, template.name), index.h("div", { class: "spacer usage-spacer" }), index.h("div", { class: "usage" }, index.h("span", { innerHTML: EnvelopeIcon, title: "Usage Counter" }), template.counter || '--'), index.h("div", { class: "spacer last-used-spacer" }), index.h("div", { class: "last-used" }, dateToShow === 'created_at' && index.h("span", { innerHTML: CreatedIcon, title: "Created" }), dateToShow === 'updated_at' && index.h("span", { innerHTML: UpdatedIcon, title: "Last Updated" }), dateToShow === 'last_used_at' && index.h("span", { innerHTML: LastUsedIcon, title: "Last Used" }), date ? index$1.dateFnsExports.format(new Date(date), 'P') : 'Never'), index.h("div", { class: "spacer ownership-spacer" }), template.is_public && (index.h("div", { class: "ownership" }, index.h("span", { innerHTML: GlobeAltIcon }), " Public")), !template.is_public && !template.is_personal && (index.h("div", { class: "ownership" }, index.h("span", { innerHTML: LockClosedIcon }), " Private")), !template.is_public && template.is_personal && (index.h("div", { class: "ownership" }, index.h("span", { innerHTML: BuildingOfficeIcon }), " Shared")), index.h("verdocs-dropdown", { options: MENU_OPTIONS, onOptionSelected: e => this.handleOptionSelected(e.detail.id, template) }))));
252
- }), !this.initiallyLoaded && (index.h("div", { key: '9c248da7e6a766b6d4ca75c5a6728f609540ff43' }, jsSdk.integerSequence(0, this.rowsPerPage).map(() => (index.h("div", { class: "template-placeholder" }))))), this.initiallyLoaded && !this.templates.length && index.h("div", { key: '978cb7ba0c6ee2307781fa1a93311fded6c03cf7', class: "empty-text" }, "No matching templates found. Please adjust your filters and try again."), this.initiallyLoaded && this.templates.length && this.showPagination ? (index.h("div", { style: { marginTop: '20px' } }, index.h("verdocs-pagination", { selectedPage: this.selectedPage, perPage: this.rowsPerPage, itemCount: this.count, onSelectPage: e => {
252
+ }), !this.initiallyLoaded && (index.h("div", { key: '02c8a2c032d7d5d9367640dc8af9207cac1191d3' }, jsSdk.integerSequence(0, this.rowsPerPage).map(() => (index.h("div", { class: "template-placeholder" }))))), this.initiallyLoaded && !this.templates.length && index.h("div", { key: '0fa668155a34667926145cce15f06ff8b9174049', class: "empty-text" }, "No matching templates found. Please adjust your filters and try again."), this.initiallyLoaded && this.templates.length && this.showPagination ? (index.h("div", { style: { marginTop: '20px' } }, index.h("verdocs-pagination", { selectedPage: this.selectedPage, perPage: this.rowsPerPage, itemCount: this.count, onSelectPage: e => {
253
253
  this.selectedPage = e.detail.selectedPage;
254
- } }))) : (index.h("div", null)), this.confirmDelete && (index.h("verdocs-ok-dialog", { key: '737d3a3e1211a1a7da04bea7a1c5ba8cce43cd4b', heading: "Delete this Template?", message: "This operation cannot be undone.", onNext: () => this.deleteTemplate(this.confirmDelete), onExit: () => (this.confirmDelete = null), showCancel: true }))));
254
+ } }))) : (index.h("div", null)), this.confirmDelete && (index.h("verdocs-ok-dialog", { key: '2d5c0920ed5a25c1cee436ef49eed765b7f1c787', heading: "Delete this Template?", message: "This operation cannot be undone.", onNext: () => this.deleteTemplate(this.confirmDelete), onExit: () => (this.confirmDelete = null), showCancel: true }))));
255
255
  }
256
256
  static get watchers() { return {
257
257
  "sharing": ["handleSharingUpdated"],
@@ -1 +1 @@
1
- {"file":"verdocs-templates-list.entry.cjs.js","mappings":"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","names":["VerdocsEndpoint","getTemplates","SDKError","deleteTemplate","h","Host","canPerformTemplateAction","format","integerSequence"],"sources":["src/components/templates/verdocs-templates-list/verdocs-templates-list.scss?tag=verdocs-templates-list","src/components/templates/verdocs-templates-list/verdocs-templates-list.tsx"],"sourcesContent":["@import '../../../theme.scss';\n\nverdocs-templates-list {\n display: flex;\n padding: 10px;\n font-size: 18px;\n flex-wrap: nowrap;\n border-radius: 6px;\n color: $label-color;\n flex-direction: column;\n font-family: $primary-font;\n\n .header {\n width: 100%;\n row-gap: 4px;\n display: flex;\n flex-wrap: wrap;\n column-gap: 12px;\n margin: 0 0 10px 0;\n align-items: center;\n flex-direction: row;\n\n .filter {\n width: 150px;\n }\n\n verdocs-text-input {\n margin: 0;\n\n input {\n height: 32px;\n }\n }\n }\n\n .filter {\n align-items: center;\n }\n\n .template-placeholder {\n height: 48px;\n flex: 0 0 48px;\n margin: 5px 0;\n border-radius: 5px;\n background: $verdocs-grey-3;\n }\n\n .template {\n width: 100%;\n margin: 2px 0;\n border: 1px solid #ffffff;\n background: $verdocs-grey-4;\n\n &:hover {\n cursor: pointer;\n background: #ededff;\n border: 1px solid #a7a7f5;\n }\n\n .inner {\n gap: 12px;\n display: flex;\n padding: 8px 14px;\n border-radius: 5px;\n flex-direction: row;\n align-items: center;\n container-type: inline-size;\n\n svg {\n width: 24px;\n height: 24px;\n }\n }\n }\n\n .name {\n flex: 1;\n display: flex;\n color: black;\n font-size: 16px;\n //margin-left: 10px;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n\n @media screen and (max-width: 1300px) {\n font-size: 16px;\n }\n\n @media screen and (max-width: 700px) {\n //flex: 0;\n }\n }\n\n .spacer {\n margin: 0;\n height: 30px;\n flex: 0 0 1px;\n display: flex;\n border-right: 1px solid #dad8dd;\n\n @media screen and (max-width: 800px) {\n display: none;\n }\n }\n\n .empty-text {\n font-size: 20px;\n text-align: center;\n margin: 16px 0 0 0;\n padding: 80px 80px;\n border: 2px solid #ccc;\n }\n\n .usage,\n .ownership,\n .last-used {\n gap: 10px;\n color: #444;\n display: flex;\n font-size: 16px;\n margin: 0 0 0 10px;\n align-items: center;\n flex-direction: row;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n\n span,\n svg {\n width: 24px;\n height: 24px;\n }\n\n span {\n display: block;\n }\n }\n\n verdocs-template-star {\n @media screen and (max-width: 700px) {\n display: none;\n }\n }\n\n .ownership {\n flex: 0 0 100px;\n\n @media screen and (max-width: 700px) {\n display: none;\n }\n }\n\n .last-used {\n flex: 0 0 130px;\n }\n\n .usage {\n flex: 0 0 60px;\n }\n\n .header-row {\n display: none;\n }\n\n table {\n container-type: size;\n max-width: 100%;\n overflow: hidden;\n table-layout: fixed;\n }\n\n .data-row {\n cursor: pointer;\n background: #ededff;\n border: 1px solid #a7a7f5;\n }\n\n .data-col {\n svg {\n width: 24px;\n height: 24px;\n }\n }\n\n .col-name {\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n }\n\n verdocs-templates-list {\n @container (max-width:700 px) {\n .col-starred {\n display: none;\n }\n }\n }\n}\n","import {format} from 'date-fns';\nimport {deleteTemplate, getTemplates, TTemplateAction, VerdocsEndpoint} from '@verdocs/js-sdk';\nimport {integerSequence, ITemplate, IGetTemplatesParams, canPerformTemplateAction} from '@verdocs/js-sdk';\nimport {Component, Event, EventEmitter, h, Host, Prop, State, Watch} from '@stencil/core';\nimport {IFilterOption} from '../../controls/verdocs-quick-filter/verdocs-quick-filter';\nimport {IMenuOption} from '../../controls/verdocs-dropdown/verdocs-dropdown';\nimport {SDKError} from '../../../utils/errors';\n\nconst GlobeAltIcon = `<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M12 21a9.004 9.004 0 008.716-6.747M12 21a9.004 9.004 0 01-8.716-6.747M12 21c2.485 0 4.5-4.03 4.5-9S14.485 3 12 3m0 18c-2.485 0-4.5-4.03-4.5-9S9.515 3 12 3m0 0a8.997 8.997 0 017.843 4.582M12 3a8.997 8.997 0 00-7.843 4.582m15.686 0A11.953 11.953 0 0112 10.5c-2.998 0-5.74-1.1-7.843-2.918m15.686 0A8.959 8.959 0 0121 12c0 .778-.099 1.533-.284 2.253m0 0A17.919 17.919 0 0112 16.5c-3.162 0-6.133-.815-8.716-2.247m0 0A9.015 9.015 0 013 12c0-1.605.42-3.113 1.157-4.418\" /></svg>`;\nconst LockClosedIcon = `<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M16.5 10.5V6.75a4.5 4.5 0 10-9 0v3.75m-.75 11.25h10.5a2.25 2.25 0 002.25-2.25v-6.75a2.25 2.25 0 00-2.25-2.25H6.75a2.25 2.25 0 00-2.25 2.25v6.75a2.25 2.25 0 002.25 2.25z\" /></svg>`;\nconst BuildingOfficeIcon = `<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M3.75 21h16.5M4.5 3h15M5.25 3v18m13.5-18v18M9 6.75h1.5m-1.5 3h1.5m-1.5 3h1.5m3-6H15m-1.5 3H15m-1.5 3H15M9 21v-3.375c0-.621.504-1.125 1.125-1.125h3.75c.621 0 1.125.504 1.125 1.125V21\" /></svg>`;\nconst EnvelopeIcon = `<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M21.75 6.75v10.5a2.25 2.25 0 01-2.25 2.25h-15a2.25 2.25 0 01-2.25-2.25V6.75m19.5 0A2.25 2.25 0 0019.5 4.5h-15a2.25 2.25 0 00-2.25 2.25m19.5 0v.243a2.25 2.25 0 01-1.07 1.916l-7.5 4.615a2.25 2.25 0 01-2.36 0L3.32 8.91a2.25 2.25 0 01-1.07-1.916V6.75\" /></svg>`;\nconst CreatedIcon = `<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 122.88 122.88\"><g><path d=\"M81.61,4.73c0-2.61,2.58-4.73,5.77-4.73c3.19,0,5.77,2.12,5.77,4.73v20.72c0,2.61-2.58,4.73-5.77,4.73 c-3.19,0-5.77-2.12-5.77-4.73V4.73L81.61,4.73z M66.11,103.81c-0.34,0-0.61-1.43-0.61-3.2c0-1.77,0.27-3.2,0.61-3.2H81.9 c0.34,0,0.61,1.43,0.61,3.2c0,1.77-0.27,3.2-0.61,3.2H66.11L66.11,103.81z M15.85,67.09c-0.34,0-0.61-1.43-0.61-3.2 c0-1.77,0.27-3.2,0.61-3.2h15.79c0.34,0,0.61,1.43,0.61,3.2c0,1.77-0.27,3.2-0.61,3.2H15.85L15.85,67.09z M40.98,67.09 c-0.34,0-0.61-1.43-0.61-3.2c0-1.77,0.27-3.2,0.61-3.2h15.79c0.34,0,0.61,1.43,0.61,3.2c0,1.77-0.27,3.2-0.61,3.2H40.98 L40.98,67.09z M66.11,67.09c-0.34,0-0.61-1.43-0.61-3.2c0-1.77,0.27-3.2,0.61-3.2H81.9c0.34,0,0.61,1.43,0.61,3.2 c0,1.77-0.27,3.2-0.61,3.2H66.11L66.11,67.09z M91.25,67.09c-0.34,0-0.61-1.43-0.61-3.2c0-1.77,0.27-3.2,0.61-3.2h15.79 c0.34,0,0.61,1.43,0.61,3.2c0,1.77-0.27,3.2-0.61,3.2H91.25L91.25,67.09z M15.85,85.45c-0.34,0-0.61-1.43-0.61-3.2 c0-1.77,0.27-3.2,0.61-3.2h15.79c0.34,0,0.61,1.43,0.61,3.2c0,1.77-0.27,3.2-0.61,3.2H15.85L15.85,85.45z M40.98,85.45 c-0.34,0-0.61-1.43-0.61-3.2c0-1.77,0.27-3.2,0.61-3.2h15.79c0.34,0,0.61,1.43,0.61,3.2c0,1.77-0.27,3.2-0.61,3.2H40.98 L40.98,85.45z M66.11,85.45c-0.34,0-0.61-1.43-0.61-3.2c0-1.77,0.27-3.2,0.61-3.2H81.9c0.34,0,0.61,1.43,0.61,3.2 c0,1.77-0.27,3.2-0.61,3.2H66.11L66.11,85.45z M91.25,85.45c-0.34,0-0.61-1.43-0.61-3.2c0-1.77,0.27-3.2,0.61-3.2h15.79 c0.34,0,0.61,1.43,0.61,3.2c0,1.77-0.27,3.2-0.61,3.2H91.25L91.25,85.45z M15.85,103.81c-0.34,0-0.61-1.43-0.61-3.2 c0-1.77,0.27-3.2,0.61-3.2h15.79c0.34,0,0.61,1.43,0.61,3.2c0,1.77-0.27,3.2-0.61,3.2H15.85L15.85,103.81z M40.98,103.81 c-0.34,0-0.61-1.43-0.61-3.2c0-1.77,0.27-3.2,0.61-3.2h15.79c0.34,0,0.61,1.43,0.61,3.2c0,1.77-0.27,3.2-0.61,3.2H40.98 L40.98,103.81z M29.61,4.73c0-2.61,2.58-4.73,5.77-4.73s5.77,2.12,5.77,4.73v20.72c0,2.61-2.58,4.73-5.77,4.73 s-5.77-2.12-5.77-4.73V4.73L29.61,4.73z M6.4,45.32h110.07V21.47c0-0.8-0.33-1.53-0.86-2.07c-0.53-0.53-1.26-0.86-2.07-0.86H103 c-1.77,0-3.2-1.43-3.2-3.2c0-1.77,1.43-3.2,3.2-3.2h10.55c2.57,0,4.9,1.05,6.59,2.74c1.69,1.69,2.74,4.02,2.74,6.59v27.06v65.03 c0,2.57-1.05,4.9-2.74,6.59c-1.69,1.69-4.02,2.74-6.59,2.74H9.33c-2.57,0-4.9-1.05-6.59-2.74C1.05,118.45,0,116.12,0,113.55V48.52 V21.47c0-2.57,1.05-4.9,2.74-6.59c1.69-1.69,4.02-2.74,6.59-2.74H20.6c1.77,0,3.2,1.43,3.2,3.2c0,1.77-1.43,3.2-3.2,3.2H9.33 c-0.8,0-1.53,0.33-2.07,0.86c-0.53,0.53-0.86,1.26-0.86,2.07V45.32L6.4,45.32z M116.48,51.73H6.4v61.82c0,0.8,0.33,1.53,0.86,2.07 c0.53,0.53,1.26,0.86,2.07,0.86h104.22c0.8,0,1.53-0.33,2.07-0.86c0.53-0.53,0.86-1.26,0.86-2.07V51.73L116.48,51.73z M50.43,18.54 c-1.77,0-3.2-1.43-3.2-3.2c0-1.77,1.43-3.2,3.2-3.2h21.49c1.77,0,3.2,1.43,3.2,3.2c0,1.77-1.43,3.2-3.2,3.2H50.43L50.43,18.54z\"/></g></svg>`;\nconst LastUsedIcon = `<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 410.2\"><path d=\"M35.28 35.51h32.54v43.42c0 10.58 4.27 20.06 11.35 27.23 17.03 17.14 45.5 17.45 63.06.93 7.71-7.29 12.4-17.14 12.4-28.16V35.51h65.71v43.42c0 6.34 1.56 12.3 4.35 17.6 2.03 3.85 4.71 7.37 7.92 10.43l2.41 2.24c1.79 1.46 3.71 2.79 5.76 3.97l.31.18.07.04.25.13.16.1.15.08.27.14.05.03.32.17.05.03.27.13.15.08.17.09.26.12.07.04.32.16.03.01.31.15.12.06.2.09.24.11.1.05.33.14.34.16.1.04.23.1.21.09.13.05.31.13h.03l.34.14.08.04.27.1.18.07.16.06.3.11.05.02.34.12.06.02.3.11.16.05.19.07.26.09.09.03.35.12.02.01.34.1.13.04.22.07.25.07.11.03.36.11.36.1.11.03.25.07.22.06.14.04.34.09h.02l.37.1.08.02.29.06.19.05.17.03.32.08.05.01.37.08.06.01.31.06.17.04.21.03.28.06.09.02.37.07h.03l.35.06.14.03.23.03.27.04.11.02.38.06.38.05.12.01.26.04.23.03.15.01.35.05h.03l.39.04.08.01.3.02.21.02.17.02.34.02.05.01.39.03h.05l.34.02.18.01.21.01.3.02h.08l.39.01.03.01.36.01h.39l.28.01h.96l.33-.01h.39l.18-.01.2-.01.25-.01h.13l.32-.02h.07l.38-.02h.01l.37-.02.07-.01.32-.02.12-.01.26-.02.19-.02.19-.02.25-.02.13-.01.31-.04h.07l.37-.05h.01l.37-.04.06-.01.32-.04.12-.02.26-.03.18-.03.19-.03.24-.04.14-.02.3-.05.07-.01.36-.06h.01l.37-.07.05-.01.32-.06.12-.02.25-.05.18-.04.19-.04.23-.05.14-.03.29-.07.08-.01.35-.08.01-.01.36-.08.05-.02.31-.08.11-.02.25-.07.17-.04.2-.06.22-.05.14-.05.28-.08.07-.02.34-.09.02-.01.36-.11.03-.01.32-.1.1-.03.25-.08.16-.05.19-.07.22-.07.13-.04.28-.1.08-.03.32-.11.02-.01.35-.13.04-.01.3-.11.09-.04.26-.1.15-.06.19-.07.21-.09.13-.05.26-.11.08-.03.32-.13.02-.01.33-.14.04-.02.3-.13.09-.04.24-.11.14-.07.19-.08.19-.1.14-.06.25-.12.08-.03.3-.16h.03l.32-.17.03-.01.29-.16.09-.04.24-.12.13-.07.19-.1.18-.1.14-.07.23-.13.08-.05.29-.16.03-.01.31-.18c1.11-.64 2.17-1.31 3.2-2.03l2.71-1.95c4.36-3.56 7.92-7.88 10.43-12.76 2.73-5.26 4.25-11.19 4.25-17.5V35.51h33.97c9.68 0 18.5 3.98 24.91 10.38 6.4 6.37 10.38 15.2 10.38 24.9V192.9H365.1v-53.83H11.3v233.49c0 15.25 12.49 27.74 27.75 27.74h298.3c15.27 0 27.75-12.51 27.75-27.74V325.6h11.31v49.32c0 9.7-3.98 18.53-10.37 24.91-6.42 6.39-15.24 10.37-24.92 10.37H35.28c-9.68 0-18.49-3.97-24.89-10.37C3.97 393.41 0 384.59 0 374.92V70.79C0 61.12 3.97 52.3 10.36 45.9c6.43-6.42 15.25-10.39 24.92-10.39zm211.43-21.54c0-7.71 7.61-13.97 17.03-13.97 9.42 0 17.04 6.26 17.04 13.97v64.96c0 7.7-7.62 13.96-17.04 13.96-9.42 0-17.03-6.26-17.03-13.96V13.97zm-152.52 0C94.19 6.26 101.81 0 111.23 0c9.42 0 17.03 6.26 17.03 13.97v64.96c0 7.7-7.61 13.96-17.03 13.96-9.42 0-17.04-6.26-17.04-13.96V13.97zm311.37 327.72c1.48-14.79 2.69-32.45 3.59-46.5h-75.88v-71.88h77.43c-.39-14.06-1.17-31.75-2.35-46.58-.96-5.93 6.02-9.73 10.51-5.9l90.89 82.99c2.7 2.31 3.02 6.38.7 9.08l-.74.73-93.65 84.05c-4.6 3.89-11.47-.19-10.5-5.99zM63.51 286h50.56c3.53 0 6.43 2.91 6.43 6.44v42.06c0 3.52-2.91 6.44-6.43 6.44H63.51c-3.53 0-6.44-2.91-6.44-6.44v-42.06c0-3.54 2.9-6.44 6.44-6.44zm198.44-98.62h50.55c3.23 0 5.92 2.43 6.37 5.52h-16v49.42h-40.92c-3.53 0-6.45-2.9-6.45-6.45v-42.05c0-3.54 2.9-6.44 6.45-6.44zm0 98.62h40.92v39.6h16.07v8.9c0 3.52-2.92 6.44-6.44 6.44h-50.55c-3.53 0-6.45-2.91-6.45-6.44v-42.06c0-3.54 2.9-6.44 6.45-6.44zm-98.5-98.62h50.56c3.53 0 6.43 2.92 6.43 6.44v42.05c0 3.53-2.91 6.45-6.43 6.45h-50.56c-3.53 0-6.44-2.9-6.44-6.45v-42.05c0-3.54 2.9-6.44 6.44-6.44zm-99.94 0h50.56c3.53 0 6.43 2.92 6.43 6.44v42.05c0 3.53-2.91 6.45-6.43 6.45H63.51c-3.53 0-6.44-2.9-6.44-6.45v-42.05c0-3.54 2.9-6.44 6.44-6.44zM163.45 286h50.56c3.53 0 6.43 2.91 6.43 6.44v42.06c0 3.52-2.91 6.44-6.43 6.44h-50.56c-3.53 0-6.44-2.91-6.44-6.44v-42.06c0-3.54 2.9-6.44 6.44-6.44z\"/></svg>`;\nconst UpdatedIcon = `<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 506.49\"><path fill-rule=\"nonzero\" d=\"m371.06 415.61-43.25 11.52 6.23-46.41 37.02 34.89zm6.76-177.5c36.98 0 70.56 15.04 94.83 39.35C496.96 301.7 512 335.25 512 372.31c0 37.02-15.02 70.61-39.3 94.88l-.68.64c-24.23 23.88-57.5 38.66-94.2 38.66-37.06 0-70.61-15.04-94.88-39.31l-.64-.69c-23.9-24.24-38.68-57.53-38.68-94.18 0-37.06 15.04-70.61 39.32-94.89 24.27-24.27 57.85-39.31 94.88-39.31zm78.74 55.41c-20.09-20.11-47.96-32.58-78.74-32.58-30.75 0-58.61 12.47-78.75 32.62-20.15 20.14-32.62 48-32.62 78.75 0 30.5 12.25 58.14 32.02 78.19l.6.55c20.14 20.14 48 32.61 78.75 32.61 30.48 0 58.12-12.25 78.21-32.02l.54-.58c20.15-20.15 32.61-48 32.61-78.75s-12.48-58.61-32.62-78.79zM294.24 17.11C294.24 7.69 303.52 0 315.1 0c11.57 0 20.87 7.64 20.87 17.11v74.85c0 9.42-9.3 17.11-20.87 17.11-11.58 0-20.86-7.65-20.86-17.11V17.11zM56.8 242.28c-1.17 0-2.23-5.2-2.23-11.57 0-6.38.92-11.53 2.23-11.53h56.94c1.18 0 2.24 5.2 2.24 11.53 0 6.39-.92 11.57-2.24 11.57H56.8zm90.77 0c-1.17 0-2.23-5.2-2.23-11.57 0-6.38.92-11.53 2.23-11.53h56.94c1.18 0 2.24 5.2 2.24 11.53 0 6.39-.92 11.57-2.24 11.57h-56.94zm90.77 0c-1.16 0-2.22-5.2-2.22-11.57 0-6.38.92-11.53 2.22-11.53h56.94c1.19 0 2.25 5.15 2.25 11.49-5.7 3.55-11.2 7.44-16.43 11.61h-42.76zm-181.4 66.24c-1.18 0-2.24-5.2-2.24-11.57 0-6.38.93-11.58 2.24-11.58h56.94c1.18 0 2.22 5.2 2.22 11.58 0 6.37-.91 11.57-2.22 11.57H56.94zm90.77 0c-1.18 0-2.24-5.2-2.24-11.57 0-6.38.93-11.58 2.24-11.58h56.94c1.18 0 2.23 5.2 2.23 11.58 0 6.37-.92 11.57-2.23 11.57h-56.94zM57.06 374.8c-1.18 0-2.24-5.2-2.24-11.59 0-6.36.94-11.56 2.24-11.56H114c1.19 0 2.24 5.2 2.24 11.56 0 6.39-.93 11.59-2.24 11.59H57.06zm90.78 0c-1.19 0-2.25-5.2-2.25-11.59 0-6.36.94-11.56 2.25-11.56h56.94c1.18 0 2.24 5.2 2.24 11.56 0 6.39-.94 11.59-2.24 11.59h-56.94zM106.83 17.11C106.83 7.69 116.1 0 127.69 0c11.57 0 20.86 7.64 20.86 17.11v74.85c0 9.42-9.34 17.11-20.86 17.11-11.59 0-20.86-7.65-20.86-17.11V17.11zM22.97 163.64h397.39V77.46c0-2.94-1.19-5.53-3.09-7.43-1.9-1.9-4.59-3.08-7.42-3.08h-38.1c-6.39 0-11.59-5.2-11.59-11.57 0-6.38 5.2-11.58 11.59-11.58h38.1c9.32 0 17.7 3.77 23.82 9.88 6.12 6.14 9.88 14.5 9.88 23.83v136.81c-7.61-2.62-15.41-4.73-23.44-6.29v-21.38h.25H22.97v223.17c0 2.94 1.18 5.52 3.08 7.42 1.91 1.9 4.61 3.08 7.44 3.08h188.85c2.16 8.02 4.86 15.84 8.11 23.36H33.71c-9.3 0-17.7-3.75-23.84-9.89C3.75 427.72 0 419.36 0 410.02V77.55c0-9.29 3.75-17.7 9.87-23.82 6.14-6.13 14.5-9.89 23.84-9.89h40.67c6.38 0 11.57 5.2 11.57 11.57C85.95 61.8 80.76 67 74.38 67H33.71c-2.96 0-5.54 1.18-7.44 3.08-1.9 1.9-3.09 4.59-3.09 7.43v86.16h-.21v-.03zm158.95-96.69c-6.39 0-11.57-5.2-11.57-11.57 0-6.38 5.18-11.58 11.57-11.58h77.55c6.39 0 11.57 5.2 11.57 11.58 0 6.37-5.18 11.57-11.57 11.57h-77.55zm161.66 303.24 45.37-51.33c.72-.84 1.78-1.34 2.85-1.36.69-.01 1.37.13 1.98.45l32.94 29.96c.66.59 1.05 1.46 1.06 2.35.02 1-.39 1.98-1.16 2.66l-46.15 52.16-36.95-34.89h.06z\"/></svg>`;\n\nconst VisibilityFilters: IFilterOption[] = [\n {value: 'private_shared', label: 'Personal + Shared'},\n {value: 'private', label: 'Personal'},\n {value: 'shared', label: 'Shared'},\n {value: 'public', label: 'Public'},\n];\n\nconst StarredFilters: IFilterOption[] = [\n {value: 'all', label: 'All'},\n {value: 'starred', label: 'Starred'},\n {value: 'unstarred', label: 'Not Starred'},\n];\n\nconst SortOptions: IFilterOption[] = [\n {value: 'name', label: 'Name'},\n {value: 'created_at', label: 'Created'},\n {value: 'updated_at', label: 'Last Updated'},\n {value: 'last_used_at', label: 'Last Used'},\n {value: 'counter', label: 'Most Used'},\n {value: 'star_counter', label: 'Most Starred'},\n];\n\nexport type TAllowedTemplateAction = 'send' | 'createlink' | 'signnow' | 'submitted' | 'link' | 'edit' | 'delete';\n\n/**\n * Displays a list of envelopes matching specified conditions.\n */\n@Component({\n tag: 'verdocs-templates-list',\n styleUrl: 'verdocs-templates-list.scss',\n})\nexport class VerdocsTemplatesList {\n /**\n * The endpoint to use to communicate with Verdocs. If not set, the default endpoint will be used.\n */\n @Prop() endpoint: VerdocsEndpoint = VerdocsEndpoint.getDefault();\n\n /**\n * The sharing settings to filter by.\n */\n @Prop({reflect: true, mutable: true}) visibility?: 'private_shared' | 'private' | 'shared' | 'public' = 'private_shared';\n\n /**\n * The starred settings to filter by.\n */\n @Prop({reflect: true, mutable: true}) starred: 'all' | 'starred' | 'unstarred' = 'all';\n\n /**\n * The sort order to display.\n */\n @Prop({reflect: true, mutable: true}) sort: string = 'updated_at';\n\n /**\n * If set, filter templates by the specified name.\n */\n @Prop({reflect: true, mutable: true}) name: string = '';\n\n /**\n * Override the If set, filter templates by the specified name.\n */\n @Prop({reflect: true, mutable: true}) allowedActions: TAllowedTemplateAction[] = ['send', 'submitted', 'link', 'edit', 'delete'];\n // @Prop({reflect: true, mutable: true}) allowedActions: TAllowedTemplateAction[] = ['send', 'createlink', 'signnow', 'submitted', 'link', 'edit', 'delete'];\n\n /**\n * Whether or not pagination should be enabled.\n */\n @Prop() showPagination = true;\n\n /**\n * The number of rows to display per page.\n */\n @Prop() rowsPerPage = 10;\n\n /**\n * The initial page number to select. Pagination is internally controlled but may be overriden by the\n * host applicaiton.\n */\n @Prop() selectedPage = 0;\n\n /**\n * Event fired if an error occurs. The event details will contain information about the error. Most errors will\n * terminate the process, and the calling application should correct the condition and re-render the component.\n */\n @Event({composed: true}) sdkError: EventEmitter<SDKError>;\n\n /**\n * Event fired when the user clicks a template to view it. Typically the host application will use this to navigate\n * to the template preview. This is also fired when the user selects \"Preview/Send\" fropm the dropdown menu.\n */\n @Event({composed: true}) viewTemplate: EventEmitter<{endpoint: VerdocsEndpoint; template: ITemplate}>;\n\n /**\n * Event fired when the user clicks to sign a template now.\n */\n @Event({composed: true}) signNow: EventEmitter<{endpoint: VerdocsEndpoint; template: ITemplate}>;\n\n /**\n * Event fired when the user clicks to sign a template now.\n */\n @Event({composed: true}) submittedData: EventEmitter<{endpoint: VerdocsEndpoint; template: ITemplate}>;\n\n /**\n * Event fired when the user selects to create a preview link for a template.\n */\n // @Event({composed: true}) createLink: EventEmitter<{endpoint: VerdocsEndpoint; template: ITemplate}>;\n\n /**\n * Event fired when the user chooses the Edit option from the dropdown menu.\n */\n @Event({composed: true}) editTemplate: EventEmitter<{endpoint: VerdocsEndpoint; template: ITemplate}>;\n\n /**\n * Event fired when the user chooses the Delete option from the dropdown menu. When this is fired, the template\n * will already have been deleted. The host application should remove it from the list or refresh the list.\n */\n @Event({composed: true}) templateDeleted: EventEmitter<{endpoint: VerdocsEndpoint; template: ITemplate}>;\n\n /**\n * Event fired when the user changes their sort order. Host applications can use this to save the user's preferences.\n */\n @Event({composed: true}) changeSort: EventEmitter<string>;\n\n /**\n * Event fired when the user changes their sort order. Host applications can use this to save the user's preferences.\n */\n @Event({composed: true}) changeVisibility: EventEmitter<'private_shared' | 'private' | 'shared' | 'public'>;\n\n /**\n * Event fired when the user changes their sort order. Host applications can use this to save the user's preferences.\n */\n @Event({composed: true}) changeStarred: EventEmitter<'all' | 'starred' | 'unstarred'>;\n\n /**\n * Event fired when the user changes the name filter. This is fired for every inputChange event (every character\n * typed). This event is provided for balance with the other events, but host applications should generally not\n * save this value. Users might appreciate applications remembering their sorting or filtering preferences, but\n * probably not their search terms.\n */\n @Event({composed: true}) changeName: EventEmitter<string>;\n\n @State() count = 0;\n @State() initiallyLoaded = false;\n @State() loading = true;\n @State() confirmDelete: ITemplate | null = null;\n @State() templates: ITemplate[] = [];\n @State() localNameFilter = '';\n\n @Watch('sharing')\n handleSharingUpdated() {\n return this.queryTemplates();\n }\n\n @Watch('starred')\n handleStarredUpdated() {\n return this.queryTemplates();\n }\n\n @Watch('sort')\n handleSortUpdated() {\n return this.queryTemplates();\n }\n\n @Watch('name')\n handleNameUpdated() {\n return this.queryTemplates();\n }\n\n @Watch('selectedPage')\n handlePageUpdated() {\n return this.queryTemplates();\n }\n\n componentWillLoad() {\n this.endpoint.loadSession();\n if (!this.endpoint.session) {\n console.log('[TEMPLATES] Must be authenticated');\n return;\n }\n }\n\n async componentDidLoad() {\n await this.queryTemplates();\n this.initiallyLoaded = true;\n }\n\n async queryTemplates() {\n console.log('[TEMPLATES] Querying templates');\n this.loading = true;\n try {\n let queryParams: IGetTemplatesParams = {\n visibility: this.visibility,\n // starred: this.starred,\n page: this.selectedPage,\n // sort: this.sort,\n rows: this.rowsPerPage,\n // ascending: this.sort === 'name' || this.sort === 'star_counter',\n };\n\n if (this.name.trim() !== '') {\n queryParams.q = this.name.trim();\n }\n\n const response = await getTemplates(this.endpoint, queryParams);\n this.templates = response.templates;\n this.count = response.count;\n this.loading = false;\n } catch (e) {\n this.loading = false;\n console.log('[TEMPLATES] Error listing templates', e);\n this.sdkError?.emit(new SDKError(e.message, e.response?.status, e.response?.data));\n }\n }\n\n handleOptionSelected = (option: string, template: ITemplate) => {\n if (option === 'send') {\n this.viewTemplate?.emit({endpoint: this.endpoint, template: template});\n // } else if (option === 'createlink') {\n // VerdocsToast('This feature is coming soon!');\n } else if (option === 'signnow') {\n this.signNow?.emit({endpoint: this.endpoint, template: template});\n } else if (option === 'submitted') {\n this.submittedData?.emit({endpoint: this.endpoint, template: template});\n // } else if (option === 'link') {\n // VerdocsToast('This feature is coming soon!');\n } else if (option === 'edit') {\n this.editTemplate?.emit({endpoint: this.endpoint, template: template});\n } else if (option === 'delete') {\n this.confirmDelete = template;\n }\n };\n\n deleteTemplate(template: ITemplate) {\n this.confirmDelete = null;\n deleteTemplate(this.endpoint, template.id)\n .then(() => {\n console.log('[TEMPLATES] Deleted template', template);\n this.templateDeleted?.emit({endpoint: this.endpoint, template: template});\n return this.queryTemplates();\n })\n .catch(e => {\n console.log('[TEMPLATES] Error deleting template', template);\n this.sdkError?.emit(new SDKError(e.message, e.response?.status, e.response?.data));\n });\n }\n\n render() {\n // In addition to the server query we also filter locally. This provides a faster UI update\n // while the onBlur re-queries the server for any new records that now qualify by the filter.\n const locallyFilteredTemplates = !this.localNameFilter ? this.templates : this.templates.filter(t => t.name.toLowerCase().includes(this.localNameFilter.toLowerCase()));\n\n return (\n <Host>\n <div class=\"header\">\n <div class=\"filter\">\n <verdocs-text-input\n id=\"verdocs-filter-name\"\n value={this.name}\n clearable={true}\n autocomplete=\"off\"\n placeholder=\"Filter by Name...\"\n onInput={(e: any) => (this.localNameFilter = e.target.value.trim())}\n onFocusout={(e: any) => {\n this.name = e.target.value.trim();\n this.localNameFilter = e.target.value.trim();\n this.changeName?.emit(this.name);\n }}\n />\n </div>\n\n <verdocs-quick-filter\n label=\"Visibility\"\n value={this.visibility}\n options={VisibilityFilters}\n onOptionSelected={e => {\n this.visibility = e.detail.value as any;\n this.changeVisibility?.emit(this.visibility);\n }}\n />\n\n <verdocs-quick-filter\n label=\"Starred\"\n value={this.starred}\n options={StarredFilters}\n onOptionSelected={e => {\n this.starred = e.detail.value as any;\n this.changeStarred?.emit(this.starred);\n }}\n />\n\n <verdocs-quick-filter\n label=\"Sort By\"\n value={this.sort}\n options={SortOptions}\n onOptionSelected={e => {\n this.sort = e.detail.value as any;\n this.changeSort?.emit(this.sort);\n }}\n />\n {this.loading && <verdocs-spinner mode=\"dark\" size={24} />}\n <div style={{display: 'flex', flex: '1'}} />\n </div>\n\n {/*<verdocs-table*/}\n {/* data={locallyFilteredTemplates}*/}\n {/* onRowClick={(template: any) => this.viewTemplate?.emit({endpoint: this.endpoint, template: template as ITemplate})}*/}\n {/* columns={[*/}\n {/* {*/}\n {/* id: 'starred',*/}\n {/* renderCell: (_, row) => <verdocs-template-star template={row} endpoint={this.endpoint} />,*/}\n {/* },*/}\n {/* {*/}\n {/* id: 'name',*/}\n {/* },*/}\n {/* {*/}\n {/* id: 'usage',*/}\n {/* renderCell: (_, row) => (*/}\n {/* <div>*/}\n {/* <span innerHTML={EnvelopeIcon} title=\"Usage Counter\" />*/}\n {/* {row.counter || '--'}*/}\n {/* </div>*/}\n {/* ),*/}\n {/* },*/}\n {/* {*/}\n {/* id: 'created_at',*/}\n {/* renderCell: (_, row) => {*/}\n {/* const dateToShow = this.sort === 'created_at' ? 'created_at' : this.sort === 'updated_at' ? 'updated_at' : 'last_used_at';*/}\n {/* const date = row[dateToShow];*/}\n\n {/* return (*/}\n {/* <div class=\"last-used\">*/}\n {/* {dateToShow === 'created_at' && <span innerHTML={CreatedIcon} title=\"Created\" />}*/}\n {/* {dateToShow === 'updated_at' && <span innerHTML={UpdatedIcon} title=\"Last Updated\" />}*/}\n {/* {dateToShow === 'last_used_at' && <span innerHTML={LastUsedIcon} title=\"Last Used\" />}*/}\n {/* {date ? format(new Date(date), 'P') : 'Never'}*/}\n {/* </div>*/}\n {/* );*/}\n {/* },*/}\n {/* },*/}\n {/* {*/}\n {/* id: 'ownership',*/}\n {/* renderCell: (_, row) => (*/}\n {/* <div>*/}\n {/* {row.is_public && (*/}\n {/* <div class=\"ownership\">*/}\n {/* <span innerHTML={GlobeAltIcon} /> Public*/}\n {/* </div>*/}\n {/* )}*/}\n {/* {!row.is_public && !row.is_personal && (*/}\n {/* <div class=\"ownership\">*/}\n {/* <span innerHTML={LockClosedIcon} /> Private*/}\n {/* </div>*/}\n {/* )}*/}\n {/* {!row.is_public && row.is_personal && (*/}\n {/* <div class=\"ownership\">*/}\n {/* <span innerHTML={BuildingOfficeIcon} /> Shared*/}\n {/* </div>*/}\n {/* )}*/}\n {/* </div>*/}\n {/* ),*/}\n {/* },*/}\n {/* {*/}\n {/* id: 'actions',*/}\n {/* renderCell: (_, row) => {*/}\n {/* const MENU_OPTIONS: IMenuOption[] = [];*/}\n\n {/* if (row.allowed_operations.includes(TemplateActions.READ) && this.allowedActions.includes('send')) {*/}\n {/* MENU_OPTIONS.push({label: 'Preview / Send', id: 'send', disabled: !row.allowed_operations.includes(TemplateActions.READ)});*/}\n {/* }*/}\n\n {/* // if (this.allowedActions.includes('createlink')) {*/}\n {/* // MENU_OPTIONS.push({label: 'Create Link', id: 'createlink', disabled: true});*/}\n {/* // }*/}\n\n {/* if (row.allowed_operations.includes(TemplateActions.CREATE_PERSONAL) && this.allowedActions.includes('signnow')) {*/}\n {/* MENU_OPTIONS.push({label: 'Sign Now', id: 'signnow', disabled: true});*/}\n {/* }*/}\n\n {/* if (row.allowed_operations.includes(TemplateActions.READ) && this.allowedActions.includes('submitted')) {*/}\n {/* MENU_OPTIONS.push({label: ''});*/}\n {/* MENU_OPTIONS.push({label: 'Submissions', id: 'submitted'});*/}\n {/* }*/}\n\n {/* if (this.allowedActions.includes('link') || this.allowedActions.includes('edit') || this.allowedActions.includes('delete')) {*/}\n {/* MENU_OPTIONS.push({label: ''});*/}\n\n {/* // TODO: The preview link used to be just an internal route in the main Web application, but*/}\n {/* // that's not suitable for embeddding. Disabling until this gets re-requested as a feature,*/}\n {/* // in which case we'll want to move this to an API-driven function.*/}\n {/* // if (this.allowedActions.includes('link') || this.allowedActions.includes('edit') || this.allowedActions.includes('delete')) {*/}\n {/* // MENU_OPTIONS.push({label: 'Get Preview Link', id: 'link', disabled: !this.canPreview(template)});*/}\n {/* // }*/}\n\n {/* if (this.allowedActions.includes('link') || this.allowedActions.includes('edit') || this.allowedActions.includes('delete')) {*/}\n {/* MENU_OPTIONS.push({label: 'Edit', id: 'edit', disabled: !row.allowed_operations.includes(TemplateActions.WRITE)});*/}\n {/* }*/}\n\n {/* if (this.allowedActions.includes('link') || this.allowedActions.includes('edit') || this.allowedActions.includes('delete')) {*/}\n {/* MENU_OPTIONS.push({*/}\n {/* label: 'Delete',*/}\n {/* id: 'delete',*/}\n {/* disabled: !row.allowed_operations.includes(TemplateActions.DELETE),*/}\n {/* });*/}\n {/* }*/}\n {/* }*/}\n\n {/* return <verdocs-dropdown options={MENU_OPTIONS} onOptionSelected={e => this.handleOptionSelected(e.detail.id, row)} />;*/}\n {/* },*/}\n {/* },*/}\n {/* ]}*/}\n {/*/>*/}\n\n {locallyFilteredTemplates.map(template => {\n const dateToShow = this.sort === 'created_at' ? 'created_at' : this.sort === 'updated_at' ? 'updated_at' : 'last_used_at';\n const date = template[dateToShow];\n\n const MENU_OPTIONS: IMenuOption[] = [];\n\n const allowed_operations: TTemplateAction[] = [];\n\n // serverless/src/functions/getTemplates.ts: allowed_operations: [] as string[],\n // serverless/src/functions/getTemplates.ts: canPerformTemplateAction(request.session, 'create_personal', record) && record.allowed_operations.push('create_personal');\n // serverless/src/functions/getTemplates.ts: canPerformTemplateAction(request.session, 'create_org', record) && record.allowed_operations.push('create_org');\n // serverless/src/functions/getTemplates.ts: canPerformTemplateAction(request.session, 'create_public', record) && record.allowed_operations.push('create_public');\n // serverless/src/functions/getTemplates.ts: canPerformTemplateAction(request.session, 'read', record) && record.allowed_operations.push('read');\n // serverless/src/functions/getTemplates.ts: canPerformTemplateAction(request.session, 'write', record) && record.allowed_operations.push('write');\n // serverless/src/functions/getTemplates.ts: canPerformTemplateAction(request.session, 'delete', record) && record.allowed_operations.push('delete');\n // serverless/src/functions/getTemplates.ts: canPerformTemplateAction(request.session, 'change_visibility_personal', record) && record.allowed_operations.push('change_visibility_personal');\n // serverless/src/functions/getTemplates.ts: canPerformTemplateAction(request.session, 'change_visibility_org', record) && record.allowed_operations.push('change_visibility_org');\n // serverless/src/functions/getTemplates.ts: canPerformTemplateAction(request.session, 'change_visibility_public', record) && record.allowed_operations.push('change_visibility_public');\n\n if (this.allowedActions.includes('send')) {\n MENU_OPTIONS.push({label: 'Preview / Send', id: 'send', disabled: !canPerformTemplateAction(this.endpoint.profile, 'read', template)});\n }\n\n // if (this.allowedActions.includes('createlink')) {\n // MENU_OPTIONS.push({label: 'Create Link', id: 'createlink', disabled: true});\n // }\n\n if (this.allowedActions.includes('signnow')) {\n MENU_OPTIONS.push({label: 'Sign Now', id: 'signnow', disabled: true});\n }\n\n if (this.allowedActions.includes('submitted')) {\n MENU_OPTIONS.push({label: ''});\n MENU_OPTIONS.push({label: 'Submissions', id: 'submitted', disabled: !canPerformTemplateAction(this.endpoint.profile, 'read', template)});\n }\n\n if (this.allowedActions.includes('link') || this.allowedActions.includes('edit') || this.allowedActions.includes('delete')) {\n MENU_OPTIONS.push({label: ''});\n\n // TODO: The preview link used to be just an internal route in the main Web application, but\n // that's not suitable for embeddding. Disabling until this gets re-requested as a feature,\n // in which case we'll want to move this to an API-driven function.\n // if (this.allowedActions.includes('link') || this.allowedActions.includes('edit') || this.allowedActions.includes('delete')) {\n // MENU_OPTIONS.push({label: 'Get Preview Link', id: 'link', disabled: !this.canPreview(template)});\n // }\n\n if (this.allowedActions.includes('link') || this.allowedActions.includes('edit') || this.allowedActions.includes('delete')) {\n MENU_OPTIONS.push({label: 'Edit', id: 'edit', disabled: !allowed_operations.includes('write')});\n }\n\n if (this.allowedActions.includes('link') || this.allowedActions.includes('edit') || this.allowedActions.includes('delete')) {\n MENU_OPTIONS.push({label: 'Delete', id: 'delete', disabled: !allowed_operations.includes('delete')});\n }\n }\n\n return (\n <div\n class=\"template\"\n onClick={() => {\n this.viewTemplate?.emit({endpoint: this.endpoint, template});\n }}\n >\n <div class=\"inner\">\n <verdocs-template-star template={template} endpoint={this.endpoint} />\n\n <div class=\"spacer icon-spacer\" />\n <div class=\"name\">{template.name}</div>\n\n <div class=\"spacer usage-spacer\" />\n <div class=\"usage\">\n <span innerHTML={EnvelopeIcon} title=\"Usage Counter\" />\n {template.counter || '--'}\n </div>\n\n <div class=\"spacer last-used-spacer\" />\n <div class=\"last-used\">\n {dateToShow === 'created_at' && <span innerHTML={CreatedIcon} title=\"Created\" />}\n {dateToShow === 'updated_at' && <span innerHTML={UpdatedIcon} title=\"Last Updated\" />}\n {dateToShow === 'last_used_at' && <span innerHTML={LastUsedIcon} title=\"Last Used\" />}\n {date ? format(new Date(date), 'P') : 'Never'}\n </div>\n\n <div class=\"spacer ownership-spacer\" />\n {template.is_public && (\n <div class=\"ownership\">\n <span innerHTML={GlobeAltIcon} /> Public\n </div>\n )}\n {!template.is_public && !template.is_personal && (\n <div class=\"ownership\">\n <span innerHTML={LockClosedIcon} /> Private\n </div>\n )}\n {!template.is_public && template.is_personal && (\n <div class=\"ownership\">\n <span innerHTML={BuildingOfficeIcon} /> Shared\n </div>\n )}\n\n <verdocs-dropdown options={MENU_OPTIONS} onOptionSelected={e => this.handleOptionSelected(e.detail.id, template)} />\n </div>\n </div>\n );\n })}\n\n {!this.initiallyLoaded && (\n <div>\n {integerSequence(0, this.rowsPerPage).map(() => (\n <div class=\"template-placeholder\" />\n ))}\n </div>\n )}\n\n {this.initiallyLoaded && !this.templates.length && <div class=\"empty-text\">No matching templates found. Please adjust your filters and try again.</div>}\n\n {this.initiallyLoaded && this.templates.length && this.showPagination ? (\n <div style={{marginTop: '20px'}}>\n <verdocs-pagination\n selectedPage={this.selectedPage}\n perPage={this.rowsPerPage}\n itemCount={this.count}\n onSelectPage={e => {\n this.selectedPage = e.detail.selectedPage;\n }}\n />\n </div>\n ) : (\n <div />\n )}\n\n {this.confirmDelete && (\n <verdocs-ok-dialog\n heading=\"Delete this Template?\"\n message=\"This operation cannot be undone.\"\n onNext={() => this.deleteTemplate(this.confirmDelete)}\n onExit={() => (this.confirmDelete = null)}\n showCancel={true}\n />\n )}\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"verdocs-templates-list.entry.cjs.js","mappings":"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","names":["VerdocsEndpoint","getTemplates","SDKError","deleteTemplate","h","Host","canPerformTemplateAction","format","integerSequence"],"sources":["src/components/templates/verdocs-templates-list/verdocs-templates-list.scss?tag=verdocs-templates-list","src/components/templates/verdocs-templates-list/verdocs-templates-list.tsx"],"sourcesContent":["@import '../../../theme.scss';\n\nverdocs-templates-list {\n display: flex;\n padding: 10px;\n font-size: 18px;\n flex-wrap: nowrap;\n border-radius: 6px;\n color: $label-color;\n flex-direction: column;\n font-family: $primary-font;\n\n .header {\n width: 100%;\n row-gap: 4px;\n display: flex;\n flex-wrap: wrap;\n column-gap: 12px;\n margin: 0 0 10px 0;\n align-items: center;\n flex-direction: row;\n\n .filter {\n width: 150px;\n }\n\n verdocs-text-input {\n margin: 0;\n\n input {\n height: 32px;\n }\n }\n }\n\n .filter {\n align-items: center;\n }\n\n .template-placeholder {\n height: 48px;\n flex: 0 0 48px;\n margin: 5px 0;\n border-radius: 5px;\n background: $verdocs-grey-3;\n }\n\n .template {\n width: 100%;\n margin: 2px 0;\n border: 1px solid #ffffff;\n background: $verdocs-grey-4;\n\n &:hover {\n cursor: pointer;\n background: #ededff;\n border: 1px solid #a7a7f5;\n }\n\n .inner {\n gap: 12px;\n display: flex;\n padding: 8px 14px;\n border-radius: 5px;\n flex-direction: row;\n align-items: center;\n container-type: inline-size;\n\n svg {\n width: 24px;\n height: 24px;\n }\n }\n }\n\n .name {\n flex: 1;\n display: flex;\n color: black;\n font-size: 16px;\n //margin-left: 10px;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n\n @media screen and (max-width: 1300px) {\n font-size: 16px;\n }\n\n @media screen and (max-width: 700px) {\n //flex: 0;\n }\n }\n\n .spacer {\n margin: 0;\n height: 30px;\n flex: 0 0 1px;\n display: flex;\n border-right: 1px solid #dad8dd;\n\n @media screen and (max-width: 800px) {\n display: none;\n }\n }\n\n .empty-text {\n font-size: 20px;\n text-align: center;\n margin: 16px 0 0 0;\n padding: 80px 80px;\n border: 2px solid #ccc;\n }\n\n .usage,\n .ownership,\n .last-used {\n gap: 10px;\n color: #444;\n display: flex;\n font-size: 16px;\n margin: 0 0 0 10px;\n align-items: center;\n flex-direction: row;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n\n span,\n svg {\n width: 24px;\n height: 24px;\n }\n\n span {\n display: block;\n }\n }\n\n verdocs-template-star {\n @media screen and (max-width: 700px) {\n display: none;\n }\n }\n\n .ownership {\n flex: 0 0 100px;\n\n @media screen and (max-width: 700px) {\n display: none;\n }\n }\n\n .last-used {\n flex: 0 0 130px;\n }\n\n .usage {\n flex: 0 0 60px;\n }\n\n .header-row {\n display: none;\n }\n\n table {\n container-type: size;\n max-width: 100%;\n overflow: hidden;\n table-layout: fixed;\n }\n\n .data-row {\n cursor: pointer;\n background: #ededff;\n border: 1px solid #a7a7f5;\n }\n\n .data-col {\n svg {\n width: 24px;\n height: 24px;\n }\n }\n\n .col-name {\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n }\n\n verdocs-templates-list {\n @container (max-width:700 px) {\n .col-starred {\n display: none;\n }\n }\n }\n}\n","import {format} from 'date-fns';\nimport {deleteTemplate, getTemplates, TTemplateAction, VerdocsEndpoint} from '@verdocs/js-sdk';\nimport {integerSequence, ITemplate, IGetTemplatesParams, canPerformTemplateAction} from '@verdocs/js-sdk';\nimport {Component, Event, EventEmitter, h, Host, Prop, State, Watch} from '@stencil/core';\nimport {IFilterOption} from '../../controls/verdocs-quick-filter/verdocs-quick-filter';\nimport {IMenuOption} from '../../controls/verdocs-dropdown/verdocs-dropdown';\nimport {SDKError} from '../../../utils/errors';\n\nconst GlobeAltIcon = `<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M12 21a9.004 9.004 0 008.716-6.747M12 21a9.004 9.004 0 01-8.716-6.747M12 21c2.485 0 4.5-4.03 4.5-9S14.485 3 12 3m0 18c-2.485 0-4.5-4.03-4.5-9S9.515 3 12 3m0 0a8.997 8.997 0 017.843 4.582M12 3a8.997 8.997 0 00-7.843 4.582m15.686 0A11.953 11.953 0 0112 10.5c-2.998 0-5.74-1.1-7.843-2.918m15.686 0A8.959 8.959 0 0121 12c0 .778-.099 1.533-.284 2.253m0 0A17.919 17.919 0 0112 16.5c-3.162 0-6.133-.815-8.716-2.247m0 0A9.015 9.015 0 013 12c0-1.605.42-3.113 1.157-4.418\" /></svg>`;\nconst LockClosedIcon = `<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M16.5 10.5V6.75a4.5 4.5 0 10-9 0v3.75m-.75 11.25h10.5a2.25 2.25 0 002.25-2.25v-6.75a2.25 2.25 0 00-2.25-2.25H6.75a2.25 2.25 0 00-2.25 2.25v6.75a2.25 2.25 0 002.25 2.25z\" /></svg>`;\nconst BuildingOfficeIcon = `<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M3.75 21h16.5M4.5 3h15M5.25 3v18m13.5-18v18M9 6.75h1.5m-1.5 3h1.5m-1.5 3h1.5m3-6H15m-1.5 3H15m-1.5 3H15M9 21v-3.375c0-.621.504-1.125 1.125-1.125h3.75c.621 0 1.125.504 1.125 1.125V21\" /></svg>`;\nconst EnvelopeIcon = `<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M21.75 6.75v10.5a2.25 2.25 0 01-2.25 2.25h-15a2.25 2.25 0 01-2.25-2.25V6.75m19.5 0A2.25 2.25 0 0019.5 4.5h-15a2.25 2.25 0 00-2.25 2.25m19.5 0v.243a2.25 2.25 0 01-1.07 1.916l-7.5 4.615a2.25 2.25 0 01-2.36 0L3.32 8.91a2.25 2.25 0 01-1.07-1.916V6.75\" /></svg>`;\nconst CreatedIcon = `<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 122.88 122.88\"><g><path d=\"M81.61,4.73c0-2.61,2.58-4.73,5.77-4.73c3.19,0,5.77,2.12,5.77,4.73v20.72c0,2.61-2.58,4.73-5.77,4.73 c-3.19,0-5.77-2.12-5.77-4.73V4.73L81.61,4.73z M66.11,103.81c-0.34,0-0.61-1.43-0.61-3.2c0-1.77,0.27-3.2,0.61-3.2H81.9 c0.34,0,0.61,1.43,0.61,3.2c0,1.77-0.27,3.2-0.61,3.2H66.11L66.11,103.81z M15.85,67.09c-0.34,0-0.61-1.43-0.61-3.2 c0-1.77,0.27-3.2,0.61-3.2h15.79c0.34,0,0.61,1.43,0.61,3.2c0,1.77-0.27,3.2-0.61,3.2H15.85L15.85,67.09z M40.98,67.09 c-0.34,0-0.61-1.43-0.61-3.2c0-1.77,0.27-3.2,0.61-3.2h15.79c0.34,0,0.61,1.43,0.61,3.2c0,1.77-0.27,3.2-0.61,3.2H40.98 L40.98,67.09z M66.11,67.09c-0.34,0-0.61-1.43-0.61-3.2c0-1.77,0.27-3.2,0.61-3.2H81.9c0.34,0,0.61,1.43,0.61,3.2 c0,1.77-0.27,3.2-0.61,3.2H66.11L66.11,67.09z M91.25,67.09c-0.34,0-0.61-1.43-0.61-3.2c0-1.77,0.27-3.2,0.61-3.2h15.79 c0.34,0,0.61,1.43,0.61,3.2c0,1.77-0.27,3.2-0.61,3.2H91.25L91.25,67.09z M15.85,85.45c-0.34,0-0.61-1.43-0.61-3.2 c0-1.77,0.27-3.2,0.61-3.2h15.79c0.34,0,0.61,1.43,0.61,3.2c0,1.77-0.27,3.2-0.61,3.2H15.85L15.85,85.45z M40.98,85.45 c-0.34,0-0.61-1.43-0.61-3.2c0-1.77,0.27-3.2,0.61-3.2h15.79c0.34,0,0.61,1.43,0.61,3.2c0,1.77-0.27,3.2-0.61,3.2H40.98 L40.98,85.45z M66.11,85.45c-0.34,0-0.61-1.43-0.61-3.2c0-1.77,0.27-3.2,0.61-3.2H81.9c0.34,0,0.61,1.43,0.61,3.2 c0,1.77-0.27,3.2-0.61,3.2H66.11L66.11,85.45z M91.25,85.45c-0.34,0-0.61-1.43-0.61-3.2c0-1.77,0.27-3.2,0.61-3.2h15.79 c0.34,0,0.61,1.43,0.61,3.2c0,1.77-0.27,3.2-0.61,3.2H91.25L91.25,85.45z M15.85,103.81c-0.34,0-0.61-1.43-0.61-3.2 c0-1.77,0.27-3.2,0.61-3.2h15.79c0.34,0,0.61,1.43,0.61,3.2c0,1.77-0.27,3.2-0.61,3.2H15.85L15.85,103.81z M40.98,103.81 c-0.34,0-0.61-1.43-0.61-3.2c0-1.77,0.27-3.2,0.61-3.2h15.79c0.34,0,0.61,1.43,0.61,3.2c0,1.77-0.27,3.2-0.61,3.2H40.98 L40.98,103.81z M29.61,4.73c0-2.61,2.58-4.73,5.77-4.73s5.77,2.12,5.77,4.73v20.72c0,2.61-2.58,4.73-5.77,4.73 s-5.77-2.12-5.77-4.73V4.73L29.61,4.73z M6.4,45.32h110.07V21.47c0-0.8-0.33-1.53-0.86-2.07c-0.53-0.53-1.26-0.86-2.07-0.86H103 c-1.77,0-3.2-1.43-3.2-3.2c0-1.77,1.43-3.2,3.2-3.2h10.55c2.57,0,4.9,1.05,6.59,2.74c1.69,1.69,2.74,4.02,2.74,6.59v27.06v65.03 c0,2.57-1.05,4.9-2.74,6.59c-1.69,1.69-4.02,2.74-6.59,2.74H9.33c-2.57,0-4.9-1.05-6.59-2.74C1.05,118.45,0,116.12,0,113.55V48.52 V21.47c0-2.57,1.05-4.9,2.74-6.59c1.69-1.69,4.02-2.74,6.59-2.74H20.6c1.77,0,3.2,1.43,3.2,3.2c0,1.77-1.43,3.2-3.2,3.2H9.33 c-0.8,0-1.53,0.33-2.07,0.86c-0.53,0.53-0.86,1.26-0.86,2.07V45.32L6.4,45.32z M116.48,51.73H6.4v61.82c0,0.8,0.33,1.53,0.86,2.07 c0.53,0.53,1.26,0.86,2.07,0.86h104.22c0.8,0,1.53-0.33,2.07-0.86c0.53-0.53,0.86-1.26,0.86-2.07V51.73L116.48,51.73z M50.43,18.54 c-1.77,0-3.2-1.43-3.2-3.2c0-1.77,1.43-3.2,3.2-3.2h21.49c1.77,0,3.2,1.43,3.2,3.2c0,1.77-1.43,3.2-3.2,3.2H50.43L50.43,18.54z\"/></g></svg>`;\nconst LastUsedIcon = `<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 410.2\"><path d=\"M35.28 35.51h32.54v43.42c0 10.58 4.27 20.06 11.35 27.23 17.03 17.14 45.5 17.45 63.06.93 7.71-7.29 12.4-17.14 12.4-28.16V35.51h65.71v43.42c0 6.34 1.56 12.3 4.35 17.6 2.03 3.85 4.71 7.37 7.92 10.43l2.41 2.24c1.79 1.46 3.71 2.79 5.76 3.97l.31.18.07.04.25.13.16.1.15.08.27.14.05.03.32.17.05.03.27.13.15.08.17.09.26.12.07.04.32.16.03.01.31.15.12.06.2.09.24.11.1.05.33.14.34.16.1.04.23.1.21.09.13.05.31.13h.03l.34.14.08.04.27.1.18.07.16.06.3.11.05.02.34.12.06.02.3.11.16.05.19.07.26.09.09.03.35.12.02.01.34.1.13.04.22.07.25.07.11.03.36.11.36.1.11.03.25.07.22.06.14.04.34.09h.02l.37.1.08.02.29.06.19.05.17.03.32.08.05.01.37.08.06.01.31.06.17.04.21.03.28.06.09.02.37.07h.03l.35.06.14.03.23.03.27.04.11.02.38.06.38.05.12.01.26.04.23.03.15.01.35.05h.03l.39.04.08.01.3.02.21.02.17.02.34.02.05.01.39.03h.05l.34.02.18.01.21.01.3.02h.08l.39.01.03.01.36.01h.39l.28.01h.96l.33-.01h.39l.18-.01.2-.01.25-.01h.13l.32-.02h.07l.38-.02h.01l.37-.02.07-.01.32-.02.12-.01.26-.02.19-.02.19-.02.25-.02.13-.01.31-.04h.07l.37-.05h.01l.37-.04.06-.01.32-.04.12-.02.26-.03.18-.03.19-.03.24-.04.14-.02.3-.05.07-.01.36-.06h.01l.37-.07.05-.01.32-.06.12-.02.25-.05.18-.04.19-.04.23-.05.14-.03.29-.07.08-.01.35-.08.01-.01.36-.08.05-.02.31-.08.11-.02.25-.07.17-.04.2-.06.22-.05.14-.05.28-.08.07-.02.34-.09.02-.01.36-.11.03-.01.32-.1.1-.03.25-.08.16-.05.19-.07.22-.07.13-.04.28-.1.08-.03.32-.11.02-.01.35-.13.04-.01.3-.11.09-.04.26-.1.15-.06.19-.07.21-.09.13-.05.26-.11.08-.03.32-.13.02-.01.33-.14.04-.02.3-.13.09-.04.24-.11.14-.07.19-.08.19-.1.14-.06.25-.12.08-.03.3-.16h.03l.32-.17.03-.01.29-.16.09-.04.24-.12.13-.07.19-.1.18-.1.14-.07.23-.13.08-.05.29-.16.03-.01.31-.18c1.11-.64 2.17-1.31 3.2-2.03l2.71-1.95c4.36-3.56 7.92-7.88 10.43-12.76 2.73-5.26 4.25-11.19 4.25-17.5V35.51h33.97c9.68 0 18.5 3.98 24.91 10.38 6.4 6.37 10.38 15.2 10.38 24.9V192.9H365.1v-53.83H11.3v233.49c0 15.25 12.49 27.74 27.75 27.74h298.3c15.27 0 27.75-12.51 27.75-27.74V325.6h11.31v49.32c0 9.7-3.98 18.53-10.37 24.91-6.42 6.39-15.24 10.37-24.92 10.37H35.28c-9.68 0-18.49-3.97-24.89-10.37C3.97 393.41 0 384.59 0 374.92V70.79C0 61.12 3.97 52.3 10.36 45.9c6.43-6.42 15.25-10.39 24.92-10.39zm211.43-21.54c0-7.71 7.61-13.97 17.03-13.97 9.42 0 17.04 6.26 17.04 13.97v64.96c0 7.7-7.62 13.96-17.04 13.96-9.42 0-17.03-6.26-17.03-13.96V13.97zm-152.52 0C94.19 6.26 101.81 0 111.23 0c9.42 0 17.03 6.26 17.03 13.97v64.96c0 7.7-7.61 13.96-17.03 13.96-9.42 0-17.04-6.26-17.04-13.96V13.97zm311.37 327.72c1.48-14.79 2.69-32.45 3.59-46.5h-75.88v-71.88h77.43c-.39-14.06-1.17-31.75-2.35-46.58-.96-5.93 6.02-9.73 10.51-5.9l90.89 82.99c2.7 2.31 3.02 6.38.7 9.08l-.74.73-93.65 84.05c-4.6 3.89-11.47-.19-10.5-5.99zM63.51 286h50.56c3.53 0 6.43 2.91 6.43 6.44v42.06c0 3.52-2.91 6.44-6.43 6.44H63.51c-3.53 0-6.44-2.91-6.44-6.44v-42.06c0-3.54 2.9-6.44 6.44-6.44zm198.44-98.62h50.55c3.23 0 5.92 2.43 6.37 5.52h-16v49.42h-40.92c-3.53 0-6.45-2.9-6.45-6.45v-42.05c0-3.54 2.9-6.44 6.45-6.44zm0 98.62h40.92v39.6h16.07v8.9c0 3.52-2.92 6.44-6.44 6.44h-50.55c-3.53 0-6.45-2.91-6.45-6.44v-42.06c0-3.54 2.9-6.44 6.45-6.44zm-98.5-98.62h50.56c3.53 0 6.43 2.92 6.43 6.44v42.05c0 3.53-2.91 6.45-6.43 6.45h-50.56c-3.53 0-6.44-2.9-6.44-6.45v-42.05c0-3.54 2.9-6.44 6.44-6.44zm-99.94 0h50.56c3.53 0 6.43 2.92 6.43 6.44v42.05c0 3.53-2.91 6.45-6.43 6.45H63.51c-3.53 0-6.44-2.9-6.44-6.45v-42.05c0-3.54 2.9-6.44 6.44-6.44zM163.45 286h50.56c3.53 0 6.43 2.91 6.43 6.44v42.06c0 3.52-2.91 6.44-6.43 6.44h-50.56c-3.53 0-6.44-2.91-6.44-6.44v-42.06c0-3.54 2.9-6.44 6.44-6.44z\"/></svg>`;\nconst UpdatedIcon = `<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 506.49\"><path fill-rule=\"nonzero\" d=\"m371.06 415.61-43.25 11.52 6.23-46.41 37.02 34.89zm6.76-177.5c36.98 0 70.56 15.04 94.83 39.35C496.96 301.7 512 335.25 512 372.31c0 37.02-15.02 70.61-39.3 94.88l-.68.64c-24.23 23.88-57.5 38.66-94.2 38.66-37.06 0-70.61-15.04-94.88-39.31l-.64-.69c-23.9-24.24-38.68-57.53-38.68-94.18 0-37.06 15.04-70.61 39.32-94.89 24.27-24.27 57.85-39.31 94.88-39.31zm78.74 55.41c-20.09-20.11-47.96-32.58-78.74-32.58-30.75 0-58.61 12.47-78.75 32.62-20.15 20.14-32.62 48-32.62 78.75 0 30.5 12.25 58.14 32.02 78.19l.6.55c20.14 20.14 48 32.61 78.75 32.61 30.48 0 58.12-12.25 78.21-32.02l.54-.58c20.15-20.15 32.61-48 32.61-78.75s-12.48-58.61-32.62-78.79zM294.24 17.11C294.24 7.69 303.52 0 315.1 0c11.57 0 20.87 7.64 20.87 17.11v74.85c0 9.42-9.3 17.11-20.87 17.11-11.58 0-20.86-7.65-20.86-17.11V17.11zM56.8 242.28c-1.17 0-2.23-5.2-2.23-11.57 0-6.38.92-11.53 2.23-11.53h56.94c1.18 0 2.24 5.2 2.24 11.53 0 6.39-.92 11.57-2.24 11.57H56.8zm90.77 0c-1.17 0-2.23-5.2-2.23-11.57 0-6.38.92-11.53 2.23-11.53h56.94c1.18 0 2.24 5.2 2.24 11.53 0 6.39-.92 11.57-2.24 11.57h-56.94zm90.77 0c-1.16 0-2.22-5.2-2.22-11.57 0-6.38.92-11.53 2.22-11.53h56.94c1.19 0 2.25 5.15 2.25 11.49-5.7 3.55-11.2 7.44-16.43 11.61h-42.76zm-181.4 66.24c-1.18 0-2.24-5.2-2.24-11.57 0-6.38.93-11.58 2.24-11.58h56.94c1.18 0 2.22 5.2 2.22 11.58 0 6.37-.91 11.57-2.22 11.57H56.94zm90.77 0c-1.18 0-2.24-5.2-2.24-11.57 0-6.38.93-11.58 2.24-11.58h56.94c1.18 0 2.23 5.2 2.23 11.58 0 6.37-.92 11.57-2.23 11.57h-56.94zM57.06 374.8c-1.18 0-2.24-5.2-2.24-11.59 0-6.36.94-11.56 2.24-11.56H114c1.19 0 2.24 5.2 2.24 11.56 0 6.39-.93 11.59-2.24 11.59H57.06zm90.78 0c-1.19 0-2.25-5.2-2.25-11.59 0-6.36.94-11.56 2.25-11.56h56.94c1.18 0 2.24 5.2 2.24 11.56 0 6.39-.94 11.59-2.24 11.59h-56.94zM106.83 17.11C106.83 7.69 116.1 0 127.69 0c11.57 0 20.86 7.64 20.86 17.11v74.85c0 9.42-9.34 17.11-20.86 17.11-11.59 0-20.86-7.65-20.86-17.11V17.11zM22.97 163.64h397.39V77.46c0-2.94-1.19-5.53-3.09-7.43-1.9-1.9-4.59-3.08-7.42-3.08h-38.1c-6.39 0-11.59-5.2-11.59-11.57 0-6.38 5.2-11.58 11.59-11.58h38.1c9.32 0 17.7 3.77 23.82 9.88 6.12 6.14 9.88 14.5 9.88 23.83v136.81c-7.61-2.62-15.41-4.73-23.44-6.29v-21.38h.25H22.97v223.17c0 2.94 1.18 5.52 3.08 7.42 1.91 1.9 4.61 3.08 7.44 3.08h188.85c2.16 8.02 4.86 15.84 8.11 23.36H33.71c-9.3 0-17.7-3.75-23.84-9.89C3.75 427.72 0 419.36 0 410.02V77.55c0-9.29 3.75-17.7 9.87-23.82 6.14-6.13 14.5-9.89 23.84-9.89h40.67c6.38 0 11.57 5.2 11.57 11.57C85.95 61.8 80.76 67 74.38 67H33.71c-2.96 0-5.54 1.18-7.44 3.08-1.9 1.9-3.09 4.59-3.09 7.43v86.16h-.21v-.03zm158.95-96.69c-6.39 0-11.57-5.2-11.57-11.57 0-6.38 5.18-11.58 11.57-11.58h77.55c6.39 0 11.57 5.2 11.57 11.58 0 6.37-5.18 11.57-11.57 11.57h-77.55zm161.66 303.24 45.37-51.33c.72-.84 1.78-1.34 2.85-1.36.69-.01 1.37.13 1.98.45l32.94 29.96c.66.59 1.05 1.46 1.06 2.35.02 1-.39 1.98-1.16 2.66l-46.15 52.16-36.95-34.89h.06z\"/></svg>`;\n\nconst VisibilityFilters: IFilterOption[] = [\n {value: 'private_shared', label: 'Personal + Shared'},\n {value: 'private', label: 'Personal'},\n {value: 'shared', label: 'Shared'},\n {value: 'public', label: 'Public'},\n];\n\nconst StarredFilters: IFilterOption[] = [\n {value: 'all', label: 'All'},\n {value: 'starred', label: 'Starred'},\n {value: 'unstarred', label: 'Not Starred'},\n];\n\nconst SortOptions: IFilterOption[] = [\n {value: 'name', label: 'Name'},\n {value: 'created_at', label: 'Created'},\n {value: 'updated_at', label: 'Last Updated'},\n {value: 'last_used_at', label: 'Last Used'},\n {value: 'counter', label: 'Most Used'},\n {value: 'star_counter', label: 'Most Starred'},\n];\n\nexport type TAllowedTemplateAction = 'send' | 'createlink' | 'signnow' | 'submitted' | 'link' | 'edit' | 'delete';\n\n/**\n * Display a list of templates in the caller's account.\n *\n * ```ts\n * <verdocs-template-list\n * visibility=\"private\"\n * sort=\"updated_at\"\n * onViewTemplate={({ detail }) => console.log('View template:', detail) }\n * />\n * ```\n */@Component({\n tag: 'verdocs-templates-list',\n styleUrl: 'verdocs-templates-list.scss',\n})\nexport class VerdocsTemplatesList {\n /**\n * The endpoint to use to communicate with Verdocs. If not set, the default endpoint will be used.\n */\n @Prop() endpoint: VerdocsEndpoint = VerdocsEndpoint.getDefault();\n\n /**\n * The sharing settings to filter by.\n */\n @Prop({reflect: true, mutable: true}) visibility?: 'private_shared' | 'private' | 'shared' | 'public' = 'private_shared';\n\n /**\n * The starred settings to filter by.\n */\n @Prop({reflect: true, mutable: true}) starred: 'all' | 'starred' | 'unstarred' = 'all';\n\n /**\n * The sort order to display.\n */\n @Prop({reflect: true, mutable: true}) sort: string = 'updated_at';\n\n /**\n * If set, filter templates by the specified name.\n */\n @Prop({reflect: true, mutable: true}) name: string = '';\n\n /**\n * Override the If set, filter templates by the specified name.\n */\n @Prop({reflect: true, mutable: true}) allowedActions: TAllowedTemplateAction[] = ['send', 'submitted', 'link', 'edit', 'delete'];\n // @Prop({reflect: true, mutable: true}) allowedActions: TAllowedTemplateAction[] = ['send', 'createlink', 'signnow', 'submitted', 'link', 'edit', 'delete'];\n\n /**\n * Whether or not pagination should be enabled.\n */\n @Prop() showPagination = true;\n\n /**\n * The number of rows to display per page.\n */\n @Prop() rowsPerPage = 10;\n\n /**\n * The initial page number to select. Pagination is internally controlled but may be overriden by the\n * host applicaiton.\n */\n @Prop() selectedPage = 0;\n\n /**\n * Event fired if an error occurs. The event details will contain information about the error. Most errors will\n * terminate the process, and the calling application should correct the condition and re-render the component.\n */\n @Event({composed: true}) sdkError: EventEmitter<SDKError>;\n\n /**\n * Event fired when the user clicks a template to view it. Typically the host application will use this to navigate\n * to the template preview. This is also fired when the user selects \"Preview/Send\" fropm the dropdown menu.\n */\n @Event({composed: true}) viewTemplate: EventEmitter<{endpoint: VerdocsEndpoint; template: ITemplate}>;\n\n /**\n * Event fired when the user clicks to sign a template now.\n */\n @Event({composed: true}) signNow: EventEmitter<{endpoint: VerdocsEndpoint; template: ITemplate}>;\n\n /**\n * Event fired when the user clicks to sign a template now.\n */\n @Event({composed: true}) submittedData: EventEmitter<{endpoint: VerdocsEndpoint; template: ITemplate}>;\n\n /**\n * Event fired when the user selects to create a preview link for a template.\n */\n // @Event({composed: true}) createLink: EventEmitter<{endpoint: VerdocsEndpoint; template: ITemplate}>;\n\n /**\n * Event fired when the user chooses the Edit option from the dropdown menu.\n */\n @Event({composed: true}) editTemplate: EventEmitter<{endpoint: VerdocsEndpoint; template: ITemplate}>;\n\n /**\n * Event fired when the user chooses the Delete option from the dropdown menu. When this is fired, the template\n * will already have been deleted. The host application should remove it from the list or refresh the list.\n */\n @Event({composed: true}) templateDeleted: EventEmitter<{endpoint: VerdocsEndpoint; template: ITemplate}>;\n\n /**\n * Event fired when the user changes their sort order. Host applications can use this to save the user's preferences.\n */\n @Event({composed: true}) changeSort: EventEmitter<string>;\n\n /**\n * Event fired when the user changes their sort order. Host applications can use this to save the user's preferences.\n */\n @Event({composed: true}) changeVisibility: EventEmitter<'private_shared' | 'private' | 'shared' | 'public'>;\n\n /**\n * Event fired when the user changes their sort order. Host applications can use this to save the user's preferences.\n */\n @Event({composed: true}) changeStarred: EventEmitter<'all' | 'starred' | 'unstarred'>;\n\n /**\n * Event fired when the user changes the name filter. This is fired for every inputChange event (every character\n * typed). This event is provided for balance with the other events, but host applications should generally not\n * save this value. Users might appreciate applications remembering their sorting or filtering preferences, but\n * probably not their search terms.\n */\n @Event({composed: true}) changeName: EventEmitter<string>;\n\n @State() count = 0;\n @State() initiallyLoaded = false;\n @State() loading = true;\n @State() confirmDelete: ITemplate | null = null;\n @State() templates: ITemplate[] = [];\n @State() localNameFilter = '';\n\n @Watch('sharing')\n handleSharingUpdated() {\n return this.queryTemplates();\n }\n\n @Watch('starred')\n handleStarredUpdated() {\n return this.queryTemplates();\n }\n\n @Watch('sort')\n handleSortUpdated() {\n return this.queryTemplates();\n }\n\n @Watch('name')\n handleNameUpdated() {\n return this.queryTemplates();\n }\n\n @Watch('selectedPage')\n handlePageUpdated() {\n return this.queryTemplates();\n }\n\n componentWillLoad() {\n this.endpoint.loadSession();\n if (!this.endpoint.session) {\n console.log('[TEMPLATES] Must be authenticated');\n return;\n }\n }\n\n async componentDidLoad() {\n await this.queryTemplates();\n this.initiallyLoaded = true;\n }\n\n async queryTemplates() {\n console.log('[TEMPLATES] Querying templates');\n this.loading = true;\n try {\n let queryParams: IGetTemplatesParams = {\n visibility: this.visibility,\n // starred: this.starred,\n page: this.selectedPage,\n // sort: this.sort,\n rows: this.rowsPerPage,\n // ascending: this.sort === 'name' || this.sort === 'star_counter',\n };\n\n if (this.name.trim() !== '') {\n queryParams.q = this.name.trim();\n }\n\n const response = await getTemplates(this.endpoint, queryParams);\n this.templates = response.templates;\n this.count = response.count;\n this.loading = false;\n } catch (e) {\n this.loading = false;\n console.log('[TEMPLATES] Error listing templates', e);\n this.sdkError?.emit(new SDKError(e.message, e.response?.status, e.response?.data));\n }\n }\n\n handleOptionSelected = (option: string, template: ITemplate) => {\n if (option === 'send') {\n this.viewTemplate?.emit({endpoint: this.endpoint, template: template});\n // } else if (option === 'createlink') {\n // VerdocsToast('This feature is coming soon!');\n } else if (option === 'signnow') {\n this.signNow?.emit({endpoint: this.endpoint, template: template});\n } else if (option === 'submitted') {\n this.submittedData?.emit({endpoint: this.endpoint, template: template});\n // } else if (option === 'link') {\n // VerdocsToast('This feature is coming soon!');\n } else if (option === 'edit') {\n this.editTemplate?.emit({endpoint: this.endpoint, template: template});\n } else if (option === 'delete') {\n this.confirmDelete = template;\n }\n };\n\n deleteTemplate(template: ITemplate) {\n this.confirmDelete = null;\n deleteTemplate(this.endpoint, template.id)\n .then(() => {\n console.log('[TEMPLATES] Deleted template', template);\n this.templateDeleted?.emit({endpoint: this.endpoint, template: template});\n return this.queryTemplates();\n })\n .catch(e => {\n console.log('[TEMPLATES] Error deleting template', template);\n this.sdkError?.emit(new SDKError(e.message, e.response?.status, e.response?.data));\n });\n }\n\n render() {\n // In addition to the server query we also filter locally. This provides a faster UI update\n // while the onBlur re-queries the server for any new records that now qualify by the filter.\n const locallyFilteredTemplates = !this.localNameFilter ? this.templates : this.templates.filter(t => t.name.toLowerCase().includes(this.localNameFilter.toLowerCase()));\n\n return (\n <Host>\n <div class=\"header\">\n <div class=\"filter\">\n <verdocs-text-input\n id=\"verdocs-filter-name\"\n value={this.name}\n clearable={true}\n autocomplete=\"off\"\n placeholder=\"Filter by Name...\"\n onInput={(e: any) => (this.localNameFilter = e.target.value.trim())}\n onFocusout={(e: any) => {\n this.name = e.target.value.trim();\n this.localNameFilter = e.target.value.trim();\n this.changeName?.emit(this.name);\n }}\n />\n </div>\n\n <verdocs-quick-filter\n label=\"Visibility\"\n value={this.visibility}\n options={VisibilityFilters}\n onOptionSelected={e => {\n this.visibility = e.detail.value as any;\n this.changeVisibility?.emit(this.visibility);\n }}\n />\n\n <verdocs-quick-filter\n label=\"Starred\"\n value={this.starred}\n options={StarredFilters}\n onOptionSelected={e => {\n this.starred = e.detail.value as any;\n this.changeStarred?.emit(this.starred);\n }}\n />\n\n <verdocs-quick-filter\n label=\"Sort By\"\n value={this.sort}\n options={SortOptions}\n onOptionSelected={e => {\n this.sort = e.detail.value as any;\n this.changeSort?.emit(this.sort);\n }}\n />\n {this.loading && <verdocs-spinner mode=\"dark\" size={24} />}\n <div style={{display: 'flex', flex: '1'}} />\n </div>\n\n {/*<verdocs-table*/}\n {/* data={locallyFilteredTemplates}*/}\n {/* onRowClick={(template: any) => this.viewTemplate?.emit({endpoint: this.endpoint, template: template as ITemplate})}*/}\n {/* columns={[*/}\n {/* {*/}\n {/* id: 'starred',*/}\n {/* renderCell: (_, row) => <verdocs-template-star template={row} endpoint={this.endpoint} />,*/}\n {/* },*/}\n {/* {*/}\n {/* id: 'name',*/}\n {/* },*/}\n {/* {*/}\n {/* id: 'usage',*/}\n {/* renderCell: (_, row) => (*/}\n {/* <div>*/}\n {/* <span innerHTML={EnvelopeIcon} title=\"Usage Counter\" />*/}\n {/* {row.counter || '--'}*/}\n {/* </div>*/}\n {/* ),*/}\n {/* },*/}\n {/* {*/}\n {/* id: 'created_at',*/}\n {/* renderCell: (_, row) => {*/}\n {/* const dateToShow = this.sort === 'created_at' ? 'created_at' : this.sort === 'updated_at' ? 'updated_at' : 'last_used_at';*/}\n {/* const date = row[dateToShow];*/}\n\n {/* return (*/}\n {/* <div class=\"last-used\">*/}\n {/* {dateToShow === 'created_at' && <span innerHTML={CreatedIcon} title=\"Created\" />}*/}\n {/* {dateToShow === 'updated_at' && <span innerHTML={UpdatedIcon} title=\"Last Updated\" />}*/}\n {/* {dateToShow === 'last_used_at' && <span innerHTML={LastUsedIcon} title=\"Last Used\" />}*/}\n {/* {date ? format(new Date(date), 'P') : 'Never'}*/}\n {/* </div>*/}\n {/* );*/}\n {/* },*/}\n {/* },*/}\n {/* {*/}\n {/* id: 'ownership',*/}\n {/* renderCell: (_, row) => (*/}\n {/* <div>*/}\n {/* {row.is_public && (*/}\n {/* <div class=\"ownership\">*/}\n {/* <span innerHTML={GlobeAltIcon} /> Public*/}\n {/* </div>*/}\n {/* )}*/}\n {/* {!row.is_public && !row.is_personal && (*/}\n {/* <div class=\"ownership\">*/}\n {/* <span innerHTML={LockClosedIcon} /> Private*/}\n {/* </div>*/}\n {/* )}*/}\n {/* {!row.is_public && row.is_personal && (*/}\n {/* <div class=\"ownership\">*/}\n {/* <span innerHTML={BuildingOfficeIcon} /> Shared*/}\n {/* </div>*/}\n {/* )}*/}\n {/* </div>*/}\n {/* ),*/}\n {/* },*/}\n {/* {*/}\n {/* id: 'actions',*/}\n {/* renderCell: (_, row) => {*/}\n {/* const MENU_OPTIONS: IMenuOption[] = [];*/}\n\n {/* if (row.allowed_operations.includes(TemplateActions.READ) && this.allowedActions.includes('send')) {*/}\n {/* MENU_OPTIONS.push({label: 'Preview / Send', id: 'send', disabled: !row.allowed_operations.includes(TemplateActions.READ)});*/}\n {/* }*/}\n\n {/* // if (this.allowedActions.includes('createlink')) {*/}\n {/* // MENU_OPTIONS.push({label: 'Create Link', id: 'createlink', disabled: true});*/}\n {/* // }*/}\n\n {/* if (row.allowed_operations.includes(TemplateActions.CREATE_PERSONAL) && this.allowedActions.includes('signnow')) {*/}\n {/* MENU_OPTIONS.push({label: 'Sign Now', id: 'signnow', disabled: true});*/}\n {/* }*/}\n\n {/* if (row.allowed_operations.includes(TemplateActions.READ) && this.allowedActions.includes('submitted')) {*/}\n {/* MENU_OPTIONS.push({label: ''});*/}\n {/* MENU_OPTIONS.push({label: 'Submissions', id: 'submitted'});*/}\n {/* }*/}\n\n {/* if (this.allowedActions.includes('link') || this.allowedActions.includes('edit') || this.allowedActions.includes('delete')) {*/}\n {/* MENU_OPTIONS.push({label: ''});*/}\n\n {/* // TODO: The preview link used to be just an internal route in the main Web application, but*/}\n {/* // that's not suitable for embeddding. Disabling until this gets re-requested as a feature,*/}\n {/* // in which case we'll want to move this to an API-driven function.*/}\n {/* // if (this.allowedActions.includes('link') || this.allowedActions.includes('edit') || this.allowedActions.includes('delete')) {*/}\n {/* // MENU_OPTIONS.push({label: 'Get Preview Link', id: 'link', disabled: !this.canPreview(template)});*/}\n {/* // }*/}\n\n {/* if (this.allowedActions.includes('link') || this.allowedActions.includes('edit') || this.allowedActions.includes('delete')) {*/}\n {/* MENU_OPTIONS.push({label: 'Edit', id: 'edit', disabled: !row.allowed_operations.includes(TemplateActions.WRITE)});*/}\n {/* }*/}\n\n {/* if (this.allowedActions.includes('link') || this.allowedActions.includes('edit') || this.allowedActions.includes('delete')) {*/}\n {/* MENU_OPTIONS.push({*/}\n {/* label: 'Delete',*/}\n {/* id: 'delete',*/}\n {/* disabled: !row.allowed_operations.includes(TemplateActions.DELETE),*/}\n {/* });*/}\n {/* }*/}\n {/* }*/}\n\n {/* return <verdocs-dropdown options={MENU_OPTIONS} onOptionSelected={e => this.handleOptionSelected(e.detail.id, row)} />;*/}\n {/* },*/}\n {/* },*/}\n {/* ]}*/}\n {/*/>*/}\n\n {locallyFilteredTemplates.map(template => {\n const dateToShow = this.sort === 'created_at' ? 'created_at' : this.sort === 'updated_at' ? 'updated_at' : 'last_used_at';\n const date = template[dateToShow];\n\n const MENU_OPTIONS: IMenuOption[] = [];\n\n const allowed_operations: TTemplateAction[] = [];\n\n // serverless/src/functions/getTemplates.ts: allowed_operations: [] as string[],\n // serverless/src/functions/getTemplates.ts: canPerformTemplateAction(request.session, 'create_personal', record) && record.allowed_operations.push('create_personal');\n // serverless/src/functions/getTemplates.ts: canPerformTemplateAction(request.session, 'create_org', record) && record.allowed_operations.push('create_org');\n // serverless/src/functions/getTemplates.ts: canPerformTemplateAction(request.session, 'create_public', record) && record.allowed_operations.push('create_public');\n // serverless/src/functions/getTemplates.ts: canPerformTemplateAction(request.session, 'read', record) && record.allowed_operations.push('read');\n // serverless/src/functions/getTemplates.ts: canPerformTemplateAction(request.session, 'write', record) && record.allowed_operations.push('write');\n // serverless/src/functions/getTemplates.ts: canPerformTemplateAction(request.session, 'delete', record) && record.allowed_operations.push('delete');\n // serverless/src/functions/getTemplates.ts: canPerformTemplateAction(request.session, 'change_visibility_personal', record) && record.allowed_operations.push('change_visibility_personal');\n // serverless/src/functions/getTemplates.ts: canPerformTemplateAction(request.session, 'change_visibility_org', record) && record.allowed_operations.push('change_visibility_org');\n // serverless/src/functions/getTemplates.ts: canPerformTemplateAction(request.session, 'change_visibility_public', record) && record.allowed_operations.push('change_visibility_public');\n\n if (this.allowedActions.includes('send')) {\n MENU_OPTIONS.push({label: 'Preview / Send', id: 'send', disabled: !canPerformTemplateAction(this.endpoint.profile, 'read', template)});\n }\n\n // if (this.allowedActions.includes('createlink')) {\n // MENU_OPTIONS.push({label: 'Create Link', id: 'createlink', disabled: true});\n // }\n\n if (this.allowedActions.includes('signnow')) {\n MENU_OPTIONS.push({label: 'Sign Now', id: 'signnow', disabled: true});\n }\n\n if (this.allowedActions.includes('submitted')) {\n MENU_OPTIONS.push({label: ''});\n MENU_OPTIONS.push({label: 'Submissions', id: 'submitted', disabled: !canPerformTemplateAction(this.endpoint.profile, 'read', template)});\n }\n\n if (this.allowedActions.includes('link') || this.allowedActions.includes('edit') || this.allowedActions.includes('delete')) {\n MENU_OPTIONS.push({label: ''});\n\n // TODO: The preview link used to be just an internal route in the main Web application, but\n // that's not suitable for embeddding. Disabling until this gets re-requested as a feature,\n // in which case we'll want to move this to an API-driven function.\n // if (this.allowedActions.includes('link') || this.allowedActions.includes('edit') || this.allowedActions.includes('delete')) {\n // MENU_OPTIONS.push({label: 'Get Preview Link', id: 'link', disabled: !this.canPreview(template)});\n // }\n\n if (this.allowedActions.includes('link') || this.allowedActions.includes('edit') || this.allowedActions.includes('delete')) {\n MENU_OPTIONS.push({label: 'Edit', id: 'edit', disabled: !allowed_operations.includes('write')});\n }\n\n if (this.allowedActions.includes('link') || this.allowedActions.includes('edit') || this.allowedActions.includes('delete')) {\n MENU_OPTIONS.push({label: 'Delete', id: 'delete', disabled: !allowed_operations.includes('delete')});\n }\n }\n\n return (\n <div\n class=\"template\"\n onClick={() => {\n this.viewTemplate?.emit({endpoint: this.endpoint, template});\n }}\n >\n <div class=\"inner\">\n <verdocs-template-star template={template} endpoint={this.endpoint} />\n\n <div class=\"spacer icon-spacer\" />\n <div class=\"name\">{template.name}</div>\n\n <div class=\"spacer usage-spacer\" />\n <div class=\"usage\">\n <span innerHTML={EnvelopeIcon} title=\"Usage Counter\" />\n {template.counter || '--'}\n </div>\n\n <div class=\"spacer last-used-spacer\" />\n <div class=\"last-used\">\n {dateToShow === 'created_at' && <span innerHTML={CreatedIcon} title=\"Created\" />}\n {dateToShow === 'updated_at' && <span innerHTML={UpdatedIcon} title=\"Last Updated\" />}\n {dateToShow === 'last_used_at' && <span innerHTML={LastUsedIcon} title=\"Last Used\" />}\n {date ? format(new Date(date), 'P') : 'Never'}\n </div>\n\n <div class=\"spacer ownership-spacer\" />\n {template.is_public && (\n <div class=\"ownership\">\n <span innerHTML={GlobeAltIcon} /> Public\n </div>\n )}\n {!template.is_public && !template.is_personal && (\n <div class=\"ownership\">\n <span innerHTML={LockClosedIcon} /> Private\n </div>\n )}\n {!template.is_public && template.is_personal && (\n <div class=\"ownership\">\n <span innerHTML={BuildingOfficeIcon} /> Shared\n </div>\n )}\n\n <verdocs-dropdown options={MENU_OPTIONS} onOptionSelected={e => this.handleOptionSelected(e.detail.id, template)} />\n </div>\n </div>\n );\n })}\n\n {!this.initiallyLoaded && (\n <div>\n {integerSequence(0, this.rowsPerPage).map(() => (\n <div class=\"template-placeholder\" />\n ))}\n </div>\n )}\n\n {this.initiallyLoaded && !this.templates.length && <div class=\"empty-text\">No matching templates found. Please adjust your filters and try again.</div>}\n\n {this.initiallyLoaded && this.templates.length && this.showPagination ? (\n <div style={{marginTop: '20px'}}>\n <verdocs-pagination\n selectedPage={this.selectedPage}\n perPage={this.rowsPerPage}\n itemCount={this.count}\n onSelectPage={e => {\n this.selectedPage = e.detail.selectedPage;\n }}\n />\n </div>\n ) : (\n <div />\n )}\n\n {this.confirmDelete && (\n <verdocs-ok-dialog\n heading=\"Delete this Template?\"\n message=\"This operation cannot be undone.\"\n onNext={() => this.deleteTemplate(this.confirmDelete)}\n onExit={() => (this.confirmDelete = null)}\n showCancel={true}\n />\n )}\n </Host>\n );\n }\n}\n"],"version":3}