@aacigroup/aaci_shared 5.1.0 → 5.2.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 (118) hide show
  1. package/README.md +28 -0
  2. package/dist/questionTypes.d.ts +2 -0
  3. package/dist/questionTypes.d.ts.map +1 -0
  4. package/dist/questionTypes.js +2 -0
  5. package/dist/questionTypes.js.map +1 -0
  6. package/dist/types/questionTypes/answerValidators/addressValidator.d.ts +4 -0
  7. package/dist/types/questionTypes/answerValidators/addressValidator.d.ts.map +1 -0
  8. package/dist/types/questionTypes/answerValidators/addressValidator.js +41 -0
  9. package/dist/types/questionTypes/answerValidators/addressValidator.js.map +1 -0
  10. package/dist/types/questionTypes/answerValidators/booleanValidator.d.ts +4 -0
  11. package/dist/types/questionTypes/answerValidators/booleanValidator.d.ts.map +1 -0
  12. package/dist/types/questionTypes/answerValidators/booleanValidator.js +11 -0
  13. package/dist/types/questionTypes/answerValidators/booleanValidator.js.map +1 -0
  14. package/dist/types/questionTypes/answerValidators/currencyValidator.d.ts +4 -0
  15. package/dist/types/questionTypes/answerValidators/currencyValidator.d.ts.map +1 -0
  16. package/dist/types/questionTypes/answerValidators/currencyValidator.js +44 -0
  17. package/dist/types/questionTypes/answerValidators/currencyValidator.js.map +1 -0
  18. package/dist/types/questionTypes/answerValidators/dateValidator.d.ts +4 -0
  19. package/dist/types/questionTypes/answerValidators/dateValidator.d.ts.map +1 -0
  20. package/dist/types/questionTypes/answerValidators/dateValidator.js +34 -0
  21. package/dist/types/questionTypes/answerValidators/dateValidator.js.map +1 -0
  22. package/dist/types/questionTypes/answerValidators/datetimeValidator.d.ts +4 -0
  23. package/dist/types/questionTypes/answerValidators/datetimeValidator.d.ts.map +1 -0
  24. package/dist/types/questionTypes/answerValidators/datetimeValidator.js +33 -0
  25. package/dist/types/questionTypes/answerValidators/datetimeValidator.js.map +1 -0
  26. package/dist/types/questionTypes/answerValidators/emailValidator.d.ts +4 -0
  27. package/dist/types/questionTypes/answerValidators/emailValidator.d.ts.map +1 -0
  28. package/dist/types/questionTypes/answerValidators/emailValidator.js +41 -0
  29. package/dist/types/questionTypes/answerValidators/emailValidator.js.map +1 -0
  30. package/dist/types/questionTypes/answerValidators/fileValidator.d.ts +4 -0
  31. package/dist/types/questionTypes/answerValidators/fileValidator.d.ts.map +1 -0
  32. package/dist/types/questionTypes/answerValidators/fileValidator.js +46 -0
  33. package/dist/types/questionTypes/answerValidators/fileValidator.js.map +1 -0
  34. package/dist/types/questionTypes/answerValidators/imageValidator.d.ts +4 -0
  35. package/dist/types/questionTypes/answerValidators/imageValidator.d.ts.map +1 -0
  36. package/dist/types/questionTypes/answerValidators/imageValidator.js +63 -0
  37. package/dist/types/questionTypes/answerValidators/imageValidator.js.map +1 -0
  38. package/dist/types/questionTypes/answerValidators/index.d.ts +23 -0
  39. package/dist/types/questionTypes/answerValidators/index.d.ts.map +1 -0
  40. package/dist/types/questionTypes/answerValidators/index.js +73 -0
  41. package/dist/types/questionTypes/answerValidators/index.js.map +1 -0
  42. package/dist/types/questionTypes/answerValidators/multiselectValidator.d.ts +4 -0
  43. package/dist/types/questionTypes/answerValidators/multiselectValidator.d.ts.map +1 -0
  44. package/dist/types/questionTypes/answerValidators/multiselectValidator.js +50 -0
  45. package/dist/types/questionTypes/answerValidators/multiselectValidator.js.map +1 -0
  46. package/dist/types/questionTypes/answerValidators/numberValidator.d.ts +4 -0
  47. package/dist/types/questionTypes/answerValidators/numberValidator.d.ts.map +1 -0
  48. package/dist/types/questionTypes/answerValidators/numberValidator.js +50 -0
  49. package/dist/types/questionTypes/answerValidators/numberValidator.js.map +1 -0
  50. package/dist/types/questionTypes/answerValidators/phoneValidator.d.ts +4 -0
  51. package/dist/types/questionTypes/answerValidators/phoneValidator.d.ts.map +1 -0
  52. package/dist/types/questionTypes/answerValidators/phoneValidator.js +18 -0
  53. package/dist/types/questionTypes/answerValidators/phoneValidator.js.map +1 -0
  54. package/dist/types/questionTypes/answerValidators/ratingValidator.d.ts +4 -0
  55. package/dist/types/questionTypes/answerValidators/ratingValidator.d.ts.map +1 -0
  56. package/dist/types/questionTypes/answerValidators/ratingValidator.js +31 -0
  57. package/dist/types/questionTypes/answerValidators/ratingValidator.js.map +1 -0
  58. package/dist/types/questionTypes/answerValidators/selectValidator.d.ts +4 -0
  59. package/dist/types/questionTypes/answerValidators/selectValidator.d.ts.map +1 -0
  60. package/dist/types/questionTypes/answerValidators/selectValidator.js +31 -0
  61. package/dist/types/questionTypes/answerValidators/selectValidator.js.map +1 -0
  62. package/dist/types/questionTypes/answerValidators/textValidator.d.ts +4 -0
  63. package/dist/types/questionTypes/answerValidators/textValidator.d.ts.map +1 -0
  64. package/dist/types/questionTypes/answerValidators/textValidator.js +44 -0
  65. package/dist/types/questionTypes/answerValidators/textValidator.js.map +1 -0
  66. package/dist/types/questionTypes/answerValidators/textareaValidator.d.ts +4 -0
  67. package/dist/types/questionTypes/answerValidators/textareaValidator.d.ts.map +1 -0
  68. package/dist/types/questionTypes/answerValidators/textareaValidator.js +40 -0
  69. package/dist/types/questionTypes/answerValidators/textareaValidator.js.map +1 -0
  70. package/dist/types/questionTypes/answerValidators/types.d.ts +9 -0
  71. package/dist/types/questionTypes/answerValidators/types.d.ts.map +1 -0
  72. package/dist/types/questionTypes/answerValidators/types.js +6 -0
  73. package/dist/types/questionTypes/answerValidators/types.js.map +1 -0
  74. package/dist/types/questionTypes/answerValidators/yearValidator.d.ts +4 -0
  75. package/dist/types/questionTypes/answerValidators/yearValidator.d.ts.map +1 -0
  76. package/dist/types/questionTypes/answerValidators/yearValidator.js +39 -0
  77. package/dist/types/questionTypes/answerValidators/yearValidator.js.map +1 -0
  78. package/dist/types/questionTypes/conditionHelpers.d.ts +26 -0
  79. package/dist/types/questionTypes/conditionHelpers.d.ts.map +1 -0
  80. package/dist/types/questionTypes/conditionHelpers.js +398 -0
  81. package/dist/types/questionTypes/conditionHelpers.js.map +1 -0
  82. package/dist/types/questionTypes/conditions.d.ts +33 -0
  83. package/dist/types/questionTypes/conditions.d.ts.map +1 -0
  84. package/dist/types/questionTypes/conditions.js +102 -0
  85. package/dist/types/questionTypes/conditions.js.map +1 -0
  86. package/dist/types/questionTypes/defaults.d.ts +19 -0
  87. package/dist/types/questionTypes/defaults.d.ts.map +1 -0
  88. package/dist/types/questionTypes/defaults.js +100 -0
  89. package/dist/types/questionTypes/defaults.js.map +1 -0
  90. package/dist/types/questionTypes/helpers.d.ts +89 -0
  91. package/dist/types/questionTypes/helpers.d.ts.map +1 -0
  92. package/dist/types/questionTypes/helpers.js +356 -0
  93. package/dist/types/questionTypes/helpers.js.map +1 -0
  94. package/dist/types/questionTypes/index.d.ts +10 -0
  95. package/dist/types/questionTypes/index.d.ts.map +1 -0
  96. package/dist/types/questionTypes/index.js +10 -0
  97. package/dist/types/questionTypes/index.js.map +1 -0
  98. package/dist/types/questionTypes/session.d.ts +112 -0
  99. package/dist/types/questionTypes/session.d.ts.map +1 -0
  100. package/dist/types/questionTypes/session.js +2 -0
  101. package/dist/types/questionTypes/session.js.map +1 -0
  102. package/dist/types/questionTypes/template.d.ts +28 -0
  103. package/dist/types/questionTypes/template.d.ts.map +1 -0
  104. package/dist/types/questionTypes/template.js +2 -0
  105. package/dist/types/questionTypes/template.js.map +1 -0
  106. package/dist/types/questionTypes/types.d.ts +146 -0
  107. package/dist/types/questionTypes/types.d.ts.map +1 -0
  108. package/dist/types/questionTypes/types.js +171 -0
  109. package/dist/types/questionTypes/types.js.map +1 -0
  110. package/dist/types/questionTypes/validators.d.ts +27 -0
  111. package/dist/types/questionTypes/validators.d.ts.map +1 -0
  112. package/dist/types/questionTypes/validators.js +233 -0
  113. package/dist/types/questionTypes/validators.js.map +1 -0
  114. package/dist/types/questionTypes/writers.d.ts +10 -0
  115. package/dist/types/questionTypes/writers.d.ts.map +1 -0
  116. package/dist/types/questionTypes/writers.js +70 -0
  117. package/dist/types/questionTypes/writers.js.map +1 -0
  118. package/package.json +5 -1
