@kontur.candy/tools 2.210.1-cgroupv2.0 → 2.210.1-cgroupv2.1
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/distr/Common/AsyncUtils.js +18 -0
- package/distr/Common/AsyncUtils.js.map +1 -0
- package/distr/Common/AutoValidationUtils.js +8 -0
- package/distr/Common/AutoValidationUtils.js.map +1 -0
- package/distr/Common/CandyApiClient/CandyApiClient.js +578 -0
- package/distr/Common/CandyApiClient/CandyApiClient.js.map +1 -0
- package/distr/Common/CandyApiClient/CandyApiClientContext.js +18 -0
- package/distr/Common/CandyApiClient/CandyApiClientContext.js.map +1 -0
- package/distr/Common/CandyApiClient/ClientDraftInfo/ClientDraftInfoResponse.js +6 -0
- package/distr/Common/CandyApiClient/ClientDraftInfo/ClientDraftInfoResponse.js.map +1 -0
- package/distr/Common/CandyApiClient/ClientDraftInfo/FnsFormInfo.js +6 -0
- package/distr/Common/CandyApiClient/ClientDraftInfo/FnsFormInfo.js.map +1 -0
- package/distr/Common/CandyApiClient/ClientDraftInfo/GetClientDraftInfoUrl.js +12 -0
- package/distr/Common/CandyApiClient/ClientDraftInfo/GetClientDraftInfoUrl.js.map +1 -0
- package/distr/Common/CandyApiClient/ClientDraftInfo/PrintInfo.js +6 -0
- package/distr/Common/CandyApiClient/ClientDraftInfo/PrintInfo.js.map +1 -0
- package/distr/Common/CandyApiClient/DigestApiClient/Decorators/DigestApiClientWithCache.js +33 -0
- package/distr/Common/CandyApiClient/DigestApiClient/Decorators/DigestApiClientWithCache.js.map +1 -0
- package/distr/Common/CandyApiClient/DigestApiClient/Decorators/DigestApiClientWithDebouncedBatching.js +35 -0
- package/distr/Common/CandyApiClient/DigestApiClient/Decorators/DigestApiClientWithDebouncedBatching.js.map +1 -0
- package/distr/Common/CandyApiClient/DigestApiClient/DigestApiClient.js +20 -0
- package/distr/Common/CandyApiClient/DigestApiClient/DigestApiClient.js.map +1 -0
- package/distr/Common/CandyApiClient/DigestApiClient/Fakes/Data/TaxRebate1152026.js +89 -0
- package/distr/Common/CandyApiClient/DigestApiClient/Fakes/Data/TaxRebate1152026.js.map +1 -0
- package/distr/Common/CandyApiClient/DigestApiClient/Fakes/FakeDigestApiClient.js +42 -0
- package/distr/Common/CandyApiClient/DigestApiClient/Fakes/FakeDigestApiClient.js.map +1 -0
- package/distr/Common/CandyApiClient/DigestApiClient/Fakes/FakePicklists.js +9 -0
- package/distr/Common/CandyApiClient/DigestApiClient/Fakes/FakePicklists.js.map +1 -0
- package/distr/Common/CandyApiClient/DigestApiClient/IDigestApiClient.js +6 -0
- package/distr/Common/CandyApiClient/DigestApiClient/IDigestApiClient.js.map +1 -0
- package/distr/Common/CandyApiClient/DigestApiClient/React/DigestApiClientContext.js +18 -0
- package/distr/Common/CandyApiClient/DigestApiClient/React/DigestApiClientContext.js.map +1 -0
- package/distr/Common/CandyApiClient/DigestApiClient/TestDigestApiClient.js +15 -0
- package/distr/Common/CandyApiClient/DigestApiClient/TestDigestApiClient.js.map +1 -0
- package/distr/Common/CandyApiClient/DigestApiClient/Types/DigestQueryFilter.js +19 -0
- package/distr/Common/CandyApiClient/DigestApiClient/Types/DigestQueryFilter.js.map +1 -0
- package/distr/Common/CandyApiClient/DigestApiClient/Types/DigestRequest.js +6 -0
- package/distr/Common/CandyApiClient/DigestApiClient/Types/DigestRequest.js.map +1 -0
- package/distr/Common/CandyApiClient/FakeCandyApiClient.js +248 -0
- package/distr/Common/CandyApiClient/FakeCandyApiClient.js.map +1 -0
- package/distr/Common/CandyApiClient/ICandyApiClient.js +6 -0
- package/distr/Common/CandyApiClient/ICandyApiClient.js.map +1 -0
- package/distr/Common/CandyApiClient/IsBuffer.js +15 -0
- package/distr/Common/CandyApiClient/IsBuffer.js.map +1 -0
- package/distr/Common/CandyApiClient/Types/Attachments/Attacments.js +6 -0
- package/distr/Common/CandyApiClient/Types/Attachments/Attacments.js.map +1 -0
- package/distr/Common/CandyApiClient/Types/Attachments/GetAttachmentsResponse.js +6 -0
- package/distr/Common/CandyApiClient/Types/Attachments/GetAttachmentsResponse.js.map +1 -0
- package/distr/Common/CandyApiClient/Types/ChangeSet/ServerChangeSet.js +6 -0
- package/distr/Common/CandyApiClient/Types/ChangeSet/ServerChangeSet.js.map +1 -0
- package/distr/Common/CandyApiClient/Types/CreateDraft/CreateDraftResponse.js +6 -0
- package/distr/Common/CandyApiClient/Types/CreateDraft/CreateDraftResponse.js.map +1 -0
- package/distr/Common/CandyApiClient/Types/DiagResourcesResponse.js +6 -0
- package/distr/Common/CandyApiClient/Types/DiagResourcesResponse.js.map +1 -0
- package/distr/Common/CandyApiClient/Types/DraftActions/CombineFufResult.js +24 -0
- package/distr/Common/CandyApiClient/Types/DraftActions/CombineFufResult.js.map +1 -0
- package/distr/Common/CandyApiClient/Types/DraftActions/ConvertDraftRequest.js +6 -0
- package/distr/Common/CandyApiClient/Types/DraftActions/ConvertDraftRequest.js.map +1 -0
- package/distr/Common/CandyApiClient/Types/DraftActions/FileProperties.js +6 -0
- package/distr/Common/CandyApiClient/Types/DraftActions/FileProperties.js.map +1 -0
- package/distr/Common/CandyApiClient/Types/DraftActions/FufSizeTooLargeError.js +9 -0
- package/distr/Common/CandyApiClient/Types/DraftActions/FufSizeTooLargeError.js.map +1 -0
- package/distr/Common/CandyApiClient/Types/DraftFullId.js +6 -0
- package/distr/Common/CandyApiClient/Types/DraftFullId.js.map +1 -0
- package/distr/Common/CandyApiClient/Types/ErrorLog/CandyPopdProtocol.js +12 -0
- package/distr/Common/CandyApiClient/Types/ErrorLog/CandyPopdProtocol.js.map +1 -0
- package/distr/Common/CandyApiClient/Types/ErrorLog/ResolveInnerPathRequest.js +6 -0
- package/distr/Common/CandyApiClient/Types/ErrorLog/ResolveInnerPathRequest.js.map +1 -0
- package/distr/Common/CandyApiClient/Types/ErrorLog/ResolvePathResponse.js +6 -0
- package/distr/Common/CandyApiClient/Types/ErrorLog/ResolvePathResponse.js.map +1 -0
- package/distr/Common/CandyApiClient/Types/ErrorLog/ServerErrorLog.js +17 -0
- package/distr/Common/CandyApiClient/Types/ErrorLog/ServerErrorLog.js.map +1 -0
- package/distr/Common/CandyApiClient/Types/ExplanatoryNote/CreateExplanatoryNoteResponse.js +13 -0
- package/distr/Common/CandyApiClient/Types/ExplanatoryNote/CreateExplanatoryNoteResponse.js.map +1 -0
- package/distr/Common/CandyApiClient/Types/FeatureFlags/FeatureFlagsResponse.js +6 -0
- package/distr/Common/CandyApiClient/Types/FeatureFlags/FeatureFlagsResponse.js.map +1 -0
- package/distr/Common/CandyApiClient/Types/Focus/FocusServerResponse.js +6 -0
- package/distr/Common/CandyApiClient/Types/Focus/FocusServerResponse.js.map +1 -0
- package/distr/Common/CandyApiClient/Types/Focus/FocusTypes.js +15 -0
- package/distr/Common/CandyApiClient/Types/Focus/FocusTypes.js.map +1 -0
- package/distr/Common/CandyApiClient/Types/GetInner/ServerInnerResponse.js +6 -0
- package/distr/Common/CandyApiClient/Types/GetInner/ServerInnerResponse.js.map +1 -0
- package/distr/Common/CandyApiClient/Types/GetInner/ServerRawResponse.js +9 -0
- package/distr/Common/CandyApiClient/Types/GetInner/ServerRawResponse.js.map +1 -0
- package/distr/Common/CandyApiClient/Types/GetInner/ServerRequisitesResponse.js +6 -0
- package/distr/Common/CandyApiClient/Types/GetInner/ServerRequisitesResponse.js.map +1 -0
- package/distr/Common/CandyApiClient/Types/Guid.js +6 -0
- package/distr/Common/CandyApiClient/Types/Guid.js.map +1 -0
- package/distr/Common/CandyApiClient/Types/InstancesDeleting/InstancesDeletingRule.js +6 -0
- package/distr/Common/CandyApiClient/Types/InstancesDeleting/InstancesDeletingRule.js.map +1 -0
- package/distr/Common/CandyApiClient/Types/MassActions/MassActionParameters.js +6 -0
- package/distr/Common/CandyApiClient/Types/MassActions/MassActionParameters.js.map +1 -0
- package/distr/Common/CandyApiClient/Types/MassActions/ValueForInstancesSettingRule.js +6 -0
- package/distr/Common/CandyApiClient/Types/MassActions/ValueForInstancesSettingRule.js.map +1 -0
- package/distr/Common/CandyApiClient/Types/Presentations/DraftPresentationType.js +24 -0
- package/distr/Common/CandyApiClient/Types/Presentations/DraftPresentationType.js.map +1 -0
- package/distr/Common/CandyApiClient/Types/Presentations/PresentationContent.js +6 -0
- package/distr/Common/CandyApiClient/Types/Presentations/PresentationContent.js.map +1 -0
- package/distr/Common/CandyApiClient/Types/Print/PrintResponse.js +6 -0
- package/distr/Common/CandyApiClient/Types/Print/PrintResponse.js.map +1 -0
- package/distr/Common/CandyApiClient/Types/Print/PrintType.js +12 -0
- package/distr/Common/CandyApiClient/Types/Print/PrintType.js.map +1 -0
- package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/AndExpression.js +15 -0
- package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/AndExpression.js.map +1 -0
- package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/CompareExpression.js +19 -0
- package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/CompareExpression.js.map +1 -0
- package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/CountCallExpression.js +15 -0
- package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/CountCallExpression.js.map +1 -0
- package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/DecimalConstantExpression.js +15 -0
- package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/DecimalConstantExpression.js.map +1 -0
- package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/InstanceIdCallExpression.js +13 -0
- package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/InstanceIdCallExpression.js.map +1 -0
- package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/NotExpression.js +15 -0
- package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/NotExpression.js.map +1 -0
- package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/OrExpression.js +15 -0
- package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/OrExpression.js.map +1 -0
- package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/StringConstantExpression.js +15 -0
- package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/StringConstantExpression.js.map +1 -0
- package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/StringMatchExpression.js +21 -0
- package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/StringMatchExpression.js.map +1 -0
- package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/SumCallExpression.js +15 -0
- package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/SumCallExpression.js.map +1 -0
- package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/TernaryExpression.js +19 -0
- package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/TernaryExpression.js.map +1 -0
- package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/ValueReferenceExpression.js +15 -0
- package/distr/Common/CandyApiClient/Types/QueryCollecton/Expressions/ValueReferenceExpression.js.map +1 -0
- package/distr/Common/CandyApiClient/Types/QueryCollecton/InnerQueryExpression.js +6 -0
- package/distr/Common/CandyApiClient/Types/QueryCollecton/InnerQueryExpression.js.map +1 -0
- package/distr/Common/CandyApiClient/Types/QueryCollecton/InnerQueryRequest.js +26 -0
- package/distr/Common/CandyApiClient/Types/QueryCollecton/InnerQueryRequest.js.map +1 -0
- package/distr/Common/CandyApiClient/Types/QueryCollecton/InnerQueryResponse.js +6 -0
- package/distr/Common/CandyApiClient/Types/QueryCollecton/InnerQueryResponse.js.map +1 -0
- package/distr/Common/CandyApiClient/Types/QueryCollecton/SelectClause.js +16 -0
- package/distr/Common/CandyApiClient/Types/QueryCollecton/SelectClause.js.map +1 -0
- package/distr/Common/CandyApiClient/Types/QueryCollecton/SortingRule.js +16 -0
- package/distr/Common/CandyApiClient/Types/QueryCollecton/SortingRule.js.map +1 -0
- package/distr/Common/CandyApiClient/Types/Staff/EmployeeInfo.js +6 -0
- package/distr/Common/CandyApiClient/Types/Staff/EmployeeInfo.js.map +1 -0
- package/distr/Common/CandyApiClient/Types/Staff/ImportEmployeesOptions.js +6 -0
- package/distr/Common/CandyApiClient/Types/Staff/ImportEmployeesOptions.js.map +1 -0
- package/distr/Common/CandyApiClient/Types/Staff/ImportEmployeesRequest.js +6 -0
- package/distr/Common/CandyApiClient/Types/Staff/ImportEmployeesRequest.js.map +1 -0
- package/distr/Common/CandyApiClient/Types/Staff/StaffInfo.js +6 -0
- package/distr/Common/CandyApiClient/Types/Staff/StaffInfo.js.map +1 -0
- package/distr/Common/CandyApiClient/Types/Tasks/GetTasksServerResponse.js +6 -0
- package/distr/Common/CandyApiClient/Types/Tasks/GetTasksServerResponse.js.map +1 -0
- package/distr/Common/CandyApiClient/Types/Tasks/Tasks.js +14 -0
- package/distr/Common/CandyApiClient/Types/Tasks/Tasks.js.map +1 -0
- package/distr/Common/CollectionUtils.js +15 -0
- package/distr/Common/CollectionUtils.js.map +1 -0
- package/distr/Common/CommonConstants/SectionNames.js +11 -0
- package/distr/Common/CommonConstants/SectionNames.js.map +1 -0
- package/distr/Common/Comparers.js +63 -0
- package/distr/Common/Comparers.js.map +1 -0
- package/distr/Common/EmotionStorybookWorkaroundViaAliases.js +22 -0
- package/distr/Common/EmotionStorybookWorkaroundViaAliases.js.map +1 -0
- package/distr/Common/EndPoints.js +16 -0
- package/distr/Common/EndPoints.js.map +1 -0
- package/distr/Common/Enums/ButtonSettingsTypeEnum.js +12 -0
- package/distr/Common/Enums/ButtonSettingsTypeEnum.js.map +1 -0
- package/distr/Common/Errors.js +44 -0
- package/distr/Common/Errors.js.map +1 -0
- package/distr/Common/ExtractGFVPath/ExtractGFVPath.js +31 -0
- package/distr/Common/ExtractGFVPath/ExtractGFVPath.js.map +1 -0
- package/distr/Common/FSPrinterClient/FSPrinterClient.js +153 -0
- package/distr/Common/FSPrinterClient/FSPrinterClient.js.map +1 -0
- package/distr/Common/FSPrinterClient/FakeFSPrinterClient.js +19 -0
- package/distr/Common/FSPrinterClient/FakeFSPrinterClient.js.map +1 -0
- package/distr/Common/FSPrinterClient/IFSPrinterClient.js +39 -0
- package/distr/Common/FSPrinterClient/IFSPrinterClient.js.map +1 -0
- package/distr/Common/FormActionHandlers/ContextualActionNames.js +14 -0
- package/distr/Common/FormActionHandlers/ContextualActionNames.js.map +1 -0
- package/distr/Common/FormActionHandlers/ControlNamedContextualAction.js +6 -0
- package/distr/Common/FormActionHandlers/ControlNamedContextualAction.js.map +1 -0
- package/distr/Common/FormPathUtils.js +21 -0
- package/distr/Common/FormPathUtils.js.map +1 -0
- package/distr/Common/Funcs.js +11 -0
- package/distr/Common/Funcs.js.map +1 -0
- package/distr/Common/GFV.js +6 -0
- package/distr/Common/GFV.js.map +1 -0
- package/distr/Common/GetRngSchemaFileExtension.js +26 -0
- package/distr/Common/GetRngSchemaFileExtension.js.map +1 -0
- package/distr/Common/Hooks/UseLocalStorage.js +35 -0
- package/distr/Common/Hooks/UseLocalStorage.js.map +1 -0
- package/distr/Common/HttpClient/AuthenticationMode.js +31 -0
- package/distr/Common/HttpClient/AuthenticationMode.js.map +1 -0
- package/distr/Common/HttpClient/FetchImplementation/BrowserFetchWithOptionalPolyfill.js +9 -0
- package/distr/Common/HttpClient/FetchImplementation/BrowserFetchWithOptionalPolyfill.js.map +1 -0
- package/distr/Common/HttpClient/FetchImplementation/BrowserFetchWithPolyfill.js +9 -0
- package/distr/Common/HttpClient/FetchImplementation/BrowserFetchWithPolyfill.js.map +1 -0
- package/distr/Common/HttpClient/FetchImplementation/Fetch.js +6 -0
- package/distr/Common/HttpClient/FetchImplementation/Fetch.js.map +1 -0
- package/distr/Common/HttpClient/FetchImplementation/NativeBrowserFetch.js +8 -0
- package/distr/Common/HttpClient/FetchImplementation/NativeBrowserFetch.js.map +1 -0
- package/distr/Common/HttpClient/FetchImplementation/NodeFetch.js +36 -0
- package/distr/Common/HttpClient/FetchImplementation/NodeFetch.js.map +1 -0
- package/distr/Common/HttpClient/HttpClient.js +313 -0
- package/distr/Common/HttpClient/HttpClient.js.map +1 -0
- package/distr/Common/HttpClient/HttpClientAuthenticationProvider.js +6 -0
- package/distr/Common/HttpClient/HttpClientAuthenticationProvider.js.map +1 -0
- package/distr/Common/HttpClient/IHttpClient.js +6 -0
- package/distr/Common/HttpClient/IHttpClient.js.map +1 -0
- package/distr/Common/IndentString.js +16 -0
- package/distr/Common/IndentString.js.map +1 -0
- package/distr/Common/IntRangeUtils.js +32 -0
- package/distr/Common/IntRangeUtils.js.map +1 -0
- package/distr/Common/IterableUtils.js +288 -0
- package/distr/Common/IterableUtils.js.map +1 -0
- package/distr/Common/KCLangRuntimeUtils.js +266 -0
- package/distr/Common/KCLangRuntimeUtils.js.map +1 -0
- package/distr/Common/ModelPath/AbsoluteModelFieldPath.js +55 -0
- package/distr/Common/ModelPath/AbsoluteModelFieldPath.js.map +1 -0
- package/distr/Common/ModelPath/BuildIterationSequence.js +41 -0
- package/distr/Common/ModelPath/BuildIterationSequence.js.map +1 -0
- package/distr/Common/ModelPath/EachCurrentCollision.js +12 -0
- package/distr/Common/ModelPath/EachCurrentCollision.js.map +1 -0
- package/distr/Common/ModelPath/IEquatable.js +6 -0
- package/distr/Common/ModelPath/IEquatable.js.map +1 -0
- package/distr/Common/ModelPath/Map/AbsoluteModelPathMap.js +23 -0
- package/distr/Common/ModelPath/Map/AbsoluteModelPathMap.js.map +1 -0
- package/distr/Common/ModelPath/Map/Map2.js +99 -0
- package/distr/Common/ModelPath/Map/Map2.js.map +1 -0
- package/distr/Common/ModelPath/Map/ModelPathMap.js +23 -0
- package/distr/Common/ModelPath/Map/ModelPathMap.js.map +1 -0
- package/distr/Common/ModelPath/ModelPath.js +476 -0
- package/distr/Common/ModelPath/ModelPath.js.map +1 -0
- package/distr/Common/ModelPath/ModelPathBuilder.js +42 -0
- package/distr/Common/ModelPath/ModelPathBuilder.js.map +1 -0
- package/distr/Common/ModelPath/ModelPathHelper.js +34 -0
- package/distr/Common/ModelPath/ModelPathHelper.js.map +1 -0
- package/distr/Common/ModelPath/PathMatcher.js +95 -0
- package/distr/Common/ModelPath/PathMatcher.js.map +1 -0
- package/distr/Common/ModelPath/PathSplitHelper.js +21 -0
- package/distr/Common/ModelPath/PathSplitHelper.js.map +1 -0
- package/distr/Common/ModelPath/Set/AbsoluteModelPathSet.js +31 -0
- package/distr/Common/ModelPath/Set/AbsoluteModelPathSet.js.map +1 -0
- package/distr/Common/ModelPath/Set/AbsoluteResolvedModelPathSet.js +31 -0
- package/distr/Common/ModelPath/Set/AbsoluteResolvedModelPathSet.js.map +1 -0
- package/distr/Common/ModelPath/Set/ModelPathSet.js +31 -0
- package/distr/Common/ModelPath/Set/ModelPathSet.js.map +1 -0
- package/distr/Common/ModelPath/Set/Set2.js +59 -0
- package/distr/Common/ModelPath/Set/Set2.js.map +1 -0
- package/distr/Common/NidusClient/ContextualNidusClient/ContextualNidusClient.js +33 -0
- package/distr/Common/NidusClient/ContextualNidusClient/ContextualNidusClient.js.map +1 -0
- package/distr/Common/NidusClient/ContextualNidusClient/IContextualNidusClient.js +6 -0
- package/distr/Common/NidusClient/ContextualNidusClient/IContextualNidusClient.js.map +1 -0
- package/distr/Common/NidusClient/Fakes/CreateUniqueNidusEntryId.js +11 -0
- package/distr/Common/NidusClient/Fakes/CreateUniqueNidusEntryId.js.map +1 -0
- package/distr/Common/NidusClient/Fakes/FakeNidusClient.js +66 -0
- package/distr/Common/NidusClient/Fakes/FakeNidusClient.js.map +1 -0
- package/distr/Common/NidusClient/Fakes/LocalStorageBasedNidusClient.js +108 -0
- package/distr/Common/NidusClient/Fakes/LocalStorageBasedNidusClient.js.map +1 -0
- package/distr/Common/NidusClient/INidusClient.js +14 -0
- package/distr/Common/NidusClient/INidusClient.js.map +1 -0
- package/distr/Common/NidusClient/NidusClientContext.js +34 -0
- package/distr/Common/NidusClient/NidusClientContext.js.map +1 -0
- package/distr/Common/NidusClient/NidusClientImpl.js +55 -0
- package/distr/Common/NidusClient/NidusClientImpl.js.map +1 -0
- package/distr/Common/PathConstants.js +11 -0
- package/distr/Common/PathConstants.js.map +1 -0
- package/distr/Common/PicklistApiClient/IPicklistApiClient.js +6 -0
- package/distr/Common/PicklistApiClient/IPicklistApiClient.js.map +1 -0
- package/distr/Common/PicklistApiClient/PicklistApiClient.js +31 -0
- package/distr/Common/PicklistApiClient/PicklistApiClient.js.map +1 -0
- package/distr/Common/PicklistApiClient/PicklistRequestV2Builder.js +36 -0
- package/distr/Common/PicklistApiClient/PicklistRequestV2Builder.js.map +1 -0
- package/distr/Common/PicklistApiClient/Serializers/DigestFilterColumnSerializer.js +53 -0
- package/distr/Common/PicklistApiClient/Serializers/DigestFilterColumnSerializer.js.map +1 -0
- package/distr/Common/PicklistApiClient/Serializers/DigestLogicalFilterSerializer.js +37 -0
- package/distr/Common/PicklistApiClient/Serializers/DigestLogicalFilterSerializer.js.map +1 -0
- package/distr/Common/PicklistApiClient/Types/PicklistRequestV2.js +6 -0
- package/distr/Common/PicklistApiClient/Types/PicklistRequestV2.js.map +1 -0
- package/distr/Common/PicklistApiClient/Types/PicklistResultV2.js +6 -0
- package/distr/Common/PicklistApiClient/Types/PicklistResultV2.js.map +1 -0
- package/distr/Common/RngSchemeTypes/types.js +6 -0
- package/distr/Common/RngSchemeTypes/types.js.map +1 -0
- package/distr/Common/StringArrayKey.js +26 -0
- package/distr/Common/StringArrayKey.js.map +1 -0
- package/distr/Common/TextExtractor/TextExtractorTypes.js +6 -0
- package/distr/Common/TextExtractor/TextExtractorTypes.js.map +1 -0
- package/distr/Common/TypingUtils.js +118 -0
- package/distr/Common/TypingUtils.js.map +1 -0
- package/distr/Common/UUID.js +14 -0
- package/distr/Common/UUID.js.map +1 -0
- package/distr/Common/UseAsyncEffect.js +20 -0
- package/distr/Common/UseAsyncEffect.js.map +1 -0
- package/distr/Common/UseShowOnce.js +60 -0
- package/distr/Common/UseShowOnce.js.map +1 -0
- package/distr/Common/UseTypedSelector.js +10 -0
- package/distr/Common/UseTypedSelector.js.map +1 -0
- package/distr/Common/WellKnownDirectories.js +14 -0
- package/distr/Common/WellKnownDirectories.js.map +1 -0
- package/distr/Common/hashUtils.js +14 -0
- package/distr/Common/hashUtils.js.map +1 -0
- package/distr/Tools/src/BuildTasks/ClientJS/BuildClientJsTask.js +77 -0
- package/distr/Tools/src/BuildTasks/ClientJS/BuildClientJsTask.js.map +1 -0
- package/distr/Tools/src/BuildTasks/ClientJS/IsWebpack5.js +14 -0
- package/distr/Tools/src/BuildTasks/ClientJS/IsWebpack5.js.map +1 -0
- package/distr/Tools/src/BuildTasks/Engine/AcquireFormEngine.js +22 -0
- package/distr/Tools/src/BuildTasks/Engine/AcquireFormEngine.js.map +1 -0
- package/distr/Tools/src/BuildTasks/Engine/AcquirePublishedEngineTask.js +88 -0
- package/distr/Tools/src/BuildTasks/Engine/AcquirePublishedEngineTask.js.map +1 -0
- package/distr/Tools/src/BuildTasks/Engine/BuildLocalEngineTask.js +82 -0
- package/distr/Tools/src/BuildTasks/Engine/BuildLocalEngineTask.js.map +1 -0
- package/distr/Tools/src/BuildTasks/Engine/EngineSource.js +10 -0
- package/distr/Tools/src/BuildTasks/Engine/EngineSource.js.map +1 -0
- package/distr/Tools/src/BuildTasks/EngineStructureUtils.js +42 -0
- package/distr/Tools/src/BuildTasks/EngineStructureUtils.js.map +1 -0
- package/distr/Tools/src/BuildTasks/EngineVersionUtils.js +30 -0
- package/distr/Tools/src/BuildTasks/EngineVersionUtils.js.map +1 -0
- package/distr/Tools/src/BuildTasks/FSTask.js +67 -0
- package/distr/Tools/src/BuildTasks/FSTask.js.map +1 -0
- package/distr/Tools/src/BuildTasks/Form/CompileForm.js +52 -0
- package/distr/Tools/src/BuildTasks/Form/CompileForm.js.map +1 -0
- package/distr/Tools/src/BuildTasks/Form/GenerateForm.js +44 -0
- package/distr/Tools/src/BuildTasks/Form/GenerateForm.js.map +1 -0
- package/distr/Tools/src/BuildTasks/Form/NullFormGenerator.js +37 -0
- package/distr/Tools/src/BuildTasks/Form/NullFormGenerator.js.map +1 -0
- package/distr/Tools/src/BuildTasks/Form/WriteAttachmentPathFiles.js +25 -0
- package/distr/Tools/src/BuildTasks/Form/WriteAttachmentPathFiles.js.map +1 -0
- package/distr/Tools/src/BuildTasks/Form/WriteFLangNormalizationFiles.js +31 -0
- package/distr/Tools/src/BuildTasks/Form/WriteFLangNormalizationFiles.js.map +1 -0
- package/distr/Tools/src/BuildTasks/Generator/AcquireFormGenerator.js +27 -0
- package/distr/Tools/src/BuildTasks/Generator/AcquireFormGenerator.js.map +1 -0
- package/distr/Tools/src/BuildTasks/Generator/AcquirePublishedGeneratorTask.js +95 -0
- package/distr/Tools/src/BuildTasks/Generator/AcquirePublishedGeneratorTask.js.map +1 -0
- package/distr/Tools/src/BuildTasks/Generator/BuildGeneratorFromSourcesTask.js +126 -0
- package/distr/Tools/src/BuildTasks/Generator/BuildGeneratorFromSourcesTask.js.map +1 -0
- package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/CreateAsyncGenerator.js +174 -0
- package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/CreateAsyncGenerator.js.map +1 -0
- package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/GeneratorRequireUtils.js +121 -0
- package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/GeneratorRequireUtils.js.map +1 -0
- package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/ProcessSugarWorker.js +45 -0
- package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/ProcessSugarWorker.js.map +1 -0
- package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/ReadSourcesAndProcessSugarWorker.js +52 -0
- package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/ReadSourcesAndProcessSugarWorker.js.map +1 -0
- package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/RequireUncached.js +49 -0
- package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/RequireUncached.js.map +1 -0
- package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/TypedProcessWorker.js +19 -0
- package/distr/Tools/src/BuildTasks/Generator/GeneratorWorker/TypedProcessWorker.js.map +1 -0
- package/distr/Tools/src/BuildTasks/ProcessUtils/ProcessUtils.js +64 -0
- package/distr/Tools/src/BuildTasks/ProcessUtils/ProcessUtils.js.map +1 -0
- package/distr/Tools/src/BuildTasks/ProcessUtils/ShellProcessHandle.js +84 -0
- package/distr/Tools/src/BuildTasks/ProcessUtils/ShellProcessHandle.js.map +1 -0
- package/distr/Tools/src/BuildTasks/PublishedVersionUtils.js +174 -0
- package/distr/Tools/src/BuildTasks/PublishedVersionUtils.js.map +1 -0
- package/distr/Tools/src/BuildTasks/ReadFormSource.js +112 -0
- package/distr/Tools/src/BuildTasks/ReadFormSource.js.map +1 -0
- package/distr/Tools/src/BuildTasks/ResolveFormInfo.js +107 -0
- package/distr/Tools/src/BuildTasks/ResolveFormInfo.js.map +1 -0
- package/distr/Tools/src/BuildTasks/Version.js +41 -0
- package/distr/Tools/src/BuildTasks/Version.js.map +1 -0
- package/distr/Tools/src/BuildTasks/WriteFormMeta.js +27 -0
- package/distr/Tools/src/BuildTasks/WriteFormMeta.js.map +1 -0
- package/distr/Tools/src/CLICommands/BuildForms/BuildCacheMode.js +28 -0
- package/distr/Tools/src/CLICommands/BuildForms/BuildCacheMode.js.map +1 -0
- package/distr/Tools/src/CLICommands/BuildForms/BuildFormsOptions.js +169 -0
- package/distr/Tools/src/CLICommands/BuildForms/BuildFormsOptions.js.map +1 -0
- package/distr/Tools/src/CLICommands/BuildForms/ClearSourceMapForProduction.js +24 -0
- package/distr/Tools/src/CLICommands/BuildForms/ClearSourceMapForProduction.js.map +1 -0
- package/distr/Tools/src/CLICommands/BuildForms/RunBuildForms.js +234 -0
- package/distr/Tools/src/CLICommands/BuildForms/RunBuildForms.js.map +1 -0
- package/distr/Tools/src/CLICommands/BuildServer/BuildLogsWebsocketController.js +36 -0
- package/distr/Tools/src/CLICommands/BuildServer/BuildLogsWebsocketController.js.map +1 -0
- package/distr/Tools/src/CLICommands/BuildServer/BuildServerServerOptions.js +112 -0
- package/distr/Tools/src/CLICommands/BuildServer/BuildServerServerOptions.js.map +1 -0
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerBackendResourcesController.js +158 -0
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerBackendResourcesController.js.map +1 -0
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerBackendResourcesUpdatesController.js +94 -0
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerBackendResourcesUpdatesController.js.map +1 -0
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerBuildFormsController.js +129 -0
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerBuildFormsController.js.map +1 -0
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerCandyWidgetController.js +45 -0
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerCandyWidgetController.js.map +1 -0
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerClientJsController.js +76 -0
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerClientJsController.js.map +1 -0
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerClientJsFromResourcesController.js +67 -0
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerClientJsFromResourcesController.js.map +1 -0
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerFormInfoController.js +65 -0
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerFormInfoController.js.map +1 -0
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerLocalSourcesEngineController.js +117 -0
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerLocalSourcesEngineController.js.map +1 -0
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerPrebuiltResourcesController.js +22 -0
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerPrebuiltResourcesController.js.map +1 -0
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerPublishedEngineController.js +96 -0
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/BuildServerPublishedEngineController.js.map +1 -0
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/BuildFormDevServer.js +231 -0
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/BuildFormDevServer.js.map +1 -0
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/CandyWidgetDevServer.js +70 -0
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/CandyWidgetDevServer.js.map +1 -0
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/ClientJsDevServer.js +57 -0
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/ClientJsDevServer.js.map +1 -0
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/EngineDevServer.js +67 -0
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/EngineDevServer.js.map +1 -0
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/ReportGeneratorErrorToPageBody.js +21 -0
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/ReportGeneratorErrorToPageBody.js.map +1 -0
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/RunFormCompilationViaWebpackDevServer.js +52 -0
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/RunFormCompilationViaWebpackDevServer.js.map +1 -0
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/WebpackDevServerWorker/WebpackDevServerWorker.js +80 -0
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/WebpackDevServerWorker/WebpackDevServerWorker.js.map +1 -0
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/WebpackDevServerWorker/WebpackDevServerWorkerFactory.js +31 -0
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/WebpackDevServerWorker/WebpackDevServerWorkerFactory.js.map +1 -0
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/WebpackInMemoryUtils/IInputFileSystem.js +6 -0
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/WebpackInMemoryUtils/IInputFileSystem.js.map +1 -0
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/WebpackInMemoryUtils/IWatchFileSystem.js +6 -0
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/WebpackInMemoryUtils/IWatchFileSystem.js.map +1 -0
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/WebpackInMemoryUtils/WebpackHybridFileSystem.js +184 -0
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/DevServers/WebpackInMemoryUtils/WebpackHybridFileSystem.js.map +1 -0
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/Directories/FarmDirectory.js +213 -0
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/Directories/FarmDirectory.js.map +1 -0
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/GlobToRegexp.js +28 -0
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/GlobToRegexp.js.map +1 -0
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/IGeneratedServerSideSourcesProvider.js +6 -0
- package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/IGeneratedServerSideSourcesProvider.js.map +1 -0
- package/distr/Tools/src/CLICommands/BuildServer/RunBuildServer.js +110 -0
- package/distr/Tools/src/CLICommands/BuildServer/RunBuildServer.js.map +1 -0
- package/distr/Tools/src/CLICommands/BuildServer/StdStreamsIntercepter.js +50 -0
- package/distr/Tools/src/CLICommands/BuildServer/StdStreamsIntercepter.js.map +1 -0
- package/distr/Tools/src/CLICommands/CommonOptions/BuildDebugOnlyOption.js +19 -0
- package/distr/Tools/src/CLICommands/CommonOptions/BuildDebugOnlyOption.js.map +1 -0
- package/distr/Tools/src/CLICommands/CommonOptions/CommonOptionDefintions.js +30 -0
- package/distr/Tools/src/CLICommands/CommonOptions/CommonOptionDefintions.js.map +1 -0
- package/distr/Tools/src/CLICommands/CommonOptions/CommonOptions.js +6 -0
- package/distr/Tools/src/CLICommands/CommonOptions/CommonOptions.js.map +1 -0
- package/distr/Tools/src/CLICommands/DevBuild/DevBuildOptions.js +163 -0
- package/distr/Tools/src/CLICommands/DevBuild/DevBuildOptions.js.map +1 -0
- package/distr/Tools/src/CLICommands/DevBuild/RunDevBuild.js +112 -0
- package/distr/Tools/src/CLICommands/DevBuild/RunDevBuild.js.map +1 -0
- package/distr/Tools/src/CLICommands/FormStats/FormStatsOptions.js +34 -0
- package/distr/Tools/src/CLICommands/FormStats/FormStatsOptions.js.map +1 -0
- package/distr/Tools/src/CLICommands/FormStats/RunFormStats.js +50 -0
- package/distr/Tools/src/CLICommands/FormStats/RunFormStats.js.map +1 -0
- package/distr/Tools/src/CLICommands/FormsHelper/FormsHelperController.js +54 -0
- package/distr/Tools/src/CLICommands/FormsHelper/FormsHelperController.js.map +1 -0
- package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/autocalc/{gfv}./320/232/320/241.candy.js.kclang +0 -0
- package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/converters/{gfv}.AfterMerge.xslt +11 -0
- package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/converters/{gfv}.BeforePreload.xslt +11 -0
- package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/converters/{gfv}.fufPatcher.xslt +11 -0
- package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/converters/{gfv}.outer.inner.json +1 -0
- package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/fetchfunctions/{gfv}.fetchfunctions.js +2 -0
- package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/fetchfunctions/{gfv}.fetchfunctions.js.map +1 -0
- package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/form.json +12 -0
- package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/helpers/addPril1.txt +6 -0
- package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/presentations.json +8 -0
- package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/schemas/{gfv}.0.rng.xml +20 -0
- package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/sugar/index.sugar.xml +10 -0
- package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/test/browser/Smoke.test.js +16 -0
- package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/test/browser/Smoke.test.js.map +1 -0
- package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/test/ui/DemoTest.test.js +23 -0
- package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/test/ui/DemoTest.test.js.map +1 -0
- package/distr/Tools/src/CLICommands/InitForm/EmptyFormTemplate/validations/validations.KC.kclang +0 -0
- package/distr/Tools/src/CLICommands/InitForm/InitFormOptions.js +34 -0
- package/distr/Tools/src/CLICommands/InitForm/InitFormOptions.js.map +1 -0
- package/distr/Tools/src/CLICommands/InitForm/RunInitForm.js +117 -0
- package/distr/Tools/src/CLICommands/InitForm/RunInitForm.js.map +1 -0
- package/distr/Tools/src/CLICommands/Localization/LocalizationOptions.js +44 -0
- package/distr/Tools/src/CLICommands/Localization/LocalizationOptions.js.map +1 -0
- package/distr/Tools/src/CLICommands/Localization/RunLocalization.js +73 -0
- package/distr/Tools/src/CLICommands/Localization/RunLocalization.js.map +1 -0
- package/distr/Tools/src/CLICommands/RenameFiles/RenameFilesOptions.js +25 -0
- package/distr/Tools/src/CLICommands/RenameFiles/RenameFilesOptions.js.map +1 -0
- package/distr/Tools/src/CLICommands/RenameFiles/RunRenameFiles.js +38 -0
- package/distr/Tools/src/CLICommands/RenameFiles/RunRenameFiles.js.map +1 -0
- package/distr/Tools/src/CLICommands/SugarExtractor/ExtractTextsFromSugarController.js +36 -0
- package/distr/Tools/src/CLICommands/SugarExtractor/ExtractTextsFromSugarController.js.map +1 -0
- package/distr/Tools/src/CLICommands/SugarExtractor/Utils.js +50 -0
- package/distr/Tools/src/CLICommands/SugarExtractor/Utils.js.map +1 -0
- package/distr/Tools/src/CLICommands/UpgradeForm/RunUpgradeForm.js +144 -0
- package/distr/Tools/src/CLICommands/UpgradeForm/RunUpgradeForm.js.map +1 -0
- package/distr/Tools/src/CLICommands/UpgradeForm/UpgradeFormOptions.js +78 -0
- package/distr/Tools/src/CLICommands/UpgradeForm/UpgradeFormOptions.js.map +1 -0
- package/distr/Tools/src/CandyCLI.js +144 -0
- package/distr/Tools/src/CandyCLI.js.map +1 -0
- package/distr/Tools/src/CheckNodeJsVersion.js +32 -0
- package/distr/Tools/src/CheckNodeJsVersion.js.map +1 -0
- package/distr/Tools/src/Commons/ApiClient/ToolsApiClient.js +28 -0
- package/distr/Tools/src/Commons/ApiClient/ToolsApiClient.js.map +1 -0
- package/distr/Tools/src/Commons/ConsoleApplication/ConsoleApplication.js +93 -0
- package/distr/Tools/src/Commons/ConsoleApplication/ConsoleApplication.js.map +1 -0
- package/distr/Tools/src/Commons/ConsoleApplication/ConsoleApplicationContext.js +24 -0
- package/distr/Tools/src/Commons/ConsoleApplication/ConsoleApplicationContext.js.map +1 -0
- package/distr/Tools/src/Commons/ErrorUntyped.js +6 -0
- package/distr/Tools/src/Commons/ErrorUntyped.js.map +1 -0
- package/distr/Tools/src/Commons/EventObject.js +74 -0
- package/distr/Tools/src/Commons/EventObject.js.map +1 -0
- package/distr/Tools/src/Commons/ExecUtils.js +38 -0
- package/distr/Tools/src/Commons/ExecUtils.js.map +1 -0
- package/distr/Tools/src/Commons/ExtractGfvsFromFileName.js +21 -0
- package/distr/Tools/src/Commons/ExtractGfvsFromFileName.js.map +1 -0
- package/distr/Tools/src/Commons/FormGlobsUtils.js +137 -0
- package/distr/Tools/src/Commons/FormGlobsUtils.js.map +1 -0
- package/distr/Tools/src/Commons/FormLocationInfo.js +6 -0
- package/distr/Tools/src/Commons/FormLocationInfo.js.map +1 -0
- package/distr/Tools/src/Commons/FsUtils.js +35 -0
- package/distr/Tools/src/Commons/FsUtils.js.map +1 -0
- package/distr/Tools/src/Commons/GetCpuLimits.js +64 -0
- package/distr/Tools/src/Commons/GetCpuLimits.js.map +1 -0
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Actions.js +38 -0
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Actions.js.map +1 -0
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Methods.js +57 -0
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Methods.js.map +1 -0
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/NotFoundWebError.js +15 -0
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/NotFoundWebError.js.map +1 -0
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/CookieParamParamBinder.js +18 -0
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/CookieParamParamBinder.js.map +1 -0
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/IParamBinder.js +6 -0
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/IParamBinder.js.map +1 -0
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/JsonBodyParamBinder.js +14 -0
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/JsonBodyParamBinder.js.map +1 -0
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/StringBodyParamBinder.js +17 -0
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/StringBodyParamBinder.js.map +1 -0
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/UrlParamBinder.js +22 -0
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/UrlParamBinder.js.map +1 -0
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/UrlQueryParamBinder.js +20 -0
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/ParamBinders/UrlQueryParamBinder.js.map +1 -0
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Params.js +46 -0
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Params.js.map +1 -0
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/CustomActionResultHandler.js +13 -0
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/CustomActionResultHandler.js.map +1 -0
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/CustomContentResultHandler.js +18 -0
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/CustomContentResultHandler.js.map +1 -0
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/EmptyResultHandler.js +13 -0
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/EmptyResultHandler.js.map +1 -0
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/HtmlResultHandler.js +13 -0
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/HtmlResultHandler.js.map +1 -0
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/IResultHandler.js +6 -0
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/IResultHandler.js.map +1 -0
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/JsonResultHandler.js +13 -0
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/JsonResultHandler.js.map +1 -0
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/PlainTextResultHandler.js +13 -0
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/PlainTextResultHandler.js.map +1 -0
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/StreamResultHandler.js +113 -0
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results/StreamResultHandler.js.map +1 -0
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results.js +24 -0
- package/distr/Tools/src/Commons/HttpServer/AttributeRouting/Results.js.map +1 -0
- package/distr/Tools/src/Commons/HttpServer/ExpressWrapper/ExpressServerWrapper.js +106 -0
- package/distr/Tools/src/Commons/HttpServer/ExpressWrapper/ExpressServerWrapper.js.map +1 -0
- package/distr/Tools/src/Commons/HttpServer/ExpressWrapper/SingletonController.js +22 -0
- package/distr/Tools/src/Commons/HttpServer/ExpressWrapper/SingletonController.js.map +1 -0
- package/distr/Tools/src/Commons/Locks/Lock.js +24 -0
- package/distr/Tools/src/Commons/Locks/Lock.js.map +1 -0
- package/distr/Tools/src/Commons/Locks/LockHandle.js +17 -0
- package/distr/Tools/src/Commons/Locks/LockHandle.js.map +1 -0
- package/distr/Tools/src/Commons/Locks/ReadWriteLockCollection.js +31 -0
- package/distr/Tools/src/Commons/Locks/ReadWriteLockCollection.js.map +1 -0
- package/distr/Tools/src/Commons/Logging/ELKLogger.js +56 -0
- package/distr/Tools/src/Commons/Logging/ELKLogger.js.map +1 -0
- package/distr/Tools/src/Commons/Logging/ILogger.js +25 -0
- package/distr/Tools/src/Commons/Logging/ILogger.js.map +1 -0
- package/distr/Tools/src/Commons/Logging/InMemoryLogger.js +61 -0
- package/distr/Tools/src/Commons/Logging/InMemoryLogger.js.map +1 -0
- package/distr/Tools/src/Commons/Logging/Logger.js +78 -0
- package/distr/Tools/src/Commons/Logging/Logger.js.map +1 -0
- package/distr/Tools/src/Commons/Logging/StaticLogger.js +37 -0
- package/distr/Tools/src/Commons/Logging/StaticLogger.js.map +1 -0
- package/distr/Tools/src/Commons/Options/CommandBasedOptionsParser.d.js +2 -0
- package/distr/Tools/src/Commons/Options/CommandBasedOptionsParser.d.js.map +1 -0
- package/distr/Tools/src/Commons/Options/CommandBasedOptionsParser.js +152 -0
- package/distr/Tools/src/Commons/Options/CommandBasedOptionsParser.js.map +1 -0
- package/distr/Tools/src/Commons/PathPattern.js +42 -0
- package/distr/Tools/src/Commons/PathPattern.js.map +1 -0
- package/distr/Tools/src/Commons/TasksCore/AggregatedError.js +16 -0
- package/distr/Tools/src/Commons/TasksCore/AggregatedError.js.map +1 -0
- package/distr/Tools/src/Commons/TasksCore/BuildTask.js +6 -0
- package/distr/Tools/src/Commons/TasksCore/BuildTask.js.map +1 -0
- package/distr/Tools/src/Commons/TasksCore/ChainableValueProducer.js +668 -0
- package/distr/Tools/src/Commons/TasksCore/ChainableValueProducer.js.map +1 -0
- package/distr/Tools/src/Commons/TasksCore/DirectoryEntriesProducer.js +77 -0
- package/distr/Tools/src/Commons/TasksCore/DirectoryEntriesProducer.js.map +1 -0
- package/distr/Tools/src/Commons/TasksCore/EmptyProducer.js +20 -0
- package/distr/Tools/src/Commons/TasksCore/EmptyProducer.js.map +1 -0
- package/distr/Tools/src/Commons/TasksCore/FileSystemEntriesProducer.js +48 -0
- package/distr/Tools/src/Commons/TasksCore/FileSystemEntriesProducer.js.map +1 -0
- package/distr/Tools/src/Commons/TasksCore/FileValueProducer.js +45 -0
- package/distr/Tools/src/Commons/TasksCore/FileValueProducer.js.map +1 -0
- package/distr/Tools/src/Commons/TasksCore/FixedDirectoryEntriesProducer.js +25 -0
- package/distr/Tools/src/Commons/TasksCore/FixedDirectoryEntriesProducer.js.map +1 -0
- package/distr/Tools/src/Commons/TasksCore/Observe.js +35 -0
- package/distr/Tools/src/Commons/TasksCore/Observe.js.map +1 -0
- package/distr/Tools/src/Commons/TasksCore/SingleValueProducer.js +29 -0
- package/distr/Tools/src/Commons/TasksCore/SingleValueProducer.js.map +1 -0
- package/distr/Tools/src/Commons/TimingUtils.js +13 -0
- package/distr/Tools/src/Commons/TimingUtils.js.map +1 -0
- package/distr/Tools/src/FormWebpackConfiguration/CacheAssetsPlugin.js +180 -0
- package/distr/Tools/src/FormWebpackConfiguration/CacheAssetsPlugin.js.map +1 -0
- package/distr/Tools/src/FormWebpackConfiguration/createFormWebpackConfiguration.js +145 -0
- package/distr/Tools/src/FormWebpackConfiguration/createFormWebpackConfiguration.js.map +1 -0
- package/distr/Tools/src/FormWebpackConfiguration/variables.less +132 -0
- package/distr/Tools/src/GenerateReadMe.js +54 -0
- package/distr/Tools/src/GenerateReadMe.js.map +1 -0
- package/distr/Tools/src/Keys/localhost-key.pem +116 -0
- package/distr/Tools/src/Keys/localhost.pem +35 -0
- package/distr/Tools/src/LocalServerFrontEndDist/enhancedClient.js +2 -0
- package/distr/Tools/src/LocalServerFrontEndDist/enhancedClient.js.LICENSE.txt +49 -0
- package/distr/Tools/src/LocalServerFrontEndDist/favicon-16x16.png +0 -0
- package/distr/Tools/src/LocalServerFrontEndDist/favicon-32x32.png +0 -0
- package/distr/Tools/src/LocalServerFrontEndDist/favicon.ico +0 -0
- package/distr/Tools/src/LocalServerFrontEndDist/index.html +1 -0
- package/distr/Tools/src/LocalServerFrontEndDist/index.js +3 -0
- package/distr/Tools/src/LocalServerFrontEndDist/index.js.LICENSE.txt +60 -0
- package/distr/Tools/src/LocalServerFrontEndDist/index.js.map +1 -0
- package/distr/Tools/src/Options/CandyToolOptions.js +20 -0
- package/distr/Tools/src/Options/CandyToolOptions.js.map +1 -0
- package/distr/Tools/src/ReadFarmConfig.js +18 -0
- package/distr/Tools/src/ReadFarmConfig.js.map +1 -0
- package/distr/Tools/src/SelfUpdate.js +121 -0
- package/distr/Tools/src/SelfUpdate.js.map +1 -0
- package/distr/Tools/src/StaticFilesForProductionResourcesDir/client.js +1722 -0
- package/distr/Tools/src/StaticFilesForProductionResourcesDir/client.js.LICENSE.txt +1 -0
- package/distr/Tools/src/StaticFilesForProductionResourcesDir/client.js.map +1 -0
- package/distr/Tools/src/StaticFilesForProductionResourcesDir/client.min.js +1076 -0
- package/distr/Tools/src/StaticFilesForProductionResourcesDir/client.min.js.map +1 -0
- package/distr/Tools/src/StaticFilesForProductionResourcesDir/jquery-1.11.3.min.js +3328 -0
- package/distr/Tools/src/StaticFilesForProductionResourcesDir/jquery-1.11.3.min.js.map +1 -0
- package/distr/Tools/src/StaticFilesForProductionResourcesDir/polyfill.min.js +6517 -0
- package/distr/Tools/src/StaticFilesForProductionResourcesDir/polyfill.min.js.map +1 -0
- package/distr/Tools/src/StaticFilesForProductionResourcesDir/testing.min.js +222 -0
- package/distr/Tools/src/StaticFilesForProductionResourcesDir/testing.min.js.map +1 -0
- package/distr/Tools/src/StaticFilesForResourcesDir/jquery-1.11.3.min.js +3328 -0
- package/distr/Tools/src/StaticFilesForResourcesDir/jquery-1.11.3.min.js.map +1 -0
- package/distr/Tools/src/StaticFilesForResourcesDir/polyfill.min.js +6517 -0
- package/distr/Tools/src/StaticFilesForResourcesDir/polyfill.min.js.map +1 -0
- package/distr/Tools/src/StaticFilesForResourcesDir/testing.min.js +222 -0
- package/distr/Tools/src/StaticFilesForResourcesDir/testing.min.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,184 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.WebpackHybridFileSystem = void 0;
|
|
7
|
+
var path = _interopRequireWildcard(require("path"));
|
|
8
|
+
var _memfs = require("memfs");
|
|
9
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
10
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
11
|
+
/* tslint:disable:no-any */
|
|
12
|
+
|
|
13
|
+
class WebpackHybridFileSystem {
|
|
14
|
+
constructor(pathToVirtualDirectory) {
|
|
15
|
+
this.pathToVirtualDirectory = void 0;
|
|
16
|
+
this.innerInputFileSystem = void 0;
|
|
17
|
+
this.virtualFs = void 0;
|
|
18
|
+
this.watchers = [];
|
|
19
|
+
this.pathToVirtualDirectory = pathToVirtualDirectory;
|
|
20
|
+
const virtualVolume = _memfs.Volume.fromJSON({});
|
|
21
|
+
this.virtualFs = (0, _memfs.createFsFromVolume)(virtualVolume);
|
|
22
|
+
}
|
|
23
|
+
setInnerInputFileSystem(innerInputFileSystem) {
|
|
24
|
+
if (this.innerInputFileSystem != undefined) {
|
|
25
|
+
throw new Error("Cannot set inner file system twice");
|
|
26
|
+
}
|
|
27
|
+
this.innerInputFileSystem = innerInputFileSystem;
|
|
28
|
+
}
|
|
29
|
+
readFile(filename, options, callback) {
|
|
30
|
+
if (filename.startsWith(this.pathToVirtualDirectory)) {
|
|
31
|
+
// @ts-ignore
|
|
32
|
+
this.virtualFs.readFile(filename, options, callback);
|
|
33
|
+
} else {
|
|
34
|
+
// @ts-ignore
|
|
35
|
+
this.innerInputFileSystem.readFile(filename, options, callback);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
readFileSync(filename, options) {
|
|
39
|
+
if (filename.startsWith(this.pathToVirtualDirectory)) {
|
|
40
|
+
// @ts-ignore
|
|
41
|
+
return this.virtualFs.readFileSync(filename, options);
|
|
42
|
+
} else {
|
|
43
|
+
// @ts-ignore
|
|
44
|
+
return this.innerInputFileSystem.readFileSync(filename, options);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
readdir(dirPath, callback) {
|
|
48
|
+
if (dirPath.startsWith(this.pathToVirtualDirectory)) {
|
|
49
|
+
// @ts-ignore
|
|
50
|
+
this.virtualFs.readdir(dirPath, callback);
|
|
51
|
+
} else {
|
|
52
|
+
// @ts-ignore
|
|
53
|
+
this.innerInputFileSystem.readdir(dirPath, callback);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
readdirSync(dirPath) {
|
|
57
|
+
if (dirPath.startsWith(this.pathToVirtualDirectory)) {
|
|
58
|
+
// @ts-ignore
|
|
59
|
+
return this.virtualFs.readdirSync(dirPath);
|
|
60
|
+
} else {
|
|
61
|
+
// @ts-ignore
|
|
62
|
+
return this.innerInputFileSystem.readdirSync(dirPath);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
67
|
+
readlink(dirPath, callback) {
|
|
68
|
+
if (dirPath.startsWith(this.pathToVirtualDirectory)) {
|
|
69
|
+
// @ts-ignore
|
|
70
|
+
this.virtualFs.readlink(dirPath, callback);
|
|
71
|
+
} else {
|
|
72
|
+
// @ts-ignore
|
|
73
|
+
this.innerInputFileSystem.readlink(dirPath, callback);
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
readlinkSync(linkPath) {
|
|
77
|
+
if (linkPath.startsWith(this.pathToVirtualDirectory)) {
|
|
78
|
+
// @ts-ignore
|
|
79
|
+
return this.virtualFs.readlinkSync(linkPath);
|
|
80
|
+
} else {
|
|
81
|
+
// @ts-ignore
|
|
82
|
+
return this.innerInputFileSystem.readlinkSync(linkPath);
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
87
|
+
stat(fsPath, callback) {
|
|
88
|
+
if (fsPath.startsWith(this.pathToVirtualDirectory)) {
|
|
89
|
+
// @ts-ignore
|
|
90
|
+
this.virtualFs.stat(fsPath, callback);
|
|
91
|
+
} else {
|
|
92
|
+
// @ts-ignore
|
|
93
|
+
this.innerInputFileSystem.stat(fsPath, callback);
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
statSync(fsPath) {
|
|
97
|
+
if (fsPath.startsWith(this.pathToVirtualDirectory)) {
|
|
98
|
+
// @ts-ignore
|
|
99
|
+
return this.virtualFs.statSync(fsPath);
|
|
100
|
+
} else {
|
|
101
|
+
// @ts-ignore
|
|
102
|
+
return this.innerInputFileSystem.statSync(fsPath);
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
async writeBatch(fileBatch) {
|
|
106
|
+
for (const filePath of Object.keys(fileBatch)) {
|
|
107
|
+
this.virtualFs.mkdirpSync(path.parse(filePath).dir);
|
|
108
|
+
// @ts-ignore Там баг в тайпингах
|
|
109
|
+
this.virtualFs.writeFileSync(filePath, fileBatch[filePath], "utf8");
|
|
110
|
+
}
|
|
111
|
+
this.emitChanges(fileBatch);
|
|
112
|
+
}
|
|
113
|
+
watch(files, dirs, missing, startTime, options, callback, callbackUndelayed) {
|
|
114
|
+
const result = new WebpackVirtualWatchFileSystemWatcher(this.virtualFs, [...files.values()].filter(x => x.startsWith(this.pathToVirtualDirectory)), [...dirs.values()].filter(x => x.startsWith(this.pathToVirtualDirectory)), [...missing.values()].filter(x => x.startsWith(this.pathToVirtualDirectory)), callback, callbackUndelayed);
|
|
115
|
+
this.watchers.push(result);
|
|
116
|
+
return result;
|
|
117
|
+
}
|
|
118
|
+
emitChanges(fileBatch) {
|
|
119
|
+
for (const watcher of this.watchers) {
|
|
120
|
+
watcher.emitChanges(Object.keys(fileBatch));
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
exports.WebpackHybridFileSystem = WebpackHybridFileSystem;
|
|
125
|
+
class WebpackVirtualWatchFileSystemWatcher {
|
|
126
|
+
constructor(virtualFs, files, dirs, missing, callback, callbackUndelayed) {
|
|
127
|
+
this.virtualFs = void 0;
|
|
128
|
+
this.files = void 0;
|
|
129
|
+
this.dirs = void 0;
|
|
130
|
+
this.missing = void 0;
|
|
131
|
+
this.callback = void 0;
|
|
132
|
+
this.callbackUndelayed = void 0;
|
|
133
|
+
this.closed = false;
|
|
134
|
+
this.paused = false;
|
|
135
|
+
this.virtualFs = virtualFs;
|
|
136
|
+
this.files = files;
|
|
137
|
+
this.dirs = dirs;
|
|
138
|
+
this.missing = missing;
|
|
139
|
+
this.callback = callback;
|
|
140
|
+
this.callbackUndelayed = callbackUndelayed;
|
|
141
|
+
}
|
|
142
|
+
emitChanges(filePaths) {
|
|
143
|
+
if (this.paused || this.closed) {
|
|
144
|
+
return;
|
|
145
|
+
}
|
|
146
|
+
const changes = new Set();
|
|
147
|
+
if (filePaths[0] != undefined) {
|
|
148
|
+
this.callbackUndelayed(filePaths[0], Date.now());
|
|
149
|
+
}
|
|
150
|
+
for (const filePath of filePaths) {
|
|
151
|
+
changes.add(filePath);
|
|
152
|
+
}
|
|
153
|
+
this.emitAggregatedChanges(changes);
|
|
154
|
+
}
|
|
155
|
+
close() {
|
|
156
|
+
this.closed = true;
|
|
157
|
+
}
|
|
158
|
+
pause() {
|
|
159
|
+
this.paused = true;
|
|
160
|
+
}
|
|
161
|
+
getContextTimeInfoEntries() {
|
|
162
|
+
return this.getFileTimeInfoEntries();
|
|
163
|
+
}
|
|
164
|
+
getFileTimeInfoEntries() {
|
|
165
|
+
const times = new Map();
|
|
166
|
+
for (const file of this.files) {
|
|
167
|
+
times.set(file, {
|
|
168
|
+
timestamp: this.virtualFs.statSync(file).mtimeMs,
|
|
169
|
+
safeTime: this.virtualFs.statSync(file).mtimeMs
|
|
170
|
+
});
|
|
171
|
+
}
|
|
172
|
+
return times;
|
|
173
|
+
}
|
|
174
|
+
emitAggregatedChanges(changes) {
|
|
175
|
+
const filePaths = Array.from(changes);
|
|
176
|
+
const files = filePaths.filter(filePath => this.files.includes(filePath)).sort();
|
|
177
|
+
const dirs = filePaths.filter(filePath => this.dirs.includes(filePath)).sort();
|
|
178
|
+
const missing = filePaths.filter(filePath => this.missing.includes(filePath)).sort();
|
|
179
|
+
const times = this.getFileTimeInfoEntries();
|
|
180
|
+
// @ts-ignore
|
|
181
|
+
this.callback(undefined, files, dirs, missing, times, times, new Set());
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJwYXRoIiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJyZXF1aXJlIiwiX21lbWZzIiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwiZSIsIldlYWtNYXAiLCJyIiwidCIsIl9fZXNNb2R1bGUiLCJkZWZhdWx0IiwiaGFzIiwiZ2V0IiwibiIsIl9fcHJvdG9fXyIsImEiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsInUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJpIiwic2V0IiwiV2VicGFja0h5YnJpZEZpbGVTeXN0ZW0iLCJjb25zdHJ1Y3RvciIsInBhdGhUb1ZpcnR1YWxEaXJlY3RvcnkiLCJpbm5lcklucHV0RmlsZVN5c3RlbSIsInZpcnR1YWxGcyIsIndhdGNoZXJzIiwidmlydHVhbFZvbHVtZSIsIlZvbHVtZSIsImZyb21KU09OIiwiY3JlYXRlRnNGcm9tVm9sdW1lIiwic2V0SW5uZXJJbnB1dEZpbGVTeXN0ZW0iLCJ1bmRlZmluZWQiLCJFcnJvciIsInJlYWRGaWxlIiwiZmlsZW5hbWUiLCJvcHRpb25zIiwiY2FsbGJhY2siLCJzdGFydHNXaXRoIiwicmVhZEZpbGVTeW5jIiwicmVhZGRpciIsImRpclBhdGgiLCJyZWFkZGlyU3luYyIsInJlYWRsaW5rIiwicmVhZGxpbmtTeW5jIiwibGlua1BhdGgiLCJzdGF0IiwiZnNQYXRoIiwic3RhdFN5bmMiLCJ3cml0ZUJhdGNoIiwiZmlsZUJhdGNoIiwiZmlsZVBhdGgiLCJrZXlzIiwibWtkaXJwU3luYyIsInBhcnNlIiwiZGlyIiwid3JpdGVGaWxlU3luYyIsImVtaXRDaGFuZ2VzIiwid2F0Y2giLCJmaWxlcyIsImRpcnMiLCJtaXNzaW5nIiwic3RhcnRUaW1lIiwiY2FsbGJhY2tVbmRlbGF5ZWQiLCJyZXN1bHQiLCJXZWJwYWNrVmlydHVhbFdhdGNoRmlsZVN5c3RlbVdhdGNoZXIiLCJ2YWx1ZXMiLCJmaWx0ZXIiLCJ4IiwicHVzaCIsIndhdGNoZXIiLCJleHBvcnRzIiwiY2xvc2VkIiwicGF1c2VkIiwiZmlsZVBhdGhzIiwiY2hhbmdlcyIsIlNldCIsIkRhdGUiLCJub3ciLCJhZGQiLCJlbWl0QWdncmVnYXRlZENoYW5nZXMiLCJjbG9zZSIsInBhdXNlIiwiZ2V0Q29udGV4dFRpbWVJbmZvRW50cmllcyIsImdldEZpbGVUaW1lSW5mb0VudHJpZXMiLCJ0aW1lcyIsIk1hcCIsImZpbGUiLCJ0aW1lc3RhbXAiLCJtdGltZU1zIiwic2FmZVRpbWUiLCJBcnJheSIsImZyb20iLCJpbmNsdWRlcyIsInNvcnQiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvQ0xJQ29tbWFuZHMvQnVpbGRTZXJ2ZXIvUmVzb3VyY2VzQ29udHJvbGxlcnMvRGV2U2VydmVycy9XZWJwYWNrSW5NZW1vcnlVdGlscy9XZWJwYWNrSHlicmlkRmlsZVN5c3RlbS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiB0c2xpbnQ6ZGlzYWJsZTpuby1hbnkgKi9cbmltcG9ydCB7IFN0YXRzIH0gZnJvbSBcImZzXCI7XG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gXCJwYXRoXCI7XG5cbmltcG9ydCB7IGNyZWF0ZUZzRnJvbVZvbHVtZSwgSUZzLCBWb2x1bWUgfSBmcm9tIFwibWVtZnNcIjtcbmltcG9ydCB7IFRFbmNvZGluZ0V4dGVuZGVkIH0gZnJvbSBcIm1lbWZzL2xpYi9lbmNvZGluZ1wiO1xuXG5pbXBvcnQgeyBJRmlsZVdyaXRlciB9IGZyb20gXCIuLi8uLi8uLi8uLi8uLi9CdWlsZFRhc2tzL0Zvcm0vR2VuZXJhdGVGb3JtXCI7XG5cbmltcG9ydCB7IElJbnB1dEZpbGVTeXN0ZW0gfSBmcm9tIFwiLi9JSW5wdXRGaWxlU3lzdGVtXCI7XG5pbXBvcnQge1xuICAgIEZpbGVTeXN0ZW1UaW1lSW5mb0VudHJ5LFxuICAgIElXYXRjaEZpbGVTeXN0ZW0sXG4gICAgSVdhdGNoRmlsZVN5c3RlbVdhdGNoZXIsXG4gICAgV2F0Y2hGaWxlU3lzdGVtQ2FsbGJhY2ssXG4gICAgV2F0Y2hGaWxlU3lzdGVtQ2FsbGJhY2tVbmRlbGF5ZWQsXG4gICAgV2F0Y2hGaWxlU3lzdGVtV2F0Y2hPcHRpb25zLFxufSBmcm9tIFwiLi9JV2F0Y2hGaWxlU3lzdGVtXCI7XG5cbmV4cG9ydCBjbGFzcyBXZWJwYWNrSHlicmlkRmlsZVN5c3RlbSBpbXBsZW1lbnRzIElGaWxlV3JpdGVyLCBJSW5wdXRGaWxlU3lzdGVtLCBJV2F0Y2hGaWxlU3lzdGVtIHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHBhdGhUb1ZpcnR1YWxEaXJlY3Rvcnk6IHN0cmluZztcbiAgICBwcml2YXRlIGlubmVySW5wdXRGaWxlU3lzdGVtITogSUlucHV0RmlsZVN5c3RlbTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHZpcnR1YWxGczogSUZzO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgd2F0Y2hlcnM6IFdlYnBhY2tWaXJ0dWFsV2F0Y2hGaWxlU3lzdGVtV2F0Y2hlcltdID0gW107XG5cbiAgICBwdWJsaWMgY29uc3RydWN0b3IocGF0aFRvVmlydHVhbERpcmVjdG9yeTogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMucGF0aFRvVmlydHVhbERpcmVjdG9yeSA9IHBhdGhUb1ZpcnR1YWxEaXJlY3Rvcnk7XG4gICAgICAgIGNvbnN0IHZpcnR1YWxWb2x1bWUgPSBWb2x1bWUuZnJvbUpTT04oe30pO1xuICAgICAgICB0aGlzLnZpcnR1YWxGcyA9IGNyZWF0ZUZzRnJvbVZvbHVtZSh2aXJ0dWFsVm9sdW1lKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc2V0SW5uZXJJbnB1dEZpbGVTeXN0ZW0oaW5uZXJJbnB1dEZpbGVTeXN0ZW06IElJbnB1dEZpbGVTeXN0ZW0pOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuaW5uZXJJbnB1dEZpbGVTeXN0ZW0gIT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJDYW5ub3Qgc2V0IGlubmVyIGZpbGUgc3lzdGVtIHR3aWNlXCIpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuaW5uZXJJbnB1dEZpbGVTeXN0ZW0gPSBpbm5lcklucHV0RmlsZVN5c3RlbTtcbiAgICB9XG5cbiAgICBwdWJsaWMgcmVhZEZpbGUoXG4gICAgICAgIGZpbGVuYW1lOiBzdHJpbmcsXG4gICAgICAgIG9wdGlvbnM6IHN0cmluZyB8IHsgZW5jb2Rpbmc6IHN0cmluZzsgZmxhZz86IHN0cmluZyB9LFxuICAgICAgICBjYWxsYmFjazogKGVycjogTm9kZUpTLkVycm5vRXhjZXB0aW9uLCBkYXRhOiBzdHJpbmcpID0+IHZvaWRcbiAgICApOiB2b2lkO1xuICAgIHB1YmxpYyByZWFkRmlsZShcbiAgICAgICAgZmlsZW5hbWU6IHN0cmluZyxcbiAgICAgICAgb3B0aW9uczogeyBmbGFnPzogc3RyaW5nIH0sXG4gICAgICAgIGNhbGxiYWNrOiAoZXJyOiBOb2RlSlMuRXJybm9FeGNlcHRpb24sIGRhdGE6IEJ1ZmZlcikgPT4gdm9pZFxuICAgICk6IHZvaWQ7XG4gICAgcHVibGljIHJlYWRGaWxlKGZpbGVuYW1lOiBzdHJpbmcsIGNhbGxiYWNrOiAoZXJyOiBOb2RlSlMuRXJybm9FeGNlcHRpb24sIGRhdGE6IEJ1ZmZlcikgPT4gdm9pZCk6IHZvaWQ7XG4gICAgcHVibGljIHJlYWRGaWxlKFxuICAgICAgICBmaWxlbmFtZTogc3RyaW5nLFxuICAgICAgICBvcHRpb25zOlxuICAgICAgICAgICAgfCBzdHJpbmdcbiAgICAgICAgICAgIHwgeyBlbmNvZGluZzogVEVuY29kaW5nRXh0ZW5kZWQ7IGZsYWc/OiBzdHJpbmcgfVxuICAgICAgICAgICAgfCB7IGZsYWc/OiBzdHJpbmcgfVxuICAgICAgICAgICAgfCAoKGVycjogTm9kZUpTLkVycm5vRXhjZXB0aW9uLCBkYXRhOiBCdWZmZXIpID0+IHZvaWQpLFxuICAgICAgICBjYWxsYmFjaz86XG4gICAgICAgICAgICB8ICgoZXJyOiBOb2RlSlMuRXJybm9FeGNlcHRpb24sIGRhdGE6IHN0cmluZykgPT4gdm9pZClcbiAgICAgICAgICAgIHwgKChlcnI6IE5vZGVKUy5FcnJub0V4Y2VwdGlvbiwgZGF0YTogQnVmZmVyKSA9PiB2b2lkKVxuICAgICk6IHZvaWQge1xuICAgICAgICBpZiAoZmlsZW5hbWUuc3RhcnRzV2l0aCh0aGlzLnBhdGhUb1ZpcnR1YWxEaXJlY3RvcnkpKSB7XG4gICAgICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgICB0aGlzLnZpcnR1YWxGcy5yZWFkRmlsZShmaWxlbmFtZSwgb3B0aW9ucywgY2FsbGJhY2spO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICAgICAgdGhpcy5pbm5lcklucHV0RmlsZVN5c3RlbS5yZWFkRmlsZShmaWxlbmFtZSwgb3B0aW9ucywgY2FsbGJhY2spO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIHJlYWRGaWxlU3luYyhmaWxlbmFtZTogc3RyaW5nLCBvcHRpb25zOiBzdHJpbmcgfCB7IGVuY29kaW5nOiBzdHJpbmc7IGZsYWc/OiBzdHJpbmcgfSk6IHN0cmluZztcbiAgICBwdWJsaWMgcmVhZEZpbGVTeW5jKGZpbGVuYW1lOiBzdHJpbmcsIG9wdGlvbnM/OiB7IGZsYWc/OiBzdHJpbmcgfSk6IEJ1ZmZlcjtcbiAgICBwdWJsaWMgcmVhZEZpbGVTeW5jKFxuICAgICAgICBmaWxlbmFtZTogc3RyaW5nLFxuICAgICAgICBvcHRpb25zPzogc3RyaW5nIHwgeyBlbmNvZGluZzogc3RyaW5nOyBmbGFnPzogc3RyaW5nIH0gfCB7IGZsYWc/OiBzdHJpbmcgfVxuICAgICk6IHN0cmluZyB8IEJ1ZmZlciB7XG4gICAgICAgIGlmIChmaWxlbmFtZS5zdGFydHNXaXRoKHRoaXMucGF0aFRvVmlydHVhbERpcmVjdG9yeSkpIHtcbiAgICAgICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgICAgIHJldHVybiB0aGlzLnZpcnR1YWxGcy5yZWFkRmlsZVN5bmMoZmlsZW5hbWUsIG9wdGlvbnMpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuaW5uZXJJbnB1dEZpbGVTeXN0ZW0ucmVhZEZpbGVTeW5jKGZpbGVuYW1lLCBvcHRpb25zKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyByZWFkZGlyKGRpclBhdGg6IHN0cmluZywgY2FsbGJhY2s6IChlcnI6IEVycm9yLCBmaWxlczogc3RyaW5nW10pID0+IHZvaWQpOiB2b2lkIHtcbiAgICAgICAgaWYgKGRpclBhdGguc3RhcnRzV2l0aCh0aGlzLnBhdGhUb1ZpcnR1YWxEaXJlY3RvcnkpKSB7XG4gICAgICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgICB0aGlzLnZpcnR1YWxGcy5yZWFkZGlyKGRpclBhdGgsIGNhbGxiYWNrKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgICAgIHRoaXMuaW5uZXJJbnB1dEZpbGVTeXN0ZW0ucmVhZGRpcihkaXJQYXRoLCBjYWxsYmFjayk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgcmVhZGRpclN5bmMoZGlyUGF0aDogc3RyaW5nKTogc3RyaW5nW10ge1xuICAgICAgICBpZiAoZGlyUGF0aC5zdGFydHNXaXRoKHRoaXMucGF0aFRvVmlydHVhbERpcmVjdG9yeSkpIHtcbiAgICAgICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgICAgIHJldHVybiB0aGlzLnZpcnR1YWxGcy5yZWFkZGlyU3luYyhkaXJQYXRoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmlubmVySW5wdXRGaWxlU3lzdGVtLnJlYWRkaXJTeW5jKGRpclBhdGgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICBwdWJsaWMgcmVhZGxpbmsoZGlyUGF0aDogc3RyaW5nLCBjYWxsYmFjaz86IChlcnI6IE5vZGVKUy5FcnJub0V4Y2VwdGlvbiwgbGlua1N0cmluZzogc3RyaW5nKSA9PiBhbnkpOiB2b2lkIHtcbiAgICAgICAgaWYgKGRpclBhdGguc3RhcnRzV2l0aCh0aGlzLnBhdGhUb1ZpcnR1YWxEaXJlY3RvcnkpKSB7XG4gICAgICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgICB0aGlzLnZpcnR1YWxGcy5yZWFkbGluayhkaXJQYXRoLCBjYWxsYmFjayk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgICB0aGlzLmlubmVySW5wdXRGaWxlU3lzdGVtLnJlYWRsaW5rKGRpclBhdGgsIGNhbGxiYWNrKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyByZWFkbGlua1N5bmMobGlua1BhdGg6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgICAgIGlmIChsaW5rUGF0aC5zdGFydHNXaXRoKHRoaXMucGF0aFRvVmlydHVhbERpcmVjdG9yeSkpIHtcbiAgICAgICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgICAgIHJldHVybiB0aGlzLnZpcnR1YWxGcy5yZWFkbGlua1N5bmMobGlua1BhdGgpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuaW5uZXJJbnB1dEZpbGVTeXN0ZW0ucmVhZGxpbmtTeW5jKGxpbmtQYXRoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgcHVibGljIHN0YXQoZnNQYXRoOiBzdHJpbmcsIGNhbGxiYWNrPzogKGVycjogTm9kZUpTLkVycm5vRXhjZXB0aW9uLCBzdGF0czogU3RhdHMpID0+IGFueSk6IHZvaWQge1xuICAgICAgICBpZiAoZnNQYXRoLnN0YXJ0c1dpdGgodGhpcy5wYXRoVG9WaXJ0dWFsRGlyZWN0b3J5KSkge1xuICAgICAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICAgICAgdGhpcy52aXJ0dWFsRnMuc3RhdChmc1BhdGgsIGNhbGxiYWNrKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgICAgIHRoaXMuaW5uZXJJbnB1dEZpbGVTeXN0ZW0uc3RhdChmc1BhdGgsIGNhbGxiYWNrKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0U3luYyhmc1BhdGg6IHN0cmluZyk6IFN0YXRzIHtcbiAgICAgICAgaWYgKGZzUGF0aC5zdGFydHNXaXRoKHRoaXMucGF0aFRvVmlydHVhbERpcmVjdG9yeSkpIHtcbiAgICAgICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgICAgIHJldHVybiB0aGlzLnZpcnR1YWxGcy5zdGF0U3luYyhmc1BhdGgpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuaW5uZXJJbnB1dEZpbGVTeXN0ZW0uc3RhdFN5bmMoZnNQYXRoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyB3cml0ZUJhdGNoKGZpbGVCYXRjaDogeyBbcDogc3RyaW5nXTogc3RyaW5nIH0pOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgZm9yIChjb25zdCBmaWxlUGF0aCBvZiBPYmplY3Qua2V5cyhmaWxlQmF0Y2gpKSB7XG4gICAgICAgICAgICB0aGlzLnZpcnR1YWxGcy5ta2RpcnBTeW5jKHBhdGgucGFyc2UoZmlsZVBhdGgpLmRpcik7XG4gICAgICAgICAgICAvLyBAdHMtaWdub3JlINCi0LDQvCDQsdCw0LMg0LIg0YLQsNC50L/QuNC90LPQsNGFXG4gICAgICAgICAgICB0aGlzLnZpcnR1YWxGcy53cml0ZUZpbGVTeW5jKGZpbGVQYXRoLCBmaWxlQmF0Y2hbZmlsZVBhdGhdLCBcInV0ZjhcIik7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5lbWl0Q2hhbmdlcyhmaWxlQmF0Y2gpO1xuICAgIH1cblxuICAgIHB1YmxpYyB3YXRjaChcbiAgICAgICAgZmlsZXM6IElMYXp5U2V0PHN0cmluZz4sXG4gICAgICAgIGRpcnM6IElMYXp5U2V0PHN0cmluZz4sXG4gICAgICAgIG1pc3Npbmc6IElMYXp5U2V0PHN0cmluZz4sXG4gICAgICAgIHN0YXJ0VGltZTogbnVtYmVyLFxuICAgICAgICBvcHRpb25zOiBXYXRjaEZpbGVTeXN0ZW1XYXRjaE9wdGlvbnMsXG4gICAgICAgIGNhbGxiYWNrOiBXYXRjaEZpbGVTeXN0ZW1DYWxsYmFjayxcbiAgICAgICAgY2FsbGJhY2tVbmRlbGF5ZWQ6IFdhdGNoRmlsZVN5c3RlbUNhbGxiYWNrVW5kZWxheWVkXG4gICAgKTogSVdhdGNoRmlsZVN5c3RlbVdhdGNoZXIge1xuICAgICAgICBjb25zdCByZXN1bHQgPSBuZXcgV2VicGFja1ZpcnR1YWxXYXRjaEZpbGVTeXN0ZW1XYXRjaGVyKFxuICAgICAgICAgICAgdGhpcy52aXJ0dWFsRnMsXG4gICAgICAgICAgICBbLi4uZmlsZXMudmFsdWVzKCldLmZpbHRlcih4ID0+IHguc3RhcnRzV2l0aCh0aGlzLnBhdGhUb1ZpcnR1YWxEaXJlY3RvcnkpKSxcbiAgICAgICAgICAgIFsuLi5kaXJzLnZhbHVlcygpXS5maWx0ZXIoeCA9PiB4LnN0YXJ0c1dpdGgodGhpcy5wYXRoVG9WaXJ0dWFsRGlyZWN0b3J5KSksXG4gICAgICAgICAgICBbLi4ubWlzc2luZy52YWx1ZXMoKV0uZmlsdGVyKHggPT4geC5zdGFydHNXaXRoKHRoaXMucGF0aFRvVmlydHVhbERpcmVjdG9yeSkpLFxuICAgICAgICAgICAgY2FsbGJhY2ssXG4gICAgICAgICAgICBjYWxsYmFja1VuZGVsYXllZFxuICAgICAgICApO1xuICAgICAgICB0aGlzLndhdGNoZXJzLnB1c2gocmVzdWx0KTtcbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9XG5cbiAgICBwcml2YXRlIGVtaXRDaGFuZ2VzKGZpbGVCYXRjaDogeyBbcDogc3RyaW5nXTogc3RyaW5nIH0pOiB2b2lkIHtcbiAgICAgICAgZm9yIChjb25zdCB3YXRjaGVyIG9mIHRoaXMud2F0Y2hlcnMpIHtcbiAgICAgICAgICAgIHdhdGNoZXIuZW1pdENoYW5nZXMoT2JqZWN0LmtleXMoZmlsZUJhdGNoKSk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbmNsYXNzIFdlYnBhY2tWaXJ0dWFsV2F0Y2hGaWxlU3lzdGVtV2F0Y2hlciBpbXBsZW1lbnRzIElXYXRjaEZpbGVTeXN0ZW1XYXRjaGVyIHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHZpcnR1YWxGczogSUZzO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZmlsZXM6IHN0cmluZ1tdO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZGlyczogc3RyaW5nW107XG4gICAgcHJpdmF0ZSByZWFkb25seSBtaXNzaW5nOiBzdHJpbmdbXTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNhbGxiYWNrOiBXYXRjaEZpbGVTeXN0ZW1DYWxsYmFjaztcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNhbGxiYWNrVW5kZWxheWVkOiBXYXRjaEZpbGVTeXN0ZW1DYWxsYmFja1VuZGVsYXllZDtcblxuICAgIHByaXZhdGUgY2xvc2VkID0gZmFsc2U7XG4gICAgcHJpdmF0ZSBwYXVzZWQgPSBmYWxzZTtcblxuICAgIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICAgICAgdmlydHVhbEZzOiBJRnMsXG4gICAgICAgIGZpbGVzOiBzdHJpbmdbXSxcbiAgICAgICAgZGlyczogc3RyaW5nW10sXG4gICAgICAgIG1pc3Npbmc6IHN0cmluZ1tdLFxuICAgICAgICBjYWxsYmFjazogV2F0Y2hGaWxlU3lzdGVtQ2FsbGJhY2ssXG4gICAgICAgIGNhbGxiYWNrVW5kZWxheWVkOiBXYXRjaEZpbGVTeXN0ZW1DYWxsYmFja1VuZGVsYXllZFxuICAgICkge1xuICAgICAgICB0aGlzLnZpcnR1YWxGcyA9IHZpcnR1YWxGcztcbiAgICAgICAgdGhpcy5maWxlcyA9IGZpbGVzO1xuICAgICAgICB0aGlzLmRpcnMgPSBkaXJzO1xuICAgICAgICB0aGlzLm1pc3NpbmcgPSBtaXNzaW5nO1xuICAgICAgICB0aGlzLmNhbGxiYWNrID0gY2FsbGJhY2s7XG4gICAgICAgIHRoaXMuY2FsbGJhY2tVbmRlbGF5ZWQgPSBjYWxsYmFja1VuZGVsYXllZDtcbiAgICB9XG5cbiAgICBwdWJsaWMgZW1pdENoYW5nZXMoZmlsZVBhdGhzOiBzdHJpbmdbXSk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5wYXVzZWQgfHwgdGhpcy5jbG9zZWQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBjaGFuZ2VzOiBTZXQ8c3RyaW5nPiA9IG5ldyBTZXQoKTtcbiAgICAgICAgaWYgKGZpbGVQYXRoc1swXSAhPSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHRoaXMuY2FsbGJhY2tVbmRlbGF5ZWQoZmlsZVBhdGhzWzBdLCBEYXRlLm5vdygpKTtcbiAgICAgICAgfVxuICAgICAgICBmb3IgKGNvbnN0IGZpbGVQYXRoIG9mIGZpbGVQYXRocykge1xuICAgICAgICAgICAgY2hhbmdlcy5hZGQoZmlsZVBhdGgpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5lbWl0QWdncmVnYXRlZENoYW5nZXMoY2hhbmdlcyk7XG4gICAgfVxuXG4gICAgcHVibGljIGNsb3NlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNsb3NlZCA9IHRydWU7XG4gICAgfVxuXG4gICAgcHVibGljIHBhdXNlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnBhdXNlZCA9IHRydWU7XG4gICAgfVxuXG4gICAgcHVibGljIGdldENvbnRleHRUaW1lSW5mb0VudHJpZXMoKTogTWFwPHN0cmluZywgRmlsZVN5c3RlbVRpbWVJbmZvRW50cnk+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0RmlsZVRpbWVJbmZvRW50cmllcygpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRGaWxlVGltZUluZm9FbnRyaWVzKCk6IE1hcDxzdHJpbmcsIEZpbGVTeXN0ZW1UaW1lSW5mb0VudHJ5PiB7XG4gICAgICAgIGNvbnN0IHRpbWVzOiBNYXA8c3RyaW5nLCBGaWxlU3lzdGVtVGltZUluZm9FbnRyeT4gPSBuZXcgTWFwKCk7XG4gICAgICAgIGZvciAoY29uc3QgZmlsZSBvZiB0aGlzLmZpbGVzKSB7XG4gICAgICAgICAgICB0aW1lcy5zZXQoZmlsZSwge1xuICAgICAgICAgICAgICAgIHRpbWVzdGFtcDogdGhpcy52aXJ0dWFsRnMuc3RhdFN5bmMoZmlsZSkubXRpbWVNcyxcbiAgICAgICAgICAgICAgICBzYWZlVGltZTogdGhpcy52aXJ0dWFsRnMuc3RhdFN5bmMoZmlsZSkubXRpbWVNcyxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0aW1lcztcbiAgICB9XG5cbiAgICBwcml2YXRlIGVtaXRBZ2dyZWdhdGVkQ2hhbmdlcyhjaGFuZ2VzOiBTZXQ8c3RyaW5nPik6IHZvaWQge1xuICAgICAgICBjb25zdCBmaWxlUGF0aHMgPSBBcnJheS5mcm9tKGNoYW5nZXMpO1xuICAgICAgICBjb25zdCBmaWxlcyA9IGZpbGVQYXRocy5maWx0ZXIoZmlsZVBhdGggPT4gdGhpcy5maWxlcy5pbmNsdWRlcyhmaWxlUGF0aCkpLnNvcnQoKTtcbiAgICAgICAgY29uc3QgZGlycyA9IGZpbGVQYXRocy5maWx0ZXIoZmlsZVBhdGggPT4gdGhpcy5kaXJzLmluY2x1ZGVzKGZpbGVQYXRoKSkuc29ydCgpO1xuICAgICAgICBjb25zdCBtaXNzaW5nID0gZmlsZVBhdGhzLmZpbHRlcihmaWxlUGF0aCA9PiB0aGlzLm1pc3NpbmcuaW5jbHVkZXMoZmlsZVBhdGgpKS5zb3J0KCk7XG4gICAgICAgIGNvbnN0IHRpbWVzID0gdGhpcy5nZXRGaWxlVGltZUluZm9FbnRyaWVzKCk7XG4gICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgdGhpcy5jYWxsYmFjayh1bmRlZmluZWQsIGZpbGVzLCBkaXJzLCBtaXNzaW5nLCB0aW1lcywgdGltZXMsIG5ldyBTZXQoKSk7XG4gICAgfVxufVxuXG5pbnRlcmZhY2UgSUxhenlTZXQ8VD4ge1xuICAgIHZhbHVlcygpOiBJdGVyYWJsZTxUPjtcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBRUEsSUFBQUEsSUFBQSxHQUFBQyx1QkFBQSxDQUFBQyxPQUFBO0FBRUEsSUFBQUMsTUFBQSxHQUFBRCxPQUFBO0FBQXdELFNBQUFFLHlCQUFBQyxDQUFBLDZCQUFBQyxPQUFBLG1CQUFBQyxDQUFBLE9BQUFELE9BQUEsSUFBQUUsQ0FBQSxPQUFBRixPQUFBLFlBQUFGLHdCQUFBLFlBQUFBLENBQUFDLENBQUEsV0FBQUEsQ0FBQSxHQUFBRyxDQUFBLEdBQUFELENBQUEsS0FBQUYsQ0FBQTtBQUFBLFNBQUFKLHdCQUFBSSxDQUFBLEVBQUFFLENBQUEsU0FBQUEsQ0FBQSxJQUFBRixDQUFBLElBQUFBLENBQUEsQ0FBQUksVUFBQSxTQUFBSixDQUFBLGVBQUFBLENBQUEsdUJBQUFBLENBQUEseUJBQUFBLENBQUEsV0FBQUssT0FBQSxFQUFBTCxDQUFBLFFBQUFHLENBQUEsR0FBQUosd0JBQUEsQ0FBQUcsQ0FBQSxPQUFBQyxDQUFBLElBQUFBLENBQUEsQ0FBQUcsR0FBQSxDQUFBTixDQUFBLFVBQUFHLENBQUEsQ0FBQUksR0FBQSxDQUFBUCxDQUFBLE9BQUFRLENBQUEsS0FBQUMsU0FBQSxVQUFBQyxDQUFBLEdBQUFDLE1BQUEsQ0FBQUMsY0FBQSxJQUFBRCxNQUFBLENBQUFFLHdCQUFBLFdBQUFDLENBQUEsSUFBQWQsQ0FBQSxvQkFBQWMsQ0FBQSxPQUFBQyxjQUFBLENBQUFDLElBQUEsQ0FBQWhCLENBQUEsRUFBQWMsQ0FBQSxTQUFBRyxDQUFBLEdBQUFQLENBQUEsR0FBQUMsTUFBQSxDQUFBRSx3QkFBQSxDQUFBYixDQUFBLEVBQUFjLENBQUEsVUFBQUcsQ0FB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
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WebpackHybridFileSystem.js","names":["path","_interopRequireWildcard","require","_memfs","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","WebpackHybridFileSystem","constructor","pathToVirtualDirectory","innerInputFileSystem","virtualFs","watchers","virtualVolume","Volume","fromJSON","createFsFromVolume","setInnerInputFileSystem","undefined","Error","readFile","filename","options","callback","startsWith","readFileSync","readdir","dirPath","readdirSync","readlink","readlinkSync","linkPath","stat","fsPath","statSync","writeBatch","fileBatch","filePath","keys","mkdirpSync","parse","dir","writeFileSync","emitChanges","watch","files","dirs","missing","startTime","callbackUndelayed","result","WebpackVirtualWatchFileSystemWatcher","values","filter","x","push","watcher","exports","closed","paused","filePaths","changes","Set","Date","now","add","emitAggregatedChanges","close","pause","getContextTimeInfoEntries","getFileTimeInfoEntries","times","Map","file","timestamp","mtimeMs","safeTime","Array","from","includes","sort"],"sources":["../../../../../../../../src/CLICommands/BuildServer/ResourcesControllers/DevServers/WebpackInMemoryUtils/WebpackHybridFileSystem.ts"],"sourcesContent":["/* tslint:disable:no-any */\nimport { Stats } from \"fs\";\nimport * as path from \"path\";\n\nimport { createFsFromVolume, IFs, Volume } from \"memfs\";\nimport { TEncodingExtended } from \"memfs/lib/encoding\";\n\nimport { IFileWriter } from \"../../../../../BuildTasks/Form/GenerateForm\";\n\nimport { IInputFileSystem } from \"./IInputFileSystem\";\nimport {\n FileSystemTimeInfoEntry,\n IWatchFileSystem,\n IWatchFileSystemWatcher,\n WatchFileSystemCallback,\n WatchFileSystemCallbackUndelayed,\n WatchFileSystemWatchOptions,\n} from \"./IWatchFileSystem\";\n\nexport class WebpackHybridFileSystem implements IFileWriter, IInputFileSystem, IWatchFileSystem {\n private readonly pathToVirtualDirectory: string;\n private innerInputFileSystem!: IInputFileSystem;\n private readonly virtualFs: IFs;\n private readonly watchers: WebpackVirtualWatchFileSystemWatcher[] = [];\n\n public constructor(pathToVirtualDirectory: string) {\n this.pathToVirtualDirectory = pathToVirtualDirectory;\n const virtualVolume = Volume.fromJSON({});\n this.virtualFs = createFsFromVolume(virtualVolume);\n }\n\n public setInnerInputFileSystem(innerInputFileSystem: IInputFileSystem): void {\n if (this.innerInputFileSystem != undefined) {\n throw new Error(\"Cannot set inner file system twice\");\n }\n this.innerInputFileSystem = innerInputFileSystem;\n }\n\n public readFile(\n filename: string,\n options: string | { encoding: string; flag?: string },\n callback: (err: NodeJS.ErrnoException, data: string) => void\n ): void;\n public readFile(\n filename: string,\n options: { flag?: string },\n callback: (err: NodeJS.ErrnoException, data: Buffer) => void\n ): void;\n public readFile(filename: string, callback: (err: NodeJS.ErrnoException, data: Buffer) => void): void;\n public readFile(\n filename: string,\n options:\n | string\n | { encoding: TEncodingExtended; flag?: string }\n | { flag?: string }\n | ((err: NodeJS.ErrnoException, data: Buffer) => void),\n callback?:\n | ((err: NodeJS.ErrnoException, data: string) => void)\n | ((err: NodeJS.ErrnoException, data: Buffer) => void)\n ): void {\n if (filename.startsWith(this.pathToVirtualDirectory)) {\n // @ts-ignore\n this.virtualFs.readFile(filename, options, callback);\n } else {\n // @ts-ignore\n this.innerInputFileSystem.readFile(filename, options, callback);\n }\n }\n\n public readFileSync(filename: string, options: string | { encoding: string; flag?: string }): string;\n public readFileSync(filename: string, options?: { flag?: string }): Buffer;\n public readFileSync(\n filename: string,\n options?: string | { encoding: string; flag?: string } | { flag?: string }\n ): string | Buffer {\n if (filename.startsWith(this.pathToVirtualDirectory)) {\n // @ts-ignore\n return this.virtualFs.readFileSync(filename, options);\n } else {\n // @ts-ignore\n return this.innerInputFileSystem.readFileSync(filename, options);\n }\n }\n\n public readdir(dirPath: string, callback: (err: Error, files: string[]) => void): void {\n if (dirPath.startsWith(this.pathToVirtualDirectory)) {\n // @ts-ignore\n this.virtualFs.readdir(dirPath, callback);\n } else {\n // @ts-ignore\n this.innerInputFileSystem.readdir(dirPath, callback);\n }\n }\n\n public readdirSync(dirPath: string): string[] {\n if (dirPath.startsWith(this.pathToVirtualDirectory)) {\n // @ts-ignore\n return this.virtualFs.readdirSync(dirPath);\n } else {\n // @ts-ignore\n return this.innerInputFileSystem.readdirSync(dirPath);\n }\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n public readlink(dirPath: string, callback?: (err: NodeJS.ErrnoException, linkString: string) => any): void {\n if (dirPath.startsWith(this.pathToVirtualDirectory)) {\n // @ts-ignore\n this.virtualFs.readlink(dirPath, callback);\n } else {\n // @ts-ignore\n this.innerInputFileSystem.readlink(dirPath, callback);\n }\n }\n\n public readlinkSync(linkPath: string): string {\n if (linkPath.startsWith(this.pathToVirtualDirectory)) {\n // @ts-ignore\n return this.virtualFs.readlinkSync(linkPath);\n } else {\n // @ts-ignore\n return this.innerInputFileSystem.readlinkSync(linkPath);\n }\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n public stat(fsPath: string, callback?: (err: NodeJS.ErrnoException, stats: Stats) => any): void {\n if (fsPath.startsWith(this.pathToVirtualDirectory)) {\n // @ts-ignore\n this.virtualFs.stat(fsPath, callback);\n } else {\n // @ts-ignore\n this.innerInputFileSystem.stat(fsPath, callback);\n }\n }\n\n public statSync(fsPath: string): Stats {\n if (fsPath.startsWith(this.pathToVirtualDirectory)) {\n // @ts-ignore\n return this.virtualFs.statSync(fsPath);\n } else {\n // @ts-ignore\n return this.innerInputFileSystem.statSync(fsPath);\n }\n }\n\n public async writeBatch(fileBatch: { [p: string]: string }): Promise<void> {\n for (const filePath of Object.keys(fileBatch)) {\n this.virtualFs.mkdirpSync(path.parse(filePath).dir);\n // @ts-ignore Там баг в тайпингах\n this.virtualFs.writeFileSync(filePath, fileBatch[filePath], \"utf8\");\n }\n this.emitChanges(fileBatch);\n }\n\n public watch(\n files: ILazySet<string>,\n dirs: ILazySet<string>,\n missing: ILazySet<string>,\n startTime: number,\n options: WatchFileSystemWatchOptions,\n callback: WatchFileSystemCallback,\n callbackUndelayed: WatchFileSystemCallbackUndelayed\n ): IWatchFileSystemWatcher {\n const result = new WebpackVirtualWatchFileSystemWatcher(\n this.virtualFs,\n [...files.values()].filter(x => x.startsWith(this.pathToVirtualDirectory)),\n [...dirs.values()].filter(x => x.startsWith(this.pathToVirtualDirectory)),\n [...missing.values()].filter(x => x.startsWith(this.pathToVirtualDirectory)),\n callback,\n callbackUndelayed\n );\n this.watchers.push(result);\n return result;\n }\n\n private emitChanges(fileBatch: { [p: string]: string }): void {\n for (const watcher of this.watchers) {\n watcher.emitChanges(Object.keys(fileBatch));\n }\n }\n}\n\nclass WebpackVirtualWatchFileSystemWatcher implements IWatchFileSystemWatcher {\n private readonly virtualFs: IFs;\n private readonly files: string[];\n private readonly dirs: string[];\n private readonly missing: string[];\n private readonly callback: WatchFileSystemCallback;\n private readonly callbackUndelayed: WatchFileSystemCallbackUndelayed;\n\n private closed = false;\n private paused = false;\n\n public constructor(\n virtualFs: IFs,\n files: string[],\n dirs: string[],\n missing: string[],\n callback: WatchFileSystemCallback,\n callbackUndelayed: WatchFileSystemCallbackUndelayed\n ) {\n this.virtualFs = virtualFs;\n this.files = files;\n this.dirs = dirs;\n this.missing = missing;\n this.callback = callback;\n this.callbackUndelayed = callbackUndelayed;\n }\n\n public emitChanges(filePaths: string[]): void {\n if (this.paused || this.closed) {\n return;\n }\n const changes: Set<string> = new Set();\n if (filePaths[0] != undefined) {\n this.callbackUndelayed(filePaths[0], Date.now());\n }\n for (const filePath of filePaths) {\n changes.add(filePath);\n }\n\n this.emitAggregatedChanges(changes);\n }\n\n public close(): void {\n this.closed = true;\n }\n\n public pause(): void {\n this.paused = true;\n }\n\n public getContextTimeInfoEntries(): Map<string, FileSystemTimeInfoEntry> {\n return this.getFileTimeInfoEntries();\n }\n\n public getFileTimeInfoEntries(): Map<string, FileSystemTimeInfoEntry> {\n const times: Map<string, FileSystemTimeInfoEntry> = new Map();\n for (const file of this.files) {\n times.set(file, {\n timestamp: this.virtualFs.statSync(file).mtimeMs,\n safeTime: this.virtualFs.statSync(file).mtimeMs,\n });\n }\n return times;\n }\n\n private emitAggregatedChanges(changes: Set<string>): void {\n const filePaths = Array.from(changes);\n const files = filePaths.filter(filePath => this.files.includes(filePath)).sort();\n const dirs = filePaths.filter(filePath => this.dirs.includes(filePath)).sort();\n const missing = filePaths.filter(filePath => this.missing.includes(filePath)).sort();\n const times = this.getFileTimeInfoEntries();\n // @ts-ignore\n this.callback(undefined, files, dirs, missing, times, times, new Set());\n }\n}\n\ninterface ILazySet<T> {\n values(): Iterable<T>;\n}\n"],"mappings":"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","ignoreList":[]}
|
package/distr/Tools/src/CLICommands/BuildServer/ResourcesControllers/Directories/FarmDirectory.js
ADDED
|
@@ -0,0 +1,213 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.FarmDirectory = void 0;
|
|
8
|
+
var _path = _interopRequireDefault(require("path"));
|
|
9
|
+
var _fs = require("fs");
|
|
10
|
+
var _fsExtra = require("fs-extra");
|
|
11
|
+
var _pLimit = _interopRequireDefault(require("p-limit"));
|
|
12
|
+
var _FormGlobsUtils = require("../../../../Commons/FormGlobsUtils");
|
|
13
|
+
var _FsUtils = require("../../../../Commons/FsUtils");
|
|
14
|
+
var _TypingUtils = require("../../../../../../Common/TypingUtils");
|
|
15
|
+
var _ExtractGfvsFromFileName = require("../../../../Commons/ExtractGfvsFromFileName");
|
|
16
|
+
var _WellKnownDirectories = require("../../../../../../Common/WellKnownDirectories");
|
|
17
|
+
class FarmDirectory {
|
|
18
|
+
constructor(farmDirectory) {
|
|
19
|
+
this.farmDirectory = void 0;
|
|
20
|
+
this.gfvToPathMap = void 0;
|
|
21
|
+
this.allGfvInfos = void 0;
|
|
22
|
+
this.ensureGfvDirectoriesUpdated = void 0;
|
|
23
|
+
this.farmDirectory = farmDirectory;
|
|
24
|
+
const updateGfvDirectoriesLimit = (0, _pLimit.default)(1);
|
|
25
|
+
this.ensureGfvDirectoriesUpdated = async () => {
|
|
26
|
+
if (this.allGfvInfos == undefined || this.gfvToPathMap == undefined) {
|
|
27
|
+
await updateGfvDirectoriesLimit(async () => {
|
|
28
|
+
if (this.allGfvInfos == undefined || this.gfvToPathMap == undefined) {
|
|
29
|
+
await this.updateGfvDirectories();
|
|
30
|
+
}
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
};
|
|
34
|
+
setTimeout(() => {
|
|
35
|
+
// eslint-disable-next-line @typescript-eslint/no-floating-promises
|
|
36
|
+
updateGfvDirectoriesLimit(() => this.updateGfvDirectories());
|
|
37
|
+
}, 60000);
|
|
38
|
+
}
|
|
39
|
+
async updateGfvDirectories() {
|
|
40
|
+
this.allGfvInfos = await _FormGlobsUtils.FormGlobs.enumerateFormsInRepository(_path.default.join(this.farmDirectory, ".."));
|
|
41
|
+
this.gfvToPathMap = new Map(this.allGfvInfos.map(x => [x.gfv, x.formPath]));
|
|
42
|
+
}
|
|
43
|
+
async getAllPicklists() {
|
|
44
|
+
return await (0, _FsUtils.globAsync)("*", {
|
|
45
|
+
cwd: _path.default.join(this.farmDirectory, "picklists")
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
async getFormDirectory() {
|
|
49
|
+
return await (0, _FsUtils.globAsync)("*", {
|
|
50
|
+
cwd: _path.default.join(this.farmDirectory, "picklists")
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
async enumerateAllGfvs() {
|
|
54
|
+
var _this$allGfvInfos;
|
|
55
|
+
await this.ensureGfvDirectoriesUpdated();
|
|
56
|
+
return (_this$allGfvInfos = this.allGfvInfos) !== null && _this$allGfvInfos !== void 0 ? _this$allGfvInfos : (0, _TypingUtils.reject)();
|
|
57
|
+
}
|
|
58
|
+
async getGfvToPathMap() {
|
|
59
|
+
var _this$gfvToPathMap;
|
|
60
|
+
await this.ensureGfvDirectoriesUpdated();
|
|
61
|
+
return (_this$gfvToPathMap = this.gfvToPathMap) !== null && _this$gfvToPathMap !== void 0 ? _this$gfvToPathMap : (0, _TypingUtils.reject)();
|
|
62
|
+
}
|
|
63
|
+
async getAllGfvs() {
|
|
64
|
+
const formGfvPaths = await this.enumerateAllGfvs();
|
|
65
|
+
return formGfvPaths.map(x => x.gfv);
|
|
66
|
+
}
|
|
67
|
+
async getAllGfvWithLocations() {
|
|
68
|
+
const formGfvPaths = await this.enumerateAllGfvs();
|
|
69
|
+
return formGfvPaths;
|
|
70
|
+
}
|
|
71
|
+
async getFormJsonPath(gfv) {
|
|
72
|
+
var _this$gfvToPathMap2;
|
|
73
|
+
await this.ensureGfvDirectoriesUpdated();
|
|
74
|
+
const formDirPath = ((_this$gfvToPathMap2 = this.gfvToPathMap) !== null && _this$gfvToPathMap2 !== void 0 ? _this$gfvToPathMap2 : (0, _TypingUtils.reject)()).get(gfv);
|
|
75
|
+
if (formDirPath != undefined && (0, _fs.existsSync)(_path.default.join(formDirPath, _WellKnownDirectories.WellKnownDirectories.FormJsonFileName))) {
|
|
76
|
+
return _path.default.join(formDirPath, _WellKnownDirectories.WellKnownDirectories.FormJsonFileName);
|
|
77
|
+
}
|
|
78
|
+
return undefined;
|
|
79
|
+
}
|
|
80
|
+
async getAllConverterFilePaths() {
|
|
81
|
+
const result = [];
|
|
82
|
+
for (const gfvInfo of await this.enumerateAllGfvs()) {
|
|
83
|
+
result.push(...(await (0, _FsUtils.globAsync)("converters/*", {
|
|
84
|
+
cwd: gfvInfo.formPath
|
|
85
|
+
})));
|
|
86
|
+
}
|
|
87
|
+
return result;
|
|
88
|
+
}
|
|
89
|
+
async getConverterFilePathByFileNameOrUndefined(filename) {
|
|
90
|
+
const gfvToPathMap = await this.getGfvToPathMap();
|
|
91
|
+
for (const gfv of (0, _ExtractGfvsFromFileName.extractGfvsFromFileName)(filename)) {
|
|
92
|
+
const formPath = gfvToPathMap.get(gfv);
|
|
93
|
+
if (formPath == undefined) {
|
|
94
|
+
continue;
|
|
95
|
+
}
|
|
96
|
+
const filePath = _path.default.join(formPath, "converters", filename);
|
|
97
|
+
if (await (0, _fsExtra.pathExists)(filePath)) {
|
|
98
|
+
return filePath;
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
return undefined;
|
|
102
|
+
}
|
|
103
|
+
async getAllSchemasFilePaths() {
|
|
104
|
+
const result = [];
|
|
105
|
+
for (const gfvInfo of await this.enumerateAllGfvs()) {
|
|
106
|
+
result.push(...(await (0, _FsUtils.globAsync)("schemas/*", {
|
|
107
|
+
cwd: gfvInfo.formPath
|
|
108
|
+
})));
|
|
109
|
+
}
|
|
110
|
+
return result;
|
|
111
|
+
}
|
|
112
|
+
async getSchemaFilePathByFileNameOrUndefined(filename) {
|
|
113
|
+
for (const gfvInfo of await this.enumerateAllGfvs()) {
|
|
114
|
+
const filePath = _path.default.join(gfvInfo.formPath, "schemas", filename);
|
|
115
|
+
if (await (0, _fsExtra.pathExists)(filePath)) {
|
|
116
|
+
return filePath;
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
return undefined;
|
|
120
|
+
}
|
|
121
|
+
async getAllNormalizeFilePaths() {
|
|
122
|
+
const result = [];
|
|
123
|
+
for (const gfvInfo of await this.enumerateAllGfvs()) {
|
|
124
|
+
result.push(...(await (0, _FsUtils.globAsync)("normalize/*", {
|
|
125
|
+
cwd: gfvInfo.formPath
|
|
126
|
+
})));
|
|
127
|
+
}
|
|
128
|
+
return result;
|
|
129
|
+
}
|
|
130
|
+
async getNormalizeFilePathByFileNameOrUndefined(filename) {
|
|
131
|
+
for (const gfvInfo of await this.enumerateAllGfvs()) {
|
|
132
|
+
const filePath = _path.default.join(gfvInfo.formPath, "normalize", filename);
|
|
133
|
+
if (await (0, _fsExtra.pathExists)(filePath)) {
|
|
134
|
+
return filePath;
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
return undefined;
|
|
138
|
+
}
|
|
139
|
+
async getAllUnmapFilePaths() {
|
|
140
|
+
const result = [];
|
|
141
|
+
for (const gfvInfo of await this.enumerateAllGfvs()) {
|
|
142
|
+
result.push(...(await (0, _FsUtils.globAsync)("unmap/*", {
|
|
143
|
+
cwd: gfvInfo.formPath
|
|
144
|
+
})));
|
|
145
|
+
}
|
|
146
|
+
return result;
|
|
147
|
+
}
|
|
148
|
+
async getUnmapFilePathByFileNameOrUndefined(filename) {
|
|
149
|
+
for (const gfvInfo of await this.enumerateAllGfvs()) {
|
|
150
|
+
const filePath = _path.default.join(gfvInfo.formPath, "unmap", filename);
|
|
151
|
+
if (await (0, _fsExtra.pathExists)(filePath)) {
|
|
152
|
+
return filePath;
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
return undefined;
|
|
156
|
+
}
|
|
157
|
+
async getAllMapFilePaths() {
|
|
158
|
+
const result = [];
|
|
159
|
+
for (const gfvInfo of await this.enumerateAllGfvs()) {
|
|
160
|
+
result.push(...(await (0, _FsUtils.globAsync)("map/*", {
|
|
161
|
+
cwd: gfvInfo.formPath
|
|
162
|
+
})));
|
|
163
|
+
}
|
|
164
|
+
return result;
|
|
165
|
+
}
|
|
166
|
+
async getMapFilePathByFileNameOrUndefined(filename) {
|
|
167
|
+
for (const gfvInfo of await this.enumerateAllGfvs()) {
|
|
168
|
+
const filePath = _path.default.join(gfvInfo.formPath, "map", filename);
|
|
169
|
+
if (await (0, _fsExtra.pathExists)(filePath)) {
|
|
170
|
+
return filePath;
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
return undefined;
|
|
174
|
+
}
|
|
175
|
+
async getAllPatchFilePaths() {
|
|
176
|
+
const result = [];
|
|
177
|
+
for (const gfvInfo of await this.enumerateAllGfvs()) {
|
|
178
|
+
result.push(...(await (0, _FsUtils.globAsync)("patch/*", {
|
|
179
|
+
cwd: gfvInfo.formPath
|
|
180
|
+
})));
|
|
181
|
+
}
|
|
182
|
+
return result;
|
|
183
|
+
}
|
|
184
|
+
async getPatchFilePathByFileNameOrUndefined(filename) {
|
|
185
|
+
for (const gfvInfo of await this.enumerateAllGfvs()) {
|
|
186
|
+
const filePath = _path.default.join(gfvInfo.formPath, "patch", filename);
|
|
187
|
+
if (await (0, _fsExtra.pathExists)(filePath)) {
|
|
188
|
+
return filePath;
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
return undefined;
|
|
192
|
+
}
|
|
193
|
+
async getAllMergersFilePaths() {
|
|
194
|
+
const result = [];
|
|
195
|
+
for (const gfvInfo of await this.enumerateAllGfvs()) {
|
|
196
|
+
result.push(...(await (0, _FsUtils.globAsync)("mergers/*", {
|
|
197
|
+
cwd: gfvInfo.formPath
|
|
198
|
+
})));
|
|
199
|
+
}
|
|
200
|
+
return result;
|
|
201
|
+
}
|
|
202
|
+
async getMergersFilePathByFileNameOrUndefined(filename) {
|
|
203
|
+
for (const gfvInfo of await this.enumerateAllGfvs()) {
|
|
204
|
+
const filePath = _path.default.join(gfvInfo.formPath, "mergers", filename);
|
|
205
|
+
if (await (0, _fsExtra.pathExists)(filePath)) {
|
|
206
|
+
return filePath;
|
|
207
|
+
}
|
|
208
|
+
}
|
|
209
|
+
return undefined;
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
exports.FarmDirectory = FarmDirectory;
|
|
213
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcGF0aCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwiX2ZzIiwiX2ZzRXh0cmEiLCJfcExpbWl0IiwiX0Zvcm1HbG9ic1V0aWxzIiwiX0ZzVXRpbHMiLCJfVHlwaW5nVXRpbHMiLCJfRXh0cmFjdEdmdnNGcm9tRmlsZU5hbWUiLCJfV2VsbEtub3duRGlyZWN0b3JpZXMiLCJGYXJtRGlyZWN0b3J5IiwiY29uc3RydWN0b3IiLCJmYXJtRGlyZWN0b3J5IiwiZ2Z2VG9QYXRoTWFwIiwiYWxsR2Z2SW5mb3MiLCJlbnN1cmVHZnZEaXJlY3Rvcmllc1VwZGF0ZWQiLCJ1cGRhdGVHZnZEaXJlY3Rvcmllc0xpbWl0IiwicExpbWl0IiwidW5kZWZpbmVkIiwidXBkYXRlR2Z2RGlyZWN0b3JpZXMiLCJzZXRUaW1lb3V0IiwiRm9ybUdsb2JzIiwiZW51bWVyYXRlRm9ybXNJblJlcG9zaXRvcnkiLCJwYXRoIiwiam9pbiIsIk1hcCIsIm1hcCIsIngiLCJnZnYiLCJmb3JtUGF0aCIsImdldEFsbFBpY2tsaXN0cyIsImdsb2JBc3luYyIsImN3ZCIsImdldEZvcm1EaXJlY3RvcnkiLCJlbnVtZXJhdGVBbGxHZnZzIiwiX3RoaXMkYWxsR2Z2SW5mb3MiLCJyZWplY3QiLCJnZXRHZnZUb1BhdGhNYXAiLCJfdGhpcyRnZnZUb1BhdGhNYXAiLCJnZXRBbGxHZnZzIiwiZm9ybUdmdlBhdGhzIiwiZ2V0QWxsR2Z2V2l0aExvY2F0aW9ucyIsImdldEZvcm1Kc29uUGF0aCIsIl90aGlzJGdmdlRvUGF0aE1hcDIiLCJmb3JtRGlyUGF0aCIsImdldCIsImV4aXN0c1N5bmMiLCJXZWxsS25vd25EaXJlY3RvcmllcyIsIkZvcm1Kc29uRmlsZU5hbWUiLCJnZXRBbGxDb252ZXJ0ZXJGaWxlUGF0aHMiLCJyZXN1bHQiLCJnZnZJbmZvIiwicHVzaCIsImdldENvbnZlcnRlckZpbGVQYXRoQnlGaWxlTmFtZU9yVW5kZWZpbmVkIiwiZmlsZW5hbWUiLCJleHRyYWN0R2Z2c0Zyb21GaWxlTmFtZSIsImZpbGVQYXRoIiwicGF0aEV4aXN0cyIsImdldEFsbFNjaGVtYXNGaWxlUGF0aHMiLCJnZXRTY2hlbWFGaWxlUGF0aEJ5RmlsZU5hbWVPclVuZGVmaW5lZCIsImdldEFsbE5vcm1hbGl6ZUZpbGVQYXRocyIsImdldE5vcm1hbGl6ZUZpbGVQYXRoQnlGaWxlTmFtZU9yVW5kZWZpbmVkIiwiZ2V0QWxsVW5tYXBGaWxlUGF0aHMiLCJnZXRVbm1hcEZpbGVQYXRoQnlGaWxlTmFtZU9yVW5kZWZpbmVkIiwiZ2V0QWxsTWFwRmlsZVBhdGhzIiwiZ2V0TWFwRmlsZVBhdGhCeUZpbGVOYW1lT3JVbmRlZmluZWQiLCJnZXRBbGxQYXRjaEZpbGVQYXRocyIsImdldFBhdGNoRmlsZVBhdGhCeUZpbGVOYW1lT3JVbmRlZmluZWQiLCJnZXRBbGxNZXJnZXJzRmlsZVBhdGhzIiwiZ2V0TWVyZ2Vyc0ZpbGVQYXRoQnlGaWxlTmFtZU9yVW5kZWZpbmVkIiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9DTElDb21tYW5kcy9CdWlsZFNlcnZlci9SZXNvdXJjZXNDb250cm9sbGVycy9EaXJlY3Rvcmllcy9GYXJtRGlyZWN0b3J5LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBwYXRoIGZyb20gXCJwYXRoXCI7XG5pbXBvcnQgeyBleGlzdHNTeW5jIH0gZnJvbSBcImZzXCI7XG5cbmltcG9ydCB7IHBhdGhFeGlzdHMgfSBmcm9tIFwiZnMtZXh0cmFcIjtcbmltcG9ydCBwTGltaXQgZnJvbSBcInAtbGltaXRcIjtcblxuaW1wb3J0IHsgRm9ybUdsb2JzIH0gZnJvbSBcIi4uLy4uLy4uLy4uL0NvbW1vbnMvRm9ybUdsb2JzVXRpbHNcIjtcbmltcG9ydCB7IGdsb2JBc3luYyB9IGZyb20gXCIuLi8uLi8uLi8uLi9Db21tb25zL0ZzVXRpbHNcIjtcbmltcG9ydCB7IHJlamVjdCB9IGZyb20gXCIuLi8uLi8uLi8uLi8uLi8uLi9Db21tb24vVHlwaW5nVXRpbHNcIjtcbmltcG9ydCB7IGV4dHJhY3RHZnZzRnJvbUZpbGVOYW1lIH0gZnJvbSBcIi4uLy4uLy4uLy4uL0NvbW1vbnMvRXh0cmFjdEdmdnNGcm9tRmlsZU5hbWVcIjtcbmltcG9ydCB7IFdlbGxLbm93bkRpcmVjdG9yaWVzIH0gZnJvbSBcIi4uLy4uLy4uLy4uLy4uLy4uL0NvbW1vbi9XZWxsS25vd25EaXJlY3Rvcmllc1wiO1xuaW1wb3J0IHsgRm9ybUxvY2F0aW9uSW5mbyB9IGZyb20gXCIuLi8uLi8uLi8uLi9Db21tb25zL0Zvcm1Mb2NhdGlvbkluZm9cIjtcblxuZXhwb3J0IGNsYXNzIEZhcm1EaXJlY3Rvcnkge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZmFybURpcmVjdG9yeTogc3RyaW5nO1xuICAgIHByaXZhdGUgZ2Z2VG9QYXRoTWFwOiB1bmRlZmluZWQgfCBNYXA8c3RyaW5nLCBzdHJpbmc+O1xuICAgIHByaXZhdGUgYWxsR2Z2SW5mb3M/OiBBcnJheTx7IGdmdjogc3RyaW5nOyBmb3JtUGF0aDogc3RyaW5nOyBmb3JtUmVsYXRpdmVQYXRoOiBzdHJpbmcgfT47XG4gICAgcHJpdmF0ZSByZWFkb25seSBlbnN1cmVHZnZEaXJlY3Rvcmllc1VwZGF0ZWQ6ICgpID0+IFByb21pc2U8dm9pZD47XG5cbiAgICBwdWJsaWMgY29uc3RydWN0b3IoZmFybURpcmVjdG9yeTogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMuZmFybURpcmVjdG9yeSA9IGZhcm1EaXJlY3Rvcnk7XG4gICAgICAgIGNvbnN0IHVwZGF0ZUdmdkRpcmVjdG9yaWVzTGltaXQgPSBwTGltaXQoMSk7XG4gICAgICAgIHRoaXMuZW5zdXJlR2Z2RGlyZWN0b3JpZXNVcGRhdGVkID0gYXN5bmMgKCkgPT4ge1xuICAgICAgICAgICAgaWYgKHRoaXMuYWxsR2Z2SW5mb3MgPT0gdW5kZWZpbmVkIHx8IHRoaXMuZ2Z2VG9QYXRoTWFwID09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICAgIGF3YWl0IHVwZGF0ZUdmdkRpcmVjdG9yaWVzTGltaXQoYXN5bmMgKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5hbGxHZnZJbmZvcyA9PSB1bmRlZmluZWQgfHwgdGhpcy5nZnZUb1BhdGhNYXAgPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBhd2FpdCB0aGlzLnVwZGF0ZUdmdkRpcmVjdG9yaWVzKCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWZsb2F0aW5nLXByb21pc2VzXG4gICAgICAgICAgICB1cGRhdGVHZnZEaXJlY3Rvcmllc0xpbWl0KCgpID0+IHRoaXMudXBkYXRlR2Z2RGlyZWN0b3JpZXMoKSk7XG4gICAgICAgIH0sIDYwMDAwKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGFzeW5jIHVwZGF0ZUdmdkRpcmVjdG9yaWVzKCk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICB0aGlzLmFsbEdmdkluZm9zID0gYXdhaXQgRm9ybUdsb2JzLmVudW1lcmF0ZUZvcm1zSW5SZXBvc2l0b3J5KHBhdGguam9pbih0aGlzLmZhcm1EaXJlY3RvcnksIFwiLi5cIikpO1xuICAgICAgICB0aGlzLmdmdlRvUGF0aE1hcCA9IG5ldyBNYXAodGhpcy5hbGxHZnZJbmZvcy5tYXAoeCA9PiBbeC5nZnYsIHguZm9ybVBhdGhdKSk7XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIGdldEFsbFBpY2tsaXN0cygpOiBQcm9taXNlPHN0cmluZ1tdPiB7XG4gICAgICAgIHJldHVybiBhd2FpdCBnbG9iQXN5bmMoXCIqXCIsIHsgY3dkOiBwYXRoLmpvaW4odGhpcy5mYXJtRGlyZWN0b3J5LCBcInBpY2tsaXN0c1wiKSB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgZ2V0Rm9ybURpcmVjdG9yeSgpOiBQcm9taXNlPHN0cmluZ1tdPiB7XG4gICAgICAgIHJldHVybiBhd2FpdCBnbG9iQXN5bmMoXCIqXCIsIHsgY3dkOiBwYXRoLmpvaW4odGhpcy5mYXJtRGlyZWN0b3J5LCBcInBpY2tsaXN0c1wiKSB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGFzeW5jIGVudW1lcmF0ZUFsbEdmdnMoKTogUHJvbWlzZTxBcnJheTx7IGdmdjogc3RyaW5nOyBmb3JtUGF0aDogc3RyaW5nOyBmb3JtUmVsYXRpdmVQYXRoOiBzdHJpbmcgfT4+IHtcbiAgICAgICAgYXdhaXQgdGhpcy5lbnN1cmVHZnZEaXJlY3Rvcmllc1VwZGF0ZWQoKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuYWxsR2Z2SW5mb3MgPz8gcmVqZWN0KCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBhc3luYyBnZXRHZnZUb1BhdGhNYXAoKTogUHJvbWlzZTxNYXA8c3RyaW5nLCBzdHJpbmc+PiB7XG4gICAgICAgIGF3YWl0IHRoaXMuZW5zdXJlR2Z2RGlyZWN0b3JpZXNVcGRhdGVkKCk7XG4gICAgICAgIHJldHVybiB0aGlzLmdmdlRvUGF0aE1hcCA/PyByZWplY3QoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgZ2V0QWxsR2Z2cygpOiBQcm9taXNlPHN0cmluZ1tdPiB7XG4gICAgICAgIGNvbnN0IGZvcm1HZnZQYXRocyA9IGF3YWl0IHRoaXMuZW51bWVyYXRlQWxsR2Z2cygpO1xuICAgICAgICByZXR1cm4gZm9ybUdmdlBhdGhzLm1hcCh4ID0+IHguZ2Z2KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgZ2V0QWxsR2Z2V2l0aExvY2F0aW9ucygpOiBQcm9taXNlPEZvcm1Mb2NhdGlvbkluZm9bXT4ge1xuICAgICAgICBjb25zdCBmb3JtR2Z2UGF0aHMgPSBhd2FpdCB0aGlzLmVudW1lcmF0ZUFsbEdmdnMoKTtcbiAgICAgICAgcmV0dXJuIGZvcm1HZnZQYXRocztcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgZ2V0Rm9ybUpzb25QYXRoKGdmdjogc3RyaW5nKTogUHJvbWlzZTxzdHJpbmcgfCB1bmRlZmluZWQ+IHtcbiAgICAgICAgYXdhaXQgdGhpcy5lbnN1cmVHZnZEaXJlY3Rvcmllc1VwZGF0ZWQoKTtcbiAgICAgICAgY29uc3QgZm9ybURpclBhdGggPSAodGhpcy5nZnZUb1BhdGhNYXAgPz8gcmVqZWN0KCkpLmdldChnZnYpO1xuICAgICAgICBpZiAoZm9ybURpclBhdGggIT0gdW5kZWZpbmVkICYmIGV4aXN0c1N5bmMocGF0aC5qb2luKGZvcm1EaXJQYXRoLCBXZWxsS25vd25EaXJlY3Rvcmllcy5Gb3JtSnNvbkZpbGVOYW1lKSkpIHtcbiAgICAgICAgICAgIHJldHVybiBwYXRoLmpvaW4oZm9ybURpclBhdGgsIFdlbGxLbm93bkRpcmVjdG9yaWVzLkZvcm1Kc29uRmlsZU5hbWUpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIGdldEFsbENvbnZlcnRlckZpbGVQYXRocygpOiBQcm9taXNlPHN0cmluZ1tdPiB7XG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IFtdO1xuICAgICAgICBmb3IgKGNvbnN0IGdmdkluZm8gb2YgYXdhaXQgdGhpcy5lbnVtZXJhdGVBbGxHZnZzKCkpIHtcbiAgICAgICAgICAgIHJlc3VsdC5wdXNoKC4uLihhd2FpdCBnbG9iQXN5bmMoXCJjb252ZXJ0ZXJzLypcIiwgeyBjd2Q6IGdmdkluZm8uZm9ybVBhdGggfSkpKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBnZXRDb252ZXJ0ZXJGaWxlUGF0aEJ5RmlsZU5hbWVPclVuZGVmaW5lZChmaWxlbmFtZTogc3RyaW5nKTogUHJvbWlzZTxzdHJpbmcgfCB1bmRlZmluZWQ+IHtcbiAgICAgICAgY29uc3QgZ2Z2VG9QYXRoTWFwID0gYXdhaXQgdGhpcy5nZXRHZnZUb1BhdGhNYXAoKTtcbiAgICAgICAgZm9yIChjb25zdCBnZnYgb2YgZXh0cmFjdEdmdnNGcm9tRmlsZU5hbWUoZmlsZW5hbWUpKSB7XG4gICAgICAgICAgICBjb25zdCBmb3JtUGF0aCA9IGdmdlRvUGF0aE1hcC5nZXQoZ2Z2KTtcbiAgICAgICAgICAgIGlmIChmb3JtUGF0aCA9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IGZpbGVQYXRoID0gcGF0aC5qb2luKGZvcm1QYXRoLCBcImNvbnZlcnRlcnNcIiwgZmlsZW5hbWUpO1xuICAgICAgICAgICAgaWYgKGF3YWl0IHBhdGhFeGlzdHMoZmlsZVBhdGgpKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGZpbGVQYXRoO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIGdldEFsbFNjaGVtYXNGaWxlUGF0aHMoKTogUHJvbWlzZTxzdHJpbmdbXT4ge1xuICAgICAgICBjb25zdCByZXN1bHQgPSBbXTtcbiAgICAgICAgZm9yIChjb25zdCBnZnZJbmZvIG9mIGF3YWl0IHRoaXMuZW51bWVyYXRlQWxsR2Z2cygpKSB7XG4gICAgICAgICAgICByZXN1bHQucHVzaCguLi4oYXdhaXQgZ2xvYkFzeW5jKFwic2NoZW1hcy8qXCIsIHsgY3dkOiBnZnZJbmZvLmZvcm1QYXRoIH0pKSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgZ2V0U2NoZW1hRmlsZVBhdGhCeUZpbGVOYW1lT3JVbmRlZmluZWQoZmlsZW5hbWU6IHN0cmluZyk6IFByb21pc2U8c3RyaW5nIHwgdW5kZWZpbmVkPiB7XG4gICAgICAgIGZvciAoY29uc3QgZ2Z2SW5mbyBvZiBhd2FpdCB0aGlzLmVudW1lcmF0ZUFsbEdmdnMoKSkge1xuICAgICAgICAgICAgY29uc3QgZmlsZVBhdGggPSBwYXRoLmpvaW4oZ2Z2SW5mby5mb3JtUGF0aCwgXCJzY2hlbWFzXCIsIGZpbGVuYW1lKTtcbiAgICAgICAgICAgIGlmIChhd2FpdCBwYXRoRXhpc3RzKGZpbGVQYXRoKSkge1xuICAgICAgICAgICAgICAgIHJldHVybiBmaWxlUGF0aDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBnZXRBbGxOb3JtYWxpemVGaWxlUGF0aHMoKTogUHJvbWlzZTxzdHJpbmdbXT4ge1xuICAgICAgICBjb25zdCByZXN1bHQgPSBbXTtcbiAgICAgICAgZm9yIChjb25zdCBnZnZJbmZvIG9mIGF3YWl0IHRoaXMuZW51bWVyYXRlQWxsR2Z2cygpKSB7XG4gICAgICAgICAgICByZXN1bHQucHVzaCguLi4oYXdhaXQgZ2xvYkFzeW5jKFwibm9ybWFsaXplLypcIiwgeyBjd2Q6IGdmdkluZm8uZm9ybVBhdGggfSkpKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBnZXROb3JtYWxpemVGaWxlUGF0aEJ5RmlsZU5hbWVPclVuZGVmaW5lZChmaWxlbmFtZTogc3RyaW5nKTogUHJvbWlzZTxzdHJpbmcgfCB1bmRlZmluZWQ+IHtcbiAgICAgICAgZm9yIChjb25zdCBnZnZJbmZvIG9mIGF3YWl0IHRoaXMuZW51bWVyYXRlQWxsR2Z2cygpKSB7XG4gICAgICAgICAgICBjb25zdCBmaWxlUGF0aCA9IHBhdGguam9pbihnZnZJbmZvLmZvcm1QYXRoLCBcIm5vcm1hbGl6ZVwiLCBmaWxlbmFtZSk7XG4gICAgICAgICAgICBpZiAoYXdhaXQgcGF0aEV4aXN0cyhmaWxlUGF0aCkpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gZmlsZVBhdGg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgZ2V0QWxsVW5tYXBGaWxlUGF0aHMoKTogUHJvbWlzZTxzdHJpbmdbXT4ge1xuICAgICAgICBjb25zdCByZXN1bHQgPSBbXTtcbiAgICAgICAgZm9yIChjb25zdCBnZnZJbmZvIG9mIGF3YWl0IHRoaXMuZW51bWVyYXRlQWxsR2Z2cygpKSB7XG4gICAgICAgICAgICByZXN1bHQucHVzaCguLi4oYXdhaXQgZ2xvYkFzeW5jKFwidW5tYXAvKlwiLCB7IGN3ZDogZ2Z2SW5mby5mb3JtUGF0aCB9KSkpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIGdldFVubWFwRmlsZVBhdGhCeUZpbGVOYW1lT3JVbmRlZmluZWQoZmlsZW5hbWU6IHN0cmluZyk6IFByb21pc2U8c3RyaW5nIHwgdW5kZWZpbmVkPiB7XG4gICAgICAgIGZvciAoY29uc3QgZ2Z2SW5mbyBvZiBhd2FpdCB0aGlzLmVudW1lcmF0ZUFsbEdmdnMoKSkge1xuICAgICAgICAgICAgY29uc3QgZmlsZVBhdGggPSBwYXRoLmpvaW4oZ2Z2SW5mby5mb3JtUGF0aCwgXCJ1bm1hcFwiLCBmaWxlbmFtZSk7XG4gICAgICAgICAgICBpZiAoYXdhaXQgcGF0aEV4aXN0cyhmaWxlUGF0aCkpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gZmlsZVBhdGg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgZ2V0QWxsTWFwRmlsZVBhdGhzKCk6IFByb21pc2U8c3RyaW5nW10+IHtcbiAgICAgICAgY29uc3QgcmVzdWx0ID0gW107XG4gICAgICAgIGZvciAoY29uc3QgZ2Z2SW5mbyBvZiBhd2FpdCB0aGlzLmVudW1lcmF0ZUFsbEdmdnMoKSkge1xuICAgICAgICAgICAgcmVzdWx0LnB1c2goLi4uKGF3YWl0IGdsb2JBc3luYyhcIm1hcC8qXCIsIHsgY3dkOiBnZnZJbmZvLmZvcm1QYXRoIH0pKSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgZ2V0TWFwRmlsZVBhdGhCeUZpbGVOYW1lT3JVbmRlZmluZWQoZmlsZW5hbWU6IHN0cmluZyk6IFByb21pc2U8c3RyaW5nIHwgdW5kZWZpbmVkPiB7XG4gICAgICAgIGZvciAoY29uc3QgZ2Z2SW5mbyBvZiBhd2FpdCB0aGlzLmVudW1lcmF0ZUFsbEdmdnMoKSkge1xuICAgICAgICAgICAgY29uc3QgZmlsZVBhdGggPSBwYXRoLmpvaW4oZ2Z2SW5mby5mb3JtUGF0aCwgXCJtYXBcIiwgZmlsZW5hbWUpO1xuICAgICAgICAgICAgaWYgKGF3YWl0IHBhdGhFeGlzdHMoZmlsZVBhdGgpKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGZpbGVQYXRoO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIGdldEFsbFBhdGNoRmlsZVBhdGhzKCk6IFByb21pc2U8c3RyaW5nW10+IHtcbiAgICAgICAgY29uc3QgcmVzdWx0ID0gW107XG4gICAgICAgIGZvciAoY29uc3QgZ2Z2SW5mbyBvZiBhd2FpdCB0aGlzLmVudW1lcmF0ZUFsbEdmdnMoKSkge1xuICAgICAgICAgICAgcmVzdWx0LnB1c2goLi4uKGF3YWl0IGdsb2JBc3luYyhcInBhdGNoLypcIiwgeyBjd2Q6IGdmdkluZm8uZm9ybVBhdGggfSkpKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBnZXRQYXRjaEZpbGVQYXRoQnlGaWxlTmFtZU9yVW5kZWZpbmVkKGZpbGVuYW1lOiBzdHJpbmcpOiBQcm9taXNlPHN0cmluZyB8IHVuZGVmaW5lZD4ge1xuICAgICAgICBmb3IgKGNvbnN0IGdmdkluZm8gb2YgYXdhaXQgdGhpcy5lbnVtZXJhdGVBbGxHZnZzKCkpIHtcbiAgICAgICAgICAgIGNvbnN0IGZpbGVQYXRoID0gcGF0aC5qb2luKGdmdkluZm8uZm9ybVBhdGgsIFwicGF0Y2hcIiwgZmlsZW5hbWUpO1xuICAgICAgICAgICAgaWYgKGF3YWl0IHBhdGhFeGlzdHMoZmlsZVBhdGgpKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGZpbGVQYXRoO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIGdldEFsbE1lcmdlcnNGaWxlUGF0aHMoKTogUHJvbWlzZTxzdHJpbmdbXT4ge1xuICAgICAgICBjb25zdCByZXN1bHQgPSBbXTtcbiAgICAgICAgZm9yIChjb25zdCBnZnZJbmZvIG9mIGF3YWl0IHRoaXMuZW51bWVyYXRlQWxsR2Z2cygpKSB7XG4gICAgICAgICAgICByZXN1bHQucHVzaCguLi4oYXdhaXQgZ2xvYkFzeW5jKFwibWVyZ2Vycy8qXCIsIHsgY3dkOiBnZnZJbmZvLmZvcm1QYXRoIH0pKSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgZ2V0TWVyZ2Vyc0ZpbGVQYXRoQnlGaWxlTmFtZU9yVW5kZWZpbmVkKGZpbGVuYW1lOiBzdHJpbmcpOiBQcm9taXNlPHN0cmluZyB8IHVuZGVmaW5lZD4ge1xuICAgICAgICBmb3IgKGNvbnN0IGdmdkluZm8gb2YgYXdhaXQgdGhpcy5lbnVtZXJhdGVBbGxHZnZzKCkpIHtcbiAgICAgICAgICAgIGNvbnN0IGZpbGVQYXRoID0gcGF0aC5qb2luKGdmdkluZm8uZm9ybVBhdGgsIFwibWVyZ2Vyc1wiLCBmaWxlbmFtZSk7XG4gICAgICAgICAgICBpZiAoYXdhaXQgcGF0aEV4aXN0cyhmaWxlUGF0aCkpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gZmlsZVBhdGg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9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
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FarmDirectory.js","names":["_path","_interopRequireDefault","require","_fs","_fsExtra","_pLimit","_FormGlobsUtils","_FsUtils","_TypingUtils","_ExtractGfvsFromFileName","_WellKnownDirectories","FarmDirectory","constructor","farmDirectory","gfvToPathMap","allGfvInfos","ensureGfvDirectoriesUpdated","updateGfvDirectoriesLimit","pLimit","undefined","updateGfvDirectories","setTimeout","FormGlobs","enumerateFormsInRepository","path","join","Map","map","x","gfv","formPath","getAllPicklists","globAsync","cwd","getFormDirectory","enumerateAllGfvs","_this$allGfvInfos","reject","getGfvToPathMap","_this$gfvToPathMap","getAllGfvs","formGfvPaths","getAllGfvWithLocations","getFormJsonPath","_this$gfvToPathMap2","formDirPath","get","existsSync","WellKnownDirectories","FormJsonFileName","getAllConverterFilePaths","result","gfvInfo","push","getConverterFilePathByFileNameOrUndefined","filename","extractGfvsFromFileName","filePath","pathExists","getAllSchemasFilePaths","getSchemaFilePathByFileNameOrUndefined","getAllNormalizeFilePaths","getNormalizeFilePathByFileNameOrUndefined","getAllUnmapFilePaths","getUnmapFilePathByFileNameOrUndefined","getAllMapFilePaths","getMapFilePathByFileNameOrUndefined","getAllPatchFilePaths","getPatchFilePathByFileNameOrUndefined","getAllMergersFilePaths","getMergersFilePathByFileNameOrUndefined","exports"],"sources":["../../../../../../../src/CLICommands/BuildServer/ResourcesControllers/Directories/FarmDirectory.ts"],"sourcesContent":["import path from \"path\";\nimport { existsSync } from \"fs\";\n\nimport { pathExists } from \"fs-extra\";\nimport pLimit from \"p-limit\";\n\nimport { FormGlobs } from \"../../../../Commons/FormGlobsUtils\";\nimport { globAsync } from \"../../../../Commons/FsUtils\";\nimport { reject } from \"../../../../../../Common/TypingUtils\";\nimport { extractGfvsFromFileName } from \"../../../../Commons/ExtractGfvsFromFileName\";\nimport { WellKnownDirectories } from \"../../../../../../Common/WellKnownDirectories\";\nimport { FormLocationInfo } from \"../../../../Commons/FormLocationInfo\";\n\nexport class FarmDirectory {\n private readonly farmDirectory: string;\n private gfvToPathMap: undefined | Map<string, string>;\n private allGfvInfos?: Array<{ gfv: string; formPath: string; formRelativePath: string }>;\n private readonly ensureGfvDirectoriesUpdated: () => Promise<void>;\n\n public constructor(farmDirectory: string) {\n this.farmDirectory = farmDirectory;\n const updateGfvDirectoriesLimit = pLimit(1);\n this.ensureGfvDirectoriesUpdated = async () => {\n if (this.allGfvInfos == undefined || this.gfvToPathMap == undefined) {\n await updateGfvDirectoriesLimit(async () => {\n if (this.allGfvInfos == undefined || this.gfvToPathMap == undefined) {\n await this.updateGfvDirectories();\n }\n });\n }\n };\n setTimeout(() => {\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\n updateGfvDirectoriesLimit(() => this.updateGfvDirectories());\n }, 60000);\n }\n\n private async updateGfvDirectories(): Promise<void> {\n this.allGfvInfos = await FormGlobs.enumerateFormsInRepository(path.join(this.farmDirectory, \"..\"));\n this.gfvToPathMap = new Map(this.allGfvInfos.map(x => [x.gfv, x.formPath]));\n }\n\n public async getAllPicklists(): Promise<string[]> {\n return await globAsync(\"*\", { cwd: path.join(this.farmDirectory, \"picklists\") });\n }\n\n public async getFormDirectory(): Promise<string[]> {\n return await globAsync(\"*\", { cwd: path.join(this.farmDirectory, \"picklists\") });\n }\n\n private async enumerateAllGfvs(): Promise<Array<{ gfv: string; formPath: string; formRelativePath: string }>> {\n await this.ensureGfvDirectoriesUpdated();\n return this.allGfvInfos ?? reject();\n }\n\n private async getGfvToPathMap(): Promise<Map<string, string>> {\n await this.ensureGfvDirectoriesUpdated();\n return this.gfvToPathMap ?? reject();\n }\n\n public async getAllGfvs(): Promise<string[]> {\n const formGfvPaths = await this.enumerateAllGfvs();\n return formGfvPaths.map(x => x.gfv);\n }\n\n public async getAllGfvWithLocations(): Promise<FormLocationInfo[]> {\n const formGfvPaths = await this.enumerateAllGfvs();\n return formGfvPaths;\n }\n\n public async getFormJsonPath(gfv: string): Promise<string | undefined> {\n await this.ensureGfvDirectoriesUpdated();\n const formDirPath = (this.gfvToPathMap ?? reject()).get(gfv);\n if (formDirPath != undefined && existsSync(path.join(formDirPath, WellKnownDirectories.FormJsonFileName))) {\n return path.join(formDirPath, WellKnownDirectories.FormJsonFileName);\n }\n return undefined;\n }\n\n public async getAllConverterFilePaths(): Promise<string[]> {\n const result = [];\n for (const gfvInfo of await this.enumerateAllGfvs()) {\n result.push(...(await globAsync(\"converters/*\", { cwd: gfvInfo.formPath })));\n }\n return result;\n }\n\n public async getConverterFilePathByFileNameOrUndefined(filename: string): Promise<string | undefined> {\n const gfvToPathMap = await this.getGfvToPathMap();\n for (const gfv of extractGfvsFromFileName(filename)) {\n const formPath = gfvToPathMap.get(gfv);\n if (formPath == undefined) {\n continue;\n }\n const filePath = path.join(formPath, \"converters\", filename);\n if (await pathExists(filePath)) {\n return filePath;\n }\n }\n return undefined;\n }\n\n public async getAllSchemasFilePaths(): Promise<string[]> {\n const result = [];\n for (const gfvInfo of await this.enumerateAllGfvs()) {\n result.push(...(await globAsync(\"schemas/*\", { cwd: gfvInfo.formPath })));\n }\n return result;\n }\n\n public async getSchemaFilePathByFileNameOrUndefined(filename: string): Promise<string | undefined> {\n for (const gfvInfo of await this.enumerateAllGfvs()) {\n const filePath = path.join(gfvInfo.formPath, \"schemas\", filename);\n if (await pathExists(filePath)) {\n return filePath;\n }\n }\n return undefined;\n }\n\n public async getAllNormalizeFilePaths(): Promise<string[]> {\n const result = [];\n for (const gfvInfo of await this.enumerateAllGfvs()) {\n result.push(...(await globAsync(\"normalize/*\", { cwd: gfvInfo.formPath })));\n }\n return result;\n }\n\n public async getNormalizeFilePathByFileNameOrUndefined(filename: string): Promise<string | undefined> {\n for (const gfvInfo of await this.enumerateAllGfvs()) {\n const filePath = path.join(gfvInfo.formPath, \"normalize\", filename);\n if (await pathExists(filePath)) {\n return filePath;\n }\n }\n return undefined;\n }\n\n public async getAllUnmapFilePaths(): Promise<string[]> {\n const result = [];\n for (const gfvInfo of await this.enumerateAllGfvs()) {\n result.push(...(await globAsync(\"unmap/*\", { cwd: gfvInfo.formPath })));\n }\n return result;\n }\n\n public async getUnmapFilePathByFileNameOrUndefined(filename: string): Promise<string | undefined> {\n for (const gfvInfo of await this.enumerateAllGfvs()) {\n const filePath = path.join(gfvInfo.formPath, \"unmap\", filename);\n if (await pathExists(filePath)) {\n return filePath;\n }\n }\n return undefined;\n }\n\n public async getAllMapFilePaths(): Promise<string[]> {\n const result = [];\n for (const gfvInfo of await this.enumerateAllGfvs()) {\n result.push(...(await globAsync(\"map/*\", { cwd: gfvInfo.formPath })));\n }\n return result;\n }\n\n public async getMapFilePathByFileNameOrUndefined(filename: string): Promise<string | undefined> {\n for (const gfvInfo of await this.enumerateAllGfvs()) {\n const filePath = path.join(gfvInfo.formPath, \"map\", filename);\n if (await pathExists(filePath)) {\n return filePath;\n }\n }\n return undefined;\n }\n\n public async getAllPatchFilePaths(): Promise<string[]> {\n const result = [];\n for (const gfvInfo of await this.enumerateAllGfvs()) {\n result.push(...(await globAsync(\"patch/*\", { cwd: gfvInfo.formPath })));\n }\n return result;\n }\n\n public async getPatchFilePathByFileNameOrUndefined(filename: string): Promise<string | undefined> {\n for (const gfvInfo of await this.enumerateAllGfvs()) {\n const filePath = path.join(gfvInfo.formPath, \"patch\", filename);\n if (await pathExists(filePath)) {\n return filePath;\n }\n }\n return undefined;\n }\n\n public async getAllMergersFilePaths(): Promise<string[]> {\n const result = [];\n for (const gfvInfo of await this.enumerateAllGfvs()) {\n result.push(...(await globAsync(\"mergers/*\", { cwd: gfvInfo.formPath })));\n }\n return result;\n }\n\n public async getMergersFilePathByFileNameOrUndefined(filename: string): Promise<string | undefined> {\n for (const gfvInfo of await this.enumerateAllGfvs()) {\n const filePath = path.join(gfvInfo.formPath, \"mergers\", filename);\n if (await pathExists(filePath)) {\n return filePath;\n }\n }\n return undefined;\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.globToRegexp = globToRegexp;
|
|
7
|
+
function globToRegexp(inputGlob) {
|
|
8
|
+
const pathTokens = inputGlob.split("/");
|
|
9
|
+
return new RegExp("^" + pathTokens.map((x, index) => {
|
|
10
|
+
if (x === "*") {
|
|
11
|
+
if (index === pathTokens.length - 1) {
|
|
12
|
+
return ".*$";
|
|
13
|
+
}
|
|
14
|
+
return "[^\\/]*?";
|
|
15
|
+
}
|
|
16
|
+
if (x === "**") {
|
|
17
|
+
if (index === pathTokens.length - 1) {
|
|
18
|
+
return ".*$";
|
|
19
|
+
}
|
|
20
|
+
return ".*?";
|
|
21
|
+
}
|
|
22
|
+
if (x.includes("*")) {
|
|
23
|
+
return x.replace("*", "[^\\/]*?");
|
|
24
|
+
}
|
|
25
|
+
return x;
|
|
26
|
+
}).join("[\\/\\\\]"));
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJnbG9iVG9SZWdleHAiLCJpbnB1dEdsb2IiLCJwYXRoVG9rZW5zIiwic3BsaXQiLCJSZWdFeHAiLCJtYXAiLCJ4IiwiaW5kZXgiLCJsZW5ndGgiLCJpbmNsdWRlcyIsInJlcGxhY2UiLCJqb2luIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL0NMSUNvbW1hbmRzL0J1aWxkU2VydmVyL1Jlc291cmNlc0NvbnRyb2xsZXJzL0dsb2JUb1JlZ2V4cC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZnVuY3Rpb24gZ2xvYlRvUmVnZXhwKGlucHV0R2xvYjogc3RyaW5nKTogUmVnRXhwIHtcbiAgICBjb25zdCBwYXRoVG9rZW5zID0gaW5wdXRHbG9iLnNwbGl0KFwiL1wiKTtcbiAgICByZXR1cm4gbmV3IFJlZ0V4cChcbiAgICAgICAgXCJeXCIgK1xuICAgICAgICAgICAgcGF0aFRva2Vuc1xuICAgICAgICAgICAgICAgIC5tYXAoKHgsIGluZGV4KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmICh4ID09PSBcIipcIikge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGluZGV4ID09PSBwYXRoVG9rZW5zLmxlbmd0aCAtIDEpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gXCIuKiRcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBcIlteXFxcXC9dKj9cIjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBpZiAoeCA9PT0gXCIqKlwiKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoaW5kZXggPT09IHBhdGhUb2tlbnMubGVuZ3RoIC0gMSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBcIi4qJFwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFwiLio/XCI7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgaWYgKHguaW5jbHVkZXMoXCIqXCIpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4geC5yZXBsYWNlKFwiKlwiLCBcIlteXFxcXC9dKj9cIik7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHg7XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAuam9pbihcIltcXFxcL1xcXFxcXFxcXVwiKVxuICAgICk7XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFPLFNBQVNBLFlBQVlBLENBQUNDLFNBQWlCLEVBQVU7RUFDcEQsTUFBTUMsVUFBVSxHQUFHRCxTQUFTLENBQUNFLEtBQUssQ0FBQyxHQUFHLENBQUM7RUFDdkMsT0FBTyxJQUFJQyxNQUFNLENBQ2IsR0FBRyxHQUNDRixVQUFVLENBQ0xHLEdBQUcsQ0FBQyxDQUFDQyxDQUFDLEVBQUVDLEtBQUssS0FBSztJQUNmLElBQUlELENBQUMsS0FBSyxHQUFHLEVBQUU7TUFDWCxJQUFJQyxLQUFLLEtBQUtMLFVBQVUsQ0FBQ00sTUFBTSxHQUFHLENBQUMsRUFBRTtRQUNqQyxPQUFPLEtBQUs7TUFDaEI7TUFDQSxPQUFPLFVBQVU7SUFDckI7SUFDQSxJQUFJRixDQUFDLEtBQUssSUFBSSxFQUFFO01BQ1osSUFBSUMsS0FBSyxLQUFLTCxVQUFVLENBQUNNLE1BQU0sR0FBRyxDQUFDLEVBQUU7UUFDakMsT0FBTyxLQUFLO01BQ2hCO01BQ0EsT0FBTyxLQUFLO0lBQ2hCO0lBQ0EsSUFBSUYsQ0FBQyxDQUFDRyxRQUFRLENBQUMsR0FBRyxDQUFDLEVBQUU7TUFDakIsT0FBT0gsQ0FBQyxDQUFDSSxPQUFPLENBQUMsR0FBRyxFQUFFLFVBQVUsQ0FBQztJQUNyQztJQUNBLE9BQU9KLENBQUM7RUFDWixDQUFDLENBQUMsQ0FDREssSUFBSSxDQUFDLFdBQVcsQ0FDN0IsQ0FBQztBQUNMIiwiaWdub3JlTGlzdCI6W119
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GlobToRegexp.js","names":["globToRegexp","inputGlob","pathTokens","split","RegExp","map","x","index","length","includes","replace","join"],"sources":["../../../../../../src/CLICommands/BuildServer/ResourcesControllers/GlobToRegexp.ts"],"sourcesContent":["export function globToRegexp(inputGlob: string): RegExp {\n const pathTokens = inputGlob.split(\"/\");\n return new RegExp(\n \"^\" +\n pathTokens\n .map((x, index) => {\n if (x === \"*\") {\n if (index === pathTokens.length - 1) {\n return \".*$\";\n }\n return \"[^\\\\/]*?\";\n }\n if (x === \"**\") {\n if (index === pathTokens.length - 1) {\n return \".*$\";\n }\n return \".*?\";\n }\n if (x.includes(\"*\")) {\n return x.replace(\"*\", \"[^\\\\/]*?\");\n }\n return x;\n })\n .join(\"[\\\\/\\\\\\\\]\")\n );\n}\n"],"mappings":";;;;;;AAAO,SAASA,YAAYA,CAACC,SAAiB,EAAU;EACpD,MAAMC,UAAU,GAAGD,SAAS,CAACE,KAAK,CAAC,GAAG,CAAC;EACvC,OAAO,IAAIC,MAAM,CACb,GAAG,GACCF,UAAU,CACLG,GAAG,CAAC,CAACC,CAAC,EAAEC,KAAK,KAAK;IACf,IAAID,CAAC,KAAK,GAAG,EAAE;MACX,IAAIC,KAAK,KAAKL,UAAU,CAACM,MAAM,GAAG,CAAC,EAAE;QACjC,OAAO,KAAK;MAChB;MACA,OAAO,UAAU;IACrB;IACA,IAAIF,CAAC,KAAK,IAAI,EAAE;MACZ,IAAIC,KAAK,KAAKL,UAAU,CAACM,MAAM,GAAG,CAAC,EAAE;QACjC,OAAO,KAAK;MAChB;MACA,OAAO,KAAK;IAChB;IACA,IAAIF,CAAC,CAACG,QAAQ,CAAC,GAAG,CAAC,EAAE;MACjB,OAAOH,CAAC,CAACI,OAAO,CAAC,GAAG,EAAE,UAAU,CAAC;IACrC;IACA,OAAOJ,CAAC;EACZ,CAAC,CAAC,CACDK,IAAI,CAAC,WAAW,CAC7B,CAAC;AACL","ignoreList":[]}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL0NMSUNvbW1hbmRzL0J1aWxkU2VydmVyL1Jlc291cmNlc0NvbnRyb2xsZXJzL0lHZW5lcmF0ZWRTZXJ2ZXJTaWRlU291cmNlc1Byb3ZpZGVyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgSUdlbmVyYXRlZFNlcnZlclNpZGVTb3VyY2VzUHJvdmlkZXIge1xuICAgIGdldEFsbE5vcm1hbGl6YXRpb25GaWxlTmFtZXMoKTogUHJvbWlzZTxzdHJpbmdbXT47XG4gICAgZ2V0Tm9ybWFsaXphdGlvbkZpbGVDb250ZW50KGdmdjogc3RyaW5nKTogUHJvbWlzZTxOb2RlSlMuUmVhZGFibGVTdHJlYW0gfCBudWxsPjtcbiAgICBnZXRBbGxBdHRhY2htZW50UGF0aEZpbGVOYW1lcygpOiBQcm9taXNlPHN0cmluZ1tdPjtcbiAgICBnZXRBdHRhY2htZW50UGF0aHNGaWxlQ29udGVudChnZnY6IHN0cmluZyk6IFByb21pc2U8Tm9kZUpTLlJlYWRhYmxlU3RyZWFtPjtcbn1cbiJdLCJtYXBwaW5ncyI6IiIsImlnbm9yZUxpc3QiOltdfQ==
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IGeneratedServerSideSourcesProvider.js","names":[],"sources":["../../../../../../src/CLICommands/BuildServer/ResourcesControllers/IGeneratedServerSideSourcesProvider.ts"],"sourcesContent":["export interface IGeneratedServerSideSourcesProvider {\n getAllNormalizationFileNames(): Promise<string[]>;\n getNormalizationFileContent(gfv: string): Promise<NodeJS.ReadableStream | null>;\n getAllAttachmentPathFileNames(): Promise<string[]>;\n getAttachmentPathsFileContent(gfv: string): Promise<NodeJS.ReadableStream>;\n}\n"],"mappings":"","ignoreList":[]}
|