@servicetitan/dte-pdf-editor 1.25.0 → 1.26.0

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 (94) hide show
  1. package/README.md +75 -38
  2. package/dist/components/display-conditions/display-condition.d.ts.map +1 -1
  3. package/dist/components/display-conditions/display-condition.js +0 -2
  4. package/dist/components/display-conditions/display-condition.js.map +1 -1
  5. package/dist/components/field-config-panel/field-config-panel.d.ts.map +1 -1
  6. package/dist/components/field-config-panel/field-config-panel.js +3 -2
  7. package/dist/components/field-config-panel/field-config-panel.js.map +1 -1
  8. package/dist/components/field-config-panel/table-configs.d.ts +9 -0
  9. package/dist/components/field-config-panel/table-configs.d.ts.map +1 -0
  10. package/dist/components/field-config-panel/table-configs.js +78 -0
  11. package/dist/components/field-config-panel/table-configs.js.map +1 -0
  12. package/dist/components/field-sidebar/field-menu-group.d.ts +1 -1
  13. package/dist/components/field-sidebar/field-menu-group.d.ts.map +1 -1
  14. package/dist/components/field-sidebar/field-menu-group.js +1 -5
  15. package/dist/components/field-sidebar/field-menu-group.js.map +1 -1
  16. package/dist/components/field-sidebar/field-sidebar.d.ts.map +1 -1
  17. package/dist/components/field-sidebar/field-sidebar.js +3 -2
  18. package/dist/components/field-sidebar/field-sidebar.js.map +1 -1
  19. package/dist/components/field-sidebar/generic-field-type-list.d.ts +9 -0
  20. package/dist/components/field-sidebar/generic-field-type-list.d.ts.map +1 -0
  21. package/dist/components/field-sidebar/generic-field-type-list.js +12 -0
  22. package/dist/components/field-sidebar/generic-field-type-list.js.map +1 -0
  23. package/dist/components/pdf-canvas/pdf-canvas.d.ts +1 -0
  24. package/dist/components/pdf-canvas/pdf-canvas.d.ts.map +1 -1
  25. package/dist/components/pdf-canvas/pdf-canvas.js +2 -2
  26. package/dist/components/pdf-canvas/pdf-canvas.js.map +1 -1
  27. package/dist/components/pdf-editor/pdf-editor.d.ts.map +1 -1
  28. package/dist/components/pdf-editor/pdf-editor.js +1 -1
  29. package/dist/components/pdf-editor/pdf-editor.js.map +1 -1
  30. package/dist/components/pdf-fields-overlay/pdf-fields-overlay.d.ts +1 -0
  31. package/dist/components/pdf-fields-overlay/pdf-fields-overlay.d.ts.map +1 -1
  32. package/dist/components/pdf-fields-overlay/pdf-fields-overlay.js +2 -2
  33. package/dist/components/pdf-fields-overlay/pdf-fields-overlay.js.map +1 -1
  34. package/dist/components/pdf-fields-overlay/pdf-overlay-field-generic.d.ts +9 -0
  35. package/dist/components/pdf-fields-overlay/pdf-overlay-field-generic.d.ts.map +1 -0
  36. package/dist/components/pdf-fields-overlay/pdf-overlay-field-generic.js +83 -0
  37. package/dist/components/pdf-fields-overlay/pdf-overlay-field-generic.js.map +1 -0
  38. package/dist/components/pdf-fields-overlay/pdf-overlay-field.d.ts +1 -0
  39. package/dist/components/pdf-fields-overlay/pdf-overlay-field.d.ts.map +1 -1
  40. package/dist/components/pdf-fields-overlay/pdf-overlay-field.js +6 -3
  41. package/dist/components/pdf-fields-overlay/pdf-overlay-field.js.map +1 -1
  42. package/dist/components/pdf-view/pdf-view-generic.d.ts +16 -0
  43. package/dist/components/pdf-view/pdf-view-generic.d.ts.map +1 -0
  44. package/dist/components/pdf-view/pdf-view-generic.js +68 -0
  45. package/dist/components/pdf-view/pdf-view-generic.js.map +1 -0
  46. package/dist/components/pdf-view/pdf-view.d.ts.map +1 -1
  47. package/dist/components/pdf-view/pdf-view.js +2 -1
  48. package/dist/components/pdf-view/pdf-view.js.map +1 -1
  49. package/dist/components/shared/index.d.ts +2 -0
  50. package/dist/components/shared/index.d.ts.map +1 -0
  51. package/dist/components/shared/index.js +2 -0
  52. package/dist/components/shared/index.js.map +1 -0
  53. package/dist/components/shared/inline-editable.d.ts +8 -0
  54. package/dist/components/shared/inline-editable.d.ts.map +1 -0
  55. package/dist/components/shared/inline-editable.js +17 -0
  56. package/dist/components/shared/inline-editable.js.map +1 -0
  57. package/dist/constants/field.constants.d.ts +8 -1
  58. package/dist/constants/field.constants.d.ts.map +1 -1
  59. package/dist/constants/field.constants.js +23 -0
  60. package/dist/constants/field.constants.js.map +1 -1
  61. package/dist/constants/menu-group.d.ts.map +1 -1
  62. package/dist/constants/menu-group.js +8 -2
  63. package/dist/constants/menu-group.js.map +1 -1
  64. package/dist/hooks/usePdfFieldDnD.d.ts.map +1 -1
  65. package/dist/hooks/usePdfFieldDnD.js +80 -20
  66. package/dist/hooks/usePdfFieldDnD.js.map +1 -1
  67. package/dist/interface/types.d.ts +24 -2
  68. package/dist/interface/types.d.ts.map +1 -1
  69. package/dist/interface/types.js +1 -0
  70. package/dist/interface/types.js.map +1 -1
  71. package/package.json +1 -1
  72. package/src/components/display-conditions/display-condition.tsx +0 -3
  73. package/src/components/field-config-panel/field-config-panel.tsx +8 -1
  74. package/src/components/field-config-panel/table-configs.tsx +136 -0
  75. package/src/components/field-sidebar/field-menu-group.tsx +16 -27
  76. package/src/components/field-sidebar/field-sidebar.tsx +5 -1
  77. package/src/components/field-sidebar/generic-field-type-list.tsx +27 -0
  78. package/src/components/pdf-canvas/pdf-canvas.tsx +3 -0
  79. package/src/components/pdf-editor/pdf-editor.tsx +1 -0
  80. package/src/components/pdf-fields-overlay/pdf-fields-overlay.tsx +3 -0
  81. package/src/components/pdf-fields-overlay/pdf-overlay-field-generic.tsx +188 -0
  82. package/src/components/pdf-fields-overlay/pdf-overlay-field.tsx +11 -1
  83. package/src/components/pdf-view/pdf-view-generic.tsx +129 -0
  84. package/src/components/pdf-view/pdf-view.tsx +4 -0
  85. package/src/components/shared/index.ts +1 -0
  86. package/src/components/shared/inline-editable.tsx +47 -0
  87. package/src/constants/field.constants.ts +27 -0
  88. package/src/constants/menu-group.ts +8 -2
  89. package/src/hooks/usePdfFieldDnD.ts +97 -27
  90. package/src/interface/types.ts +27 -1
  91. package/src/styles/index.css +1 -0
  92. package/src/styles/inline-editable.css +20 -0
  93. package/src/styles/pdf-field-overlay.css +31 -0
  94. package/src/styles/variables.css +6 -0