@@ -0,0 +1,100 @@
1
+ export function createTextDefaults() {
2
+ return {};
3
+ }
4
+ export function createTextareaDefaults() {
5
+ return {};
6
+ }
7
+ export function createNumberDefaults() {
8
+ return {};
9
+ }
10
+ export function createCurrencyDefaults() {
11
+ return {
12
+ currency_code: 'USD',
13
+ };
14
+ }
15
+ export function createBooleanDefaults() {
16
+ return {
17
+ true_label: 'Yes',
18
+ false_label: 'No',
19
+ };
20
+ }
21
+ export function createSelectDefaults() {
22
+ return {
23
+ options: [],
24
+ };
25
+ }
26
+ export function createMultiselectDefaults() {
27
+ return {
28
+ options: [],
29
+ };
30
+ }
31
+ export function createDateDefaults() {
32
+ return {};
33
+ }
34
+ export function createDatetimeDefaults() {
35
+ return {};
36
+ }
37
+ export function createYearDefaults() {
38
+ return {
39
+ min_year: 1900,
40
+ max_year: new Date().getFullYear() + 1,
41
+ };
42
+ }
43
+ export function createPhoneDefaults() {
44
+ return {
45
+ country_code: 'US',
46
+ format: 'national',
47
+ };
48
+ }
49
+ export function createEmailDefaults() {
50
+ return {};
51
+ }
52
+ export function createAddressDefaults() {
53
+ return {
54
+ require_all_fields: true,
55
+ autocomplete: true,
56
+ allowed_countries: ['US'],
57
+ };
58
+ }
59
+ export function createFileDefaults() {
60
+ return {
61
+ max_size_mb: 10,
62
+ max_files: 1,
63
+ };
64
+ }
65
+ export function createImageDefaults() {
66
+ return {
67
+ allowed_types: ['image/jpeg', 'image/png', 'image/webp'],
68
+ max_size_mb: 5,
69
+ max_files: 1,
70
+ };
71
+ }
72
+ export function createRatingDefaults() {
73
+ return {
74
+ min_rating: 1,
75
+ max_rating: 5,
76
+ icon: 'star',
77
+ };
78
+ }
79
+ export function createQuestionDataDefaults(type) {
80
+ const defaults = {
81
+ text: createTextDefaults,
82
+ textarea: createTextareaDefaults,
83
+ number: createNumberDefaults,
84
+ currency: createCurrencyDefaults,
85
+ boolean: createBooleanDefaults,
86
+ select: createSelectDefaults,
87
+ multiselect: createMultiselectDefaults,
88
+ date: createDateDefaults,
89
+ datetime: createDatetimeDefaults,
90
+ year: createYearDefaults,
91
+ phone: createPhoneDefaults,
92
+ email: createEmailDefaults,
93
+ address: createAddressDefaults,
94
+ file: createFileDefaults,
95
+ image: createImageDefaults,
96
+ rating: createRatingDefaults,
97
+ };
98
+ return defaults[type]();
99
+ }
100
+ //# sourceMappingURL=defaults.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"defaults.js","sourceRoot":"","sources":["../../../src/types/questionTypes/defaults.ts"],"names":[],"mappings":"AA4BA,MAAM,UAAU,kBAAkB;IAChC,OAAO,EAAE,CAAC;AACZ,CAAC;AAKD,MAAM,UAAU,sBAAsB;IACpC,OAAO,EAAE,CAAC;AACZ,CAAC;AAKD,MAAM,UAAU,oBAAoB;IAClC,OAAO,EAAE,CAAC;AACZ,CAAC;AAKD,MAAM,UAAU,sBAAsB;IACpC,OAAO;QACL,aAAa,EAAE,KAAK;KACrB,CAAC;AACJ,CAAC;AAKD,MAAM,UAAU,qBAAqB;IACnC,OAAO;QACL,UAAU,EAAE,KAAK;QACjB,WAAW,EAAE,IAAI;KAClB,CAAC;AACJ,CAAC;AAKD,MAAM,UAAU,oBAAoB;IAClC,OAAO;QACL,OAAO,EAAE,EAAE;KACZ,CAAC;AACJ,CAAC;AAKD,MAAM,UAAU,yBAAyB;IACvC,OAAO;QACL,OAAO,EAAE,EAAE;KACZ,CAAC;AACJ,CAAC;AAKD,MAAM,UAAU,kBAAkB;IAChC,OAAO,EAAE,CAAC;AACZ,CAAC;AAKD,MAAM,UAAU,sBAAsB;IACpC,OAAO,EAAE,CAAC;AACZ,CAAC;AAKD,MAAM,UAAU,kBAAkB;IAChC,OAAO;QACL,QAAQ,EAAE,IAAI;QACd,QAAQ,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,GAAG,CAAC;KACvC,CAAC;AACJ,CAAC;AAKD,MAAM,UAAU,mBAAmB;IACjC,OAAO;QACL,YAAY,EAAE,IAAI;QAClB,MAAM,EAAE,UAAU;KACnB,CAAC;AACJ,CAAC;AAKD,MAAM,UAAU,mBAAmB;IACjC,OAAO,EAAE,CAAC;AACZ,CAAC;AAKD,MAAM,UAAU,qBAAqB;IACnC,OAAO;QACL,kBAAkB,EAAE,IAAI;QACxB,YAAY,EAAE,IAAI;QAClB,iBAAiB,EAAE,CAAC,IAAI,CAAC;KAC1B,CAAC;AACJ,CAAC;AAKD,MAAM,UAAU,kBAAkB;IAChC,OAAO;QACL,WAAW,EAAE,EAAE;QACf,SAAS,EAAE,CAAC;KACb,CAAC;AACJ,CAAC;AAKD,MAAM,UAAU,mBAAmB;IACjC,OAAO;QACL,aAAa,EAAE,CAAC,YAAY,EAAE,WAAW,EAAE,YAAY,CAAC;QACxD,WAAW,EAAE,CAAC;QACd,SAAS,EAAE,CAAC;KACb,CAAC;AACJ,CAAC;AAKD,MAAM,UAAU,oBAAoB;IAClC,OAAO;QACL,UAAU,EAAE,CAAC;QACb,UAAU,EAAE,CAAC;QACb,IAAI,EAAE,MAAM;KACb,CAAC;AACJ,CAAC;AAKD,MAAM,UAAU,0BAA0B,CACxC,IAAO;IAEP,MAAM,QAAQ,GAA8D;QAC1E,IAAI,EAAE,kBAAkB;QACxB,QAAQ,EAAE,sBAAsB;QAChC,MAAM,EAAE,oBAAoB;QAC5B,QAAQ,EAAE,sBAAsB;QAChC,OAAO,EAAE,qBAAqB;QAC9B,MAAM,EAAE,oBAAoB;QAC5B,WAAW,EAAE,yBAAyB;QACtC,IAAI,EAAE,kBAAkB;QACxB,QAAQ,EAAE,sBAAsB;QAChC,IAAI,EAAE,kBAAkB;QACxB,KAAK,EAAE,mBAAmB;QAC1B,KAAK,EAAE,mBAAmB;QAC1B,OAAO,EAAE,qBAAqB;QAC9B,IAAI,EAAE,kBAAkB;QACxB,KAAK,EAAE,mBAAmB;QAC1B,MAAM,EAAE,oBAAoB;KAC7B,CAAC;IAEF,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAwB,CAAC;AAChD,CAAC"}
@@ -0,0 +1,89 @@
1
+ import { QuestionType, QuestionDataMap, QuestionTypeMetadata, SelectOption, SelectQuestionData, MultiselectQuestionData } from './types';
2
+ export declare function getQuestionTypes(): QuestionType[];
3
+ export declare function getQuestionTypeMetadata(type: QuestionType): QuestionTypeMetadata;
4
+ export declare function getQuestionTypesByCategory(category: QuestionTypeMetadata['category']): QuestionType[];
5
+ export declare function questionTypeRequiresOptions(type: QuestionType): boolean;
6
+ export declare function getQuestionTypeLabel(type: QuestionType): string;
7
+ export declare function getQuestionTypeIcon(type: QuestionType): string;
8
+ export declare function createSelectOption(value: string, label?: string): SelectOption;
9
+ export declare function addOption(data: SelectQuestionData | MultiselectQuestionData, option: SelectOption): SelectQuestionData | MultiselectQuestionData;
10
+ export declare function removeOption(data: SelectQuestionData | MultiselectQuestionData, value: string): SelectQuestionData | MultiselectQuestionData;
11
+ export declare function updateOption(data: SelectQuestionData | MultiselectQuestionData, value: string, updates: Partial<SelectOption>): SelectQuestionData | MultiselectQuestionData;
12
+ export declare function reorderOptions(data: SelectQuestionData | MultiselectQuestionData, fromIndex: number, toIndex: number): SelectQuestionData | MultiselectQuestionData;
13
+ export declare function buildQuestionData<T extends QuestionType>(type: T, overrides?: Partial<QuestionDataMap[T]>): QuestionDataMap[T];
14
+ export declare function mergeQuestionData<T extends QuestionType>(type: T, existing: QuestionDataMap[T] | null | undefined, updates: Partial<QuestionDataMap[T]>): QuestionDataMap[T];
15
+ export declare function prepareQuestionDataForStorage<T extends QuestionType>(type: T, data: unknown): QuestionDataMap[T];
16
+ export declare function parseQuestionDataFromStorage<T extends QuestionType>(type: T, data: unknown): QuestionDataMap[T];
17
+ export declare function describeQuestionData(type: QuestionType, data: unknown): string;
18
+ export declare function formatQuestionDataDisplay(type: QuestionType, data: unknown): Record<string, string>;
19
+ export declare function getNumberConstraints(question: {
20
+ options?: unknown;
21
+ data?: unknown;
22
+ }): {
23
+ min?: number;
24
+ max?: number;
25
+ step?: number;
26
+ };
27
+ export declare function getAllowedValues(question: {
28
+ options?: unknown;
29
+ data?: unknown;
30
+ }): number[];
31
+ export declare function getDecimalPlaces(question: {
32
+ options?: unknown;
33
+ data?: unknown;
34
+ }): number | undefined;
35
+ export declare function getAllowOther(question: {
36
+ options?: unknown;
37
+ data?: unknown;
38
+ }): boolean;
39
+ export declare function getSelectOptions(question: {
40
+ options?: unknown;
41
+ }): SelectOption[];
42
+ import { EntityReference } from './session';
43
+ export declare function getEntityType(entity: EntityReference | null): string;
44
+ export declare function getQuestionEntityType(question: {
45
+ entity_type?: string | null;
46
+ entity_reference?: EntityReference | null;
47
+ }): string;
48
+ export declare function getScopedEntityKey(question: {
49
+ entity_type?: string | null;
50
+ entity_reference?: EntityReference | null;
51
+ }): string;
52
+ export declare function parseEntityTypeKey(entityTypeKey: string): {
53
+ baseType: string;
54
+ entityId?: string | undefined;
55
+ };
56
+ export declare function entityTypeKeysMatch(categoryKey: string, questionKey: string): boolean;
57
+ export declare function getEntityKey(entity: EntityReference | null): string;
58
+ export declare function getEntityLabel(entity: EntityReference | null): string;
59
+ export interface PropertySearchResult {
60
+ id: string;
61
+ address_line1: string | null;
62
+ city: string | null;
63
+ state: string | null;
64
+ zip_code: string | null;
65
+ relationship_type?: string | null;
66
+ }
67
+ export interface AssetSearchResult {
68
+ id: string;
69
+ asset_type: string | null;
70
+ make: string | null;
71
+ model: string | null;
72
+ year: number | null;
73
+ vin_or_serial: string | null;
74
+ }
75
+ export interface PersonSearchResult {
76
+ id: string;
77
+ first_name: string | null;
78
+ last_name: string | null;
79
+ full_name: string | null;
80
+ email?: string | null;
81
+ }
82
+ export declare function buildPersonEntityReference(person: PersonSearchResult): EntityReference;
83
+ export declare function buildPropertyEntityReference(property: PropertySearchResult): EntityReference;
84
+ export declare function buildAssetEntityReference(asset: AssetSearchResult): EntityReference;
85
+ export declare function formatPropertyName(property: PropertySearchResult): string;
86
+ export declare function formatAssetName(asset: AssetSearchResult): string;
87
+ export { createQuestionDataDefaults } from './defaults';
88
+ export { validateQuestionData, sanitizeQuestionData } from './validators';
89
+ //# sourceMappingURL=helpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/types/questionTypes/helpers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,356 @@
1
+ import { QUESTION_TYPES, QUESTION_TYPE_METADATA, } from './types';
2
+ import { createQuestionDataDefaults } from './defaults';
3
+ import { validateQuestionData, sanitizeQuestionData } from './validators';
4
+ export function getQuestionTypes() {
5
+ return [...QUESTION_TYPES];
6
+ }
7
+ export function getQuestionTypeMetadata(type) {
8
+ return QUESTION_TYPE_METADATA[type];
9
+ }
10
+ export function getQuestionTypesByCategory(category) {
11
+ return QUESTION_TYPES.filter(type => QUESTION_TYPE_METADATA[type].category === category);
12
+ }
13
+ export function questionTypeRequiresOptions(type) {
14
+ return QUESTION_TYPE_METADATA[type].requiresOptions;
15
+ }
16
+ export function getQuestionTypeLabel(type) {
17
+ return QUESTION_TYPE_METADATA[type].label;
18
+ }
19
+ export function getQuestionTypeIcon(type) {
20
+ return QUESTION_TYPE_METADATA[type].icon;
21
+ }
22
+ export function createSelectOption(value, label) {
23
+ return {
24
+ value,
25
+ label: label || value,
26
+ };
27
+ }
28
+ export function addOption(data, option) {
29
+ return {
30
+ ...data,
31
+ options: [...data.options, option],
32
+ };
33
+ }
34
+ export function removeOption(data, value) {
35
+ return {
36
+ ...data,
37
+ options: data.options.filter(opt => opt.value !== value),
38
+ };
39
+ }
40
+ export function updateOption(data, value, updates) {
41
+ return {
42
+ ...data,
43
+ options: data.options.map(opt => opt.value === value ? { ...opt, ...updates } : opt),
44
+ };
45
+ }
46
+ export function reorderOptions(data, fromIndex, toIndex) {
47
+ const newOptions = [...data.options];
48
+ const [removed] = newOptions.splice(fromIndex, 1);
49
+ if (removed) {
50
+ newOptions.splice(toIndex, 0, removed);
51
+ }
52
+ return {
53
+ ...data,
54
+ options: newOptions,
55
+ };
56
+ }
57
+ export function buildQuestionData(type, overrides) {
58
+ const defaults = createQuestionDataDefaults(type);
59
+ if (!overrides)
60
+ return defaults;
61
+ return {
62
+ ...defaults,
63
+ ...overrides,
64
+ };
65
+ }
66
+ export function mergeQuestionData(type, existing, updates) {
67
+ const base = existing || createQuestionDataDefaults(type);
68
+ return {
69
+ ...base,
70
+ ...updates,
71
+ };
72
+ }
73
+ export function prepareQuestionDataForStorage(type, data) {
74
+ return sanitizeQuestionData(type, data);
75
+ }
76
+ export function parseQuestionDataFromStorage(type, data) {
77
+ const validation = validateQuestionData(type, data);
78
+ if (validation.valid && validation.data) {
79
+ return validation.data;
80
+ }
81
+ return createQuestionDataDefaults(type);
82
+ }
83
+ export function describeQuestionData(type, data) {
84
+ var _a, _b;
85
+ if (!data || typeof data !== 'object')
86
+ return 'Default settings';
87
+ const obj = data;
88
+ const parts = [];
89
+ if (typeof obj.min === 'number' || typeof obj.min_length === 'number') {
90
+ parts.push(`Min: ${(_a = obj.min) !== null && _a !== void 0 ? _a : obj.min_length}`);
91
+ }
92
+ if (typeof obj.max === 'number' || typeof obj.max_length === 'number') {
93
+ parts.push(`Max: ${(_b = obj.max) !== null && _b !== void 0 ? _b : obj.max_length}`);
94
+ }
95
+ if (Array.isArray(obj.options)) {
96
+ parts.push(`${obj.options.length} options`);
97
+ }
98
+ if (Array.isArray(obj.allowed_values) && obj.allowed_values.length > 0) {
99
+ parts.push(`${obj.allowed_values.length} allowed values`);
100
+ }
101
+ if (typeof obj.currency_code === 'string') {
102
+ parts.push(obj.currency_code);
103
+ }
104
+ if (typeof obj.max_rating === 'number') {
105
+ parts.push(`1-${obj.max_rating} scale`);
106
+ }
107
+ return parts.length > 0 ? parts.join(', ') : 'Default settings';
108
+ }
109
+ export function formatQuestionDataDisplay(type, data) {
110
+ const result = {};
111
+ if (!data || typeof data !== 'object')
112
+ return result;
113
+ const obj = data;
114
+ for (const [key, value] of Object.entries(obj)) {
115
+ if (value === undefined || value === null)
116
+ continue;
117
+ const label = key
118
+ .replace(/_/g, ' ')
119
+ .replace(/\b\w/g, c => c.toUpperCase());
120
+ if (Array.isArray(value)) {
121
+ if (value.length > 0 && typeof value[0] === 'object') {
122
+ result[label] = value.map((v) => v.label).join(', ');
123
+ }
124
+ else {
125
+ result[label] = value.join(', ');
126
+ }
127
+ }
128
+ else if (typeof value === 'boolean') {
129
+ result[label] = value ? 'Yes' : 'No';
130
+ }
131
+ else {
132
+ result[label] = String(value);
133
+ }
134
+ }
135
+ return result;
136
+ }
137
+ export function getNumberConstraints(question) {
138
+ const result = {};
139
+ if (question.options && typeof question.options === 'object' && !Array.isArray(question.options)) {
140
+ const opts = question.options;
141
+ if (typeof opts.min === 'number')
142
+ result.min = opts.min;
143
+ if (typeof opts.max === 'number')
144
+ result.max = opts.max;
145
+ if (typeof opts.step === 'number')
146
+ result.step = opts.step;
147
+ }
148
+ if (question.data && typeof question.data === 'object') {
149
+ const data = question.data;
150
+ if (result.min === undefined && typeof data.min === 'number')
151
+ result.min = data.min;
152
+ if (result.max === undefined && typeof data.max === 'number')
153
+ result.max = data.max;
154
+ if (result.step === undefined && typeof data.step === 'number')
155
+ result.step = data.step;
156
+ }
157
+ return result;
158
+ }
159
+ export function getAllowedValues(question) {
160
+ if (question.options && typeof question.options === 'object' && !Array.isArray(question.options)) {
161
+ const opts = question.options;
162
+ if (Array.isArray(opts.allowed_values) && opts.allowed_values.every(v => typeof v === 'number')) {
163
+ return opts.allowed_values;
164
+ }
165
+ }
166
+ if (question.data && typeof question.data === 'object') {
167
+ const data = question.data;
168
+ if (Array.isArray(data.allowed_values) && data.allowed_values.every(v => typeof v === 'number')) {
169
+ return data.allowed_values;
170
+ }
171
+ }
172
+ return [];
173
+ }
174
+ export function getDecimalPlaces(question) {
175
+ if (question.options && typeof question.options === 'object' && !Array.isArray(question.options)) {
176
+ const opts = question.options;
177
+ if (typeof opts.decimal_places === 'number') {
178
+ return opts.decimal_places;
179
+ }
180
+ }
181
+ if (question.data && typeof question.data === 'object') {
182
+ const data = question.data;
183
+ if (typeof data.decimal_places === 'number') {
184
+ return data.decimal_places;
185
+ }
186
+ }
187
+ return undefined;
188
+ }
189
+ export function getAllowOther(question) {
190
+ if (question.options && typeof question.options === 'object' && !Array.isArray(question.options)) {
191
+ const opts = question.options;
192
+ if (typeof opts.allow_other === 'boolean') {
193
+ return opts.allow_other;
194
+ }
195
+ }
196
+ if (question.data && typeof question.data === 'object') {
197
+ const data = question.data;
198
+ if (typeof data.allow_other === 'boolean') {
199
+ return data.allow_other;
200
+ }
201
+ }
202
+ return false;
203
+ }
204
+ export function getSelectOptions(question) {
205
+ if (!question.options)
206
+ return [];
207
+ const opts = question.options;
208
+ if (opts.options && Array.isArray(opts.options)) {
209
+ return opts.options.filter((opt) => opt && typeof opt === 'object' && 'value' in opt && 'label' in opt);
210
+ }
211
+ if (Array.isArray(question.options)) {
212
+ return question.options.filter((opt) => opt && typeof opt === 'object' && 'value' in opt && 'label' in opt);
213
+ }
214
+ return [];
215
+ }
216
+ export function getEntityType(entity) {
217
+ if (!entity)
218
+ return 'person';
219
+ if (entity.person) {
220
+ return 'person';
221
+ }
222
+ if (entity.property) {
223
+ return 'property';
224
+ }
225
+ if (entity.asset) {
226
+ return 'asset';
227
+ }
228
+ if (entity.entity_type)
229
+ return entity.entity_type;
230
+ return 'person';
231
+ }
232
+ export function getQuestionEntityType(question) {
233
+ var _a;
234
+ if (question.entity_type) {
235
+ return question.entity_type;
236
+ }
237
+ return getEntityType((_a = question.entity_reference) !== null && _a !== void 0 ? _a : null);
238
+ }
239
+ export function getScopedEntityKey(question) {
240
+ var _a, _b, _c;
241
+ const baseType = getQuestionEntityType(question);
242
+ const entityRef = question.entity_reference;
243
+ if (!entityRef)
244
+ return baseType;
245
+ if (baseType === 'property' && ((_a = entityRef.property) === null || _a === void 0 ? void 0 : _a.id)) {
246
+ return `property-${entityRef.property.id}`;
247
+ }
248
+ if (baseType === 'asset' && ((_b = entityRef.asset) === null || _b === void 0 ? void 0 : _b.id)) {
249
+ return `asset-${entityRef.asset.id}`;
250
+ }
251
+ if (baseType === 'person' && ((_c = entityRef.person) === null || _c === void 0 ? void 0 : _c.id)) {
252
+ return `person-${entityRef.person.id}`;
253
+ }
254
+ return baseType;
255
+ }
256
+ export function parseEntityTypeKey(entityTypeKey) {
257
+ const match = entityTypeKey.match(/^(person|property|asset)-(.+)$/);
258
+ if (match) {
259
+ return { baseType: match[1], entityId: match[2] };
260
+ }
261
+ return { baseType: entityTypeKey };
262
+ }
263
+ export function entityTypeKeysMatch(categoryKey, questionKey) {
264
+ const category = parseEntityTypeKey(categoryKey);
265
+ const question = parseEntityTypeKey(questionKey);
266
+ if (category.baseType !== question.baseType) {
267
+ return false;
268
+ }
269
+ if (category.entityId) {
270
+ return category.entityId === question.entityId;
271
+ }
272
+ return true;
273
+ }
274
+ export function getEntityKey(entity) {
275
+ if (!entity)
276
+ return 'person:default';
277
+ if (entity.person) {
278
+ return `person:${entity.person.id}`;
279
+ }
280
+ if (entity.property) {
281
+ return `property:${entity.property.id}`;
282
+ }
283
+ if (entity.asset) {
284
+ return `asset:${entity.asset.id}`;
285
+ }
286
+ const type = getEntityType(entity);
287
+ const id = entity.entity_id || 'default';
288
+ return `${type}:${id}`;
289
+ }
290
+ export function getEntityLabel(entity) {
291
+ if (!entity)
292
+ return 'About You';
293
+ if (entity.entity_label)
294
+ return entity.entity_label;
295
+ if (entity.person) {
296
+ if (entity.person.name)
297
+ return entity.person.name;
298
+ if (entity.person.email)
299
+ return entity.person.email;
300
+ return 'About You';
301
+ }
302
+ if (entity.property) {
303
+ if (entity.property.address)
304
+ return entity.property.address;
305
+ return 'Property Details';
306
+ }
307
+ if (entity.asset) {
308
+ if (entity.asset.name)
309
+ return entity.asset.name;
310
+ return 'Asset Details';
311
+ }
312
+ const type = getEntityType(entity);
313
+ const defaultLabels = {
314
+ person: 'About You',
315
+ property: 'Property Details',
316
+ asset: 'Asset Information',
317
+ policy: 'Policy Information',
318
+ };
319
+ return defaultLabels[type] || 'Other Questions';
320
+ }
321
+ export function buildPersonEntityReference(person) {
322
+ const name = person.full_name || [person.first_name, person.last_name].filter(Boolean).join(' ');
323
+ const personRef = { id: person.id };
324
+ if (name)
325
+ personRef.name = name;
326
+ if (person.email)
327
+ personRef.email = person.email;
328
+ return { person: personRef };
329
+ }
330
+ export function buildPropertyEntityReference(property) {
331
+ return {
332
+ property: {
333
+ id: property.id,
334
+ address: [property.address_line1, property.city, property.state, property.zip_code].filter(Boolean).join(', '),
335
+ },
336
+ };
337
+ }
338
+ export function buildAssetEntityReference(asset) {
339
+ const assetRef = {
340
+ id: asset.id,
341
+ name: [asset.year, asset.make, asset.model].filter(Boolean).join(' ') || asset.asset_type || 'Unknown Asset',
342
+ };
343
+ if (asset.vin_or_serial)
344
+ assetRef.vin = asset.vin_or_serial;
345
+ return { asset: assetRef };
346
+ }
347
+ export function formatPropertyName(property) {
348
+ return [property.address_line1, property.city, property.state].filter(Boolean).join(', ') || property.id.slice(0, 8);
349
+ }
350
+ export function formatAssetName(asset) {
351
+ const parts = [asset.year, asset.make, asset.model].filter(Boolean);
352
+ return parts.length > 0 ? parts.join(' ') : asset.asset_type || 'Unknown Asset';
353
+ }
354
+ export { createQuestionDataDefaults } from './defaults';
355
+ export { validateQuestionData, sanitizeQuestionData } from './validators';
356
+ //# sourceMappingURL=helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../src/types/questionTypes/helpers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ export * from './types';
2
+ export * from './helpers';
3
+ export * from './validators';
4
+ export * from './defaults';
5
+ export * from './writers';
6
+ export * from './session';
7
+ export * from './answerValidators';
8
+ export * from './conditions';
9
+ export * from './conditionHelpers';
10
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/questionTypes/index.ts"],"names":[],"mappings":"AAGA,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,oBAAoB,CAAC;AACnC,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC"}
@@ -0,0 +1,10 @@
1
+ export * from './types';
2
+ export * from './helpers';
3
+ export * from './validators';
4
+ export * from './defaults';
5
+ export * from './writers';
6
+ export * from './session';
7
+ export * from './answerValidators';
8
+ export * from './conditions';
9
+ export * from './conditionHelpers';
10
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/types/questionTypes/index.ts"],"names":[],"mappings":"AAGA,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,oBAAoB,CAAC;AACnC,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC"}