attio-mcp 1.3.5 → 1.4.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.
- package/CHANGELOG.md +263 -9
- package/README.md +315 -235
- package/dist/api/attio-client.d.ts +13 -3
- package/dist/api/attio-client.d.ts.map +1 -1
- package/dist/api/attio-client.js +37 -7
- package/dist/api/attio-client.js.map +1 -1
- package/dist/api/attribute-types.d.ts.map +1 -1
- package/dist/api/attribute-types.js +59 -29
- package/dist/api/attribute-types.js.map +1 -1
- package/dist/api/client-context.d.ts.map +1 -1
- package/dist/api/client-context.js +28 -42
- package/dist/api/client-context.js.map +1 -1
- package/dist/api/operations/batch.d.ts.map +1 -1
- package/dist/api/operations/batch.js +3 -1
- package/dist/api/operations/batch.js.map +1 -1
- package/dist/cli/commands/generate-skill.d.ts +28 -0
- package/dist/cli/commands/generate-skill.d.ts.map +1 -0
- package/dist/cli/commands/generate-skill.js +101 -0
- package/dist/cli/commands/generate-skill.js.map +1 -0
- package/dist/cli/discover.js +65 -0
- package/dist/cli/discover.js.map +1 -1
- package/dist/config/deal-defaults.d.ts +2 -2
- package/dist/config/deal-defaults.d.ts.map +1 -1
- package/dist/config/deal-defaults.js +15 -6
- package/dist/config/deal-defaults.js.map +1 -1
- package/dist/config/tool-aliases.d.ts +12 -0
- package/dist/config/tool-aliases.d.ts.map +1 -1
- package/dist/config/tool-aliases.js +213 -69
- package/dist/config/tool-aliases.js.map +1 -1
- package/dist/constants/tool-names.d.ts +84 -0
- package/dist/constants/tool-names.d.ts.map +1 -0
- package/dist/constants/tool-names.js +81 -0
- package/dist/constants/tool-names.js.map +1 -0
- package/dist/constants/universal.constants.d.ts +24 -0
- package/dist/constants/universal.constants.d.ts.map +1 -1
- package/dist/constants/universal.constants.js +81 -9
- package/dist/constants/universal.constants.js.map +1 -1
- package/dist/handlers/tool-configs/tasks.d.ts.map +1 -1
- package/dist/handlers/tool-configs/tasks.js +28 -0
- package/dist/handlers/tool-configs/tasks.js.map +1 -1
- package/dist/handlers/tool-configs/universal/batch-search.js +4 -4
- package/dist/handlers/tool-configs/universal/core/crud-error-handlers.d.ts +26 -4
- package/dist/handlers/tool-configs/universal/core/crud-error-handlers.d.ts.map +1 -1
- package/dist/handlers/tool-configs/universal/core/crud-error-handlers.js +181 -21
- package/dist/handlers/tool-configs/universal/core/crud-error-handlers.js.map +1 -1
- package/dist/handlers/tool-configs/universal/core/crud-operations.d.ts.map +1 -1
- package/dist/handlers/tool-configs/universal/core/crud-operations.js +52 -13
- package/dist/handlers/tool-configs/universal/core/crud-operations.js.map +1 -1
- package/dist/handlers/tool-configs/universal/core/detailed-info-operations.js +3 -3
- package/dist/handlers/tool-configs/universal/core/detailed-info-operations.js.map +1 -1
- package/dist/handlers/tool-configs/universal/core/error-enhancers/attribute-enhancer.d.ts +17 -0
- package/dist/handlers/tool-configs/universal/core/error-enhancers/attribute-enhancer.d.ts.map +1 -0
- package/dist/handlers/tool-configs/universal/core/error-enhancers/attribute-enhancer.js +118 -0
- package/dist/handlers/tool-configs/universal/core/error-enhancers/attribute-enhancer.js.map +1 -0
- package/dist/handlers/tool-configs/universal/core/error-enhancers/complex-type-enhancer.d.ts +14 -0
- package/dist/handlers/tool-configs/universal/core/error-enhancers/complex-type-enhancer.d.ts.map +1 -0
- package/dist/handlers/tool-configs/universal/core/error-enhancers/complex-type-enhancer.js +77 -0
- package/dist/handlers/tool-configs/universal/core/error-enhancers/complex-type-enhancer.js.map +1 -0
- package/dist/handlers/tool-configs/universal/core/error-enhancers/index.d.ts +24 -0
- package/dist/handlers/tool-configs/universal/core/error-enhancers/index.d.ts.map +1 -0
- package/dist/handlers/tool-configs/universal/core/error-enhancers/index.js +35 -0
- package/dist/handlers/tool-configs/universal/core/error-enhancers/index.js.map +1 -0
- package/dist/handlers/tool-configs/universal/core/error-enhancers/record-reference-enhancer.d.ts +15 -0
- package/dist/handlers/tool-configs/universal/core/error-enhancers/record-reference-enhancer.d.ts.map +1 -0
- package/dist/handlers/tool-configs/universal/core/error-enhancers/record-reference-enhancer.js +108 -0
- package/dist/handlers/tool-configs/universal/core/error-enhancers/record-reference-enhancer.js.map +1 -0
- package/dist/handlers/tool-configs/universal/core/error-enhancers/required-fields-enhancer.d.ts +14 -0
- package/dist/handlers/tool-configs/universal/core/error-enhancers/required-fields-enhancer.d.ts.map +1 -0
- package/dist/handlers/tool-configs/universal/core/error-enhancers/required-fields-enhancer.js +91 -0
- package/dist/handlers/tool-configs/universal/core/error-enhancers/required-fields-enhancer.js.map +1 -0
- package/dist/handlers/tool-configs/universal/core/error-enhancers/select-status-enhancer.d.ts +14 -0
- package/dist/handlers/tool-configs/universal/core/error-enhancers/select-status-enhancer.d.ts.map +1 -0
- package/dist/handlers/tool-configs/universal/core/error-enhancers/select-status-enhancer.js +118 -0
- package/dist/handlers/tool-configs/universal/core/error-enhancers/select-status-enhancer.js.map +1 -0
- package/dist/handlers/tool-configs/universal/core/error-enhancers/types.d.ts +77 -0
- package/dist/handlers/tool-configs/universal/core/error-enhancers/types.d.ts.map +1 -0
- package/dist/handlers/tool-configs/universal/core/error-enhancers/types.js +42 -0
- package/dist/handlers/tool-configs/universal/core/error-enhancers/types.js.map +1 -0
- package/dist/handlers/tool-configs/universal/core/error-enhancers/uniqueness-enhancer.d.ts +15 -0
- package/dist/handlers/tool-configs/universal/core/error-enhancers/uniqueness-enhancer.d.ts.map +1 -0
- package/dist/handlers/tool-configs/universal/core/error-enhancers/uniqueness-enhancer.js +109 -0
- package/dist/handlers/tool-configs/universal/core/error-enhancers/uniqueness-enhancer.js.map +1 -0
- package/dist/handlers/tool-configs/universal/core/index.d.ts +63 -22
- package/dist/handlers/tool-configs/universal/core/index.d.ts.map +1 -1
- package/dist/handlers/tool-configs/universal/core/index.js +24 -22
- package/dist/handlers/tool-configs/universal/core/index.js.map +1 -1
- package/dist/handlers/tool-configs/universal/core/metadata-operations.d.ts +43 -1
- package/dist/handlers/tool-configs/universal/core/metadata-operations.d.ts.map +1 -1
- package/dist/handlers/tool-configs/universal/core/metadata-operations.js +117 -11
- package/dist/handlers/tool-configs/universal/core/metadata-operations.js.map +1 -1
- package/dist/handlers/tool-configs/universal/core/notes-operations.d.ts.map +1 -1
- package/dist/handlers/tool-configs/universal/core/notes-operations.js +27 -12
- package/dist/handlers/tool-configs/universal/core/notes-operations.js.map +1 -1
- package/dist/handlers/tool-configs/universal/core/record-details-operations.d.ts.map +1 -1
- package/dist/handlers/tool-configs/universal/core/record-details-operations.js +20 -3
- package/dist/handlers/tool-configs/universal/core/record-details-operations.js.map +1 -1
- package/dist/handlers/tool-configs/universal/core/search-operations.d.ts.map +1 -1
- package/dist/handlers/tool-configs/universal/core/search-operations.js +11 -4
- package/dist/handlers/tool-configs/universal/core/search-operations.js.map +1 -1
- package/dist/handlers/tool-configs/universal/field-mapper/constants/companies.d.ts.map +1 -1
- package/dist/handlers/tool-configs/universal/field-mapper/constants/companies.js +32 -9
- package/dist/handlers/tool-configs/universal/field-mapper/constants/companies.js.map +1 -1
- package/dist/handlers/tool-configs/universal/field-mapper/constants/deals.d.ts.map +1 -1
- package/dist/handlers/tool-configs/universal/field-mapper/constants/deals.js +45 -6
- package/dist/handlers/tool-configs/universal/field-mapper/constants/deals.js.map +1 -1
- package/dist/handlers/tool-configs/universal/field-mapper/constants/people.d.ts.map +1 -1
- package/dist/handlers/tool-configs/universal/field-mapper/constants/people.js +36 -5
- package/dist/handlers/tool-configs/universal/field-mapper/constants/people.js.map +1 -1
- package/dist/handlers/tool-configs/universal/field-mapper/transformers/value-transformer.d.ts +1 -1
- package/dist/handlers/tool-configs/universal/field-mapper/transformers/value-transformer.d.ts.map +1 -1
- package/dist/handlers/tool-configs/universal/field-mapper/transformers/value-transformer.js +17 -1
- package/dist/handlers/tool-configs/universal/field-mapper/transformers/value-transformer.js.map +1 -1
- package/dist/handlers/tool-configs/universal/field-mapper/validators/field-validator.d.ts.map +1 -1
- package/dist/handlers/tool-configs/universal/field-mapper/validators/field-validator.js +3 -1
- package/dist/handlers/tool-configs/universal/field-mapper/validators/field-validator.js.map +1 -1
- package/dist/handlers/tool-configs/universal/index.d.ts +75 -34
- package/dist/handlers/tool-configs/universal/index.d.ts.map +1 -1
- package/dist/handlers/tool-configs/universal/index.js +58 -58
- package/dist/handlers/tool-configs/universal/index.js.map +1 -1
- package/dist/handlers/tool-configs/universal/operations/advanced-search.d.ts.map +1 -1
- package/dist/handlers/tool-configs/universal/operations/advanced-search.js +5 -4
- package/dist/handlers/tool-configs/universal/operations/advanced-search.js.map +1 -1
- package/dist/handlers/tool-configs/universal/operations/batch-operations.js +3 -3
- package/dist/handlers/tool-configs/universal/operations/content-search.js +3 -3
- package/dist/handlers/tool-configs/universal/operations/index.d.ts +10 -10
- package/dist/handlers/tool-configs/universal/operations/index.js +15 -15
- package/dist/handlers/tool-configs/universal/operations/relationship-search.js +3 -3
- package/dist/handlers/tool-configs/universal/operations/timeframe-search.js +3 -3
- package/dist/handlers/tool-configs/universal/schemas/utility-schemas.d.ts.map +1 -1
- package/dist/handlers/tool-configs/universal/schemas/utility-schemas.js +5 -2
- package/dist/handlers/tool-configs/universal/schemas/utility-schemas.js.map +1 -1
- package/dist/handlers/tool-configs/universal/schemas/validation-schemas.d.ts +29 -0
- package/dist/handlers/tool-configs/universal/schemas/validation-schemas.d.ts.map +1 -1
- package/dist/handlers/tool-configs/universal/schemas/validation-schemas.js +28 -0
- package/dist/handlers/tool-configs/universal/schemas/validation-schemas.js.map +1 -1
- package/dist/handlers/tool-configs/universal/schemas.d.ts +1 -1
- package/dist/handlers/tool-configs/universal/schemas.d.ts.map +1 -1
- package/dist/handlers/tool-configs/universal/schemas.js +1 -1
- package/dist/handlers/tool-configs/universal/schemas.js.map +1 -1
- package/dist/handlers/tool-configs/universal/shared-handlers.d.ts +20 -1
- package/dist/handlers/tool-configs/universal/shared-handlers.d.ts.map +1 -1
- package/dist/handlers/tool-configs/universal/shared-handlers.js +216 -0
- package/dist/handlers/tool-configs/universal/shared-handlers.js.map +1 -1
- package/dist/handlers/tool-configs/universal/smithery-diagnostics.js +2 -2
- package/dist/handlers/tool-configs/universal/types.d.ts +9 -0
- package/dist/handlers/tool-configs/universal/types.d.ts.map +1 -1
- package/dist/handlers/tool-configs/universal/validators/schema-validator.d.ts +11 -0
- package/dist/handlers/tool-configs/universal/validators/schema-validator.d.ts.map +1 -1
- package/dist/handlers/tool-configs/universal/validators/schema-validator.js +63 -9
- package/dist/handlers/tool-configs/universal/validators/schema-validator.js.map +1 -1
- package/dist/handlers/tool-types.d.ts +9 -0
- package/dist/handlers/tool-types.d.ts.map +1 -1
- package/dist/handlers/tools/dispatcher/core.d.ts.map +1 -1
- package/dist/handlers/tools/dispatcher/core.js +24 -5
- package/dist/handlers/tools/dispatcher/core.js.map +1 -1
- package/dist/handlers/tools/formatters.d.ts +8 -1
- package/dist/handlers/tools/formatters.d.ts.map +1 -1
- package/dist/handlers/tools/formatters.js +30 -14
- package/dist/handlers/tools/formatters.js.map +1 -1
- package/dist/handlers/tools/registry.d.ts +125 -84
- package/dist/handlers/tools/registry.d.ts.map +1 -1
- package/dist/handlers/tools/registry.js +14 -9
- package/dist/handlers/tools/registry.js.map +1 -1
- package/dist/handlers/tools/standards/index.d.ts.map +1 -1
- package/dist/handlers/tools/standards/index.js +19 -11
- package/dist/handlers/tools/standards/index.js.map +1 -1
- package/dist/objects/companies/attributes.d.ts +5 -0
- package/dist/objects/companies/attributes.d.ts.map +1 -1
- package/dist/objects/companies/attributes.js +45 -31
- package/dist/objects/companies/attributes.js.map +1 -1
- package/dist/server/createServer.d.ts.map +1 -1
- package/dist/server/createServer.js +4 -3
- package/dist/server/createServer.js.map +1 -1
- package/dist/services/ErrorService.js +3 -3
- package/dist/services/ErrorService.js.map +1 -1
- package/dist/services/UniversalCreateService.d.ts.map +1 -1
- package/dist/services/UniversalCreateService.js +136 -12
- package/dist/services/UniversalCreateService.js.map +1 -1
- package/dist/services/UniversalSearchService.d.ts +4 -25
- package/dist/services/UniversalSearchService.d.ts.map +1 -1
- package/dist/services/UniversalSearchService.js +14 -324
- package/dist/services/UniversalSearchService.js.map +1 -1
- package/dist/services/UniversalUpdateService.d.ts +15 -4
- package/dist/services/UniversalUpdateService.d.ts.map +1 -1
- package/dist/services/UniversalUpdateService.js +79 -151
- package/dist/services/UniversalUpdateService.js.map +1 -1
- package/dist/services/create/factory.d.ts.map +1 -1
- package/dist/services/create/factory.js +2 -1
- package/dist/services/create/factory.js.map +1 -1
- package/dist/services/metadata/AttributeOptionsService.d.ts +38 -0
- package/dist/services/metadata/AttributeOptionsService.d.ts.map +1 -0
- package/dist/services/metadata/AttributeOptionsService.js +92 -0
- package/dist/services/metadata/AttributeOptionsService.js.map +1 -0
- package/dist/services/metadata/index.d.ts +1 -0
- package/dist/services/metadata/index.d.ts.map +1 -1
- package/dist/services/metadata/index.js +1 -0
- package/dist/services/metadata/index.js.map +1 -1
- package/dist/services/search/QueryApiService.d.ts +27 -0
- package/dist/services/search/QueryApiService.d.ts.map +1 -0
- package/dist/services/search/QueryApiService.js +144 -0
- package/dist/services/search/QueryApiService.js.map +1 -0
- package/dist/services/search/RecordsSearchService.d.ts +27 -0
- package/dist/services/search/RecordsSearchService.d.ts.map +1 -0
- package/dist/services/search/RecordsSearchService.js +122 -0
- package/dist/services/search/RecordsSearchService.js.map +1 -0
- package/dist/services/search/SearchCoordinator.d.ts +41 -0
- package/dist/services/search/SearchCoordinator.d.ts.map +1 -0
- package/dist/services/search/SearchCoordinator.js +83 -0
- package/dist/services/search/SearchCoordinator.js.map +1 -0
- package/dist/services/search/StrategyFactory.d.ts +31 -0
- package/dist/services/search/StrategyFactory.d.ts.map +1 -0
- package/dist/services/search/StrategyFactory.js +100 -0
- package/dist/services/search/StrategyFactory.js.map +1 -0
- package/dist/services/skill-generator/OutputWriterService.d.ts +41 -0
- package/dist/services/skill-generator/OutputWriterService.d.ts.map +1 -0
- package/dist/services/skill-generator/OutputWriterService.js +100 -0
- package/dist/services/skill-generator/OutputWriterService.js.map +1 -0
- package/dist/services/skill-generator/SchemaFormatterService.d.ts +61 -0
- package/dist/services/skill-generator/SchemaFormatterService.d.ts.map +1 -0
- package/dist/services/skill-generator/SchemaFormatterService.js +168 -0
- package/dist/services/skill-generator/SchemaFormatterService.js.map +1 -0
- package/dist/services/skill-generator/WorkspaceSchemaService.d.ts +84 -0
- package/dist/services/skill-generator/WorkspaceSchemaService.d.ts.map +1 -0
- package/dist/services/skill-generator/WorkspaceSchemaService.js +292 -0
- package/dist/services/skill-generator/WorkspaceSchemaService.js.map +1 -0
- package/dist/services/skill-generator/index.d.ts +12 -0
- package/dist/services/skill-generator/index.d.ts.map +1 -0
- package/dist/services/skill-generator/index.js +11 -0
- package/dist/services/skill-generator/index.js.map +1 -0
- package/dist/services/skill-generator/types.d.ts +137 -0
- package/dist/services/skill-generator/types.d.ts.map +1 -0
- package/dist/services/skill-generator/types.js +10 -0
- package/dist/services/skill-generator/types.js.map +1 -0
- package/dist/services/update/FieldPersistenceHandler.d.ts +101 -0
- package/dist/services/update/FieldPersistenceHandler.d.ts.map +1 -0
- package/dist/services/update/FieldPersistenceHandler.js +198 -0
- package/dist/services/update/FieldPersistenceHandler.js.map +1 -0
- package/dist/services/update/FieldValidationHandler.d.ts +77 -0
- package/dist/services/update/FieldValidationHandler.d.ts.map +1 -0
- package/dist/services/update/FieldValidationHandler.js +157 -0
- package/dist/services/update/FieldValidationHandler.js.map +1 -0
- package/dist/services/update/MetadataResolver.d.ts +50 -0
- package/dist/services/update/MetadataResolver.d.ts.map +1 -0
- package/dist/services/update/MetadataResolver.js +110 -0
- package/dist/services/update/MetadataResolver.js.map +1 -0
- package/dist/services/update/UpdateOrchestrator.d.ts +37 -0
- package/dist/services/update/UpdateOrchestrator.d.ts.map +1 -0
- package/dist/services/update/UpdateOrchestrator.js +58 -0
- package/dist/services/update/UpdateOrchestrator.js.map +1 -0
- package/dist/services/update/UpdateValidation.d.ts +5 -1
- package/dist/services/update/UpdateValidation.d.ts.map +1 -1
- package/dist/services/update/UpdateValidation.js +46 -14
- package/dist/services/update/UpdateValidation.js.map +1 -1
- package/dist/services/value-transformer/index.d.ts +57 -0
- package/dist/services/value-transformer/index.d.ts.map +1 -0
- package/dist/services/value-transformer/index.js +326 -0
- package/dist/services/value-transformer/index.js.map +1 -0
- package/dist/services/value-transformer/multi-select-transformer.d.ts +63 -0
- package/dist/services/value-transformer/multi-select-transformer.d.ts.map +1 -0
- package/dist/services/value-transformer/multi-select-transformer.js +144 -0
- package/dist/services/value-transformer/multi-select-transformer.js.map +1 -0
- package/dist/services/value-transformer/record-reference-transformer.d.ts +43 -0
- package/dist/services/value-transformer/record-reference-transformer.d.ts.map +1 -0
- package/dist/services/value-transformer/record-reference-transformer.js +245 -0
- package/dist/services/value-transformer/record-reference-transformer.js.map +1 -0
- package/dist/services/value-transformer/select-transformer.d.ts +48 -0
- package/dist/services/value-transformer/select-transformer.d.ts.map +1 -0
- package/dist/services/value-transformer/select-transformer.js +232 -0
- package/dist/services/value-transformer/select-transformer.js.map +1 -0
- package/dist/services/value-transformer/status-transformer.d.ts +32 -0
- package/dist/services/value-transformer/status-transformer.d.ts.map +1 -0
- package/dist/services/value-transformer/status-transformer.js +294 -0
- package/dist/services/value-transformer/status-transformer.js.map +1 -0
- package/dist/services/value-transformer/types.d.ts +100 -0
- package/dist/services/value-transformer/types.d.ts.map +1 -0
- package/dist/services/value-transformer/types.js +6 -0
- package/dist/services/value-transformer/types.js.map +1 -0
- package/dist/templates/skill/SKILL.template.md +78 -0
- package/dist/templates/skill/attribute-reference.template.md +126 -0
- package/dist/templates/skill/complex-types.template.md +255 -0
- package/dist/utils/client-resolver.d.ts.map +1 -1
- package/dist/utils/client-resolver.js +8 -16
- package/dist/utils/client-resolver.js.map +1 -1
- package/dist/utils/complex-type-validation.d.ts +16 -0
- package/dist/utils/complex-type-validation.d.ts.map +1 -0
- package/dist/utils/complex-type-validation.js +196 -0
- package/dist/utils/complex-type-validation.js.map +1 -0
- package/dist/utils/error-utilities.d.ts.map +1 -1
- package/dist/utils/error-utilities.js +16 -9
- package/dist/utils/error-utilities.js.map +1 -1
- package/dist/utils/location-normalizer.d.ts +26 -0
- package/dist/utils/location-normalizer.d.ts.map +1 -0
- package/dist/utils/location-normalizer.js +39 -0
- package/dist/utils/location-normalizer.js.map +1 -0
- package/dist/utils/metadata-utils.d.ts +27 -0
- package/dist/utils/metadata-utils.d.ts.map +1 -0
- package/dist/utils/metadata-utils.js +59 -0
- package/dist/utils/metadata-utils.js.map +1 -0
- package/dist/utils/personal-name-parser.d.ts.map +1 -1
- package/dist/utils/personal-name-parser.js +26 -17
- package/dist/utils/personal-name-parser.js.map +1 -1
- package/dist/validators/company/field_detector.d.ts.map +1 -1
- package/dist/validators/company/field_detector.js +5 -0
- package/dist/validators/company/field_detector.js.map +1 -1
- package/package.json +28 -25
|
@@ -33,11 +33,11 @@
|
|
|
33
33
|
*/
|
|
34
34
|
import { UniversalResourceType } from '../handlers/tool-configs/universal/types.js';
|
|
35
35
|
import { UniversalValidationError, ErrorType, } from '../handlers/tool-configs/universal/schemas.js';
|
|
36
|
-
import { debug
|
|
36
|
+
import { debug } from '../utils/logger.js';
|
|
37
37
|
// Import shared type definitions for better type safety
|
|
38
|
-
import { createNotFoundError,
|
|
38
|
+
import { createNotFoundError, } from '../types/universal-service-types.js';
|
|
39
39
|
// Import services
|
|
40
|
-
import { ValidationService } from '
|
|
40
|
+
import { ValidationService } from '../services/ValidationService.js';
|
|
41
41
|
// Import field mapping utilities
|
|
42
42
|
import { mapRecordFields, validateResourceType, validateFields, getValidResourceTypes, mapTaskFields, } from '../handlers/tool-configs/universal/field-mapper.js';
|
|
43
43
|
// Import validation utilities
|
|
@@ -218,45 +218,24 @@ export class UniversalUpdateService {
|
|
|
218
218
|
const { mapped: mappedData } = await mapRecordFields(resource_type, values);
|
|
219
219
|
const attioPayload = { values: mappedData };
|
|
220
220
|
const { UpdateValidation } = await import('./update/UpdateValidation.js');
|
|
221
|
+
const { FieldPersistenceHandler } = await import('./update/FieldPersistenceHandler.js');
|
|
221
222
|
const sanitizedData = UpdateValidation.sanitizeSpecialCharacters(attioPayload.values);
|
|
222
|
-
|
|
223
|
-
//
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
const semanticMismatches = verification.discrepancies.filter((d) => {
|
|
239
|
-
// Extract expected and actual from: Field "X" persistence mismatch: expected Y, got Z
|
|
240
|
-
const match = d.match(/expected (.+?), got (.+?)$/);
|
|
241
|
-
if (!match)
|
|
242
|
-
return true; // Log if we can't parse (safety)
|
|
243
|
-
const [, expectedStr, actualStr] = match;
|
|
244
|
-
try {
|
|
245
|
-
// If one is a string and the other is an object containing that string, it's cosmetic
|
|
246
|
-
const isCosmetic = (expectedStr.includes('"') &&
|
|
247
|
-
actualStr.includes(expectedStr.replace(/^"|"$/g, ''))) ||
|
|
248
|
-
(actualStr.includes('"') &&
|
|
249
|
-
expectedStr.includes(actualStr.replace(/^"|"$/g, '')));
|
|
250
|
-
return !isCosmetic;
|
|
251
|
-
}
|
|
252
|
-
catch {
|
|
253
|
-
return true; // Log on parse errors (safety)
|
|
254
|
-
}
|
|
255
|
-
});
|
|
256
|
-
if (semanticMismatches.length > 0) {
|
|
257
|
-
validationResult.warnings.push(...semanticMismatches.map((discrepancy) => `Field persistence issue: ${discrepancy}`));
|
|
258
|
-
}
|
|
259
|
-
}
|
|
223
|
+
// UNIFIED: Single call to FieldPersistenceHandler (Issue #984 extension)
|
|
224
|
+
// Eliminates duplicate semantic filtering logic by using shared implementation
|
|
225
|
+
const verification = await FieldPersistenceHandler.verifyPersistence(resource_type, record_id, sanitizedData, validationResult.actualValues, // Pass actual values from line 326
|
|
226
|
+
{
|
|
227
|
+
strict: process.env.STRICT_FIELD_VALIDATION === 'true',
|
|
228
|
+
skip: false,
|
|
229
|
+
});
|
|
230
|
+
// Surface complete VerificationResult into validationResult
|
|
231
|
+
validationResult.warnings.push(...verification.warnings);
|
|
232
|
+
validationResult.fieldVerification = {
|
|
233
|
+
verified: verification.verified,
|
|
234
|
+
discrepancies: verification.discrepancies,
|
|
235
|
+
};
|
|
236
|
+
// Also add discrepancies as warnings for backward compatibility
|
|
237
|
+
if (verification.discrepancies.length > 0) {
|
|
238
|
+
validationResult.warnings.push(...verification.discrepancies.map((discrepancy) => `Field persistence issue: ${discrepancy}`));
|
|
260
239
|
}
|
|
261
240
|
}
|
|
262
241
|
catch (error) {
|
|
@@ -300,39 +279,9 @@ export class UniversalUpdateService {
|
|
|
300
279
|
suggestions: truncated.join('\n'),
|
|
301
280
|
});
|
|
302
281
|
}
|
|
303
|
-
//
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
const { UniversalMetadataService } = await import('./UniversalMetadataService.js');
|
|
307
|
-
const options = resource_type === UniversalResourceType.RECORDS
|
|
308
|
-
? {
|
|
309
|
-
objectSlug: actualRecordData?.object ||
|
|
310
|
-
actualRecordData?.object_api_slug ||
|
|
311
|
-
'records',
|
|
312
|
-
}
|
|
313
|
-
: resource_type === UniversalResourceType.DEALS
|
|
314
|
-
? { objectSlug: 'deals' }
|
|
315
|
-
: undefined;
|
|
316
|
-
const attributeResult = await UniversalMetadataService.discoverAttributesForResourceType(resource_type, options);
|
|
317
|
-
const attrs = attributeResult?.attributes ?? [];
|
|
318
|
-
/**
|
|
319
|
-
* **Type Guard Usage**: Using isAttributeObject type guard instead of inline casting
|
|
320
|
-
* for safer attribute processing and better runtime type validation.
|
|
321
|
-
*/
|
|
322
|
-
availableAttributes = Array.from(new Set(attrs.flatMap((a) => {
|
|
323
|
-
if (!isAttributeObject(a)) {
|
|
324
|
-
return [];
|
|
325
|
-
}
|
|
326
|
-
return [a.api_slug, a.title, a.name].filter((s) => typeof s === 'string');
|
|
327
|
-
}))).map((s) => s.toLowerCase());
|
|
328
|
-
}
|
|
329
|
-
catch (error) {
|
|
330
|
-
debug('UniversalUpdateService', 'Failed to fetch attributes', {
|
|
331
|
-
resource_type,
|
|
332
|
-
error: error instanceof Error ? error.message : String(error),
|
|
333
|
-
});
|
|
334
|
-
availableAttributes = undefined;
|
|
335
|
-
}
|
|
282
|
+
// Issue #984: Fetch metadata once using MetadataResolver
|
|
283
|
+
const { MetadataResolver } = await import('./update/MetadataResolver.js');
|
|
284
|
+
const { metadataMap, availableAttributes } = await MetadataResolver.fetchMetadata(resource_type, actualRecordData);
|
|
336
285
|
// Map field names to correct ones with collision detection
|
|
337
286
|
const mappingResult = await mapRecordFields(resource_type, values, availableAttributes);
|
|
338
287
|
if (mappingResult.errors && mappingResult.errors.length > 0) {
|
|
@@ -378,88 +327,67 @@ export class UniversalUpdateService {
|
|
|
378
327
|
});
|
|
379
328
|
}
|
|
380
329
|
}
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
const { RecordUpdateStrategy } = await import('./update/strategies/RecordUpdateStrategy.js');
|
|
404
|
-
const strategy = new RecordUpdateStrategy();
|
|
405
|
-
/**
|
|
406
|
-
* **Safe Property Access**: Using type-safe property access for object slug
|
|
407
|
-
* extraction while providing sensible defaults.
|
|
408
|
-
*/
|
|
409
|
-
const recordsObjectSlug = (typeof actualRecordData?.object === 'string'
|
|
410
|
-
? actualRecordData.object
|
|
411
|
-
: undefined) ||
|
|
412
|
-
(typeof actualRecordData?.object_api_slug === 'string'
|
|
413
|
-
? actualRecordData.object_api_slug
|
|
414
|
-
: undefined) ||
|
|
415
|
-
'records';
|
|
416
|
-
updatedRecord = await strategy.update(record_id, attioPayload.values, resource_type, { objectSlug: recordsObjectSlug });
|
|
417
|
-
break;
|
|
418
|
-
}
|
|
419
|
-
case UniversalResourceType.TASKS: {
|
|
420
|
-
const { TaskUpdateStrategy } = await import('./update/strategies/TaskUpdateStrategy.js');
|
|
421
|
-
const strategy = new TaskUpdateStrategy();
|
|
422
|
-
updatedRecord = await strategy.update(record_id, attioPayload.values, resource_type);
|
|
423
|
-
break;
|
|
424
|
-
}
|
|
425
|
-
default: {
|
|
426
|
-
updatedRecord = await this.handleUnsupportedResourceType(resource_type, params);
|
|
427
|
-
break;
|
|
428
|
-
}
|
|
429
|
-
}
|
|
430
|
-
const { ResponseNormalizer } = await import('./update/ResponseNormalizer.js');
|
|
431
|
-
const normalizedRecord = ResponseNormalizer.normalizeResponseFormat(resource_type, updatedRecord);
|
|
432
|
-
// Field persistence verification (enabled by default)
|
|
433
|
-
// WARNING: Disabling this can cause silent data consistency issues
|
|
434
|
-
// Skip verification if called from validation-aware path to avoid duplication
|
|
435
|
-
if (!skipVerification &&
|
|
436
|
-
process.env.ENABLE_FIELD_VERIFICATION !== 'false') {
|
|
437
|
-
try {
|
|
438
|
-
const verification = await UpdateValidation.verifyFieldPersistence(resource_type, record_id, sanitizedData);
|
|
439
|
-
if (verification.warnings.length > 0) {
|
|
440
|
-
logError('UniversalUpdateService', `Field persistence warnings for ${resource_type} ${record_id}:`, verification.warnings);
|
|
330
|
+
// FEATURE: Auto-transform values for Issue #980 UX improvements
|
|
331
|
+
// Transforms: status titles → {status_id: uuid}, single values → arrays for multi-select
|
|
332
|
+
try {
|
|
333
|
+
const { transformRecordValues, mayNeedTransformation } = await import('./value-transformer/index.js');
|
|
334
|
+
// Quick check to avoid unnecessary async work
|
|
335
|
+
if (mayNeedTransformation(attioPayload.values, resource_type)) {
|
|
336
|
+
const transformResult = await transformRecordValues(attioPayload.values, {
|
|
337
|
+
resourceType: resource_type,
|
|
338
|
+
operation: 'update',
|
|
339
|
+
recordId: record_id,
|
|
340
|
+
// Issue #984: Pass metadata to avoid duplicate fetch
|
|
341
|
+
attributeMetadata: metadataMap,
|
|
342
|
+
});
|
|
343
|
+
attioPayload.values = transformResult.data;
|
|
344
|
+
// Log transformations for debugging
|
|
345
|
+
if (transformResult.transformations.length > 0) {
|
|
346
|
+
debug('UniversalUpdateService', 'Value transformations applied', {
|
|
347
|
+
transformations: transformResult.transformations.map((t) => ({
|
|
348
|
+
field: t.field,
|
|
349
|
+
type: t.type,
|
|
350
|
+
})),
|
|
351
|
+
});
|
|
441
352
|
}
|
|
442
|
-
if (
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
resource_type,
|
|
446
|
-
record_id,
|
|
447
|
-
discrepancies: verification.discrepancies,
|
|
353
|
+
if (transformResult.warnings.length > 0) {
|
|
354
|
+
debug('UniversalUpdateService', 'Value transformation warnings', {
|
|
355
|
+
warnings: transformResult.warnings,
|
|
448
356
|
});
|
|
449
|
-
// If strict validation is enabled, fail the operation
|
|
450
|
-
// WARNING: This environment variable changes runtime behavior
|
|
451
|
-
// Production Impact: Operations may fail that previously succeeded
|
|
452
|
-
if (process.env.STRICT_FIELD_VALIDATION === 'true') {
|
|
453
|
-
throw new UniversalValidationError(`Field persistence verification failed: ${verification.discrepancies.join('; ')}`, ErrorType.API_ERROR, {
|
|
454
|
-
field: 'field_verification',
|
|
455
|
-
suggestion: 'Check that the field values are correctly formatted and supported by the API',
|
|
456
|
-
});
|
|
457
|
-
}
|
|
458
357
|
}
|
|
459
358
|
}
|
|
460
|
-
|
|
461
|
-
|
|
359
|
+
}
|
|
360
|
+
catch (transformError) {
|
|
361
|
+
// If transformation throws (e.g., invalid status value), propagate the error
|
|
362
|
+
if (transformError instanceof Error) {
|
|
363
|
+
throw new UniversalValidationError(transformError.message, ErrorType.USER_ERROR, {
|
|
364
|
+
suggestion: 'Check that field values match the expected format. Use records_get_attribute_options to see valid options.',
|
|
365
|
+
field: undefined,
|
|
366
|
+
cause: undefined,
|
|
367
|
+
});
|
|
462
368
|
}
|
|
369
|
+
throw transformError;
|
|
370
|
+
}
|
|
371
|
+
// Capture post-transform data for verification (PR #981 review feedback)
|
|
372
|
+
// This ensures verification compares what was actually sent to API
|
|
373
|
+
const dataForVerification = { ...attioPayload.values };
|
|
374
|
+
// Issue #984: Use UpdateOrchestrator for strategy dispatch
|
|
375
|
+
const { UpdateOrchestrator } = await import('./update/UpdateOrchestrator.js');
|
|
376
|
+
// Use centralized object slug extraction (fixes DEALS slug inconsistency)
|
|
377
|
+
// MetadataResolver already imported at line 468
|
|
378
|
+
const objectSlug = MetadataResolver.extractObjectSlug(resource_type, actualRecordData);
|
|
379
|
+
const updatedRecord = await UpdateOrchestrator.executeUpdate({
|
|
380
|
+
resourceType: resource_type,
|
|
381
|
+
recordId: record_id,
|
|
382
|
+
sanitizedValues: attioPayload.values,
|
|
383
|
+
objectSlug,
|
|
384
|
+
});
|
|
385
|
+
const { ResponseNormalizer } = await import('./update/ResponseNormalizer.js');
|
|
386
|
+
const normalizedRecord = ResponseNormalizer.normalizeResponseFormat(resource_type, updatedRecord);
|
|
387
|
+
// Issue #984: Use FieldPersistenceHandler for verification
|
|
388
|
+
if (!skipVerification) {
|
|
389
|
+
const { FieldPersistenceHandler } = await import('./update/FieldPersistenceHandler.js');
|
|
390
|
+
await FieldPersistenceHandler.verifyPersistence(resource_type, record_id, dataForVerification, normalizedRecord.values || {}, { strict: false });
|
|
463
391
|
}
|
|
464
392
|
return normalizedRecord;
|
|
465
393
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UniversalUpdateService.js","sourceRoot":"","sources":["../../src/services/UniversalUpdateService.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AAEH,OAAO,EAAE,qBAAqB,EAAE,MAAM,6CAA6C,CAAC;AAGpF,OAAO,EACL,wBAAwB,EACxB,SAAS,GACV,MAAM,+CAA+C,CAAC;AACvD,OAAO,EAAE,KAAK,EAAE,KAAK,IAAI,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAE9D,wDAAwD;AACxD,OAAO,EACL,mBAAmB,EAEnB,iBAAiB,GAClB,MAAM,qCAAqC,CAAC;AAE7C,kBAAkB;AAClB,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAmB3D,iCAAiC;AACjC,OAAO,EACL,eAAe,EACf,oBAAoB,EACpB,cAAc,EACd,qBAAqB,EACrB,aAAa,GACd,MAAM,oDAAoD,CAAC;AAE5D,8BAA8B;AAC9B,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAEpE,wEAAwE;AAExE,+FAA+F;AAE/F;;;;;;;;;GASG;AACH,MAAM,OAAO,sBAAsB;IACjC;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,0BAA0B,CACrC,MAA6B;QAE7B,sCAAsC;QACtC,MAAM,kBAAkB,GAAG,MAAM,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC;QAChE,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC;YACvD,MAAM,IAAI,wBAAwB,CAChC,8BAA8B,MAAM,CAAC,aAAa,EAAE,EACpD,SAAS,CAAC,UAAU,EACpB;gBACE,KAAK,EAAE,eAAe;gBACtB,UAAU,EAAE,6BAA6B,kBAAkB,CAAC,IAAI,CAC9D,IAAI,CACL,EAAE;aACJ,CACF,CAAC;QACJ,CAAC;QAED,IAAI,CAAC;YACH,OAAO,MAAM,IAAI,CAAC,mCAAmC,CAAC,MAAM,CAAC,CAAC;QAChE,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,yFAAyF;YACzF,IACE,KAAK;gBACL,OAAO,KAAK,KAAK,QAAQ;gBACzB,QAAQ,IAAI,KAAK;gBACjB,MAAM,IAAI,KAAK,EACf,CAAC;gBACD,MAAM,KAAK,CAAC,CAAC,0CAA0C;YACzD,CAAC;YAED,6DAA6D;YAC7D,IACE,KAAK,YAAY,SAAS;gBAC1B,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,qCAAqC,CAAC,EAC7D,CAAC;gBACD,0EAA0E;gBAC1E,MAAM,EAAE,aAAa,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC;gBAC5C,IAAI,aAAa,KAAK,qBAAqB,CAAC,KAAK,EAAE,CAAC;oBAClD,sDAAsD;oBACtD,MAAM,mBAAmB,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;gBACtD,CAAC;YACH,CAAC;YAED,kDAAkD;YAClD,IACE,KAAK,YAAY,KAAK;gBACtB,KAAK,CAAC,OAAO,CAAC,QAAQ,CACpB,4DAA4D,CAC7D,EACD,CAAC;gBACD,MAAM,EAAE,aAAa,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC;gBAC5C,IAAI,aAAa,KAAK,qBAAqB,CAAC,KAAK,EAAE,CAAC;oBAClD,sDAAsD;oBACtD,MAAM,mBAAmB,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;gBACtD,CAAC;YACH,CAAC;YAED,iDAAiD;YACjD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,YAAY,CACvB,MAA6B;QAE7B,sCAAsC;QACtC,MAAM,kBAAkB,GAAG,MAAM,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC;QAChE,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC;YACvD,MAAM,IAAI,wBAAwB,CAChC,8BAA8B,MAAM,CAAC,aAAa,EAAE,EACpD,SAAS,CAAC,UAAU,EACpB;gBACE,KAAK,EAAE,eAAe;gBACtB,UAAU,EAAE,6BAA6B,kBAAkB,CAAC,IAAI,CAC9D,IAAI,CACL,EAAE;aACJ,CACF,CAAC;QACJ,CAAC;QAED,IAAI,CAAC;YACH,OAAO,MAAM,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;QAClD,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,yFAAyF;YACzF,IACE,KAAK;gBACL,OAAO,KAAK,KAAK,QAAQ;gBACzB,QAAQ,IAAI,KAAK;gBACjB,MAAM,IAAI,KAAK,EACf,CAAC;gBACD,MAAM,KAAK,CAAC,CAAC,0CAA0C;YACzD,CAAC;YAED,6DAA6D;YAC7D,IACE,KAAK,YAAY,SAAS;gBAC1B,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,qCAAqC,CAAC,EAC7D,CAAC;gBACD,0EAA0E;gBAC1E,MAAM,EAAE,aAAa,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC;gBAC5C,IAAI,aAAa,KAAK,qBAAqB,CAAC,KAAK,EAAE,CAAC;oBAClD,sDAAsD;oBACtD,MAAM,mBAAmB,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;gBACtD,CAAC;YACH,CAAC;YAED,kDAAkD;YAClD,IACE,KAAK,YAAY,KAAK;gBACtB,KAAK,CAAC,OAAO,CAAC,QAAQ,CACpB,4DAA4D,CAC7D,EACD,CAAC;gBACD,MAAM,EAAE,aAAa,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC;gBAC5C,IAAI,aAAa,KAAK,qBAAqB,CAAC,KAAK,EAAE,CAAC;oBAClD,sDAAsD;oBACtD,MAAM,mBAAmB,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;gBACtD,CAAC;YACH,CAAC;YAED,iDAAiD;YACjD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED;;OAEG;IACK,MAAM,CAAC,KAAK,CAAC,mCAAmC,CACtD,MAA6B;QAE7B,MAAM,gBAAgB,GAAqB;YACzC,QAAQ,EAAE,EAAE;YACZ,YAAY,EAAE,EAAE;YAChB,WAAW,EAAE,EAAE;SAChB,CAAC;QAEF,MAAM,EAAE,aAAa,EAAE,SAAS,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC;QAQzD,MAAM,UAAU,GAAI,MAA2B,CAAC,IAAI,CAAC;QACrD,MAAM,gBAAgB,GAAG,CAAC,WAAW,IAAI,UAAU,CAEtC,CAAC;QAEd,8DAA8D;QAC9D;;;;WAIG;QACH,MAAM,GAAG,GACP,gBAAgB,IAAI,OAAO,gBAAgB,KAAK,QAAQ;YACtD,CAAC,CAAC,gBAAgB;YAClB,CAAC,CAAC,EAAE,CAAC;QACT,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC;QAEjC,gFAAgF;QAChF,MAAM,eAAe,GAAG,cAAc,CACpC,aAAa,EACb,MAAiC,CAClC,CAAC;QACF,IAAI,eAAe,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;YAC5D,uDAAuD;YACvD,KAAK,CAAC,wBAAwB,EAAE,2BAA2B,EAAE;gBAC3D,QAAQ,EAAE,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;aAC9C,CAAC,CAAC;QACL,CAAC;QACD,IAAI,eAAe,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3C,gBAAgB,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,WAAW,CAAC,CAAC;YAClE,MAAM,SAAS,GAAG,iBAAiB,CAAC,mBAAmB,CACrD,eAAe,CAAC,WAAW,CAC5B,CAAC;YACF,KAAK,CAAC,wBAAwB,EAAE,oBAAoB,EAAE;gBACpD,WAAW,EAAE,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;aAClC,CAAC,CAAC;QACL,CAAC;QAED,2CAA2C;QAC3C,IAAI,aAAa,KAAK,qBAAqB,CAAC,KAAK,EAAE,CAAC;YAClD,IAAI,CAAC;gBACH,MAAM,EAAE,+BAA+B,EAAE,GAAG,MAAM,MAAM,CACtD,4BAA4B,CAC7B,CAAC;gBAEF,MAAM,cAAc,GAAG,MAAM,+BAA+B,CAC1D,MAAiC,EACjC,KAAK,CAAC,8CAA8C;iBACrD,CAAC;gBAEF,yCAAyC;gBACzC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC;gBAE/C,iDAAiD;gBACjD,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAC;gBAC3D,gBAAgB,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC,WAAW,CAAC,CAAC;gBAEjE,KAAK,CAAC,wBAAwB,EAAE,yBAAyB,EAAE;oBACzD,QAAQ,EAAE,cAAc,CAAC,QAAQ;oBACjC,WAAW,EAAE,cAAc,CAAC,WAAW;iBACxC,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,KAAc,EAAE,CAAC;gBACxB,MAAM,YAAY,GAChB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACzD,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAC5B,4BAA4B,YAAY,EAAE,CAC3C,CAAC;gBACF,KAAK,CAAC,wBAAwB,EAAE,wBAAwB,EAAE;oBACxD,KAAK,EAAE,YAAY;iBACpB,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,oEAAoE;QACpE,kEAAkE;QAClE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAE9D,qCAAqC;QACrC,gBAAgB,CAAC,YAAY,GAAG,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC;QAEpD,6DAA6D;QAC7D,IAAI,OAAO,CAAC,GAAG,CAAC,yBAAyB,KAAK,OAAO,EAAE,CAAC;YACtD,IAAI,CAAC;gBACH,8CAA8C;gBAC9C,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,eAAe,CAClD,aAAa,EACb,MAAiC,CAClC,CAAC;gBACF,MAAM,YAAY,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;gBAC5C,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CACvC,8BAA8B,CAC/B,CAAC;gBACF,MAAM,aAAa,GAAG,gBAAgB,CAAC,yBAAyB,CAC9D,YAAY,CAAC,MAAM,CACpB,CAAC;gBAEF,MAAM,YAAY,GAAG,MAAM,gBAAgB,CAAC,sBAAsB,CAChE,aAAa,EACb,SAAS,EACT,aAAa,CACd,CAAC;gBAEF,sDAAsD;gBACtD,IAAI,YAAY,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACrC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;gBAC3D,CAAC;gBAED,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC;oBAC3B,gFAAgF;oBAChF,4GAA4G;oBAC5G,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,uBAAuB,KAAK,MAAM,CAAC;oBAEpE,IAAI,YAAY,EAAE,CAAC;wBACjB,qCAAqC;wBACrC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAC5B,GAAG,YAAY,CAAC,aAAa,CAAC,GAAG,CAC/B,CAAC,WAAW,EAAE,EAAE,CAAC,4BAA4B,WAAW,EAAE,CAC3D,CACF,CAAC;oBACJ,CAAC;yBAAM,CAAC;wBACN,mFAAmF;wBACnF,gGAAgG;wBAChG,MAAM,kBAAkB,GAAG,YAAY,CAAC,aAAa,CAAC,MAAM,CAC1D,CAAC,CAAC,EAAE,EAAE;4BACJ,sFAAsF;4BACtF,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;4BACpD,IAAI,CAAC,KAAK;gCAAE,OAAO,IAAI,CAAC,CAAC,iCAAiC;4BAE1D,MAAM,CAAC,EAAE,WAAW,EAAE,SAAS,CAAC,GAAG,KAAK,CAAC;4BACzC,IAAI,CAAC;gCACH,sFAAsF;gCACtF,MAAM,UAAU,GACd,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC;oCACxB,SAAS,CAAC,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC;oCACxD,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC;wCACtB,WAAW,CAAC,QAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;gCAC3D,OAAO,CAAC,UAAU,CAAC;4BACrB,CAAC;4BAAC,MAAM,CAAC;gCACP,OAAO,IAAI,CAAC,CAAC,+BAA+B;4BAC9C,CAAC;wBACH,CAAC,CACF,CAAC;wBAEF,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;4BAClC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAC5B,GAAG,kBAAkB,CAAC,GAAG,CACvB,CAAC,WAAW,EAAE,EAAE,CAAC,4BAA4B,WAAW,EAAE,CAC3D,CACF,CAAC;wBACJ,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;YAAC,OAAO,KAAc,EAAE,CAAC;gBACxB,MAAM,YAAY,GAChB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACzD,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAC5B,+BAA+B,YAAY,EAAE,CAC9C,CAAC;YACJ,CAAC;QACH,CAAC;QAED,OAAO;YACL,MAAM;YACN,UAAU,EAAE,gBAAgB;SAC7B,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,MAAM,CAAC,KAAK,CAAC,qBAAqB,CACxC,MAA6B,EAC7B,mBAA4B,KAAK;QAEjC,MAAM,EAAE,aAAa,EAAE,SAAS,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC;QAQzD,MAAM,UAAU,GAAI,MAA2B,CAAC,IAAI,CAAC;QACrD,MAAM,gBAAgB,GAAG,CAAC,WAAW,IAAI,UAAU,CAEtC,CAAC;QAEd,8DAA8D;QAC9D;;;;WAIG;QACH,MAAM,GAAG,GACP,gBAAgB,IAAI,OAAO,gBAAgB,KAAK,QAAQ;YACtD,CAAC,CAAC,gBAAgB;YAClB,CAAC,CAAC,EAAE,CAAC;QACT,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC;QAEjC,gFAAgF;QAChF,MAAM,eAAe,GAAG,cAAc,CACpC,aAAa,EACb,MAAiC,CAClC,CAAC;QACF,IAAI,eAAe,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxC,uDAAuD;YACvD,KAAK,CAAC,wBAAwB,EAAE,2BAA2B,EAAE;gBAC3D,QAAQ,EAAE,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;aAC9C,CAAC,CAAC;QACL,CAAC;QACD,IAAI,eAAe,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3C,MAAM,SAAS,GAAG,iBAAiB,CAAC,mBAAmB,CACrD,eAAe,CAAC,WAAW,CAC5B,CAAC;YACF,KAAK,CAAC,wBAAwB,EAAE,oBAAoB,EAAE;gBACpD,WAAW,EAAE,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;aAClC,CAAC,CAAC;QACL,CAAC;QAED,iFAAiF;QACjF,IAAI,mBAAyC,CAAC;QAC9C,IAAI,CAAC;YACH,MAAM,EAAE,wBAAwB,EAAE,GAAG,MAAM,MAAM,CAC/C,+BAA+B,CAChC,CAAC;YACF,MAAM,OAAO,GACX,aAAa,KAAK,qBAAqB,CAAC,OAAO;gBAC7C,CAAC,CAAC;oBACE,UAAU,EACP,gBAAgB,EAAE,MAAiB;wBACnC,gBAAgB,EAAE,eAA0B;wBAC7C,SAAS;iBACZ;gBACH,CAAC,CAAC,aAAa,KAAK,qBAAqB,CAAC,KAAK;oBAC7C,CAAC,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE;oBACzB,CAAC,CAAC,SAAS,CAAC;YAClB,MAAM,eAAe,GACnB,MAAM,wBAAwB,CAAC,iCAAiC,CAC9D,aAAa,EACb,OAAO,CACR,CAAC;YACJ,MAAM,KAAK,GAAI,eAAe,EAAE,UAAwB,IAAI,EAAE,CAAC;YAC/D;;;eAGG;YACH,mBAAmB,GAAG,KAAK,CAAC,IAAI,CAC9B,IAAI,GAAG,CACL,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;gBAClB,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC1B,OAAO,EAAE,CAAC;gBACZ,CAAC;gBACD,OAAO,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,CACzC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAC1C,CAAC;YACJ,CAAC,CAAC,CACH,CACF,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;QAChC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,KAAK,CAAC,wBAAwB,EAAE,4BAA4B,EAAE;gBAC5D,aAAa;gBACb,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;aAC9D,CAAC,CAAC;YACH,mBAAmB,GAAG,SAAS,CAAC;QAClC,CAAC;QAED,2DAA2D;QAC3D,MAAM,aAAa,GAAG,MAAM,eAAe,CACzC,aAAa,EACb,MAAiC,EACjC,mBAAmB,CACpB,CAAC;QACF,IAAI,aAAa,CAAC,MAAM,IAAI,aAAa,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5D,MAAM,IAAI,wBAAwB,CAChC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAC9B,SAAS,CAAC,UAAU,EACpB;gBACE,KAAK,EAAE,aAAa;gBACpB,UAAU,EACR,wGAAwG;gBAC1G,KAAK,EAAE,SAAS,EAAE,uCAAuC;aAC1D,CACF,CAAC;QACJ,CAAC;QAED,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,aAAa,CAAC;QACvD,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxB,KAAK,CAAC,wBAAwB,EAAE,wBAAwB,EAAE;gBACxD,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;aAC9B,CAAC,CAAC;QACL,CAAC;QAED,uCAAuC;QACvC,MAAM,YAAY,GAAwC;YACxD,MAAM,EAAE,UAAU;SACnB,CAAC;QAEF,yFAAyF;QACzF,IAAI,aAAa,KAAK,qBAAqB,CAAC,KAAK,EAAE,CAAC;YAClD,MAAM,eAAe,GAAG,aAAa,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;YAC5D,YAAY,CAAC,MAAM,GAAG,eAAe,CAAC;QACxC,CAAC;QAED,kDAAkD;QAClD,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CACtC,2CAA2C,CAC5C,CAAC;QACF,YAAY,CAAC,MAAM,GAAG,MAAM,eAAe,CACzC,aAAa,EACb,YAAY,CAAC,MAAM,EACnB,mBAAmB,CACpB,CAAC;QAEF,gEAAgE;QAChE,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,8BAA8B,CAAC,CAAC;QAC1E,MAAM,aAAa,GAAG,gBAAgB,CAAC,yBAAyB,CAC9D,YAAY,CAAC,MAAM,CACpB,CAAC;QACF,YAAY,CAAC,MAAM,GAAG,aAAa,CAAC;QAEpC,+BAA+B;QAC/B,8DAA8D;QAC9D,0DAA0D;QAC1D,IAAI,OAAO,CAAC,GAAG,CAAC,0BAA0B,KAAK,MAAM,EAAE,CAAC;YACtD,MAAM,UAAU,GAAG,MAAM,oBAAoB,CAC3C,aAAa,EACb,YAAY,CAAC,MAAiC,EAC9C,KAAK,CACN,CAAC;YACF,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;gBACxB,MAAM,YAAY,GAAG,UAAU,CAAC,KAAK,IAAI,mBAAmB,CAAC;gBAC7D,MAAM,IAAI,wBAAwB,CAAC,YAAY,EAAE,SAAS,CAAC,UAAU,EAAE;oBACrE,UAAU,EAAE,iDAAiD;oBAC7D,KAAK,EAAE,SAAS;oBAChB,KAAK,EAAE,SAAS,EAAE,0CAA0C;iBAC7D,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,IAAI,aAA0B,CAAC;QAE/B,QAAQ,aAAa,EAAE,CAAC;YACtB,KAAK,qBAAqB,CAAC,SAAS,CAAC,CAAC,CAAC;gBACrC,MAAM,EAAE,qBAAqB,EAAE,GAAG,MAAM,MAAM,CAC5C,8CAA8C,CAC/C,CAAC;gBACF,MAAM,QAAQ,GAAG,IAAI,qBAAqB,EAAE,CAAC;gBAC7C,aAAa,GAAG,MAAM,QAAQ,CAAC,MAAM,CACnC,SAAS,EACT,YAAY,CAAC,MAAM,EACnB,aAAa,CACd,CAAC;gBACF,MAAM;YACR,CAAC;YACD,KAAK,qBAAqB,CAAC,KAAK,CAAC,CAAC,CAAC;gBACjC,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CACzC,2CAA2C,CAC5C,CAAC;gBACF,MAAM,QAAQ,GAAG,IAAI,kBAAkB,EAAE,CAAC;gBAC1C,aAAa,GAAG,MAAM,QAAQ,CAAC,MAAM,CACnC,SAAS,EACT,YAAY,CAAC,MAAM,EACnB,aAAa,CACd,CAAC;gBACF,MAAM;YACR,CAAC;YACD,KAAK,qBAAqB,CAAC,MAAM,CAAC,CAAC,CAAC;gBAClC,MAAM,EAAE,oBAAoB,EAAE,GAAG,MAAM,MAAM,CAC3C,6CAA6C,CAC9C,CAAC;gBACF,MAAM,QAAQ,GAAG,IAAI,oBAAoB,EAAE,CAAC;gBAC5C,aAAa,GAAG,MAAM,QAAQ,CAAC,MAAM,CACnC,SAAS,EACT,YAAY,CAAC,MAAM,EACnB,aAAa,CACd,CAAC;gBACF,MAAM;YACR,CAAC;YACD,KAAK,qBAAqB,CAAC,OAAO,CAAC;YACnC,KAAK,qBAAqB,CAAC,KAAK,CAAC,CAAC,CAAC;gBACjC,MAAM,EAAE,oBAAoB,EAAE,GAAG,MAAM,MAAM,CAC3C,6CAA6C,CAC9C,CAAC;gBACF,MAAM,QAAQ,GAAG,IAAI,oBAAoB,EAAE,CAAC;gBAC5C;;;mBAGG;gBACH,MAAM,iBAAiB,GACrB,CAAC,OAAO,gBAAgB,EAAE,MAAM,KAAK,QAAQ;oBAC3C,CAAC,CAAC,gBAAgB,CAAC,MAAM;oBACzB,CAAC,CAAC,SAAS,CAAC;oBACd,CAAC,OAAO,gBAAgB,EAAE,eAAe,KAAK,QAAQ;wBACpD,CAAC,CAAC,gBAAgB,CAAC,eAAe;wBAClC,CAAC,CAAC,SAAS,CAAC;oBACd,SAAS,CAAC;gBACZ,aAAa,GAAG,MAAM,QAAQ,CAAC,MAAM,CACnC,SAAS,EACT,YAAY,CAAC,MAAM,EACnB,aAAa,EACb,EAAE,UAAU,EAAE,iBAAiB,EAAE,CAClC,CAAC;gBACF,MAAM;YACR,CAAC;YACD,KAAK,qBAAqB,CAAC,KAAK,CAAC,CAAC,CAAC;gBACjC,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CACzC,2CAA2C,CAC5C,CAAC;gBACF,MAAM,QAAQ,GAAG,IAAI,kBAAkB,EAAE,CAAC;gBAC1C,aAAa,GAAG,MAAM,QAAQ,CAAC,MAAM,CACnC,SAAS,EACT,YAAY,CAAC,MAAM,EACnB,aAAa,CACd,CAAC;gBACF,MAAM;YACR,CAAC;YACD,OAAO,CAAC,CAAC,CAAC;gBACR,aAAa,GAAG,MAAM,IAAI,CAAC,6BAA6B,CACtD,aAAkC,EAClC,MAAM,CACP,CAAC;gBACF,MAAM;YACR,CAAC;QACH,CAAC;QAED,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CACzC,gCAAgC,CACjC,CAAC;QACF,MAAM,gBAAgB,GAAG,kBAAkB,CAAC,uBAAuB,CACjE,aAAa,EACb,aAAa,CACd,CAAC;QAEF,sDAAsD;QACtD,mEAAmE;QACnE,8EAA8E;QAC9E,IACE,CAAC,gBAAgB;YACjB,OAAO,CAAC,GAAG,CAAC,yBAAyB,KAAK,OAAO,EACjD,CAAC;YACD,IAAI,CAAC;gBACH,MAAM,YAAY,GAAG,MAAM,gBAAgB,CAAC,sBAAsB,CAChE,aAAa,EACb,SAAS,EACT,aAAa,CACd,CAAC;gBACF,IAAI,YAAY,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACrC,QAAQ,CACN,wBAAwB,EACxB,kCAAkC,aAAa,IAAI,SAAS,GAAG,EAC/D,YAAY,CAAC,QAAQ,CACtB,CAAC;gBACJ,CAAC;gBACD,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC;oBAC3B,qEAAqE;oBACrE,QAAQ,CACN,wBAAwB,EACxB,uCAAuC,EACvC,IAAI,KAAK,CAAC,qBAAqB,CAAC,EAChC;wBACE,aAAa;wBACb,SAAS;wBACT,aAAa,EAAE,YAAY,CAAC,aAAa;qBAC1C,CACF,CAAC;oBAEF,sDAAsD;oBACtD,8DAA8D;oBAC9D,mEAAmE;oBACnE,IAAI,OAAO,CAAC,GAAG,CAAC,uBAAuB,KAAK,MAAM,EAAE,CAAC;wBACnD,MAAM,IAAI,wBAAwB,CAChC,0CAA0C,YAAY,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EACjF,SAAS,CAAC,SAAS,EACnB;4BACE,KAAK,EAAE,oBAAoB;4BAC3B,UAAU,EACR,8EAA8E;yBACjF,CACF,CAAC;oBACJ,CAAC;gBACH,CAAC;YACH,CAAC;YAAC,OAAO,KAAc,EAAE,CAAC;gBACxB,QAAQ,CACN,wBAAwB,EACxB,sCAAsC,EACtC,KAAK,CACN,CAAC;YACJ,CAAC;QACH,CAAC;QAED,OAAO,gBAAgB,CAAC;IAC1B,CAAC;IAEO,MAAM,CAAC,KAAK,CAAC,6BAA6B,CAChD,aAAqB,EACrB,MAA6B;QAE7B,0CAA0C;QAC1C,MAAM,kBAAkB,GAAG,oBAAoB,CAAC,aAAa,CAAC,CAAC;QAC/D,IAAI,kBAAkB,CAAC,SAAS,EAAE,CAAC;YACjC,qCAAqC;YACrC,KAAK,CAAC,wBAAwB,EAAE,yBAAyB,EAAE;gBACzD,IAAI,EAAE,aAAa;gBACnB,EAAE,EAAE,kBAAkB,CAAC,SAAS;aACjC,CAAC,CAAC;YACH,OAAO,IAAI,CAAC,YAAY,CAAC;gBACvB,GAAG,MAAM;gBACT,aAAa,EAAE,kBAAkB,CAAC,SAAS;aAC5C,CAAC,CAAC;QACL,CAAC;QACD,MAAM,IAAI,wBAAwB,CAChC,8BAA8B,aAAa,EAAE,EAC7C,SAAS,CAAC,UAAU,EACpB;YACE,UAAU,EACR,kBAAkB,CAAC,UAAU;gBAC7B,6BAA6B,qBAAqB,EAAE,EAAE;SACzD,CACF,CAAC;IACJ,CAAC;CACF"}
|
|
1
|
+
{"version":3,"file":"UniversalUpdateService.js","sourceRoot":"","sources":["../../src/services/UniversalUpdateService.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AAEH,OAAO,EAAE,qBAAqB,EAAE,MAAM,4CAA4C,CAAC;AAGnF,OAAO,EACL,wBAAwB,EACxB,SAAS,GACV,MAAM,8CAA8C,CAAC;AACtD,OAAO,EAAE,KAAK,EAAqB,MAAM,mBAAmB,CAAC;AAE7D,wDAAwD;AACxD,OAAO,EACL,mBAAmB,GAGpB,MAAM,oCAAoC,CAAC;AAE5C,kBAAkB;AAClB,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AA8BpE,iCAAiC;AACjC,OAAO,EACL,eAAe,EACf,oBAAoB,EACpB,cAAc,EACd,qBAAqB,EACrB,aAAa,GACd,MAAM,mDAAmD,CAAC;AAE3D,8BAA8B;AAC9B,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAEnE,wEAAwE;AAExE,+FAA+F;AAE/F;;;;;;;;;GASG;AACH,MAAM,OAAO,sBAAsB;IACjC;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,0BAA0B,CACrC,MAA6B;QAE7B,sCAAsC;QACtC,MAAM,kBAAkB,GAAG,MAAM,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC;QAChE,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC;YACvD,MAAM,IAAI,wBAAwB,CAChC,8BAA8B,MAAM,CAAC,aAAa,EAAE,EACpD,SAAS,CAAC,UAAU,EACpB;gBACE,KAAK,EAAE,eAAe;gBACtB,UAAU,EAAE,6BAA6B,kBAAkB,CAAC,IAAI,CAC9D,IAAI,CACL,EAAE;aACJ,CACF,CAAC;QACJ,CAAC;QAED,IAAI,CAAC;YACH,OAAO,MAAM,IAAI,CAAC,mCAAmC,CAAC,MAAM,CAAC,CAAC;QAChE,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,yFAAyF;YACzF,IACE,KAAK;gBACL,OAAO,KAAK,KAAK,QAAQ;gBACzB,QAAQ,IAAI,KAAK;gBACjB,MAAM,IAAI,KAAK,EACf,CAAC;gBACD,MAAM,KAAK,CAAC,CAAC,0CAA0C;YACzD,CAAC;YAED,6DAA6D;YAC7D,IACE,KAAK,YAAY,SAAS;gBAC1B,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,qCAAqC,CAAC,EAC7D,CAAC;gBACD,0EAA0E;gBAC1E,MAAM,EAAE,aAAa,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC;gBAC5C,IAAI,aAAa,KAAK,qBAAqB,CAAC,KAAK,EAAE,CAAC;oBAClD,sDAAsD;oBACtD,MAAM,mBAAmB,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;gBACtD,CAAC;YACH,CAAC;YAED,kDAAkD;YAClD,IACE,KAAK,YAAY,KAAK;gBACtB,KAAK,CAAC,OAAO,CAAC,QAAQ,CACpB,4DAA4D,CAC7D,EACD,CAAC;gBACD,MAAM,EAAE,aAAa,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC;gBAC5C,IAAI,aAAa,KAAK,qBAAqB,CAAC,KAAK,EAAE,CAAC;oBAClD,sDAAsD;oBACtD,MAAM,mBAAmB,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;gBACtD,CAAC;YACH,CAAC;YAED,iDAAiD;YACjD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,YAAY,CACvB,MAA6B;QAE7B,sCAAsC;QACtC,MAAM,kBAAkB,GAAG,MAAM,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC;QAChE,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC;YACvD,MAAM,IAAI,wBAAwB,CAChC,8BAA8B,MAAM,CAAC,aAAa,EAAE,EACpD,SAAS,CAAC,UAAU,EACpB;gBACE,KAAK,EAAE,eAAe;gBACtB,UAAU,EAAE,6BAA6B,kBAAkB,CAAC,IAAI,CAC9D,IAAI,CACL,EAAE;aACJ,CACF,CAAC;QACJ,CAAC;QAED,IAAI,CAAC;YACH,OAAO,MAAM,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;QAClD,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,yFAAyF;YACzF,IACE,KAAK;gBACL,OAAO,KAAK,KAAK,QAAQ;gBACzB,QAAQ,IAAI,KAAK;gBACjB,MAAM,IAAI,KAAK,EACf,CAAC;gBACD,MAAM,KAAK,CAAC,CAAC,0CAA0C;YACzD,CAAC;YAED,6DAA6D;YAC7D,IACE,KAAK,YAAY,SAAS;gBAC1B,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,qCAAqC,CAAC,EAC7D,CAAC;gBACD,0EAA0E;gBAC1E,MAAM,EAAE,aAAa,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC;gBAC5C,IAAI,aAAa,KAAK,qBAAqB,CAAC,KAAK,EAAE,CAAC;oBAClD,sDAAsD;oBACtD,MAAM,mBAAmB,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;gBACtD,CAAC;YACH,CAAC;YAED,kDAAkD;YAClD,IACE,KAAK,YAAY,KAAK;gBACtB,KAAK,CAAC,OAAO,CAAC,QAAQ,CACpB,4DAA4D,CAC7D,EACD,CAAC;gBACD,MAAM,EAAE,aAAa,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC;gBAC5C,IAAI,aAAa,KAAK,qBAAqB,CAAC,KAAK,EAAE,CAAC;oBAClD,sDAAsD;oBACtD,MAAM,mBAAmB,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;gBACtD,CAAC;YACH,CAAC;YAED,iDAAiD;YACjD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED;;OAEG;IACK,MAAM,CAAC,KAAK,CAAC,mCAAmC,CACtD,MAA6B;QAE7B,MAAM,gBAAgB,GAAmB;YACvC,QAAQ,EAAE,EAAE;YACZ,YAAY,EAAE,EAAE;YAChB,WAAW,EAAE,EAAE;SAChB,CAAC;QAEF,MAAM,EAAE,aAAa,EAAE,SAAS,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC;QAQzD,MAAM,UAAU,GAAI,MAA2B,CAAC,IAAI,CAAC;QACrD,MAAM,gBAAgB,GAAG,CAAC,WAAW,IAAI,UAAU,CAEtC,CAAC;QAEd,8DAA8D;QAC9D;;;;WAIG;QACH,MAAM,GAAG,GACP,gBAAgB,IAAI,OAAO,gBAAgB,KAAK,QAAQ;YACtD,CAAC,CAAC,gBAAgB;YAClB,CAAC,CAAC,EAAE,CAAC;QACT,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC;QAEjC,gFAAgF;QAChF,MAAM,eAAe,GAAG,cAAc,CACpC,aAAa,EACb,MAAiC,CAClC,CAAC;QACF,IAAI,eAAe,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;YAC5D,uDAAuD;YACvD,KAAK,CAAC,wBAAwB,EAAE,2BAA2B,EAAE;gBAC3D,QAAQ,EAAE,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;aAC9C,CAAC,CAAC;QACL,CAAC;QACD,IAAI,eAAe,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3C,gBAAgB,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,WAAW,CAAC,CAAC;YAClE,MAAM,SAAS,GAAG,iBAAiB,CAAC,mBAAmB,CACrD,eAAe,CAAC,WAAW,CAC5B,CAAC;YACF,KAAK,CAAC,wBAAwB,EAAE,oBAAoB,EAAE;gBACpD,WAAW,EAAE,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;aAClC,CAAC,CAAC;QACL,CAAC;QAED,2CAA2C;QAC3C,IAAI,aAAa,KAAK,qBAAqB,CAAC,KAAK,EAAE,CAAC;YAClD,IAAI,CAAC;gBACH,MAAM,EAAE,+BAA+B,EAAE,GAAG,MAAM,MAAM,CACtD,4BAA4B,CAC7B,CAAC;gBAEF,MAAM,cAAc,GAAG,MAAM,+BAA+B,CAC1D,MAAiC,EACjC,KAAK,CAAC,8CAA8C;iBACrD,CAAC;gBAEF,yCAAyC;gBACzC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC;gBAE/C,iDAAiD;gBACjD,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAC;gBAC3D,gBAAgB,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC,WAAW,CAAC,CAAC;gBAEjE,KAAK,CAAC,wBAAwB,EAAE,yBAAyB,EAAE;oBACzD,QAAQ,EAAE,cAAc,CAAC,QAAQ;oBACjC,WAAW,EAAE,cAAc,CAAC,WAAW;iBACxC,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,KAAc,EAAE,CAAC;gBACxB,MAAM,YAAY,GAChB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACzD,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAC5B,4BAA4B,YAAY,EAAE,CAC3C,CAAC;gBACF,KAAK,CAAC,wBAAwB,EAAE,wBAAwB,EAAE;oBACxD,KAAK,EAAE,YAAY;iBACpB,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,oEAAoE;QACpE,kEAAkE;QAClE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAE9D,qCAAqC;QACrC,gBAAgB,CAAC,YAAY,GAAG,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC;QAEpD,6DAA6D;QAC7D,IAAI,OAAO,CAAC,GAAG,CAAC,yBAAyB,KAAK,OAAO,EAAE,CAAC;YACtD,IAAI,CAAC;gBACH,8CAA8C;gBAC9C,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,eAAe,CAClD,aAAa,EACb,MAAiC,CAClC,CAAC;gBACF,MAAM,YAAY,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;gBAC5C,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CACvC,8BAA8B,CAC/B,CAAC;gBACF,MAAM,EAAE,uBAAuB,EAAE,GAAG,MAAM,MAAM,CAC9C,qCAAqC,CACtC,CAAC;gBACF,MAAM,aAAa,GAAG,gBAAgB,CAAC,yBAAyB,CAC9D,YAAY,CAAC,MAAM,CACpB,CAAC;gBAEF,yEAAyE;gBACzE,+EAA+E;gBAC/E,MAAM,YAAY,GAAG,MAAM,uBAAuB,CAAC,iBAAiB,CAClE,aAAa,EACb,SAAS,EACT,aAAa,EACb,gBAAgB,CAAC,YAAY,EAAE,mCAAmC;gBAClE;oBACE,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,uBAAuB,KAAK,MAAM;oBACtD,IAAI,EAAE,KAAK;iBACZ,CACF,CAAC;gBAEF,4DAA4D;gBAC5D,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;gBACzD,gBAAgB,CAAC,iBAAiB,GAAG;oBACnC,QAAQ,EAAE,YAAY,CAAC,QAAQ;oBAC/B,aAAa,EAAE,YAAY,CAAC,aAAa;iBAC1C,CAAC;gBAEF,gEAAgE;gBAChE,IAAI,YAAY,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC1C,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAC5B,GAAG,YAAY,CAAC,aAAa,CAAC,GAAG,CAC/B,CAAC,WAAW,EAAE,EAAE,CAAC,4BAA4B,WAAW,EAAE,CAC3D,CACF,CAAC;gBACJ,CAAC;YACH,CAAC;YAAC,OAAO,KAAc,EAAE,CAAC;gBACxB,MAAM,YAAY,GAChB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACzD,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAC5B,+BAA+B,YAAY,EAAE,CAC9C,CAAC;YACJ,CAAC;QACH,CAAC;QAED,OAAO;YACL,MAAM;YACN,UAAU,EAAE,gBAAgB;SAC7B,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,MAAM,CAAC,KAAK,CAAC,qBAAqB,CACxC,MAA6B,EAC7B,mBAA4B,KAAK;QAEjC,MAAM,EAAE,aAAa,EAAE,SAAS,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC;QAQzD,MAAM,UAAU,GAAI,MAA2B,CAAC,IAAI,CAAC;QACrD,MAAM,gBAAgB,GAAG,CAAC,WAAW,IAAI,UAAU,CAEtC,CAAC;QAEd,8DAA8D;QAC9D;;;;WAIG;QACH,MAAM,GAAG,GACP,gBAAgB,IAAI,OAAO,gBAAgB,KAAK,QAAQ;YACtD,CAAC,CAAC,gBAAgB;YAClB,CAAC,CAAC,EAAE,CAAC;QACT,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC;QAEjC,gFAAgF;QAChF,MAAM,eAAe,GAAG,cAAc,CACpC,aAAa,EACb,MAAiC,CAClC,CAAC;QACF,IAAI,eAAe,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxC,uDAAuD;YACvD,KAAK,CAAC,wBAAwB,EAAE,2BAA2B,EAAE;gBAC3D,QAAQ,EAAE,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;aAC9C,CAAC,CAAC;QACL,CAAC;QACD,IAAI,eAAe,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3C,MAAM,SAAS,GAAG,iBAAiB,CAAC,mBAAmB,CACrD,eAAe,CAAC,WAAW,CAC5B,CAAC;YACF,KAAK,CAAC,wBAAwB,EAAE,oBAAoB,EAAE;gBACpD,WAAW,EAAE,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;aAClC,CAAC,CAAC;QACL,CAAC;QAED,yDAAyD;QACzD,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,8BAA8B,CAAC,CAAC;QAC1E,MAAM,EAAE,WAAW,EAAE,mBAAmB,EAAE,GACxC,MAAM,gBAAgB,CAAC,aAAa,CAAC,aAAa,EAAE,gBAAgB,CAAC,CAAC;QAExE,2DAA2D;QAC3D,MAAM,aAAa,GAAG,MAAM,eAAe,CACzC,aAAa,EACb,MAAiC,EACjC,mBAAmB,CACpB,CAAC;QACF,IAAI,aAAa,CAAC,MAAM,IAAI,aAAa,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5D,MAAM,IAAI,wBAAwB,CAChC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAC9B,SAAS,CAAC,UAAU,EACpB;gBACE,KAAK,EAAE,aAAa;gBACpB,UAAU,EACR,wGAAwG;gBAC1G,KAAK,EAAE,SAAS,EAAE,uCAAuC;aAC1D,CACF,CAAC;QACJ,CAAC;QAED,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,aAAa,CAAC;QACvD,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxB,KAAK,CAAC,wBAAwB,EAAE,wBAAwB,EAAE;gBACxD,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;aAC9B,CAAC,CAAC;QACL,CAAC;QAED,uCAAuC;QACvC,MAAM,YAAY,GAAwC;YACxD,MAAM,EAAE,UAAU;SACnB,CAAC;QAEF,yFAAyF;QACzF,IAAI,aAAa,KAAK,qBAAqB,CAAC,KAAK,EAAE,CAAC;YAClD,MAAM,eAAe,GAAG,aAAa,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;YAC5D,YAAY,CAAC,MAAM,GAAG,eAAe,CAAC;QACxC,CAAC;QAED,kDAAkD;QAClD,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CACtC,2CAA2C,CAC5C,CAAC;QACF,YAAY,CAAC,MAAM,GAAG,MAAM,eAAe,CACzC,aAAa,EACb,YAAY,CAAC,MAAM,EACnB,mBAAmB,CACpB,CAAC;QAEF,gEAAgE;QAChE,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,8BAA8B,CAAC,CAAC;QAC1E,MAAM,aAAa,GAAG,gBAAgB,CAAC,yBAAyB,CAC9D,YAAY,CAAC,MAAM,CACpB,CAAC;QACF,YAAY,CAAC,MAAM,GAAG,aAAa,CAAC;QAEpC,+BAA+B;QAC/B,8DAA8D;QAC9D,0DAA0D;QAC1D,IAAI,OAAO,CAAC,GAAG,CAAC,0BAA0B,KAAK,MAAM,EAAE,CAAC;YACtD,MAAM,UAAU,GAAG,MAAM,oBAAoB,CAC3C,aAAa,EACb,YAAY,CAAC,MAAiC,EAC9C,KAAK,CACN,CAAC;YACF,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;gBACxB,MAAM,YAAY,GAAG,UAAU,CAAC,KAAK,IAAI,mBAAmB,CAAC;gBAC7D,MAAM,IAAI,wBAAwB,CAAC,YAAY,EAAE,SAAS,CAAC,UAAU,EAAE;oBACrE,UAAU,EAAE,iDAAiD;oBAC7D,KAAK,EAAE,SAAS;oBAChB,KAAK,EAAE,SAAS,EAAE,0CAA0C;iBAC7D,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,gEAAgE;QAChE,yFAAyF;QACzF,IAAI,CAAC;YACH,MAAM,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,GAAG,MAAM,MAAM,CACnE,8BAA8B,CAC/B,CAAC;YAEF,8CAA8C;YAC9C,IACE,qBAAqB,CACnB,YAAY,CAAC,MAAiC,EAC9C,aAAa,CACd,EACD,CAAC;gBACD,MAAM,eAAe,GAAG,MAAM,qBAAqB,CACjD,YAAY,CAAC,MAAiC,EAC9C;oBACE,YAAY,EAAE,aAAa;oBAC3B,SAAS,EAAE,QAAQ;oBACnB,QAAQ,EAAE,SAAS;oBACnB,qDAAqD;oBACrD,iBAAiB,EAAE,WAAW;iBAC/B,CACF,CAAC;gBAEF,YAAY,CAAC,MAAM,GAAG,eAAe,CAAC,IAAI,CAAC;gBAE3C,oCAAoC;gBACpC,IAAI,eAAe,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC/C,KAAK,CAAC,wBAAwB,EAAE,+BAA+B,EAAE;wBAC/D,eAAe,EAAE,eAAe,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;4BAC3D,KAAK,EAAE,CAAC,CAAC,KAAK;4BACd,IAAI,EAAE,CAAC,CAAC,IAAI;yBACb,CAAC,CAAC;qBACJ,CAAC,CAAC;gBACL,CAAC;gBAED,IAAI,eAAe,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACxC,KAAK,CAAC,wBAAwB,EAAE,+BAA+B,EAAE;wBAC/D,QAAQ,EAAE,eAAe,CAAC,QAAQ;qBACnC,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,cAAc,EAAE,CAAC;YACxB,6EAA6E;YAC7E,IAAI,cAAc,YAAY,KAAK,EAAE,CAAC;gBACpC,MAAM,IAAI,wBAAwB,CAChC,cAAc,CAAC,OAAO,EACtB,SAAS,CAAC,UAAU,EACpB;oBACE,UAAU,EACR,4GAA4G;oBAC9G,KAAK,EAAE,SAAS;oBAChB,KAAK,EAAE,SAAS;iBACjB,CACF,CAAC;YACJ,CAAC;YACD,MAAM,cAAc,CAAC;QACvB,CAAC;QAED,yEAAyE;QACzE,mEAAmE;QACnE,MAAM,mBAAmB,GAAG,EAAE,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC;QAEvD,2DAA2D;QAC3D,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CACzC,gCAAgC,CACjC,CAAC;QAEF,0EAA0E;QAC1E,gDAAgD;QAChD,MAAM,UAAU,GAAG,gBAAgB,CAAC,iBAAiB,CACnD,aAAa,EACb,gBAAgB,CACjB,CAAC;QAEF,MAAM,aAAa,GAAG,MAAM,kBAAkB,CAAC,aAAa,CAAC;YAC3D,YAAY,EAAE,aAAa;YAC3B,QAAQ,EAAE,SAAS;YACnB,eAAe,EAAE,YAAY,CAAC,MAAM;YACpC,UAAU;SACX,CAAC,CAAC;QAEH,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CACzC,gCAAgC,CACjC,CAAC;QACF,MAAM,gBAAgB,GAAG,kBAAkB,CAAC,uBAAuB,CACjE,aAAa,EACb,aAAa,CACd,CAAC;QAEF,2DAA2D;QAC3D,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACtB,MAAM,EAAE,uBAAuB,EAAE,GAAG,MAAM,MAAM,CAC9C,qCAAqC,CACtC,CAAC;YACF,MAAM,uBAAuB,CAAC,iBAAiB,CAC7C,aAAa,EACb,SAAS,EACT,mBAAmB,EACnB,gBAAgB,CAAC,MAAM,IAAI,EAAE,EAC7B,EAAE,MAAM,EAAE,KAAK,EAAE,CAClB,CAAC;QACJ,CAAC;QAED,OAAO,gBAAgB,CAAC;IAC1B,CAAC;IAEO,MAAM,CAAC,KAAK,CAAC,6BAA6B,CAChD,aAAqB,EACrB,MAA6B;QAE7B,0CAA0C;QAC1C,MAAM,kBAAkB,GAAG,oBAAoB,CAAC,aAAa,CAAC,CAAC;QAC/D,IAAI,kBAAkB,CAAC,SAAS,EAAE,CAAC;YACjC,qCAAqC;YACrC,KAAK,CAAC,wBAAwB,EAAE,yBAAyB,EAAE;gBACzD,IAAI,EAAE,aAAa;gBACnB,EAAE,EAAE,kBAAkB,CAAC,SAAS;aACjC,CAAC,CAAC;YACH,OAAO,IAAI,CAAC,YAAY,CAAC;gBACvB,GAAG,MAAM;gBACT,aAAa,EAAE,kBAAkB,CAAC,SAAS;aAC5C,CAAC,CAAC;QACL,CAAC;QACD,MAAM,IAAI,wBAAwB,CAChC,8BAA8B,aAAa,EAAE,EAC7C,SAAS,CAAC,UAAU,EACpB;YACE,UAAU,EACR,kBAAkB,CAAC,UAAU;gBAC7B,6BAA6B,qBAAqB,EAAE,EAAE;SACzD,CACF,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../../src/services/create/factory.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAKtE;;;GAGG;AACH,wBAAgB,iBAAiB,IAAI,OAAO,CAyB3C;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,IAAI,aAAa,
|
|
1
|
+
{"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../../src/services/create/factory.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAKtE;;;GAGG;AACH,wBAAgB,iBAAiB,IAAI,OAAO,CAyB3C;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,IAAI,aAAa,CAkBhD;AAED;;GAEG;AACH,qBAAa,wBAAyB,YAAW,oBAAoB;IACnE,gBAAgB,IAAI,aAAa;IAIjC,iBAAiB,IAAI,OAAO;CAG7B;AAED;;GAEG;AACH,eAAO,MAAM,oBAAoB,0BAAiC,CAAC"}
|
|
@@ -48,7 +48,8 @@ export function getCreateService() {
|
|
|
48
48
|
return new MockCreateService();
|
|
49
49
|
}
|
|
50
50
|
// Fail fast if real API requested but no credentials available
|
|
51
|
-
|
|
51
|
+
// Issue #928: Support both ATTIO_API_KEY and ATTIO_ACCESS_TOKEN (OAuth alternative)
|
|
52
|
+
if (!process.env.ATTIO_API_KEY && !process.env.ATTIO_ACCESS_TOKEN) {
|
|
52
53
|
throw new Error('ATTIO_API_KEY is required for real API calls. Set USE_MOCK_DATA=true to use mock data instead.');
|
|
53
54
|
}
|
|
54
55
|
debug('CreateServiceFactory', 'Selected AttioCreateService');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"factory.js","sourceRoot":"","sources":["../../../src/services/create/factory.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE9C;;;GAGG;AACH,MAAM,UAAU,iBAAiB;IAC/B,uCAAuC;IACvC,IAAI,OAAO,CAAC,GAAG,CAAC,aAAa,KAAK,MAAM;QAAE,OAAO,IAAI,CAAC;IACtD,IAAI,OAAO,CAAC,GAAG,CAAC,aAAa,KAAK,OAAO;QAAE,OAAO,KAAK,CAAC;IAExD,kDAAkD;IAClD,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,MAAM;QAAE,OAAO,KAAK,CAAC;IAElD,+DAA+D;IAC/D,MAAM,MAAM,GACV,OAAO,CAAC,GAAG,CAAC,YAAY,KAAK,MAAM;QACnC,OAAO,CAAC,GAAG,CAAC,gBAAgB,KAAK,MAAM;QACvC,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,MAAM,CAAC;IAElC,mDAAmD;IACnD,KAAK,CAAC,sBAAsB,EAAE,uBAAuB,EAAE;QACrD,MAAM;QACN,aAAa,EAAE,OAAO,CAAC,GAAG,CAAC,aAAa;QACxC,YAAY,EAAE,OAAO,CAAC,GAAG,CAAC,YAAY;QACtC,gBAAgB,EAAE,OAAO,CAAC,GAAG,CAAC,gBAAgB;QAC9C,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ;QAC9B,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ;KAC/B,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB;IAC9B,MAAM,QAAQ,GAAG,iBAAiB,EAAE,CAAC;IAErC,IAAI,QAAQ,EAAE,CAAC;QACb,KAAK,CAAC,sBAAsB,EAAE,4BAA4B,CAAC,CAAC;QAC5D,OAAO,IAAI,iBAAiB,EAAE,CAAC;IACjC,CAAC;IAED,+DAA+D;IAC/D,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"factory.js","sourceRoot":"","sources":["../../../src/services/create/factory.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE9C;;;GAGG;AACH,MAAM,UAAU,iBAAiB;IAC/B,uCAAuC;IACvC,IAAI,OAAO,CAAC,GAAG,CAAC,aAAa,KAAK,MAAM;QAAE,OAAO,IAAI,CAAC;IACtD,IAAI,OAAO,CAAC,GAAG,CAAC,aAAa,KAAK,OAAO;QAAE,OAAO,KAAK,CAAC;IAExD,kDAAkD;IAClD,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,MAAM;QAAE,OAAO,KAAK,CAAC;IAElD,+DAA+D;IAC/D,MAAM,MAAM,GACV,OAAO,CAAC,GAAG,CAAC,YAAY,KAAK,MAAM;QACnC,OAAO,CAAC,GAAG,CAAC,gBAAgB,KAAK,MAAM;QACvC,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,MAAM,CAAC;IAElC,mDAAmD;IACnD,KAAK,CAAC,sBAAsB,EAAE,uBAAuB,EAAE;QACrD,MAAM;QACN,aAAa,EAAE,OAAO,CAAC,GAAG,CAAC,aAAa;QACxC,YAAY,EAAE,OAAO,CAAC,GAAG,CAAC,YAAY;QACtC,gBAAgB,EAAE,OAAO,CAAC,GAAG,CAAC,gBAAgB;QAC9C,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ;QAC9B,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ;KAC/B,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB;IAC9B,MAAM,QAAQ,GAAG,iBAAiB,EAAE,CAAC;IAErC,IAAI,QAAQ,EAAE,CAAC;QACb,KAAK,CAAC,sBAAsB,EAAE,4BAA4B,CAAC,CAAC;QAC5D,OAAO,IAAI,iBAAiB,EAAE,CAAC;IACjC,CAAC;IAED,+DAA+D;IAC/D,oFAAoF;IACpF,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,EAAE,CAAC;QAClE,MAAM,IAAI,KAAK,CACb,gGAAgG,CACjG,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,sBAAsB,EAAE,6BAA6B,CAAC,CAAC;IAC7D,OAAO,IAAI,kBAAkB,EAAE,CAAC;AAClC,CAAC;AAED;;GAEG;AACH,MAAM,OAAO,wBAAwB;IACnC,gBAAgB;QACd,OAAO,gBAAgB,EAAE,CAAC;IAC5B,CAAC;IAED,iBAAiB;QACf,OAAO,iBAAiB,EAAE,CAAC;IAC7B,CAAC;CACF;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,IAAI,wBAAwB,EAAE,CAAC"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Service for retrieving attribute options (select, multi-select, status).
|
|
3
|
+
* Provides a unified interface for fetching valid options from Attio.
|
|
4
|
+
*/
|
|
5
|
+
import type { AttioSelectOption, AttioStatusOption } from '../../api/types.js';
|
|
6
|
+
/**
|
|
7
|
+
* Result structure for attribute options
|
|
8
|
+
*/
|
|
9
|
+
export interface AttributeOptionsResult {
|
|
10
|
+
options: (AttioSelectOption | AttioStatusOption)[];
|
|
11
|
+
attributeType: 'select' | 'status';
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Service for fetching attribute options from Attio.
|
|
15
|
+
* Handles both select/multi-select and status attribute types.
|
|
16
|
+
*/
|
|
17
|
+
export declare class AttributeOptionsService {
|
|
18
|
+
/**
|
|
19
|
+
* Gets options for any option-based attribute (select, multi-select, status).
|
|
20
|
+
* Auto-detects attribute type by trying select first, then status.
|
|
21
|
+
*
|
|
22
|
+
* @param objectSlug - The object slug (e.g., "companies", "people", "deals")
|
|
23
|
+
* @param attributeSlug - The attribute slug (e.g., "channel", "stage")
|
|
24
|
+
* @param showArchived - Whether to include archived options
|
|
25
|
+
* @returns Options with attribute type information
|
|
26
|
+
*/
|
|
27
|
+
static getOptions(objectSlug: string, attributeSlug: string, showArchived?: boolean): Promise<AttributeOptionsResult>;
|
|
28
|
+
/**
|
|
29
|
+
* Gets options for a select attribute on a list.
|
|
30
|
+
*
|
|
31
|
+
* @param listId - The list ID or slug
|
|
32
|
+
* @param attributeSlug - The attribute slug
|
|
33
|
+
* @param showArchived - Whether to include archived options
|
|
34
|
+
* @returns Options with attribute type information
|
|
35
|
+
*/
|
|
36
|
+
static getListOptions(listId: string, attributeSlug: string, showArchived?: boolean): Promise<AttributeOptionsResult>;
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=AttributeOptionsService.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AttributeOptionsService.d.ts","sourceRoot":"","sources":["../../../src/services/metadata/AttributeOptionsService.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAOH,OAAO,KAAK,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAG3E;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,OAAO,EAAE,CAAC,iBAAiB,GAAG,iBAAiB,CAAC,EAAE,CAAC;IACnD,aAAa,EAAE,QAAQ,GAAG,QAAQ,CAAC;CACpC;AAED;;;GAGG;AACH,qBAAa,uBAAuB;IAClC;;;;;;;;OAQG;WACU,UAAU,CACrB,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,MAAM,EACrB,YAAY,CAAC,EAAE,OAAO,GACrB,OAAO,CAAC,sBAAsB,CAAC;IA6ElC;;;;;;;OAOG;WACU,cAAc,CACzB,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,MAAM,EACrB,YAAY,CAAC,EAAE,OAAO,GACrB,OAAO,CAAC,sBAAsB,CAAC;CAqBnC"}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Service for retrieving attribute options (select, multi-select, status).
|
|
3
|
+
* Provides a unified interface for fetching valid options from Attio.
|
|
4
|
+
*/
|
|
5
|
+
import { getSelectOptions, getListSelectOptions, getStatusOptions, } from '../../api/attio-client.js';
|
|
6
|
+
import { error as logError } from '../../utils/logger.js';
|
|
7
|
+
/**
|
|
8
|
+
* Service for fetching attribute options from Attio.
|
|
9
|
+
* Handles both select/multi-select and status attribute types.
|
|
10
|
+
*/
|
|
11
|
+
export class AttributeOptionsService {
|
|
12
|
+
/**
|
|
13
|
+
* Gets options for any option-based attribute (select, multi-select, status).
|
|
14
|
+
* Auto-detects attribute type by trying select first, then status.
|
|
15
|
+
*
|
|
16
|
+
* @param objectSlug - The object slug (e.g., "companies", "people", "deals")
|
|
17
|
+
* @param attributeSlug - The attribute slug (e.g., "channel", "stage")
|
|
18
|
+
* @param showArchived - Whether to include archived options
|
|
19
|
+
* @returns Options with attribute type information
|
|
20
|
+
*/
|
|
21
|
+
static async getOptions(objectSlug, attributeSlug, showArchived) {
|
|
22
|
+
let selectOptions = [];
|
|
23
|
+
let selectError = null;
|
|
24
|
+
let statusError = null;
|
|
25
|
+
// Try select endpoint first (covers select and multi-select)
|
|
26
|
+
try {
|
|
27
|
+
selectOptions = await getSelectOptions(objectSlug, attributeSlug, showArchived);
|
|
28
|
+
}
|
|
29
|
+
catch (err) {
|
|
30
|
+
selectError = err;
|
|
31
|
+
}
|
|
32
|
+
// Select succeeded with results → return as select
|
|
33
|
+
if (!selectError && selectOptions.length > 0) {
|
|
34
|
+
return {
|
|
35
|
+
options: selectOptions,
|
|
36
|
+
attributeType: 'select',
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
// Select empty or failed → try status endpoint
|
|
40
|
+
// This handles status attributes like deals.stage where /options returns []
|
|
41
|
+
// but /statuses returns actual values (Issue #987)
|
|
42
|
+
try {
|
|
43
|
+
const statuses = await getStatusOptions(objectSlug, attributeSlug, showArchived);
|
|
44
|
+
// Status endpoint succeeded → treat as status type (even if empty)
|
|
45
|
+
return {
|
|
46
|
+
options: statuses,
|
|
47
|
+
attributeType: 'status',
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
catch (err) {
|
|
51
|
+
statusError = err;
|
|
52
|
+
logError('AttributeOptionsService', `Status endpoint failed for ${objectSlug}.${attributeSlug}`, err, { objectSlug, attributeSlug });
|
|
53
|
+
}
|
|
54
|
+
// Status failed but select succeeded with empty → return empty select
|
|
55
|
+
// (legitimate case for unconfigured select attributes)
|
|
56
|
+
if (!selectError) {
|
|
57
|
+
return {
|
|
58
|
+
options: selectOptions,
|
|
59
|
+
attributeType: 'select',
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
// Both failed → throw with detailed error context
|
|
63
|
+
const selectMsg = selectError instanceof Error ? selectError.message : String(selectError);
|
|
64
|
+
const statusMsg = statusError instanceof Error ? statusError.message : String(statusError);
|
|
65
|
+
logError('AttributeOptionsService', `Failed to get options for ${objectSlug}.${attributeSlug}`, selectError instanceof Error ? selectError : new Error(selectMsg), { selectError: selectMsg, statusError: statusMsg });
|
|
66
|
+
throw new Error(`Attribute "${attributeSlug}" on "${objectSlug}" does not support options. ` +
|
|
67
|
+
`This may not be a select, multi-select, or status attribute. ` +
|
|
68
|
+
`Select error: ${selectMsg}; Status error: ${statusMsg}`);
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Gets options for a select attribute on a list.
|
|
72
|
+
*
|
|
73
|
+
* @param listId - The list ID or slug
|
|
74
|
+
* @param attributeSlug - The attribute slug
|
|
75
|
+
* @param showArchived - Whether to include archived options
|
|
76
|
+
* @returns Options with attribute type information
|
|
77
|
+
*/
|
|
78
|
+
static async getListOptions(listId, attributeSlug, showArchived) {
|
|
79
|
+
try {
|
|
80
|
+
const options = await getListSelectOptions(listId, attributeSlug, showArchived);
|
|
81
|
+
return {
|
|
82
|
+
options,
|
|
83
|
+
attributeType: 'select',
|
|
84
|
+
};
|
|
85
|
+
}
|
|
86
|
+
catch (err) {
|
|
87
|
+
logError('AttributeOptionsService', `Failed to get list options for ${listId}.${attributeSlug}`, err, { listId, attributeSlug });
|
|
88
|
+
throw err;
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
//# sourceMappingURL=AttributeOptionsService.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AttributeOptionsService.js","sourceRoot":"","sources":["../../../src/services/metadata/AttributeOptionsService.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,4 +7,5 @@ export { DefaultMetadataErrorService } from './MetadataErrorService.js';
|
|
|
7
7
|
export { InMemoryMetadataMetricsService } from './MetadataMetricsService.js';
|
|
8
8
|
export { DefaultMetadataRecordService } from './MetadataRecordService.js';
|
|
9
9
|
export { DefaultMetadataTransformService } from './MetadataTransformService.js';
|
|
10
|
+
export { AttributeOptionsService, type AttributeOptionsResult, } from './AttributeOptionsService.js';
|
|
10
11
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/metadata/index.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAEvD,wBAAgB,6BAA6B,IAAI,oBAAoB,CAoBpE;AAED,cAAc,YAAY,CAAC;AAC3B,OAAO,EAAE,2BAA2B,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,EAAE,+BAA+B,EAAE,MAAM,+BAA+B,CAAC;AAChF,OAAO,EAAE,2BAA2B,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,EAAE,8BAA8B,EAAE,MAAM,6BAA6B,CAAC;AAC7E,OAAO,EAAE,4BAA4B,EAAE,MAAM,4BAA4B,CAAC;AAC1E,OAAO,EAAE,+BAA+B,EAAE,MAAM,+BAA+B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/metadata/index.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAEvD,wBAAgB,6BAA6B,IAAI,oBAAoB,CAoBpE;AAED,cAAc,YAAY,CAAC;AAC3B,OAAO,EAAE,2BAA2B,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,EAAE,+BAA+B,EAAE,MAAM,+BAA+B,CAAC;AAChF,OAAO,EAAE,2BAA2B,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,EAAE,8BAA8B,EAAE,MAAM,6BAA6B,CAAC;AAC7E,OAAO,EAAE,4BAA4B,EAAE,MAAM,4BAA4B,CAAC;AAC1E,OAAO,EAAE,+BAA+B,EAAE,MAAM,+BAA+B,CAAC;AAChF,OAAO,EACL,uBAAuB,EACvB,KAAK,sBAAsB,GAC5B,MAAM,8BAA8B,CAAC"}
|
|
@@ -26,4 +26,5 @@ export { DefaultMetadataErrorService } from './MetadataErrorService.js';
|
|
|
26
26
|
export { InMemoryMetadataMetricsService } from './MetadataMetricsService.js';
|
|
27
27
|
export { DefaultMetadataRecordService } from './MetadataRecordService.js';
|
|
28
28
|
export { DefaultMetadataTransformService } from './MetadataTransformService.js';
|
|
29
|
+
export { AttributeOptionsService, } from './AttributeOptionsService.js';
|
|
29
30
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/services/metadata/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,EAAE,+BAA+B,EAAE,MAAM,+BAA+B,CAAC;AAChF,OAAO,EAAE,2BAA2B,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,EAAE,8BAA8B,EAAE,MAAM,6BAA6B,CAAC;AAC7E,OAAO,EAAE,4BAA4B,EAAE,MAAM,4BAA4B,CAAC;AAC1E,OAAO,EAAE,+BAA+B,EAAE,MAAM,+BAA+B,CAAC;AAGhF,MAAM,UAAU,6BAA6B;IAC3C,MAAM,YAAY,GAAG,IAAI,2BAA2B,EAAE,CAAC;IACvD,MAAM,cAAc,GAAG,IAAI,8BAA8B,EAAE,CAAC;IAC5D,MAAM,YAAY,GAAG,IAAI,2BAA2B,EAAE,CAAC;IACvD,MAAM,gBAAgB,GAAG,IAAI,+BAA+B,EAAE,CAAC;IAC/D,MAAM,gBAAgB,GAAG,IAAI,+BAA+B,CAC1D,YAAY,EACZ,cAAc,EACd,gBAAgB,EAChB,YAAY,CACb,CAAC;IACF,MAAM,aAAa,GAAG,IAAI,4BAA4B,CAAC,YAAY,CAAC,CAAC;IAErE,OAAO;QACL,YAAY;QACZ,gBAAgB;QAChB,aAAa;QACb,gBAAgB;QAChB,cAAc;KACf,CAAC;AACJ,CAAC;AAED,cAAc,YAAY,CAAC;AAC3B,OAAO,EAAE,2BAA2B,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,EAAE,+BAA+B,EAAE,MAAM,+BAA+B,CAAC;AAChF,OAAO,EAAE,2BAA2B,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,EAAE,8BAA8B,EAAE,MAAM,6BAA6B,CAAC;AAC7E,OAAO,EAAE,4BAA4B,EAAE,MAAM,4BAA4B,CAAC;AAC1E,OAAO,EAAE,+BAA+B,EAAE,MAAM,+BAA+B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/services/metadata/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,EAAE,+BAA+B,EAAE,MAAM,+BAA+B,CAAC;AAChF,OAAO,EAAE,2BAA2B,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,EAAE,8BAA8B,EAAE,MAAM,6BAA6B,CAAC;AAC7E,OAAO,EAAE,4BAA4B,EAAE,MAAM,4BAA4B,CAAC;AAC1E,OAAO,EAAE,+BAA+B,EAAE,MAAM,+BAA+B,CAAC;AAGhF,MAAM,UAAU,6BAA6B;IAC3C,MAAM,YAAY,GAAG,IAAI,2BAA2B,EAAE,CAAC;IACvD,MAAM,cAAc,GAAG,IAAI,8BAA8B,EAAE,CAAC;IAC5D,MAAM,YAAY,GAAG,IAAI,2BAA2B,EAAE,CAAC;IACvD,MAAM,gBAAgB,GAAG,IAAI,+BAA+B,EAAE,CAAC;IAC/D,MAAM,gBAAgB,GAAG,IAAI,+BAA+B,CAC1D,YAAY,EACZ,cAAc,EACd,gBAAgB,EAChB,YAAY,CACb,CAAC;IACF,MAAM,aAAa,GAAG,IAAI,4BAA4B,CAAC,YAAY,CAAC,CAAC;IAErE,OAAO;QACL,YAAY;QACZ,gBAAgB;QAChB,aAAa;QACb,gBAAgB;QAChB,cAAc;KACf,CAAC;AACJ,CAAC;AAED,cAAc,YAAY,CAAC;AAC3B,OAAO,EAAE,2BAA2B,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,EAAE,+BAA+B,EAAE,MAAM,+BAA+B,CAAC;AAChF,OAAO,EAAE,2BAA2B,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,EAAE,8BAA8B,EAAE,MAAM,6BAA6B,CAAC;AAC7E,OAAO,EAAE,4BAA4B,EAAE,MAAM,4BAA4B,CAAC;AAC1E,OAAO,EAAE,+BAA+B,EAAE,MAAM,+BAA+B,CAAC;AAChF,OAAO,EACL,uBAAuB,GAExB,MAAM,8BAA8B,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* QueryApiService - Attio Query API operations for advanced search
|
|
3
|
+
*
|
|
4
|
+
* Issue #935: Extracted from UniversalSearchService.ts to reduce file size
|
|
5
|
+
* Handles relationship, timeframe, and content searches using the Query API
|
|
6
|
+
*/
|
|
7
|
+
import { AttioRecord } from '../../types/attio.js';
|
|
8
|
+
import { UniversalResourceType } from '../../handlers/tool-configs/universal/types.js';
|
|
9
|
+
import { TimeframeQuery } from '../../utils/filters/types.js';
|
|
10
|
+
/**
|
|
11
|
+
* Query API Service for advanced search operations
|
|
12
|
+
*/
|
|
13
|
+
export declare class QueryApiService {
|
|
14
|
+
/**
|
|
15
|
+
* Search records by relationship to another record
|
|
16
|
+
*/
|
|
17
|
+
static searchByRelationship(sourceResourceType: UniversalResourceType, targetResourceType: UniversalResourceType, targetRecordId: string, limit?: number, offset?: number): Promise<AttioRecord[]>;
|
|
18
|
+
/**
|
|
19
|
+
* Search records within a specific timeframe
|
|
20
|
+
*/
|
|
21
|
+
static searchByTimeframe(resourceType: UniversalResourceType, timeframeConfig: TimeframeQuery, limit?: number, offset?: number): Promise<AttioRecord[]>;
|
|
22
|
+
/**
|
|
23
|
+
* Search records by content across multiple fields
|
|
24
|
+
*/
|
|
25
|
+
static searchByContent(resourceType: UniversalResourceType, query: string, searchFields?: string[], useOrLogic?: boolean, limit?: number, offset?: number): Promise<AttioRecord[]>;
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=QueryApiService.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"QueryApiService.d.ts","sourceRoot":"","sources":["../../../src/services/search/QueryApiService.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,qBAAqB,EAAE,MAAM,4CAA4C,CAAC;AAgBnF,OAAO,EAAqB,cAAc,EAAE,MAAM,0BAA0B,CAAC;AA6D7E;;GAEG;AACH,qBAAa,eAAe;IAC1B;;OAEG;WACU,oBAAoB,CAC/B,kBAAkB,EAAE,qBAAqB,EACzC,kBAAkB,EAAE,qBAAqB,EACzC,cAAc,EAAE,MAAM,EACtB,KAAK,CAAC,EAAE,MAAM,EACd,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,WAAW,EAAE,CAAC;IA+BzB;;OAEG;WACU,iBAAiB,CAC5B,YAAY,EAAE,qBAAqB,EACnC,eAAe,EAAE,cAAc,EAC/B,KAAK,CAAC,EAAE,MAAM,EACd,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,WAAW,EAAE,CAAC;IAuBzB;;OAEG;WACU,eAAe,CAC1B,YAAY,EAAE,qBAAqB,EACnC,KAAK,EAAE,MAAM,EACb,YAAY,GAAE,MAAM,EAAO,EAC3B,UAAU,GAAE,OAAc,EAC1B,KAAK,CAAC,EAAE,MAAM,EACd,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,WAAW,EAAE,CAAC;CAqC1B"}
|