@@ -3,6 +3,7 @@ export enum FieldTypeEnum {
3
3
  eSign = 'eSign',
4
4
  fillable = 'fillable',
5
5
  calculated = 'calculated',
6
+ generic = 'generic',
6
7
  }
7
8
 
8
9
  export enum ESignFieldType {
@@ -14,7 +15,31 @@ export enum ESignFieldType {
14
15
 
15
16
  export type FillableFieldType = 'text' | 'date' | 'checkbox' | 'radio' | 'number';
16
17
 
17
- export type PdfFieldSubType = FillableFieldType | ESignFieldType;
18
+ export type GenericFieldType = 'table' | 'text';
19
+
20
+ export type PdfFieldSubType = FillableFieldType | ESignFieldType | GenericFieldType;
21
+
22
+ export interface GenericFieldTableDataType {
23
+ showHeader: boolean;
24
+ header: {
25
+ height: number;
26
+ cells: {
27
+ value: string;
28
+ }[];
29
+ };
30
+ body: {
31
+ height: number;
32
+ cells: {
33
+ value: string;
34
+ }[];
35
+ }[];
36
+ }
37
+
38
+ export interface GenericFieldTextDataType {
39
+ value: string;
40
+ }
41
+
42
+ export type FieldDataType = GenericFieldTableDataType | GenericFieldTextDataType;
18
43
 
19
44
  export interface DisplayConditionState {
20
45
  behavior: 'show' | 'hide';
@@ -49,6 +74,7 @@ export interface PdfField {
49
74
  path?: string;
50
75
  recipient?: string;
51
76
  description?: string;
77
+ data?: FieldDataType;
52
78
  formula?: StructuredFormula;
53
79
  formulaFormat?: CalculatedFieldFormat;
54
80
  displayCondition?: DisplayConditionState | null;
@@ -9,3 +9,4 @@
9
9
  @import './formula-modal.css';
10
10
  @import './field-type.css';
11
11
  @import './pdf-document-renderer.css';
12
+ @import './inline-editable.css';
@@ -0,0 +1,20 @@
1
+ .inline-editable-input {
2
+ width: 100%;
3
+ min-width: 0;
4
+ box-sizing: border-box;
5
+ border: 1px solid var(--border-color);
6
+ padding: 2px var(--spacing-half);
7
+ font: inherit;
8
+ background: var(--bg-color);
9
+ }
10
+
11
+ .inline-editable-button {
12
+ min-height: 20px;
13
+ width: 100%;
14
+ height: inherit;
15
+ cursor: pointer;
16
+ }
17
+
18
+ .inline-editable-html-text {
19
+ margin: var(--spacing-0, 0);
20
+ }
@@ -112,3 +112,34 @@
112
112
  pointer-events: none;
113
113
  margin: var(--spacing-0, 0);
114
114
  }
115
+
116
+ .dte-pdf-field-generic-table {
117
+ padding: var(--spacing-0, 0);
118
+ margin: var(--spacing-0, 0);
119
+ border-spacing: var(--spacing-0, 0);
120
+ width: 100%;
121
+ table-layout: fixed;
122
+ }
123
+
124
+ .dte-pdf-field-generic-table td {
125
+ border-top: 1px solid var(--border-color);
126
+ border-left: 1px solid var(--border-color);
127
+ padding-inline: var(--spacing-1, 8px);
128
+ }
129
+
130
+ .dte-pdf-field-generic-table .dte-pdf-field-generic-table-header td {
131
+ background-color: var(--bg-color);
132
+ font-weight: bold;
133
+ }
134
+
135
+ .dte-pdf-field-generic-table tr:not(.dte-pdf-field-generic-table-header) td {
136
+ background-color: var(--bg-color-light);
137
+ }
138
+
139
+ .dte-pdf-field-generic-table tr:last-child td {
140
+ border-bottom: 1px solid var(--border-color);
141
+ }
142
+
143
+ .dte-pdf-field-generic-table tr td:last-child {
144
+ border-right: 1px solid var(--border-color);
145
+ }
@@ -16,9 +16,15 @@
16
16
 
17
17
  /* Colors - Neutral */
18
18
  --color-neutral-0: var(--color-neutral-0, #ffffff);
19
+ --color-neutral-70: var(--color-neutral-70, #737475);
19
20
  --color-neutral-200: var(--color-neutral-200, #6c6d70);
20
21
  --color-neutral-300: var(--color-neutral-300, #2d2e31);
21
22
 
23
+ /* Background colors */
24
+ --bg-color-light: var(--color-neutral-0, #ffffff);
25
+ --bg-color: var(--color-neutral-200, #f5f5f5);
26
+ --bg-color-hover: #eaeaea;
27
+
22
28
  /* Colors - Semantic */
23
29
  --success: #28a745;
24
30
  --danger: #dc3545;