@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,180 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.CacheAssetsPlugin = exports.BuildCache = void 0;
|
|
8
|
+
var path = _interopRequireWildcard(require("path"));
|
|
9
|
+
var _fsExtra = require("fs-extra");
|
|
10
|
+
var _md = _interopRequireDefault(require("md5"));
|
|
11
|
+
var _pLimit = _interopRequireDefault(require("p-limit"));
|
|
12
|
+
var _nodeFetch = _interopRequireDefault(require("node-fetch"));
|
|
13
|
+
var _admZip = _interopRequireDefault(require("adm-zip"));
|
|
14
|
+
var _BuildCacheMode = require("../CLICommands/BuildForms/BuildCacheMode");
|
|
15
|
+
var _TypingUtils = require("../../../Common/TypingUtils");
|
|
16
|
+
var _StaticLogger = require("../Commons/Logging/StaticLogger");
|
|
17
|
+
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); }
|
|
18
|
+
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; }
|
|
19
|
+
const singleLimit = (0, _pLimit.default)(1);
|
|
20
|
+
class CacheAssetsPlugin {
|
|
21
|
+
constructor(options) {
|
|
22
|
+
this.options = void 0;
|
|
23
|
+
this.options = options;
|
|
24
|
+
}
|
|
25
|
+
async apply(compiler) {
|
|
26
|
+
compiler.hooks.emit.tapPromise("CacheAssetsPlugin", compilation => singleLimit(async () => {
|
|
27
|
+
const cacheItems = {};
|
|
28
|
+
// tslint:disable-next-line no-unsafe-any
|
|
29
|
+
for (const assetName of Object.keys(compilation.assets)) {
|
|
30
|
+
var _compilation$assets$a, _compilation$assets$a2;
|
|
31
|
+
// tslint:disable-next-line no-unsafe-any
|
|
32
|
+
const source = (_compilation$assets$a = (_compilation$assets$a2 = compilation.assets[assetName]) === null || _compilation$assets$a2 === void 0 ? void 0 : _compilation$assets$a2.source()) !== null && _compilation$assets$a !== void 0 ? _compilation$assets$a : (0, _TypingUtils.reject)();
|
|
33
|
+
if (source instanceof Buffer) {
|
|
34
|
+
cacheItems[assetName] = {
|
|
35
|
+
type: "Buffer",
|
|
36
|
+
base64content: source.toString("base64")
|
|
37
|
+
};
|
|
38
|
+
} else {
|
|
39
|
+
cacheItems[assetName] = source;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
await this.updateFile(cacheItems);
|
|
43
|
+
}));
|
|
44
|
+
}
|
|
45
|
+
async updateFile(cacheItems) {
|
|
46
|
+
const filePath = path.resolve(this.options.cacheFile);
|
|
47
|
+
let content = (await (0, _fsExtra.pathExists)(filePath)) ?
|
|
48
|
+
// tslint:disable-next-line no-unsafe-any
|
|
49
|
+
await CacheFile.read(filePath) : {};
|
|
50
|
+
content = {
|
|
51
|
+
...content,
|
|
52
|
+
...cacheItems
|
|
53
|
+
};
|
|
54
|
+
await (0, _fsExtra.ensureDir)(path.dirname(filePath));
|
|
55
|
+
await CacheFile.write(filePath, content);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
exports.CacheAssetsPlugin = CacheAssetsPlugin;
|
|
59
|
+
class BuildCache {
|
|
60
|
+
constructor(farmDirectory, mode) {
|
|
61
|
+
this.farmDirectory = void 0;
|
|
62
|
+
this.mode = void 0;
|
|
63
|
+
this.logger = void 0;
|
|
64
|
+
this.farmDirectory = farmDirectory;
|
|
65
|
+
this.mode = mode;
|
|
66
|
+
this.logger = (0, _StaticLogger.getLogger)().withPrefix("BUILD_CACHE");
|
|
67
|
+
}
|
|
68
|
+
async extract(generatorSource, gfv, depsHash, resourcesDirectory) {
|
|
69
|
+
if (generatorSource.type === "GeneratorSources") {
|
|
70
|
+
throw new Error("Local generator does not supports caching");
|
|
71
|
+
}
|
|
72
|
+
// tslint:disable-next-line no-unsafe-any
|
|
73
|
+
const content = await CacheFile.read(CacheFile.getCacheFilePath(this.farmDirectory, gfv, generatorSource.version, depsHash));
|
|
74
|
+
for (const assetPath of Object.keys(content)) {
|
|
75
|
+
var _content$assetPath;
|
|
76
|
+
const contentElement = (_content$assetPath = content[assetPath]) !== null && _content$assetPath !== void 0 ? _content$assetPath : (0, _TypingUtils.reject)();
|
|
77
|
+
const normalizedAssetPath = path.join(...assetPath.split(/[\\\/]/));
|
|
78
|
+
const filePath = path.join(resourcesDirectory, normalizedAssetPath);
|
|
79
|
+
await (0, _fsExtra.ensureDir)(path.dirname(filePath));
|
|
80
|
+
if (typeof contentElement === "string") {
|
|
81
|
+
await (0, _fsExtra.writeFile)(filePath, contentElement, "utf8");
|
|
82
|
+
} else {
|
|
83
|
+
await (0, _fsExtra.writeFile)(filePath, Buffer.from(contentElement.base64content, "base64"));
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
async exists(generatorSource, gfv, depsHash) {
|
|
88
|
+
if (generatorSource.type === "GeneratorSources") {
|
|
89
|
+
throw new Error("Local generator does not supports caching");
|
|
90
|
+
}
|
|
91
|
+
if (this.mode === _BuildCacheMode.BuildCacheMode.Disabled || this.mode === _BuildCacheMode.BuildCacheMode.ForceUpdate) {
|
|
92
|
+
return false;
|
|
93
|
+
}
|
|
94
|
+
const cachedFilePath = await this.existsFileCacheOrDownload(gfv, generatorSource.version, depsHash);
|
|
95
|
+
return cachedFilePath != undefined;
|
|
96
|
+
}
|
|
97
|
+
async setContent(generatorSource, gfv, depsHash, resourcesDirectory, fileName, fileContent) {
|
|
98
|
+
const cacheFilePath = CacheFile.getCacheFilePath(this.farmDirectory, gfv, generatorSource, depsHash);
|
|
99
|
+
if (!(await (0, _fsExtra.pathExists)(cacheFilePath))) {
|
|
100
|
+
return;
|
|
101
|
+
}
|
|
102
|
+
// tslint:disable-next-line no-unsafe-any
|
|
103
|
+
let content = await CacheFile.read(cacheFilePath);
|
|
104
|
+
content = {
|
|
105
|
+
...content,
|
|
106
|
+
[fileName]: fileContent
|
|
107
|
+
};
|
|
108
|
+
await (0, _fsExtra.ensureDir)(path.dirname(cacheFilePath));
|
|
109
|
+
await CacheFile.write(cacheFilePath, content);
|
|
110
|
+
}
|
|
111
|
+
async createWebpackPlugin(options) {
|
|
112
|
+
if (options.mode === _BuildCacheMode.BuildCacheMode.Disabled || options.mode === _BuildCacheMode.BuildCacheMode.ReadOnly) {
|
|
113
|
+
return undefined;
|
|
114
|
+
}
|
|
115
|
+
const cachedFilePath = CacheFile.getCacheFilePath(this.farmDirectory, options.gfv, options.generatorVersion, options.depsHash);
|
|
116
|
+
return new CacheAssetsPlugin({
|
|
117
|
+
cacheFile: cachedFilePath
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
async existsFileCacheOrDownload(gfv, generatorVersion, depsHash) {
|
|
121
|
+
const filePath = CacheFile.getCacheFilePath(this.farmDirectory, gfv, generatorVersion, depsHash);
|
|
122
|
+
this.logger.log(`Start search file locally: ${filePath}`);
|
|
123
|
+
const filename = path.basename(filePath);
|
|
124
|
+
await (0, _fsExtra.ensureDir)(path.dirname(filePath));
|
|
125
|
+
if (await (0, _fsExtra.pathExists)(filePath)) {
|
|
126
|
+
this.logger.log("Found file in local directory");
|
|
127
|
+
return filePath;
|
|
128
|
+
} else {
|
|
129
|
+
try {
|
|
130
|
+
this.logger.log(`Cache file was not found locally: ${filePath}`);
|
|
131
|
+
this.logger.log(`Looking for cache in drive storage: ${filename}`);
|
|
132
|
+
const response = await (0, _nodeFetch.default)(`https://api.kontur.ru/drive/v1/public/${filename}`);
|
|
133
|
+
this.logger.log(`Drive response status code: ${response.status.toString()}`);
|
|
134
|
+
if (response.status === 200) {
|
|
135
|
+
await (0, _fsExtra.writeFile)(filePath, await response.buffer(), "utf-8");
|
|
136
|
+
return filePath;
|
|
137
|
+
} else {
|
|
138
|
+
if (response.status === 404) {
|
|
139
|
+
this.logger.error(`Cache file not found in drive storage: ${filename}. GFV: ${gfv}, GeneratorVersion: ${generatorVersion}, DependenciesHash: ${depsHash}`);
|
|
140
|
+
} else {
|
|
141
|
+
this.logger.error(`Drive storage sent ${response.status} status code, I don't process it in any way`);
|
|
142
|
+
}
|
|
143
|
+
return undefined;
|
|
144
|
+
}
|
|
145
|
+
} catch (e) {
|
|
146
|
+
this.logger.error("Drive storage responded with an error");
|
|
147
|
+
this.logger.error("The build will continue without a cache");
|
|
148
|
+
this.logger.error(e);
|
|
149
|
+
return undefined;
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
exports.BuildCache = BuildCache;
|
|
155
|
+
class CacheFile {
|
|
156
|
+
static getCacheFilePath(farmDirectory, gfv, generatorVersion, depsHash) {
|
|
157
|
+
const fileName = `${(0, _md.default)(gfv)}-${(0, _md.default)(generatorVersion)}-${depsHash}.zip`;
|
|
158
|
+
return path.join(farmDirectory, ".build-cache", "compile", fileName);
|
|
159
|
+
}
|
|
160
|
+
static async write(cacheFilePath, content) {
|
|
161
|
+
const zip = new _admZip.default();
|
|
162
|
+
zip.addFile(CacheFile.contentFilename, Buffer.from(JSON.stringify(content), "utf8"));
|
|
163
|
+
zip.writeZip(cacheFilePath);
|
|
164
|
+
}
|
|
165
|
+
static async read(cacheFilePath) {
|
|
166
|
+
try {
|
|
167
|
+
const zip = new _admZip.default(cacheFilePath);
|
|
168
|
+
const fileContent = zip.readAsText(CacheFile.contentFilename, "utf-8");
|
|
169
|
+
return JSON.parse(fileContent);
|
|
170
|
+
} catch (e) {
|
|
171
|
+
CacheFile.logger.warning(`Failed to unzip: ${cacheFilePath}`);
|
|
172
|
+
CacheFile.logger.warning(`${e}`);
|
|
173
|
+
const fileContent = await (0, _fsExtra.readFile)(cacheFilePath, "utf-8");
|
|
174
|
+
return JSON.parse(fileContent);
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
CacheFile.contentFilename = "content.json";
|
|
179
|
+
CacheFile.logger = (0, _StaticLogger.getLogger)().withPrefix("BUILD_CACHE");
|
|
180
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJwYXRoIiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJyZXF1aXJlIiwiX2ZzRXh0cmEiLCJfbWQiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX3BMaW1pdCIsIl9ub2RlRmV0Y2giLCJfYWRtWmlwIiwiX0J1aWxkQ2FjaGVNb2RlIiwiX1R5cGluZ1V0aWxzIiwiX1N0YXRpY0xvZ2dlciIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsImUiLCJXZWFrTWFwIiwiciIsInQiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsImhhcyIsImdldCIsIm4iLCJfX3Byb3RvX18iLCJhIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJ1IiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiaSIsInNldCIsInNpbmdsZUxpbWl0IiwicExpbWl0IiwiQ2FjaGVBc3NldHNQbHVnaW4iLCJjb25zdHJ1Y3RvciIsIm9wdGlvbnMiLCJhcHBseSIsImNvbXBpbGVyIiwiaG9va3MiLCJlbWl0IiwidGFwUHJvbWlzZSIsImNvbXBpbGF0aW9uIiwiY2FjaGVJdGVtcyIsImFzc2V0TmFtZSIsImtleXMiLCJhc3NldHMiLCJfY29tcGlsYXRpb24kYXNzZXRzJGEiLCJfY29tcGlsYXRpb24kYXNzZXRzJGEyIiwic291cmNlIiwicmVqZWN0IiwiQnVmZmVyIiwidHlwZSIsImJhc2U2NGNvbnRlbnQiLCJ0b1N0cmluZyIsInVwZGF0ZUZpbGUiLCJmaWxlUGF0aCIsInJlc29sdmUiLCJjYWNoZUZpbGUiLCJjb250ZW50IiwicGF0aEV4aXN0cyIsIkNhY2hlRmlsZSIsInJlYWQiLCJlbnN1cmVEaXIiLCJkaXJuYW1lIiwid3JpdGUiLCJleHBvcnRzIiwiQnVpbGRDYWNoZSIsImZhcm1EaXJlY3RvcnkiLCJtb2RlIiwibG9nZ2VyIiwiZ2V0TG9nZ2VyIiwid2l0aFByZWZpeCIsImV4dHJhY3QiLCJnZW5lcmF0b3JTb3VyY2UiLCJnZnYiLCJkZXBzSGFzaCIsInJlc291cmNlc0RpcmVjdG9yeSIsIkVycm9yIiwiZ2V0Q2FjaGVGaWxlUGF0aCIsInZlcnNpb24iLCJhc3NldFBhdGgiLCJfY29udGVudCRhc3NldFBhdGgiLCJjb250ZW50RWxlbWVudCIsIm5vcm1hbGl6ZWRBc3NldFBhdGgiLCJqb2luIiwic3BsaXQiLCJ3cml0ZUZpbGUiLCJmcm9tIiwiZXhpc3RzIiwiQnVpbGRDYWNoZU1vZGUiLCJEaXNhYmxlZCIsIkZvcmNlVXBkYXRlIiwiY2FjaGVkRmlsZVBhdGgiLCJleGlzdHNGaWxlQ2FjaGVPckRvd25sb2FkIiwidW5kZWZpbmVkIiwic2V0Q29udGVudCIsImZpbGVOYW1lIiwiZmlsZUNvbnRlbnQiLCJjYWNoZUZpbGVQYXRoIiwiY3JlYXRlV2VicGFja1BsdWdpbiIsIlJlYWRPbmx5IiwiZ2VuZXJhdG9yVmVyc2lvbiIsImxvZyIsImZpbGVuYW1lIiwiYmFzZW5hbWUiLCJyZXNwb25zZSIsImZldGNoIiwic3RhdHVzIiwiYnVmZmVyIiwiZXJyb3IiLCJtZDUiLCJ6aXAiLCJBZG1aaXAiLCJhZGRGaWxlIiwiY29udGVudEZpbGVuYW1lIiwiSlNPTiIsInN0cmluZ2lmeSIsIndyaXRlWmlwIiwicmVhZEFzVGV4dCIsInBhcnNlIiwid2FybmluZyIsInJlYWRGaWxlIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL0Zvcm1XZWJwYWNrQ29uZmlndXJhdGlvbi9DYWNoZUFzc2V0c1BsdWdpbi50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBwYXRoIGZyb20gXCJwYXRoXCI7XG5cbmltcG9ydCB7IGVuc3VyZURpciwgcGF0aEV4aXN0cywgcmVhZEZpbGUsIHdyaXRlRmlsZSB9IGZyb20gXCJmcy1leHRyYVwiO1xuaW1wb3J0IG1kNSBmcm9tIFwibWQ1XCI7XG5pbXBvcnQgcExpbWl0IGZyb20gXCJwLWxpbWl0XCI7XG5pbXBvcnQgd2VicGFjayBmcm9tIFwid2VicGFja1wiO1xuaW1wb3J0IGZldGNoIGZyb20gXCJub2RlLWZldGNoXCI7XG5pbXBvcnQgQWRtWmlwIGZyb20gXCJhZG0temlwXCI7XG5cbmltcG9ydCB7IEdlbmVyYXRvclNvdXJjZSB9IGZyb20gXCIuLi9CdWlsZFRhc2tzL0dlbmVyYXRvci9BY3F1aXJlRm9ybUdlbmVyYXRvclwiO1xuaW1wb3J0IHsgQnVpbGRDYWNoZU1vZGUgfSBmcm9tIFwiLi4vQ0xJQ29tbWFuZHMvQnVpbGRGb3Jtcy9CdWlsZENhY2hlTW9kZVwiO1xuaW1wb3J0IHsgcmVqZWN0IH0gZnJvbSBcIi4uLy4uLy4uL0NvbW1vbi9UeXBpbmdVdGlsc1wiO1xuaW1wb3J0IHsgSUxvZ2dlciB9IGZyb20gXCIuLi9Db21tb25zL0xvZ2dpbmcvSUxvZ2dlclwiO1xuaW1wb3J0IHsgZ2V0TG9nZ2VyIH0gZnJvbSBcIi4uL0NvbW1vbnMvTG9nZ2luZy9TdGF0aWNMb2dnZXJcIjtcblxuaW50ZXJmYWNlIENhY2hlQXNzZXRzUGx1Z2luT3B0aW9ucyB7XG4gICAgY2FjaGVGaWxlOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRm9ybUJ1aWxkQ2FjaGVPcHRpb25zIHtcbiAgICBmYXJtRGlyZWN0b3J5OiBzdHJpbmc7XG4gICAgbW9kZTogQnVpbGRDYWNoZU1vZGU7XG4gICAgZ2VuZXJhdG9yVmVyc2lvbjogc3RyaW5nO1xuICAgIGdmdjogc3RyaW5nO1xuICAgIGRlcHNIYXNoOiBzdHJpbmc7XG59XG5cbmNvbnN0IHNpbmdsZUxpbWl0ID0gcExpbWl0KDEpO1xuXG5pbnRlcmZhY2UgQnVpbGRSZXN1bHRzU2VyaWFsaXplZCB7XG4gICAgW3BhdGg6IHN0cmluZ106IHN0cmluZyB8IHsgdHlwZTogXCJCdWZmZXJcIjsgYmFzZTY0Y29udGVudDogc3RyaW5nIH07XG59XG5cbmV4cG9ydCBjbGFzcyBDYWNoZUFzc2V0c1BsdWdpbiB7XG4gICAgcHJpdmF0ZSByZWFkb25seSBvcHRpb25zOiBDYWNoZUFzc2V0c1BsdWdpbk9wdGlvbnM7XG5cbiAgICBwdWJsaWMgY29uc3RydWN0b3Iob3B0aW9uczogQ2FjaGVBc3NldHNQbHVnaW5PcHRpb25zKSB7XG4gICAgICAgIHRoaXMub3B0aW9ucyA9IG9wdGlvbnM7XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIGFwcGx5KGNvbXBpbGVyOiB3ZWJwYWNrLkNvbXBpbGVyKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGNvbXBpbGVyLmhvb2tzLmVtaXQudGFwUHJvbWlzZShcIkNhY2hlQXNzZXRzUGx1Z2luXCIsIGNvbXBpbGF0aW9uID0+XG4gICAgICAgICAgICBzaW5nbGVMaW1pdChhc3luYyAoKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgY2FjaGVJdGVtczogQnVpbGRSZXN1bHRzU2VyaWFsaXplZCA9IHt9O1xuICAgICAgICAgICAgICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZSBuby11bnNhZmUtYW55XG4gICAgICAgICAgICAgICAgZm9yIChjb25zdCBhc3NldE5hbWUgb2YgT2JqZWN0LmtleXMoY29tcGlsYXRpb24uYXNzZXRzKSkge1xuICAgICAgICAgICAgICAgICAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmUgbm8tdW5zYWZlLWFueVxuICAgICAgICAgICAgICAgICAgICBjb25zdCBzb3VyY2U6IHN0cmluZyB8IEJ1ZmZlciA9IGNvbXBpbGF0aW9uLmFzc2V0c1thc3NldE5hbWVdPy5zb3VyY2UoKSA/PyByZWplY3QoKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHNvdXJjZSBpbnN0YW5jZW9mIEJ1ZmZlcikge1xuICAgICAgICAgICAgICAgICAgICAgICAgY2FjaGVJdGVtc1thc3NldE5hbWVdID0geyB0eXBlOiBcIkJ1ZmZlclwiLCBiYXNlNjRjb250ZW50OiBzb3VyY2UudG9TdHJpbmcoXCJiYXNlNjRcIikgfTtcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhY2hlSXRlbXNbYXNzZXROYW1lXSA9IHNvdXJjZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBhd2FpdCB0aGlzLnVwZGF0ZUZpbGUoY2FjaGVJdGVtcyk7XG4gICAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHByaXZhdGUgYXN5bmMgdXBkYXRlRmlsZShjYWNoZUl0ZW1zOiBCdWlsZFJlc3VsdHNTZXJpYWxpemVkKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGNvbnN0IGZpbGVQYXRoID0gcGF0aC5yZXNvbHZlKHRoaXMub3B0aW9ucy5jYWNoZUZpbGUpO1xuICAgICAgICBsZXQgY29udGVudDogQnVpbGRSZXN1bHRzU2VyaWFsaXplZCA9IChhd2FpdCBwYXRoRXhpc3RzKGZpbGVQYXRoKSlcbiAgICAgICAgICAgID8gLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lIG5vLXVuc2FmZS1hbnlcbiAgICAgICAgICAgICAgYXdhaXQgQ2FjaGVGaWxlLnJlYWQoZmlsZVBhdGgpXG4gICAgICAgICAgICA6IHt9O1xuICAgICAgICBjb250ZW50ID0ge1xuICAgICAgICAgICAgLi4uY29udGVudCxcbiAgICAgICAgICAgIC4uLmNhY2hlSXRlbXMsXG4gICAgICAgIH07XG4gICAgICAgIGF3YWl0IGVuc3VyZURpcihwYXRoLmRpcm5hbWUoZmlsZVBhdGgpKTtcbiAgICAgICAgYXdhaXQgQ2FjaGVGaWxlLndyaXRlKGZpbGVQYXRoLCBjb250ZW50KTtcbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBCdWlsZENhY2hlIHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGZhcm1EaXJlY3Rvcnk6IHN0cmluZztcbiAgICBwcml2YXRlIHJlYWRvbmx5IG1vZGU6IEJ1aWxkQ2FjaGVNb2RlO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgbG9nZ2VyOiBJTG9nZ2VyO1xuXG4gICAgcHVibGljIGNvbnN0cnVjdG9yKGZhcm1EaXJlY3Rvcnk6IHN0cmluZywgbW9kZTogQnVpbGRDYWNoZU1vZGUpIHtcbiAgICAgICAgdGhpcy5mYXJtRGlyZWN0b3J5ID0gZmFybURpcmVjdG9yeTtcbiAgICAgICAgdGhpcy5tb2RlID0gbW9kZTtcbiAgICAgICAgdGhpcy5sb2dnZXIgPSBnZXRMb2dnZXIoKS53aXRoUHJlZml4KFwiQlVJTERfQ0FDSEVcIik7XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIGV4dHJhY3QoXG4gICAgICAgIGdlbmVyYXRvclNvdXJjZTogR2VuZXJhdG9yU291cmNlLFxuICAgICAgICBnZnY6IHN0cmluZyxcbiAgICAgICAgZGVwc0hhc2g6IHN0cmluZyxcbiAgICAgICAgcmVzb3VyY2VzRGlyZWN0b3J5OiBzdHJpbmdcbiAgICApOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgaWYgKGdlbmVyYXRvclNvdXJjZS50eXBlID09PSBcIkdlbmVyYXRvclNvdXJjZXNcIikge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiTG9jYWwgZ2VuZXJhdG9yIGRvZXMgbm90IHN1cHBvcnRzIGNhY2hpbmdcIik7XG4gICAgICAgIH1cbiAgICAgICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lIG5vLXVuc2FmZS1hbnlcbiAgICAgICAgY29uc3QgY29udGVudDogQnVpbGRSZXN1bHRzU2VyaWFsaXplZCA9IGF3YWl0IENhY2hlRmlsZS5yZWFkKFxuICAgICAgICAgICAgQ2FjaGVGaWxlLmdldENhY2hlRmlsZVBhdGgodGhpcy5mYXJtRGlyZWN0b3J5LCBnZnYsIGdlbmVyYXRvclNvdXJjZS52ZXJzaW9uLCBkZXBzSGFzaClcbiAgICAgICAgKTtcbiAgICAgICAgZm9yIChjb25zdCBhc3NldFBhdGggb2YgT2JqZWN0LmtleXMoY29udGVudCkpIHtcbiAgICAgICAgICAgIGNvbnN0IGNvbnRlbnRFbGVtZW50ID0gY29udGVudFthc3NldFBhdGhdID8/IHJlamVjdCgpO1xuICAgICAgICAgICAgY29uc3Qgbm9ybWFsaXplZEFzc2V0UGF0aCA9IHBhdGguam9pbiguLi5hc3NldFBhdGguc3BsaXQoL1tcXFxcXFwvXS8pKTtcbiAgICAgICAgICAgIGNvbnN0IGZpbGVQYXRoID0gcGF0aC5qb2luKHJlc291cmNlc0RpcmVjdG9yeSwgbm9ybWFsaXplZEFzc2V0UGF0aCk7XG4gICAgICAgICAgICBhd2FpdCBlbnN1cmVEaXIocGF0aC5kaXJuYW1lKGZpbGVQYXRoKSk7XG4gICAgICAgICAgICBpZiAodHlwZW9mIGNvbnRlbnRFbGVtZW50ID09PSBcInN0cmluZ1wiKSB7XG4gICAgICAgICAgICAgICAgYXdhaXQgd3JpdGVGaWxlKGZpbGVQYXRoLCBjb250ZW50RWxlbWVudCwgXCJ1dGY4XCIpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBhd2FpdCB3cml0ZUZpbGUoZmlsZVBhdGgsIEJ1ZmZlci5mcm9tKGNvbnRlbnRFbGVtZW50LmJhc2U2NGNvbnRlbnQsIFwiYmFzZTY0XCIpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBleGlzdHMoZ2VuZXJhdG9yU291cmNlOiBHZW5lcmF0b3JTb3VyY2UsIGdmdjogc3RyaW5nLCBkZXBzSGFzaDogc3RyaW5nKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgICAgIGlmIChnZW5lcmF0b3JTb3VyY2UudHlwZSA9PT0gXCJHZW5lcmF0b3JTb3VyY2VzXCIpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcIkxvY2FsIGdlbmVyYXRvciBkb2VzIG5vdCBzdXBwb3J0cyBjYWNoaW5nXCIpO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLm1vZGUgPT09IEJ1aWxkQ2FjaGVNb2RlLkRpc2FibGVkIHx8IHRoaXMubW9kZSA9PT0gQnVpbGRDYWNoZU1vZGUuRm9yY2VVcGRhdGUpIHtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBjYWNoZWRGaWxlUGF0aCA9IGF3YWl0IHRoaXMuZXhpc3RzRmlsZUNhY2hlT3JEb3dubG9hZChnZnYsIGdlbmVyYXRvclNvdXJjZS52ZXJzaW9uLCBkZXBzSGFzaCk7XG4gICAgICAgIHJldHVybiBjYWNoZWRGaWxlUGF0aCAhPSB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIHNldENvbnRlbnQoXG4gICAgICAgIGdlbmVyYXRvclNvdXJjZTogc3RyaW5nLFxuICAgICAgICBnZnY6IHN0cmluZyxcbiAgICAgICAgZGVwc0hhc2g6IHN0cmluZyxcbiAgICAgICAgcmVzb3VyY2VzRGlyZWN0b3J5OiBzdHJpbmcsXG4gICAgICAgIGZpbGVOYW1lOiBzdHJpbmcsXG4gICAgICAgIGZpbGVDb250ZW50OiBzdHJpbmdcbiAgICApOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgY29uc3QgY2FjaGVGaWxlUGF0aCA9IENhY2hlRmlsZS5nZXRDYWNoZUZpbGVQYXRoKHRoaXMuZmFybURpcmVjdG9yeSwgZ2Z2LCBnZW5lcmF0b3JTb3VyY2UsIGRlcHNIYXNoKTtcbiAgICAgICAgaWYgKCEoYXdhaXQgcGF0aEV4aXN0cyhjYWNoZUZpbGVQYXRoKSkpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmUgbm8tdW5zYWZlLWFueVxuICAgICAgICBsZXQgY29udGVudDogQnVpbGRSZXN1bHRzU2VyaWFsaXplZCA9IGF3YWl0IENhY2hlRmlsZS5yZWFkKGNhY2hlRmlsZVBhdGgpO1xuICAgICAgICBjb250ZW50ID0ge1xuICAgICAgICAgICAgLi4uY29udGVudCxcbiAgICAgICAgICAgIFtmaWxlTmFtZV06IGZpbGVDb250ZW50LFxuICAgICAgICB9O1xuICAgICAgICBhd2FpdCBlbnN1cmVEaXIocGF0aC5kaXJuYW1lKGNhY2hlRmlsZVBhdGgpKTtcbiAgICAgICAgYXdhaXQgQ2FjaGVGaWxlLndyaXRlKGNhY2hlRmlsZVBhdGgsIGNvbnRlbnQpO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBjcmVhdGVXZWJwYWNrUGx1Z2luKG9wdGlvbnM6IEZvcm1CdWlsZENhY2hlT3B0aW9ucyk6IFByb21pc2U8Q2FjaGVBc3NldHNQbHVnaW4gfCB1bmRlZmluZWQ+IHtcbiAgICAgICAgaWYgKG9wdGlvbnMubW9kZSA9PT0gQnVpbGRDYWNoZU1vZGUuRGlzYWJsZWQgfHwgb3B0aW9ucy5tb2RlID09PSBCdWlsZENhY2hlTW9kZS5SZWFkT25seSkge1xuICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBjYWNoZWRGaWxlUGF0aCA9IENhY2hlRmlsZS5nZXRDYWNoZUZpbGVQYXRoKFxuICAgICAgICAgICAgdGhpcy5mYXJtRGlyZWN0b3J5LFxuICAgICAgICAgICAgb3B0aW9ucy5nZnYsXG4gICAgICAgICAgICBvcHRpb25zLmdlbmVyYXRvclZlcnNpb24sXG4gICAgICAgICAgICBvcHRpb25zLmRlcHNIYXNoXG4gICAgICAgICk7XG4gICAgICAgIHJldHVybiBuZXcgQ2FjaGVBc3NldHNQbHVnaW4oe1xuICAgICAgICAgICAgY2FjaGVGaWxlOiBjYWNoZWRGaWxlUGF0aCxcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBhc3luYyBleGlzdHNGaWxlQ2FjaGVPckRvd25sb2FkKFxuICAgICAgICBnZnY6IHN0cmluZyxcbiAgICAgICAgZ2VuZXJhdG9yVmVyc2lvbjogc3RyaW5nLFxuICAgICAgICBkZXBzSGFzaDogc3RyaW5nXG4gICAgKTogUHJvbWlzZTxzdHJpbmcgfCB1bmRlZmluZWQ+IHtcbiAgICAgICAgY29uc3QgZmlsZVBhdGggPSBDYWNoZUZpbGUuZ2V0Q2FjaGVGaWxlUGF0aCh0aGlzLmZhcm1EaXJlY3RvcnksIGdmdiwgZ2VuZXJhdG9yVmVyc2lvbiwgZGVwc0hhc2gpO1xuICAgICAgICB0aGlzLmxvZ2dlci5sb2coYFN0YXJ0IHNlYXJjaCBmaWxlIGxvY2FsbHk6ICR7ZmlsZVBhdGh9YCk7XG4gICAgICAgIGNvbnN0IGZpbGVuYW1lID0gcGF0aC5iYXNlbmFtZShmaWxlUGF0aCk7XG4gICAgICAgIGF3YWl0IGVuc3VyZURpcihwYXRoLmRpcm5hbWUoZmlsZVBhdGgpKTtcbiAgICAgICAgaWYgKGF3YWl0IHBhdGhFeGlzdHMoZmlsZVBhdGgpKSB7XG4gICAgICAgICAgICB0aGlzLmxvZ2dlci5sb2coXCJGb3VuZCBmaWxlIGluIGxvY2FsIGRpcmVjdG9yeVwiKTtcbiAgICAgICAgICAgIHJldHVybiBmaWxlUGF0aDtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgdGhpcy5sb2dnZXIubG9nKGBDYWNoZSBmaWxlIHdhcyBub3QgZm91bmQgbG9jYWxseTogJHtmaWxlUGF0aH1gKTtcbiAgICAgICAgICAgICAgICB0aGlzLmxvZ2dlci5sb2coYExvb2tpbmcgZm9yIGNhY2hlIGluIGRyaXZlIHN0b3JhZ2U6ICR7ZmlsZW5hbWV9YCk7XG4gICAgICAgICAgICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBmZXRjaChgaHR0cHM6Ly9hcGkua29udHVyLnJ1L2RyaXZlL3YxL3B1YmxpYy8ke2ZpbGVuYW1lfWApO1xuICAgICAgICAgICAgICAgIHRoaXMubG9nZ2VyLmxvZyhgRHJpdmUgcmVzcG9uc2Ugc3RhdHVzIGNvZGU6ICR7cmVzcG9uc2Uuc3RhdHVzLnRvU3RyaW5nKCl9YCk7XG4gICAgICAgICAgICAgICAgaWYgKHJlc3BvbnNlLnN0YXR1cyA9PT0gMjAwKSB7XG4gICAgICAgICAgICAgICAgICAgIGF3YWl0IHdyaXRlRmlsZShmaWxlUGF0aCwgYXdhaXQgcmVzcG9uc2UuYnVmZmVyKCksIFwidXRmLThcIik7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBmaWxlUGF0aDtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBpZiAocmVzcG9uc2Uuc3RhdHVzID09PSA0MDQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubG9nZ2VyLmVycm9yKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGBDYWNoZSBmaWxlIG5vdCBmb3VuZCBpbiBkcml2ZSBzdG9yYWdlOiAke2ZpbGVuYW1lfS4gR0ZWOiAke2dmdn0sIEdlbmVyYXRvclZlcnNpb246ICR7Z2VuZXJhdG9yVmVyc2lvbn0sIERlcGVuZGVuY2llc0hhc2g6ICR7ZGVwc0hhc2h9YFxuICAgICAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubG9nZ2VyLmVycm9yKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGBEcml2ZSBzdG9yYWdlIHNlbnQgJHtyZXNwb25zZS5zdGF0dXN9IHN0YXR1cyBjb2RlLCBJIGRvbid0IHByb2Nlc3MgaXQgaW4gYW55IHdheWBcbiAgICAgICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5sb2dnZXIuZXJyb3IoXCJEcml2ZSBzdG9yYWdlIHJlc3BvbmRlZCB3aXRoIGFuIGVycm9yXCIpO1xuICAgICAgICAgICAgICAgIHRoaXMubG9nZ2VyLmVycm9yKFwiVGhlIGJ1aWxkIHdpbGwgY29udGludWUgd2l0aG91dCBhIGNhY2hlXCIpO1xuICAgICAgICAgICAgICAgIHRoaXMubG9nZ2VyLmVycm9yKGUpO1xuICAgICAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbmNsYXNzIENhY2hlRmlsZSB7XG4gICAgcHJpdmF0ZSBzdGF0aWMgcmVhZG9ubHkgY29udGVudEZpbGVuYW1lID0gXCJjb250ZW50Lmpzb25cIjtcbiAgICBwcml2YXRlIHN0YXRpYyByZWFkb25seSBsb2dnZXIgPSBnZXRMb2dnZXIoKS53aXRoUHJlZml4KFwiQlVJTERfQ0FDSEVcIik7XG5cbiAgICBwdWJsaWMgc3RhdGljIGdldENhY2hlRmlsZVBhdGgoXG4gICAgICAgIGZhcm1EaXJlY3Rvcnk6IHN0cmluZyxcbiAgICAgICAgZ2Z2OiBzdHJpbmcsXG4gICAgICAgIGdlbmVyYXRvclZlcnNpb246IHN0cmluZyxcbiAgICAgICAgZGVwc0hhc2g6IHN0cmluZ1xuICAgICk6IHN0cmluZyB7XG4gICAgICAgIGNvbnN0IGZpbGVOYW1lID0gYCR7bWQ1KGdmdil9LSR7bWQ1KGdlbmVyYXRvclZlcnNpb24pfS0ke2RlcHNIYXNofS56aXBgO1xuICAgICAgICByZXR1cm4gcGF0aC5qb2luKGZhcm1EaXJlY3RvcnksIFwiLmJ1aWxkLWNhY2hlXCIsIFwiY29tcGlsZVwiLCBmaWxlTmFtZSk7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBhc3luYyB3cml0ZShjYWNoZUZpbGVQYXRoOiBzdHJpbmcsIGNvbnRlbnQ6IEJ1aWxkUmVzdWx0c1NlcmlhbGl6ZWQpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgY29uc3QgemlwID0gbmV3IEFkbVppcCgpO1xuICAgICAgICB6aXAuYWRkRmlsZShDYWNoZUZpbGUuY29udGVudEZpbGVuYW1lLCBCdWZmZXIuZnJvbShKU09OLnN0cmluZ2lmeShjb250ZW50KSwgXCJ1dGY4XCIpKTtcbiAgICAgICAgemlwLndyaXRlWmlwKGNhY2hlRmlsZVBhdGgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgYXN5bmMgcmVhZChjYWNoZUZpbGVQYXRoOiBzdHJpbmcpOiBQcm9taXNlPEJ1aWxkUmVzdWx0c1NlcmlhbGl6ZWQ+IHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGNvbnN0IHppcCA9IG5ldyBBZG1aaXAoY2FjaGVGaWxlUGF0aCk7XG4gICAgICAgICAgICBjb25zdCBmaWxlQ29udGVudCA9IHppcC5yZWFkQXNUZXh0KENhY2hlRmlsZS5jb250ZW50RmlsZW5hbWUsIFwidXRmLThcIik7XG4gICAgICAgICAgICByZXR1cm4gSlNPTi5wYXJzZShmaWxlQ29udGVudCkgYXMgQnVpbGRSZXN1bHRzU2VyaWFsaXplZDtcbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgQ2FjaGVGaWxlLmxvZ2dlci53YXJuaW5nKGBGYWlsZWQgdG8gdW56aXA6ICR7Y2FjaGVGaWxlUGF0aH1gKTtcbiAgICAgICAgICAgIENhY2hlRmlsZS5sb2dnZXIud2FybmluZyhgJHtlfWApO1xuICAgICAgICAgICAgY29uc3QgZmlsZUNvbnRlbnQgPSBhd2FpdCByZWFkRmlsZShjYWNoZUZpbGVQYXRoLCBcInV0Zi04XCIpO1xuICAgICAgICAgICAgcmV0dXJuIEpTT04ucGFyc2UoZmlsZUNvbnRlbnQpIGFzIEJ1aWxkUmVzdWx0c1NlcmlhbGl6ZWQ7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQSxJQUFBQSxJQUFBLEdBQUFDLHVCQUFBLENBQUFDLE9BQUE7QUFFQSxJQUFBQyxRQUFBLEdBQUFELE9BQUE7QUFDQSxJQUFBRSxHQUFBLEdBQUFDLHNCQUFBLENBQUFILE9BQUE7QUFDQSxJQUFBSSxPQUFBLEdBQUFELHNCQUFBLENBQUFILE9BQUE7QUFFQSxJQUFBSyxVQUFBLEdBQUFGLHNCQUFBLENBQUFILE9BQUE7QUFDQSxJQUFBTSxPQUFBLEdBQUFILHNCQUFBLENBQUFILE9BQUE7QUFHQSxJQUFBTyxlQUFBLEdBQUFQLE9BQUE7QUFDQSxJQUFBUSxZQUFBLEdBQUFSLE9BQUE7QUFFQSxJQUFBUyxhQUFBLEdBQUFULE9BQUE7QUFBNEQsU0FBQVUseUJBQUFDLENBQUEsNkJBQUFDLE9BQUEsbUJBQUFDLENBQUEsT0FBQUQsT0FBQSxJQUFBRSxDQUFBLE9BQUFGLE9BQUEsWUFBQUYsd0JBQUEsWUFBQUEsQ0FBQUMsQ0FBQSxXQUFBQSxDQUFBLEdBQUFHLENBQUEsR0FBQUQsQ0FBQSxLQUFBRixDQUFBO0FBQUEsU0FBQVosd0JBQUFZLENBQUEsRUFBQUUs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
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CacheAssetsPlugin.js","names":["path","_interopRequireWildcard","require","_fsExtra","_md","_interopRequireDefault","_pLimit","_nodeFetch","_admZip","_BuildCacheMode","_TypingUtils","_StaticLogger","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","singleLimit","pLimit","CacheAssetsPlugin","constructor","options","apply","compiler","hooks","emit","tapPromise","compilation","cacheItems","assetName","keys","assets","_compilation$assets$a","_compilation$assets$a2","source","reject","Buffer","type","base64content","toString","updateFile","filePath","resolve","cacheFile","content","pathExists","CacheFile","read","ensureDir","dirname","write","exports","BuildCache","farmDirectory","mode","logger","getLogger","withPrefix","extract","generatorSource","gfv","depsHash","resourcesDirectory","Error","getCacheFilePath","version","assetPath","_content$assetPath","contentElement","normalizedAssetPath","join","split","writeFile","from","exists","BuildCacheMode","Disabled","ForceUpdate","cachedFilePath","existsFileCacheOrDownload","undefined","setContent","fileName","fileContent","cacheFilePath","createWebpackPlugin","ReadOnly","generatorVersion","log","filename","basename","response","fetch","status","buffer","error","md5","zip","AdmZip","addFile","contentFilename","JSON","stringify","writeZip","readAsText","parse","warning","readFile"],"sources":["../../../../src/FormWebpackConfiguration/CacheAssetsPlugin.ts"],"sourcesContent":["import * as path from \"path\";\n\nimport { ensureDir, pathExists, readFile, writeFile } from \"fs-extra\";\nimport md5 from \"md5\";\nimport pLimit from \"p-limit\";\nimport webpack from \"webpack\";\nimport fetch from \"node-fetch\";\nimport AdmZip from \"adm-zip\";\n\nimport { GeneratorSource } from \"../BuildTasks/Generator/AcquireFormGenerator\";\nimport { BuildCacheMode } from \"../CLICommands/BuildForms/BuildCacheMode\";\nimport { reject } from \"../../../Common/TypingUtils\";\nimport { ILogger } from \"../Commons/Logging/ILogger\";\nimport { getLogger } from \"../Commons/Logging/StaticLogger\";\n\ninterface CacheAssetsPluginOptions {\n cacheFile: string;\n}\n\nexport interface FormBuildCacheOptions {\n farmDirectory: string;\n mode: BuildCacheMode;\n generatorVersion: string;\n gfv: string;\n depsHash: string;\n}\n\nconst singleLimit = pLimit(1);\n\ninterface BuildResultsSerialized {\n [path: string]: string | { type: \"Buffer\"; base64content: string };\n}\n\nexport class CacheAssetsPlugin {\n private readonly options: CacheAssetsPluginOptions;\n\n public constructor(options: CacheAssetsPluginOptions) {\n this.options = options;\n }\n\n public async apply(compiler: webpack.Compiler): Promise<void> {\n compiler.hooks.emit.tapPromise(\"CacheAssetsPlugin\", compilation =>\n singleLimit(async () => {\n const cacheItems: BuildResultsSerialized = {};\n // tslint:disable-next-line no-unsafe-any\n for (const assetName of Object.keys(compilation.assets)) {\n // tslint:disable-next-line no-unsafe-any\n const source: string | Buffer = compilation.assets[assetName]?.source() ?? reject();\n if (source instanceof Buffer) {\n cacheItems[assetName] = { type: \"Buffer\", base64content: source.toString(\"base64\") };\n } else {\n cacheItems[assetName] = source;\n }\n }\n await this.updateFile(cacheItems);\n })\n );\n }\n\n private async updateFile(cacheItems: BuildResultsSerialized): Promise<void> {\n const filePath = path.resolve(this.options.cacheFile);\n let content: BuildResultsSerialized = (await pathExists(filePath))\n ? // tslint:disable-next-line no-unsafe-any\n await CacheFile.read(filePath)\n : {};\n content = {\n ...content,\n ...cacheItems,\n };\n await ensureDir(path.dirname(filePath));\n await CacheFile.write(filePath, content);\n }\n}\n\nexport class BuildCache {\n private readonly farmDirectory: string;\n private readonly mode: BuildCacheMode;\n private readonly logger: ILogger;\n\n public constructor(farmDirectory: string, mode: BuildCacheMode) {\n this.farmDirectory = farmDirectory;\n this.mode = mode;\n this.logger = getLogger().withPrefix(\"BUILD_CACHE\");\n }\n\n public async extract(\n generatorSource: GeneratorSource,\n gfv: string,\n depsHash: string,\n resourcesDirectory: string\n ): Promise<void> {\n if (generatorSource.type === \"GeneratorSources\") {\n throw new Error(\"Local generator does not supports caching\");\n }\n // tslint:disable-next-line no-unsafe-any\n const content: BuildResultsSerialized = await CacheFile.read(\n CacheFile.getCacheFilePath(this.farmDirectory, gfv, generatorSource.version, depsHash)\n );\n for (const assetPath of Object.keys(content)) {\n const contentElement = content[assetPath] ?? reject();\n const normalizedAssetPath = path.join(...assetPath.split(/[\\\\\\/]/));\n const filePath = path.join(resourcesDirectory, normalizedAssetPath);\n await ensureDir(path.dirname(filePath));\n if (typeof contentElement === \"string\") {\n await writeFile(filePath, contentElement, \"utf8\");\n } else {\n await writeFile(filePath, Buffer.from(contentElement.base64content, \"base64\"));\n }\n }\n }\n\n public async exists(generatorSource: GeneratorSource, gfv: string, depsHash: string): Promise<boolean> {\n if (generatorSource.type === \"GeneratorSources\") {\n throw new Error(\"Local generator does not supports caching\");\n }\n if (this.mode === BuildCacheMode.Disabled || this.mode === BuildCacheMode.ForceUpdate) {\n return false;\n }\n const cachedFilePath = await this.existsFileCacheOrDownload(gfv, generatorSource.version, depsHash);\n return cachedFilePath != undefined;\n }\n\n public async setContent(\n generatorSource: string,\n gfv: string,\n depsHash: string,\n resourcesDirectory: string,\n fileName: string,\n fileContent: string\n ): Promise<void> {\n const cacheFilePath = CacheFile.getCacheFilePath(this.farmDirectory, gfv, generatorSource, depsHash);\n if (!(await pathExists(cacheFilePath))) {\n return;\n }\n // tslint:disable-next-line no-unsafe-any\n let content: BuildResultsSerialized = await CacheFile.read(cacheFilePath);\n content = {\n ...content,\n [fileName]: fileContent,\n };\n await ensureDir(path.dirname(cacheFilePath));\n await CacheFile.write(cacheFilePath, content);\n }\n\n public async createWebpackPlugin(options: FormBuildCacheOptions): Promise<CacheAssetsPlugin | undefined> {\n if (options.mode === BuildCacheMode.Disabled || options.mode === BuildCacheMode.ReadOnly) {\n return undefined;\n }\n const cachedFilePath = CacheFile.getCacheFilePath(\n this.farmDirectory,\n options.gfv,\n options.generatorVersion,\n options.depsHash\n );\n return new CacheAssetsPlugin({\n cacheFile: cachedFilePath,\n });\n }\n\n private async existsFileCacheOrDownload(\n gfv: string,\n generatorVersion: string,\n depsHash: string\n ): Promise<string | undefined> {\n const filePath = CacheFile.getCacheFilePath(this.farmDirectory, gfv, generatorVersion, depsHash);\n this.logger.log(`Start search file locally: ${filePath}`);\n const filename = path.basename(filePath);\n await ensureDir(path.dirname(filePath));\n if (await pathExists(filePath)) {\n this.logger.log(\"Found file in local directory\");\n return filePath;\n } else {\n try {\n this.logger.log(`Cache file was not found locally: ${filePath}`);\n this.logger.log(`Looking for cache in drive storage: ${filename}`);\n const response = await fetch(`https://api.kontur.ru/drive/v1/public/${filename}`);\n this.logger.log(`Drive response status code: ${response.status.toString()}`);\n if (response.status === 200) {\n await writeFile(filePath, await response.buffer(), \"utf-8\");\n return filePath;\n } else {\n if (response.status === 404) {\n this.logger.error(\n `Cache file not found in drive storage: ${filename}. GFV: ${gfv}, GeneratorVersion: ${generatorVersion}, DependenciesHash: ${depsHash}`\n );\n } else {\n this.logger.error(\n `Drive storage sent ${response.status} status code, I don't process it in any way`\n );\n }\n return undefined;\n }\n } catch (e) {\n this.logger.error(\"Drive storage responded with an error\");\n this.logger.error(\"The build will continue without a cache\");\n this.logger.error(e);\n return undefined;\n }\n }\n }\n}\n\nclass CacheFile {\n private static readonly contentFilename = \"content.json\";\n private static readonly logger = getLogger().withPrefix(\"BUILD_CACHE\");\n\n public static getCacheFilePath(\n farmDirectory: string,\n gfv: string,\n generatorVersion: string,\n depsHash: string\n ): string {\n const fileName = `${md5(gfv)}-${md5(generatorVersion)}-${depsHash}.zip`;\n return path.join(farmDirectory, \".build-cache\", \"compile\", fileName);\n }\n\n public static async write(cacheFilePath: string, content: BuildResultsSerialized): Promise<void> {\n const zip = new AdmZip();\n zip.addFile(CacheFile.contentFilename, Buffer.from(JSON.stringify(content), \"utf8\"));\n zip.writeZip(cacheFilePath);\n }\n\n public static async read(cacheFilePath: string): Promise<BuildResultsSerialized> {\n try {\n const zip = new AdmZip(cacheFilePath);\n const fileContent = zip.readAsText(CacheFile.contentFilename, \"utf-8\");\n return JSON.parse(fileContent) as BuildResultsSerialized;\n } catch (e) {\n CacheFile.logger.warning(`Failed to unzip: ${cacheFilePath}`);\n CacheFile.logger.warning(`${e}`);\n const fileContent = await readFile(cacheFilePath, \"utf-8\");\n return JSON.parse(fileContent) as BuildResultsSerialized;\n }\n }\n}\n"],"mappings":";;;;;;;AAAA,IAAAA,IAAA,GAAAC,uBAAA,CAAAC,OAAA;AAEA,IAAAC,QAAA,GAAAD,OAAA;AACA,IAAAE,GAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,OAAA,GAAAD,sBAAA,CAAAH,OAAA;AAEA,IAAAK,UAAA,GAAAF,sBAAA,CAAAH,OAAA;AACA,IAAAM,OAAA,GAAAH,sBAAA,CAAAH,OAAA;AAGA,IAAAO,eAAA,GAAAP,OAAA;AACA,IAAAQ,YAAA,GAAAR,OAAA;AAEA,IAAAS,aAAA,GAAAT,OAAA;AAA4D,SAAAU,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAZ,wBAAAY,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAe,GAAA,CAAAlB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAc5D,MAAMW,WAAW,GAAG,IAAAC,eAAM,EAAC,CAAC,CAAC;AAMtB,MAAMC,iBAAiB,CAAC;EAGpBC,WAAWA,CAACC,OAAiC,EAAE;IAAA,KAFrCA,OAAO;IAGpB,IAAI,CAACA,OAAO,GAAGA,OAAO;EAC1B;EAEA,MAAaC,KAAKA,CAACC,QAA0B,EAAiB;IAC1DA,QAAQ,CAACC,KAAK,CAACC,IAAI,CAACC,UAAU,CAAC,mBAAmB,EAAEC,WAAW,IAC3DV,WAAW,CAAC,YAAY;MACpB,MAAMW,UAAkC,GAAG,CAAC,CAAC;MAC7C;MACA,KAAK,MAAMC,SAAS,IAAIpB,MAAM,CAACqB,IAAI,CAACH,WAAW,CAACI,MAAM,CAAC,EAAE;QAAA,IAAAC,qBAAA,EAAAC,sBAAA;QACrD;QACA,MAAMC,MAAuB,IAAAF,qBAAA,IAAAC,sBAAA,GAAGN,WAAW,CAACI,MAAM,CAACF,SAAS,CAAC,cAAAI,sBAAA,uBAA7BA,sBAAA,CAA+BC,MAAM,CAAC,CAAC,cAAAF,qBAAA,cAAAA,qBAAA,GAAI,IAAAG,mBAAM,EAAC,CAAC;QACnF,IAAID,MAAM,YAAYE,MAAM,EAAE;UAC1BR,UAAU,CAACC,SAAS,CAAC,GAAG;YAAEQ,IAAI,EAAE,QAAQ;YAAEC,aAAa,EAAEJ,MAAM,CAACK,QAAQ,CAAC,QAAQ;UAAE,CAAC;QACxF,CAAC,MAAM;UACHX,UAAU,CAACC,SAAS,CAAC,GAAGK,MAAM;QAClC;MACJ;MACA,MAAM,IAAI,CAACM,UAAU,CAACZ,UAAU,CAAC;IACrC,CAAC,CACL,CAAC;EACL;EAEA,MAAcY,UAAUA,CAACZ,UAAkC,EAAiB;IACxE,MAAMa,QAAQ,GAAGxD,IAAI,CAACyD,OAAO,CAAC,IAAI,CAACrB,OAAO,CAACsB,SAAS,CAAC;IACrD,IAAIC,OAA+B,GAAG,CAAC,MAAM,IAAAC,mBAAU,EAACJ,QAAQ,CAAC;IAC3D;IACA,MAAMK,SAAS,CAACC,IAAI,CAACN,QAAQ,CAAC,GAC9B,CAAC,CAAC;IACRG,OAAO,GAAG;MACN,GAAGA,OAAO;MACV,GAAGhB;IACP,CAAC;IACD,MAAM,IAAAoB,kBAAS,EAAC/D,IAAI,CAACgE,OAAO,CAACR,QAAQ,CAAC,CAAC;IACvC,MAAMK,SAAS,CAACI,KAAK,CAACT,QAAQ,EAAEG,OAAO,CAAC;EAC5C;AACJ;AAACO,OAAA,CAAAhC,iBAAA,GAAAA,iBAAA;AAEM,MAAMiC,UAAU,CAAC;EAKbhC,WAAWA,CAACiC,aAAqB,EAAEC,IAAoB,EAAE;IAAA,KAJ/CD,aAAa;IAAA,KACbC,IAAI;IAAA,KACJC,MAAM;IAGnB,IAAI,CAACF,aAAa,GAAGA,aAAa;IAClC,IAAI,CAACC,IAAI,GAAGA,IAAI;IAChB,IAAI,CAACC,MAAM,GAAG,IAAAC,uBAAS,EAAC,CAAC,CAACC,UAAU,CAAC,aAAa,CAAC;EACvD;EAEA,MAAaC,OAAOA,CAChBC,eAAgC,EAChCC,GAAW,EACXC,QAAgB,EAChBC,kBAA0B,EACb;IACb,IAAIH,eAAe,CAACtB,IAAI,KAAK,kBAAkB,EAAE;MAC7C,MAAM,IAAI0B,KAAK,CAAC,2CAA2C,CAAC;IAChE;IACA;IACA,MAAMnB,OAA+B,GAAG,MAAME,SAAS,CAACC,IAAI,CACxDD,SAAS,CAACkB,gBAAgB,CAAC,IAAI,CAACX,aAAa,EAAEO,GAAG,EAAED,eAAe,CAACM,OAAO,EAAEJ,QAAQ,CACzF,CAAC;IACD,KAAK,MAAMK,SAAS,IAAIzD,MAAM,CAACqB,IAAI,CAACc,OAAO,CAAC,EAAE;MAAA,IAAAuB,kBAAA;MAC1C,MAAMC,cAAc,IAAAD,kBAAA,GAAGvB,OAAO,CAACsB,SAAS,CAAC,cAAAC,kBAAA,cAAAA,kBAAA,GAAI,IAAAhC,mBAAM,EAAC,CAAC;MACrD,MAAMkC,mBAAmB,GAAGpF,IAAI,CAACqF,IAAI,CAAC,GAAGJ,SAAS,CAACK,KAAK,CAAC,QAAQ,CAAC,CAAC;MACnE,MAAM9B,QAAQ,GAAGxD,IAAI,CAACqF,IAAI,CAACR,kBAAkB,EAAEO,mBAAmB,CAAC;MACnE,MAAM,IAAArB,kBAAS,EAAC/D,IAAI,CAACgE,OAAO,CAACR,QAAQ,CAAC,CAAC;MACvC,IAAI,OAAO2B,cAAc,KAAK,QAAQ,EAAE;QACpC,MAAM,IAAAI,kBAAS,EAAC/B,QAAQ,EAAE2B,cAAc,EAAE,MAAM,CAAC;MACrD,CAAC,MAAM;QACH,MAAM,IAAAI,kBAAS,EAAC/B,QAAQ,EAAEL,MAAM,CAACqC,IAAI,CAACL,cAAc,CAAC9B,aAAa,EAAE,QAAQ,CAAC,CAAC;MAClF;IACJ;EACJ;EAEA,MAAaoC,MAAMA,CAACf,eAAgC,EAAEC,GAAW,EAAEC,QAAgB,EAAoB;IACnG,IAAIF,eAAe,CAACtB,IAAI,KAAK,kBAAkB,EAAE;MAC7C,MAAM,IAAI0B,KAAK,CAAC,2CAA2C,CAAC;IAChE;IACA,IAAI,IAAI,CAACT,IAAI,KAAKqB,8BAAc,CAACC,QAAQ,IAAI,IAAI,CAACtB,IAAI,KAAKqB,8BAAc,CAACE,WAAW,EAAE;MACnF,OAAO,KAAK;IAChB;IACA,MAAMC,cAAc,GAAG,MAAM,IAAI,CAACC,yBAAyB,CAACnB,GAAG,EAAED,eAAe,CAACM,OAAO,EAAEJ,QAAQ,CAAC;IACnG,OAAOiB,cAAc,IAAIE,SAAS;EACtC;EAEA,MAAaC,UAAUA,CACnBtB,eAAuB,EACvBC,GAAW,EACXC,QAAgB,EAChBC,kBAA0B,EAC1BoB,QAAgB,EAChBC,WAAmB,EACN;IACb,MAAMC,aAAa,GAAGtC,SAAS,CAACkB,gBAAgB,CAAC,IAAI,CAACX,aAAa,EAAEO,GAAG,EAAED,eAAe,EAAEE,QAAQ,CAAC;IACpG,IAAI,EAAE,MAAM,IAAAhB,mBAAU,EAACuC,aAAa,CAAC,CAAC,EAAE;MACpC;IACJ;IACA;IACA,IAAIxC,OAA+B,GAAG,MAAME,SAAS,CAACC,IAAI,CAACqC,aAAa,CAAC;IACzExC,OAAO,GAAG;MACN,GAAGA,OAAO;MACV,CAACsC,QAAQ,GAAGC;IAChB,CAAC;IACD,MAAM,IAAAnC,kBAAS,EAAC/D,IAAI,CAACgE,OAAO,CAACmC,aAAa,CAAC,CAAC;IAC5C,MAAMtC,SAAS,CAACI,KAAK,CAACkC,aAAa,EAAExC,OAAO,CAAC;EACjD;EAEA,MAAayC,mBAAmBA,CAAChE,OAA8B,EAA0C;IACrG,IAAIA,OAAO,CAACiC,IAAI,KAAKqB,8BAAc,CAACC,QAAQ,IAAIvD,OAAO,CAACiC,IAAI,KAAKqB,8BAAc,CAACW,QAAQ,EAAE;MACtF,OAAON,SAAS;IACpB;IACA,MAAMF,cAAc,GAAGhC,SAAS,CAACkB,gBAAgB,CAC7C,IAAI,CAACX,aAAa,EAClBhC,OAAO,CAACuC,GAAG,EACXvC,OAAO,CAACkE,gBAAgB,EACxBlE,OAAO,CAACwC,QACZ,CAAC;IACD,OAAO,IAAI1C,iBAAiB,CAAC;MACzBwB,SAAS,EAAEmC;IACf,CAAC,CAAC;EACN;EAEA,MAAcC,yBAAyBA,CACnCnB,GAAW,EACX2B,gBAAwB,EACxB1B,QAAgB,EACW;IAC3B,MAAMpB,QAAQ,GAAGK,SAAS,CAACkB,gBAAgB,CAAC,IAAI,CAACX,aAAa,EAAEO,GAAG,EAAE2B,gBAAgB,EAAE1B,QAAQ,CAAC;IAChG,IAAI,CAACN,MAAM,CAACiC,GAAG,CAAC,8BAA8B/C,QAAQ,EAAE,CAAC;IACzD,MAAMgD,QAAQ,GAAGxG,IAAI,CAACyG,QAAQ,CAACjD,QAAQ,CAAC;IACxC,MAAM,IAAAO,kBAAS,EAAC/D,IAAI,CAACgE,OAAO,CAACR,QAAQ,CAAC,CAAC;IACvC,IAAI,MAAM,IAAAI,mBAAU,EAACJ,QAAQ,CAAC,EAAE;MAC5B,IAAI,CAACc,MAAM,CAACiC,GAAG,CAAC,+BAA+B,CAAC;MAChD,OAAO/C,QAAQ;IACnB,CAAC,MAAM;MACH,IAAI;QACA,IAAI,CAACc,MAAM,CAACiC,GAAG,CAAC,qCAAqC/C,QAAQ,EAAE,CAAC;QAChE,IAAI,CAACc,MAAM,CAACiC,GAAG,CAAC,uCAAuCC,QAAQ,EAAE,CAAC;QAClE,MAAME,QAAQ,GAAG,MAAM,IAAAC,kBAAK,EAAC,yCAAyCH,QAAQ,EAAE,CAAC;QACjF,IAAI,CAAClC,MAAM,CAACiC,GAAG,CAAC,+BAA+BG,QAAQ,CAACE,MAAM,CAACtD,QAAQ,CAAC,CAAC,EAAE,CAAC;QAC5E,IAAIoD,QAAQ,CAACE,MAAM,KAAK,GAAG,EAAE;UACzB,MAAM,IAAArB,kBAAS,EAAC/B,QAAQ,EAAE,MAAMkD,QAAQ,CAACG,MAAM,CAAC,CAAC,EAAE,OAAO,CAAC;UAC3D,OAAOrD,QAAQ;QACnB,CAAC,MAAM;UACH,IAAIkD,QAAQ,CAACE,MAAM,KAAK,GAAG,EAAE;YACzB,IAAI,CAACtC,MAAM,CAACwC,KAAK,CACb,0CAA0CN,QAAQ,UAAU7B,GAAG,uBAAuB2B,gBAAgB,uBAAuB1B,QAAQ,EACzI,CAAC;UACL,CAAC,MAAM;YACH,IAAI,CAACN,MAAM,CAACwC,KAAK,CACb,sBAAsBJ,QAAQ,CAACE,MAAM,6CACzC,CAAC;UACL;UACA,OAAOb,SAAS;QACpB;MACJ,CAAC,CAAC,OAAOlF,CAAC,EAAE;QACR,IAAI,CAACyD,MAAM,CAACwC,KAAK,CAAC,uCAAuC,CAAC;QAC1D,IAAI,CAACxC,MAAM,CAACwC,KAAK,CAAC,yCAAyC,CAAC;QAC5D,IAAI,CAACxC,MAAM,CAACwC,KAAK,CAACjG,CAAC,CAAC;QACpB,OAAOkF,SAAS;MACpB;IACJ;EACJ;AACJ;AAAC7B,OAAA,CAAAC,UAAA,GAAAA,UAAA;AAED,MAAMN,SAAS,CAAC;EAIZ,OAAckB,gBAAgBA,CAC1BX,aAAqB,EACrBO,GAAW,EACX2B,gBAAwB,EACxB1B,QAAgB,EACV;IACN,MAAMqB,QAAQ,GAAG,GAAG,IAAAc,WAAG,EAACpC,GAAG,CAAC,IAAI,IAAAoC,WAAG,EAACT,gBAAgB,CAAC,IAAI1B,QAAQ,MAAM;IACvE,OAAO5E,IAAI,CAACqF,IAAI,CAACjB,aAAa,EAAE,cAAc,EAAE,SAAS,EAAE6B,QAAQ,CAAC;EACxE;EAEA,aAAoBhC,KAAKA,CAACkC,aAAqB,EAAExC,OAA+B,EAAiB;IAC7F,MAAMqD,GAAG,GAAG,IAAIC,eAAM,CAAC,CAAC;IACxBD,GAAG,CAACE,OAAO,CAACrD,SAAS,CAACsD,eAAe,EAAEhE,MAAM,CAACqC,IAAI,CAAC4B,IAAI,CAACC,SAAS,CAAC1D,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IACpFqD,GAAG,CAACM,QAAQ,CAACnB,aAAa,CAAC;EAC/B;EAEA,aAAoBrC,IAAIA,CAACqC,aAAqB,EAAmC;IAC7E,IAAI;MACA,MAAMa,GAAG,GAAG,IAAIC,eAAM,CAACd,aAAa,CAAC;MACrC,MAAMD,WAAW,GAAGc,GAAG,CAACO,UAAU,CAAC1D,SAAS,CAACsD,eAAe,EAAE,OAAO,CAAC;MACtE,OAAOC,IAAI,CAACI,KAAK,CAACtB,WAAW,CAAC;IAClC,CAAC,CAAC,OAAOrF,CAAC,EAAE;MACRgD,SAAS,CAACS,MAAM,CAACmD,OAAO,CAAC,oBAAoBtB,aAAa,EAAE,CAAC;MAC7DtC,SAAS,CAACS,MAAM,CAACmD,OAAO,CAAC,GAAG5G,CAAC,EAAE,CAAC;MAChC,MAAMqF,WAAW,GAAG,MAAM,IAAAwB,iBAAQ,EAACvB,aAAa,EAAE,OAAO,CAAC;MAC1D,OAAOiB,IAAI,CAACI,KAAK,CAACtB,WAAW,CAAC;IAClC;EACJ;AACJ;AAhCMrC,SAAS,CACasD,eAAe,GAAG,cAAc;AADtDtD,SAAS,CAEaS,MAAM,GAAG,IAAAC,uBAAS,EAAC,CAAC,CAACC,UAAU,CAAC,aAAa,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.createConfig = createConfig;
|
|
8
|
+
var _path = _interopRequireDefault(require("path"));
|
|
9
|
+
var _miniCssExtractPlugin = _interopRequireDefault(require("mini-css-extract-plugin"));
|
|
10
|
+
var _webpack = _interopRequireDefault(require("webpack"));
|
|
11
|
+
var _CacheAssetsPlugin = require("./CacheAssetsPlugin");
|
|
12
|
+
// tslint:disable no-any no-unsafe-any no-invalid-this
|
|
13
|
+
|
|
14
|
+
async function createConfigVariant(options) {
|
|
15
|
+
const {
|
|
16
|
+
gfv
|
|
17
|
+
} = options;
|
|
18
|
+
const fileNameSuffix = options.mode === "production" ? ".min" : "";
|
|
19
|
+
const formPath = options.formPath;
|
|
20
|
+
const buildCache = options.buildCacheOptions != undefined ? new _CacheAssetsPlugin.BuildCache(options.buildCacheOptions.farmDirectory, options.buildCacheOptions.mode) : undefined;
|
|
21
|
+
const buildCacheWebpackPlugin = buildCache != undefined && options.buildCacheOptions != undefined ? await buildCache.createWebpackPlugin(options.buildCacheOptions) : undefined;
|
|
22
|
+
return {
|
|
23
|
+
mode: options.mode,
|
|
24
|
+
target: ["web", "es5"],
|
|
25
|
+
context: formPath,
|
|
26
|
+
output: {
|
|
27
|
+
filename: `public/scripts/${gfv}${fileNameSuffix}.js`,
|
|
28
|
+
path: options.resourcesDirectoryPath,
|
|
29
|
+
publicPath: "/static/"
|
|
30
|
+
},
|
|
31
|
+
resolve: {
|
|
32
|
+
alias: {
|
|
33
|
+
"variables.less": _path.default.resolve(_path.default.join(__dirname, "variables.less")),
|
|
34
|
+
variables: _path.default.resolve(_path.default.join(__dirname, "variables.less")),
|
|
35
|
+
Resources: _path.default.join(formPath, "form", "resources")
|
|
36
|
+
},
|
|
37
|
+
extensions: [".js", ".jsx"]
|
|
38
|
+
},
|
|
39
|
+
entry: [_path.default.join(formPath, "form", "./web")],
|
|
40
|
+
devtool: options.mode === "production" ? "hidden-source-map" : "inline-source-map",
|
|
41
|
+
cache: options.mode === "development" ? {
|
|
42
|
+
type: "memory",
|
|
43
|
+
maxGenerations: 5
|
|
44
|
+
} : false,
|
|
45
|
+
module: {
|
|
46
|
+
rules: [{
|
|
47
|
+
test: /\.less$/,
|
|
48
|
+
use: [{
|
|
49
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
50
|
+
loader: _miniCssExtractPlugin.default.loader,
|
|
51
|
+
options: {
|
|
52
|
+
publicPath: "../../"
|
|
53
|
+
}
|
|
54
|
+
}, {
|
|
55
|
+
loader: require.resolve("css-loader"),
|
|
56
|
+
options: {
|
|
57
|
+
modules: {
|
|
58
|
+
localIdentName: "[hash:base64:5]"
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
}, {
|
|
62
|
+
loader: require.resolve("postcss-loader"),
|
|
63
|
+
options: {
|
|
64
|
+
postcssOptions: {
|
|
65
|
+
ident: "postcss",
|
|
66
|
+
// tslint:disable no-require-imports
|
|
67
|
+
plugins: [
|
|
68
|
+
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
|
69
|
+
require("autoprefixer")({
|
|
70
|
+
// Просто дефолтные значение из текущего (1.7.7) browserslist
|
|
71
|
+
overrideBrowserslist: "> 1%, last 2 versions, Firefox ESR"
|
|
72
|
+
})]
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
}, {
|
|
76
|
+
loader: require.resolve("less-loader")
|
|
77
|
+
}]
|
|
78
|
+
}, {
|
|
79
|
+
test: /\.jsx?$/,
|
|
80
|
+
use: [{
|
|
81
|
+
loader: require.resolve("babel-loader"),
|
|
82
|
+
options: {
|
|
83
|
+
babelrc: false,
|
|
84
|
+
configFile: false,
|
|
85
|
+
presets: [require.resolve("@babel/preset-react"), [require.resolve("@babel/preset-env"), {
|
|
86
|
+
targets: {
|
|
87
|
+
browsers: "> 0%"
|
|
88
|
+
},
|
|
89
|
+
loose: true
|
|
90
|
+
}]],
|
|
91
|
+
plugins: [[require.resolve("@babel/plugin-proposal-decorators"), {
|
|
92
|
+
legacy: true
|
|
93
|
+
}], [require.resolve("@babel/plugin-transform-class-properties"), {
|
|
94
|
+
loose: true
|
|
95
|
+
}], require.resolve("@babel/plugin-proposal-export-default-from")]
|
|
96
|
+
}
|
|
97
|
+
}],
|
|
98
|
+
resolve: {
|
|
99
|
+
fullySpecified: false
|
|
100
|
+
},
|
|
101
|
+
exclude: [/node_modules/]
|
|
102
|
+
}, {
|
|
103
|
+
test: /\.(png|svg)$/,
|
|
104
|
+
loader: require.resolve("file-loader"),
|
|
105
|
+
options: {
|
|
106
|
+
name: "public/images/[hash].[ext]"
|
|
107
|
+
}
|
|
108
|
+
}, {
|
|
109
|
+
test: /\.(ttf|eot|woff2?)$/,
|
|
110
|
+
loader: require.resolve("file-loader"),
|
|
111
|
+
options: {
|
|
112
|
+
name: "public/fonts/[hash].[ext]"
|
|
113
|
+
}
|
|
114
|
+
}]
|
|
115
|
+
},
|
|
116
|
+
// @ts-expect-error Починится, когда все либы обновятся
|
|
117
|
+
plugins: [new _miniCssExtractPlugin.default({
|
|
118
|
+
filename: `public/styles/${gfv}${fileNameSuffix}.css`
|
|
119
|
+
}), new _webpack.default.DefinePlugin({
|
|
120
|
+
"process.env": {
|
|
121
|
+
GFV: JSON.stringify(gfv),
|
|
122
|
+
NODE_ENV: JSON.stringify(options.mode),
|
|
123
|
+
RESOURCES_HASH: JSON.stringify(options.resourcesHash)
|
|
124
|
+
}
|
|
125
|
+
}), buildCacheWebpackPlugin].filter(isNotNullOrUndefined)
|
|
126
|
+
};
|
|
127
|
+
}
|
|
128
|
+
function isNotNullOrUndefined(input) {
|
|
129
|
+
return input != undefined;
|
|
130
|
+
}
|
|
131
|
+
function createConfig(options) {
|
|
132
|
+
const result = [];
|
|
133
|
+
for (const mode of options.modes) {
|
|
134
|
+
result.push(createConfigVariant({
|
|
135
|
+
gfv: options.gfv,
|
|
136
|
+
resourcesHash: options.resourcesHash,
|
|
137
|
+
formPath: options.formPath,
|
|
138
|
+
resourcesDirectoryPath: options.resourcesDirectoryPath,
|
|
139
|
+
mode: mode,
|
|
140
|
+
buildCacheOptions: options.buildCacheOptions
|
|
141
|
+
}));
|
|
142
|
+
}
|
|
143
|
+
return Promise.all(result);
|
|
144
|
+
}
|
|
145
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcGF0aCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwiX21pbmlDc3NFeHRyYWN0UGx1Z2luIiwiX3dlYnBhY2siLCJfQ2FjaGVBc3NldHNQbHVnaW4iLCJjcmVhdGVDb25maWdWYXJpYW50Iiwib3B0aW9ucyIsImdmdiIsImZpbGVOYW1lU3VmZml4IiwibW9kZSIsImZvcm1QYXRoIiwiYnVpbGRDYWNoZSIsImJ1aWxkQ2FjaGVPcHRpb25zIiwidW5kZWZpbmVkIiwiQnVpbGRDYWNoZSIsImZhcm1EaXJlY3RvcnkiLCJidWlsZENhY2hlV2VicGFja1BsdWdpbiIsImNyZWF0ZVdlYnBhY2tQbHVnaW4iLCJ0YXJnZXQiLCJjb250ZXh0Iiwib3V0cHV0IiwiZmlsZW5hbWUiLCJwYXRoIiwicmVzb3VyY2VzRGlyZWN0b3J5UGF0aCIsInB1YmxpY1BhdGgiLCJyZXNvbHZlIiwiYWxpYXMiLCJqb2luIiwiX19kaXJuYW1lIiwidmFyaWFibGVzIiwiUmVzb3VyY2VzIiwiZXh0ZW5zaW9ucyIsImVudHJ5IiwiZGV2dG9vbCIsImNhY2hlIiwidHlwZSIsIm1heEdlbmVyYXRpb25zIiwibW9kdWxlIiwicnVsZXMiLCJ0ZXN0IiwidXNlIiwibG9hZGVyIiwiTWluaUNzc0V4dHJhY3RQbHVnaW4iLCJtb2R1bGVzIiwibG9jYWxJZGVudE5hbWUiLCJwb3N0Y3NzT3B0aW9ucyIsImlkZW50IiwicGx1Z2lucyIsIm92ZXJyaWRlQnJvd3NlcnNsaXN0IiwiYmFiZWxyYyIsImNvbmZpZ0ZpbGUiLCJwcmVzZXRzIiwidGFyZ2V0cyIsImJyb3dzZXJzIiwibG9vc2UiLCJsZWdhY3kiLCJmdWxseVNwZWNpZmllZCIsImV4Y2x1ZGUiLCJuYW1lIiwid2VicGFjayIsIkRlZmluZVBsdWdpbiIsIkdGViIsIkpTT04iLCJzdHJpbmdpZnkiLCJOT0RFX0VOViIsIlJFU09VUkNFU19IQVNIIiwicmVzb3VyY2VzSGFzaCIsImZpbHRlciIsImlzTm90TnVsbE9yVW5kZWZpbmVkIiwiaW5wdXQiLCJjcmVhdGVDb25maWciLCJyZXN1bHQiLCJtb2RlcyIsInB1c2giLCJQcm9taXNlIiwiYWxsIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL0Zvcm1XZWJwYWNrQ29uZmlndXJhdGlvbi9jcmVhdGVGb3JtV2VicGFja0NvbmZpZ3VyYXRpb24udHMiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gdHNsaW50OmRpc2FibGUgbm8tYW55IG5vLXVuc2FmZS1hbnkgbm8taW52YWxpZC10aGlzXG5pbXBvcnQgcGF0aCBmcm9tIFwicGF0aFwiO1xuXG5pbXBvcnQgTWluaUNzc0V4dHJhY3RQbHVnaW4gZnJvbSBcIm1pbmktY3NzLWV4dHJhY3QtcGx1Z2luXCI7XG5pbXBvcnQgd2VicGFjaywgeyBDb25maWd1cmF0aW9uIH0gZnJvbSBcIndlYnBhY2tcIjtcblxuaW1wb3J0IHsgQnVpbGRDYWNoZSwgRm9ybUJ1aWxkQ2FjaGVPcHRpb25zIH0gZnJvbSBcIi4vQ2FjaGVBc3NldHNQbHVnaW5cIjtcblxuaW50ZXJmYWNlIENyZWF0ZVdlYnBhY2tDb25maWd1cmF0aW9uVmFyaWFudE9wdGlvbnMge1xuICAgIGdmdjogc3RyaW5nO1xuICAgIHJlc291cmNlc0hhc2g6IHN0cmluZztcbiAgICBmb3JtUGF0aDogc3RyaW5nO1xuICAgIG1vZGU/OiBcInByb2R1Y3Rpb25cIiB8IFwiZGV2ZWxvcG1lbnRcIjtcbiAgICByZXNvdXJjZXNEaXJlY3RvcnlQYXRoOiBzdHJpbmc7XG4gICAgYnVpbGRDYWNoZU9wdGlvbnM/OiBGb3JtQnVpbGRDYWNoZU9wdGlvbnM7XG59XG5cbmFzeW5jIGZ1bmN0aW9uIGNyZWF0ZUNvbmZpZ1ZhcmlhbnQob3B0aW9uczogQ3JlYXRlV2VicGFja0NvbmZpZ3VyYXRpb25WYXJpYW50T3B0aW9ucyk6IFByb21pc2U8Q29uZmlndXJhdGlvbj4ge1xuICAgIGNvbnN0IHsgZ2Z2IH0gPSBvcHRpb25zO1xuXG4gICAgY29uc3QgZmlsZU5hbWVTdWZmaXggPSBvcHRpb25zLm1vZGUgPT09IFwicHJvZHVjdGlvblwiID8gXCIubWluXCIgOiBcIlwiO1xuXG4gICAgY29uc3QgZm9ybVBhdGggPSBvcHRpb25zLmZvcm1QYXRoO1xuICAgIGNvbnN0IGJ1aWxkQ2FjaGUgPVxuICAgICAgICBvcHRpb25zLmJ1aWxkQ2FjaGVPcHRpb25zICE9IHVuZGVmaW5lZFxuICAgICAgICAgICAgPyBuZXcgQnVpbGRDYWNoZShvcHRpb25zLmJ1aWxkQ2FjaGVPcHRpb25zLmZhcm1EaXJlY3RvcnksIG9wdGlvbnMuYnVpbGRDYWNoZU9wdGlvbnMubW9kZSlcbiAgICAgICAgICAgIDogdW5kZWZpbmVkO1xuXG4gICAgY29uc3QgYnVpbGRDYWNoZVdlYnBhY2tQbHVnaW4gPVxuICAgICAgICBidWlsZENhY2hlICE9IHVuZGVmaW5lZCAmJiBvcHRpb25zLmJ1aWxkQ2FjaGVPcHRpb25zICE9IHVuZGVmaW5lZFxuICAgICAgICAgICAgPyBhd2FpdCBidWlsZENhY2hlLmNyZWF0ZVdlYnBhY2tQbHVnaW4ob3B0aW9ucy5idWlsZENhY2hlT3B0aW9ucylcbiAgICAgICAgICAgIDogdW5kZWZpbmVkO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgICAgbW9kZTogb3B0aW9ucy5tb2RlLFxuICAgICAgICB0YXJnZXQ6IFtcIndlYlwiLCBcImVzNVwiXSxcbiAgICAgICAgY29udGV4dDogZm9ybVBhdGgsXG4gICAgICAgIG91dHB1dDoge1xuICAgICAgICAgICAgZmlsZW5hbWU6IGBwdWJsaWMvc2NyaXB0cy8ke2dmdn0ke2ZpbGVOYW1lU3VmZml4fS5qc2AsXG4gICAgICAgICAgICBwYXRoOiBvcHRpb25zLnJlc291cmNlc0RpcmVjdG9yeVBhdGgsXG4gICAgICAgICAgICBwdWJsaWNQYXRoOiBcIi9zdGF0aWMvXCIsXG4gICAgICAgIH0sXG4gICAgICAgIHJlc29sdmU6IHtcbiAgICAgICAgICAgIGFsaWFzOiB7XG4gICAgICAgICAgICAgICAgXCJ2YXJpYWJsZXMubGVzc1wiOiBwYXRoLnJlc29sdmUocGF0aC5qb2luKF9fZGlybmFtZSwgXCJ2YXJpYWJsZXMubGVzc1wiKSksXG4gICAgICAgICAgICAgICAgdmFyaWFibGVzOiBwYXRoLnJlc29sdmUocGF0aC5qb2luKF9fZGlybmFtZSwgXCJ2YXJpYWJsZXMubGVzc1wiKSksXG4gICAgICAgICAgICAgICAgUmVzb3VyY2VzOiBwYXRoLmpvaW4oZm9ybVBhdGgsIFwiZm9ybVwiLCBcInJlc291cmNlc1wiKSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBleHRlbnNpb25zOiBbXCIuanNcIiwgXCIuanN4XCJdLFxuICAgICAgICB9LFxuICAgICAgICBlbnRyeTogW3BhdGguam9pbihmb3JtUGF0aCwgXCJmb3JtXCIsIFwiLi93ZWJcIildLFxuICAgICAgICBkZXZ0b29sOiBvcHRpb25zLm1vZGUgPT09IFwicHJvZHVjdGlvblwiID8gXCJoaWRkZW4tc291cmNlLW1hcFwiIDogXCJpbmxpbmUtc291cmNlLW1hcFwiLFxuICAgICAgICBjYWNoZTpcbiAgICAgICAgICAgIG9wdGlvbnMubW9kZSA9PT0gXCJkZXZlbG9wbWVudFwiXG4gICAgICAgICAgICAgICAgPyB7XG4gICAgICAgICAgICAgICAgICAgICAgdHlwZTogXCJtZW1vcnlcIixcbiAgICAgICAgICAgICAgICAgICAgICBtYXhHZW5lcmF0aW9uczogNSxcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICA6IGZhbHNlLFxuICAgICAgICBtb2R1bGU6IHtcbiAgICAgICAgICAgIHJ1bGVzOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICB0ZXN0OiAvXFwubGVzcyQvLFxuICAgICAgICAgICAgICAgICAgICB1c2U6IFtcbiAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxvYWRlcjogTWluaUNzc0V4dHJhY3RQbHVnaW4ubG9hZGVyIGFzIGFueSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zOiB7IHB1YmxpY1BhdGg6IFwiLi4vLi4vXCIgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9hZGVyOiByZXF1aXJlLnJlc29sdmUoXCJjc3MtbG9hZGVyXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbW9kdWxlczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9jYWxJZGVudE5hbWU6IFwiW2hhc2g6YmFzZTY0OjVdXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9hZGVyOiByZXF1aXJlLnJlc29sdmUoXCJwb3N0Y3NzLWxvYWRlclwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc3Rjc3NPcHRpb25zOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZGVudDogXCJwb3N0Y3NzXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyB0c2xpbnQ6ZGlzYWJsZSBuby1yZXF1aXJlLWltcG9ydHNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBsdWdpbnM6IFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXZhci1yZXF1aXJlc1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVpcmUoXCJhdXRvcHJlZml4ZXJcIikoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyDQn9GA0L7RgdGC0L4g0LTQtdGE0L7Qu9GC0L3Ri9C1INC30L3QsNGH0LXQvdC40LUg0LjQtyDRgtC10LrRg9GJ0LXQs9C+ICgxLjcuNykgYnJvd3NlcnNsaXN0XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJyaWRlQnJvd3NlcnNsaXN0OiBcIj4gMSUsIGxhc3QgMiB2ZXJzaW9ucywgRmlyZWZveCBFU1JcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9hZGVyOiByZXF1aXJlLnJlc29sdmUoXCJsZXNzLWxvYWRlclwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIHRlc3Q6IC9cXC5qc3g/JC8sXG4gICAgICAgICAgICAgICAgICAgIHVzZTogW1xuICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxvYWRlcjogcmVxdWlyZS5yZXNvbHZlKFwiYmFiZWwtbG9hZGVyXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFiZWxyYzogZmFsc2UsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZpZ0ZpbGU6IGZhbHNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmVzZXRzOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXF1aXJlLnJlc29sdmUoXCJAYmFiZWwvcHJlc2V0LXJlYWN0XCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVpcmUucmVzb2x2ZShcIkBiYWJlbC9wcmVzZXQtZW52XCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFyZ2V0czogeyBicm93c2VyczogXCI+IDAlXCIgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9vc2U6IHRydWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBsdWdpbnM6IFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtyZXF1aXJlLnJlc29sdmUoXCJAYmFiZWwvcGx1Z2luLXByb3Bvc2FsLWRlY29yYXRvcnNcIiksIHsgbGVnYWN5OiB0cnVlIH1dLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3JlcXVpcmUucmVzb2x2ZShcIkBiYWJlbC9wbHVnaW4tdHJhbnNmb3JtLWNsYXNzLXByb3BlcnRpZXNcIiksIHsgbG9vc2U6IHRydWUgfV0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXF1aXJlLnJlc29sdmUoXCJAYmFiZWwvcGx1Z2luLXByb3Bvc2FsLWV4cG9ydC1kZWZhdWx0LWZyb21cIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAgIHJlc29sdmU6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZ1bGx5U3BlY2lmaWVkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgZXhjbHVkZTogWy9ub2RlX21vZHVsZXMvXSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgdGVzdDogL1xcLihwbmd8c3ZnKSQvLFxuICAgICAgICAgICAgICAgICAgICBsb2FkZXI6IHJlcXVpcmUucmVzb2x2ZShcImZpbGUtbG9hZGVyXCIpLFxuICAgICAgICAgICAgICAgICAgICBvcHRpb25zOiB7IG5hbWU6IFwicHVibGljL2ltYWdlcy9baGFzaF0uW2V4dF1cIiB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICB0ZXN0OiAvXFwuKHR0Znxlb3R8d29mZjI/KSQvLFxuICAgICAgICAgICAgICAgICAgICBsb2FkZXI6IHJlcXVpcmUucmVzb2x2ZShcImZpbGUtbG9hZGVyXCIpLFxuICAgICAgICAgICAgICAgICAgICBvcHRpb25zOiB7IG5hbWU6IFwicHVibGljL2ZvbnRzL1toYXNoXS5bZXh0XVwiIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3Ig0J/QvtGH0LjQvdC40YLRgdGPLCDQutC+0LPQtNCwINCy0YHQtSDQu9C40LHRiyDQvtCx0L3QvtCy0Y/RgtGB0Y9cbiAgICAgICAgcGx1Z2luczogW1xuICAgICAgICAgICAgbmV3IE1pbmlDc3NFeHRyYWN0UGx1Z2luKHtcbiAgICAgICAgICAgICAgICBmaWxlbmFtZTogYHB1YmxpYy9zdHlsZXMvJHtnZnZ9JHtmaWxlTmFtZVN1ZmZpeH0uY3NzYCxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgbmV3IHdlYnBhY2suRGVmaW5lUGx1Z2luKHtcbiAgICAgICAgICAgICAgICBcInByb2Nlc3MuZW52XCI6IHtcbiAgICAgICAgICAgICAgICAgICAgR0ZWOiBKU09OLnN0cmluZ2lmeShnZnYpLFxuICAgICAgICAgICAgICAgICAgICBOT0RFX0VOVjogSlNPTi5zdHJpbmdpZnkob3B0aW9ucy5tb2RlKSxcbiAgICAgICAgICAgICAgICAgICAgUkVTT1VSQ0VTX0hBU0g6IEpTT04uc3RyaW5naWZ5KG9wdGlvbnMucmVzb3VyY2VzSGFzaCksXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgYnVpbGRDYWNoZVdlYnBhY2tQbHVnaW4sXG4gICAgICAgIF0uZmlsdGVyKGlzTm90TnVsbE9yVW5kZWZpbmVkKSxcbiAgICB9O1xufVxuXG5mdW5jdGlvbiBpc05vdE51bGxPclVuZGVmaW5lZDxUPihpbnB1dDogVCB8IHVuZGVmaW5lZCB8IG51bGwpOiBpbnB1dCBpcyBUIHtcbiAgICByZXR1cm4gaW5wdXQgIT0gdW5kZWZpbmVkO1xufVxuXG50eXBlIEJ1aWxkTW9kZSA9IFwicHJvZHVjdGlvblwiIHwgXCJkZXZlbG9wbWVudFwiO1xuXG5leHBvcnQgaW50ZXJmYWNlIENyZWF0ZVdlYnBhY2tDb25maWd1cmF0aW9uT3B0aW9ucyB7XG4gICAgZ2Z2OiBzdHJpbmc7XG4gICAgcmVzb3VyY2VzSGFzaDogc3RyaW5nO1xuICAgIGZvcm1QYXRoOiBzdHJpbmc7XG4gICAgcmVzb3VyY2VzRGlyZWN0b3J5UGF0aDogc3RyaW5nO1xuICAgIG1vZGVzOiBCdWlsZE1vZGVbXTtcbiAgICBidWlsZENhY2hlT3B0aW9ucz86IEZvcm1CdWlsZENhY2hlT3B0aW9ucztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUNvbmZpZyhvcHRpb25zOiBDcmVhdGVXZWJwYWNrQ29uZmlndXJhdGlvbk9wdGlvbnMpOiBQcm9taXNlPENvbmZpZ3VyYXRpb25bXT4ge1xuICAgIGNvbnN0IHJlc3VsdDogQXJyYXk8UHJvbWlzZTxDb25maWd1cmF0aW9uPj4gPSBbXTtcblxuICAgIGZvciAoY29uc3QgbW9kZSBvZiBvcHRpb25zLm1vZGVzKSB7XG4gICAgICAgIHJlc3VsdC5wdXNoKFxuICAgICAgICAgICAgY3JlYXRlQ29uZmlnVmFyaWFudCh7XG4gICAgICAgICAgICAgICAgZ2Z2OiBvcHRpb25zLmdmdixcbiAgICAgICAgICAgICAgICByZXNvdXJjZXNIYXNoOiBvcHRpb25zLnJlc291cmNlc0hhc2gsXG4gICAgICAgICAgICAgICAgZm9ybVBhdGg6IG9wdGlvbnMuZm9ybVBhdGgsXG4gICAgICAgICAgICAgICAgcmVzb3VyY2VzRGlyZWN0b3J5UGF0aDogb3B0aW9ucy5yZXNvdXJjZXNEaXJlY3RvcnlQYXRoLFxuICAgICAgICAgICAgICAgIG1vZGU6IG1vZGUsXG4gICAgICAgICAgICAgICAgYnVpbGRDYWNoZU9wdGlvbnM6IG9wdGlvbnMuYnVpbGRDYWNoZU9wdGlvbnMsXG4gICAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgIH1cbiAgICByZXR1cm4gUHJvbWlzZS5hbGwocmVzdWx0KTtcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUNBLElBQUFBLEtBQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUVBLElBQUFDLHFCQUFBLEdBQUFGLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBRSxRQUFBLEdBQUFILHNCQUFBLENBQUFDLE9BQUE7QUFFQSxJQUFBRyxrQkFBQSxHQUFBSCxPQUFBO0FBTkE7O0FBaUJBLGVBQWVJLG1CQUFtQkEsQ0FBQ0MsT0FBaUQsRUFBMEI7RUFDMUcsTUFBTTtJQUFFQztFQUFJLENBQUMsR0FBR0QsT0FBTztFQUV2QixNQUFNRSxjQUFjLEdBQUdGLE9BQU8sQ0FBQ0csSUFBSSxLQUFLLFlBQVksR0FBRyxNQUFNLEdBQUcsRUFBRTtFQUVsRSxNQUFNQyxRQUFRLEdBQUdKLE9BQU8sQ0FBQ0ksUUFBUTtFQUNqQyxNQUFNQyxVQUFVLEdBQ1pMLE9BQU8sQ0FBQ00saUJBQWlCLElBQUlDLFNBQVMsR0FDaEMsSUFBSUMsNkJBQVUsQ0FBQ1IsT0FBTyxDQUFDTSxpQkFBaUIsQ0FBQ0csYUFBYSxFQUFFVCxPQUFPLENBQUNNLGlCQUFpQixDQUFDSCxJQUFJLENBQUMsR0FDdkZJLFNBQVM7RUFFbkIsTUFBTUcsdUJBQXVCLEdBQ3pCTCxVQUFVLElBQUlFLFNBQVMsSUFBSVAsT0FBTyxDQUFDTSxpQkFBaUIsSUFBSUMsU0FBUyxHQUMzRCxNQUFNRixVQUFVLENBQUNNLG1CQUFtQixDQUFDWCxPQUFPLENBQUNNLGlCQUFpQixDQUFDLEdBQy9EQyxTQUFTO0VBRW5CLE9BQU87SUFDSEosSUFBSSxFQUFFSCxPQUFPLENBQUNHLElBQUk7SUFDbEJTLE1BQU0sRUFBRSxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUM7SUFDdEJDLE9BQU8sRUFBRVQsUUFBUTtJQUNqQlUsTUFBTSxFQUFFO01BQ0pDLFFBQVEsRUFBRSxrQkFBa0JkLEdBQUcsR0FBR0MsY0FBYyxLQUFLO01BQ3JEYyxJQUFJLEVBQUVoQixPQUFPLENBQUNpQixzQkFBc0I7TUFDcENDLFVBQVUsRUFBRTtJQUNoQixDQUFDO0lBQ0RDLE9BQU8sRUFBRTtNQUNMQyxLQUFLLEVBQUU7UUFDSCxnQkFBZ0IsRUFBRUosYUFBSSxDQUFDRyxPQUFPLENBQUNILGFBQUksQ0FBQ0ssSUFBSSxDQUFDQyxTQUFTLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztRQUN0RUMsU0FBUyxFQUFFUCxhQUFJLENBQUNHLE9BQU8sQ0FBQ0gsYUFBSSxDQUFDSyxJQUFJLENBQUNDLFNBQVMsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO1FBQy9ERSxTQUFTLEVBQUVSLGFBQUksQ0FBQ0ssSUFBSSxDQUFDakIsUUFBUSxFQUFFLE1BQU0sRUFBRSxXQUFXO01BQ3RELENBQUM7TUFDRHFCLFVBQVUsRUFBRSxDQUFDLEtBQUssRUFBRSxNQUFNO0lBQzlCLENBQUM7SUFDREMsS0FBSyxFQUFFLENBQUNWLGFBQUksQ0FBQ0ssSUFBSSxDQUFDakIsUUFBUSxFQUFFLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQztJQUM3Q3VCLE9BQU8sRUFBRTNCLE9BQU8sQ0FBQ0csSUFBSSxLQUFLLFlBQVksR0FBRyxtQkFBbUIsR0FBRyxtQkFBbUI7SUFDbEZ5QixLQUFLLEVBQ0Q1QixPQUFPLENBQUNHLElBQUksS0FBSyxhQUFhLEdBQ3hCO01BQ0kwQixJQUFJLEVBQUUsUUFBUTtNQUNkQyxjQUFjLEVBQUU7SUFDcEIsQ0FBQyxHQUNELEtBQUs7SUFDZkMsTUFBTSxFQUFFO01BQ0pDLEtBQUssRUFBRSxDQUNIO1FBQ0lDLElBQUksRUFBRSxTQUFTO1FBQ2ZDLEdBQUcsRUFBRSxDQUNEO1VBQ0k7VUFDQUMsTUFBTSxFQUFFQyw2QkFBb0IsQ0FBQ0QsTUFBYTtVQUMxQ25DLE9BQU8sRUFBRTtZQUFFa0IsVUFBVSxFQUFFO1VBQVM7UUFDcEMsQ0FBQyxFQUNEO1VBQ0lpQixNQUFNLEVBQUV4QyxPQUFPLENBQUN3QixPQUFPLENBQUMsWUFBWSxDQUFDO1VBQ3JDbkIsT0FBTyxFQUFFO1lBQ0xxQyxPQUFPLEVBQUU7Y0FDTEMsY0FBYyxFQUFFO1lBQ3BCO1VBQ0o7UUFDSixDQUFDLEVBQ0Q7VUFDSUgsTUFBTSxFQUFFeEMsT0FBTyxDQUFDd0IsT0FBTyxDQUFDLGdCQUFnQixDQUFDO1VBQ3pDbkIsT0FBTyxFQUFFO1lBQ0x1QyxjQUFjLEVBQUU7Y0FDWkMsS0FBSyxFQUFFLFNBQVM7Y0FDaEI7Y0FDQUMsT0FBTyxFQUFFO2NBQ0w7Y0FDQTlDLE9BQU8sQ0FBQyxjQUFjLENBQUMsQ0FBQztnQkFDcEI7Z0JBQ0ErQyxvQkFBb0IsRUFBRTtjQUMxQixDQUFDLENBQUM7WUFFVjtVQUNKO1FBQ0osQ0FBQyxFQUNEO1VBQ0lQLE1BQU0sRUFBRXhDLE9BQU8sQ0FBQ3dCLE9BQU8sQ0FBQyxhQUFhO1FBQ3pDLENBQUM7TUFFVCxDQUFDLEVBQ0Q7UUFDSWMsSUFBSSxFQUFFLFNBQVM7UUFDZkMsR0FBRyxFQUFFLENBQ0Q7VUFDSUMsTUFBTSxFQUFFeEMsT0FBTyxDQUFDd0IsT0FBTyxDQUFDLGNBQWMsQ0FBQztVQUN2Q25CLE9BQU8sRUFBRTtZQUNMMkMsT0FBTyxFQUFFLEtBQUs7WUFDZEMsVUFBVSxFQUFFLEtBQUs7WUFDakJDLE9BQU8sRUFBRSxDQUNMbEQsT0FBTyxDQUFDd0IsT0FBTyxDQUFDLHFCQUFxQixDQUFDLEVBQ3RDLENBQ0l4QixPQUFPLENBQUN3QixPQUFPLENBQUMsbUJBQW1CLENBQUMsRUFDcEM7Y0FDSTJCLE9BQU8sRUFBRTtnQkFBRUMsUUFBUSxFQUFFO2NBQU8sQ0FBQztjQUM3QkMsS0FBSyxFQUFFO1lBQ1gsQ0FBQyxDQUNKLENBQ0o7WUFDRFAsT0FBTyxFQUFFLENBQ0wsQ0FBQzlDLE9BQU8sQ0FBQ3dCLE9BQU8sQ0FBQyxtQ0FBbUMsQ0FBQyxFQUFFO2NBQUU4QixNQUFNLEVBQUU7WUFBSyxDQUFDLENBQUMsRUFDeEUsQ0FBQ3RELE9BQU8sQ0FBQ3dCLE9BQU8sQ0FBQywwQ0FBMEMsQ0FBQyxFQUFFO2NBQUU2QixLQUFLLEVBQUU7WUFBSyxDQUFDLENBQUMsRUFDOUVyRCxPQUFPLENBQUN3QixPQUFPLENBQUMsNENBQTRDLENBQUM7VUFFckU7UUFDSixDQUFDLENBQ0o7UUFDREEsT0FBTyxFQUFFO1VBQ0wrQixjQUFjLEVBQUU7UUFDcEIsQ0FBQztRQUNEQyxPQUFPLEVBQUUsQ0FBQyxjQUFjO01BQzVCLENBQUMsRUFDRDtRQUNJbEIsSUFBSSxFQUFFLGNBQWM7UUFDcEJFLE1BQU0sRUFBRXhDLE9BQU8sQ0FBQ3dCLE9BQU8sQ0FBQyxhQUFhLENBQUM7UUFDdENuQixPQUFPLEVBQUU7VUFBRW9ELElBQUksRUFBRTtRQUE2QjtNQUNsRCxDQUFDLEVBQ0Q7UUFDSW5CLElBQUksRUFBRSxxQkFBcUI7UUFDM0JFLE1BQU0sRUFBRXhDLE9BQU8sQ0FBQ3dCLE9BQU8sQ0FBQyxhQUFhLENBQUM7UUFDdENuQixPQUFPLEVBQUU7VUFBRW9ELElBQUksRUFBRTtRQUE0QjtNQUNqRCxDQUFDO0lBRVQsQ0FBQztJQUNEO0lBQ0FYLE9BQU8sRUFBRSxDQUNMLElBQUlMLDZCQUFvQixDQUFDO01BQ3JCckIsUUFBUSxFQUFFLGlCQUFpQmQsR0FBRyxHQUFHQyxjQUFjO0lBQ25ELENBQUMsQ0FBQyxFQUNGLElBQUltRCxnQkFBTyxDQUFDQyxZQUFZLENBQUM7TUFDckIsYUFBYSxFQUFFO1FBQ1hDLEdBQUcsRUFBRUMsSUFBSSxDQUFDQyxTQUFTLENBQUN4RCxHQUFHLENBQUM7UUFDeEJ5RCxRQUFRLEVBQUVGLElBQUksQ0FBQ0MsU0FBUyxDQUFDekQsT0FBTyxDQUFDRyxJQUFJLENBQUM7UUFDdEN3RCxjQUFjLEVBQUVILElBQUksQ0FBQ0MsU0FBUyxDQUFDekQsT0FBTyxDQUFDNEQsYUFBYTtNQUN4RDtJQUNKLENBQUMsQ0FBQyxFQUNGbEQsdUJBQXVCLENBQzFCLENBQUNtRCxNQUFNLENBQUNDLG9CQUFvQjtFQUNqQyxDQUFDO0FBQ0w7QUFFQSxTQUFTQSxvQkFBb0JBLENBQUlDLEtBQTJCLEVBQWM7RUFDdEUsT0FBT0EsS0FBSyxJQUFJeEQsU0FBUztBQUM3QjtBQWFPLFNBQVN5RCxZQUFZQSxDQUFDaEUsT0FBMEMsRUFBNEI7RUFDL0YsTUFBTWlFLE1BQXFDLEdBQUcsRUFBRTtFQUVoRCxLQUFLLE1BQU05RCxJQUFJLElBQUlILE9BQU8sQ0FBQ2tFLEtBQUssRUFBRTtJQUM5QkQsTUFBTSxDQUFDRSxJQUFJLENBQ1BwRSxtQkFBbUIsQ0FBQztNQUNoQkUsR0FBRyxFQUFFRCxPQUFPLENBQUNDLEdBQUc7TUFDaEIyRCxhQUFhLEVBQUU1RCxPQUFPLENBQUM0RCxhQUFhO01BQ3BDeEQsUUFBUSxFQUFFSixPQUFPLENBQUNJLFFBQVE7TUFDMUJhLHNCQUFzQixFQUFFakIsT0FBTyxDQUFDaUIsc0JBQXNCO01BQ3REZCxJQUFJLEVBQUVBLElBQUk7TUFDVkcsaUJBQWlCLEVBQUVOLE9BQU8sQ0FBQ007SUFDL0IsQ0FBQyxDQUNMLENBQUM7RUFDTDtFQUNBLE9BQU84RCxPQUFPLENBQUNDLEdBQUcsQ0FBQ0osTUFBTSxDQUFDO0FBQzlCIiwiaWdub3JlTGlzdCI6W119
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createFormWebpackConfiguration.js","names":["_path","_interopRequireDefault","require","_miniCssExtractPlugin","_webpack","_CacheAssetsPlugin","createConfigVariant","options","gfv","fileNameSuffix","mode","formPath","buildCache","buildCacheOptions","undefined","BuildCache","farmDirectory","buildCacheWebpackPlugin","createWebpackPlugin","target","context","output","filename","path","resourcesDirectoryPath","publicPath","resolve","alias","join","__dirname","variables","Resources","extensions","entry","devtool","cache","type","maxGenerations","module","rules","test","use","loader","MiniCssExtractPlugin","modules","localIdentName","postcssOptions","ident","plugins","overrideBrowserslist","babelrc","configFile","presets","targets","browsers","loose","legacy","fullySpecified","exclude","name","webpack","DefinePlugin","GFV","JSON","stringify","NODE_ENV","RESOURCES_HASH","resourcesHash","filter","isNotNullOrUndefined","input","createConfig","result","modes","push","Promise","all"],"sources":["../../../../src/FormWebpackConfiguration/createFormWebpackConfiguration.ts"],"sourcesContent":["// tslint:disable no-any no-unsafe-any no-invalid-this\nimport path from \"path\";\n\nimport MiniCssExtractPlugin from \"mini-css-extract-plugin\";\nimport webpack, { Configuration } from \"webpack\";\n\nimport { BuildCache, FormBuildCacheOptions } from \"./CacheAssetsPlugin\";\n\ninterface CreateWebpackConfigurationVariantOptions {\n gfv: string;\n resourcesHash: string;\n formPath: string;\n mode?: \"production\" | \"development\";\n resourcesDirectoryPath: string;\n buildCacheOptions?: FormBuildCacheOptions;\n}\n\nasync function createConfigVariant(options: CreateWebpackConfigurationVariantOptions): Promise<Configuration> {\n const { gfv } = options;\n\n const fileNameSuffix = options.mode === \"production\" ? \".min\" : \"\";\n\n const formPath = options.formPath;\n const buildCache =\n options.buildCacheOptions != undefined\n ? new BuildCache(options.buildCacheOptions.farmDirectory, options.buildCacheOptions.mode)\n : undefined;\n\n const buildCacheWebpackPlugin =\n buildCache != undefined && options.buildCacheOptions != undefined\n ? await buildCache.createWebpackPlugin(options.buildCacheOptions)\n : undefined;\n\n return {\n mode: options.mode,\n target: [\"web\", \"es5\"],\n context: formPath,\n output: {\n filename: `public/scripts/${gfv}${fileNameSuffix}.js`,\n path: options.resourcesDirectoryPath,\n publicPath: \"/static/\",\n },\n resolve: {\n alias: {\n \"variables.less\": path.resolve(path.join(__dirname, \"variables.less\")),\n variables: path.resolve(path.join(__dirname, \"variables.less\")),\n Resources: path.join(formPath, \"form\", \"resources\"),\n },\n extensions: [\".js\", \".jsx\"],\n },\n entry: [path.join(formPath, \"form\", \"./web\")],\n devtool: options.mode === \"production\" ? \"hidden-source-map\" : \"inline-source-map\",\n cache:\n options.mode === \"development\"\n ? {\n type: \"memory\",\n maxGenerations: 5,\n }\n : false,\n module: {\n rules: [\n {\n test: /\\.less$/,\n use: [\n {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n loader: MiniCssExtractPlugin.loader as any,\n options: { publicPath: \"../../\" },\n },\n {\n loader: require.resolve(\"css-loader\"),\n options: {\n modules: {\n localIdentName: \"[hash:base64:5]\",\n },\n },\n },\n {\n loader: require.resolve(\"postcss-loader\"),\n options: {\n postcssOptions: {\n ident: \"postcss\",\n // tslint:disable no-require-imports\n plugins: [\n // eslint-disable-next-line @typescript-eslint/no-var-requires\n require(\"autoprefixer\")({\n // Просто дефолтные значение из текущего (1.7.7) browserslist\n overrideBrowserslist: \"> 1%, last 2 versions, Firefox ESR\",\n }),\n ],\n },\n },\n },\n {\n loader: require.resolve(\"less-loader\"),\n },\n ],\n },\n {\n test: /\\.jsx?$/,\n use: [\n {\n loader: require.resolve(\"babel-loader\"),\n options: {\n babelrc: false,\n configFile: false,\n presets: [\n require.resolve(\"@babel/preset-react\"),\n [\n require.resolve(\"@babel/preset-env\"),\n {\n targets: { browsers: \"> 0%\" },\n loose: true,\n },\n ],\n ],\n plugins: [\n [require.resolve(\"@babel/plugin-proposal-decorators\"), { legacy: true }],\n [require.resolve(\"@babel/plugin-transform-class-properties\"), { loose: true }],\n require.resolve(\"@babel/plugin-proposal-export-default-from\"),\n ],\n },\n },\n ],\n resolve: {\n fullySpecified: false,\n },\n exclude: [/node_modules/],\n },\n {\n test: /\\.(png|svg)$/,\n loader: require.resolve(\"file-loader\"),\n options: { name: \"public/images/[hash].[ext]\" },\n },\n {\n test: /\\.(ttf|eot|woff2?)$/,\n loader: require.resolve(\"file-loader\"),\n options: { name: \"public/fonts/[hash].[ext]\" },\n },\n ],\n },\n // @ts-expect-error Починится, когда все либы обновятся\n plugins: [\n new MiniCssExtractPlugin({\n filename: `public/styles/${gfv}${fileNameSuffix}.css`,\n }),\n new webpack.DefinePlugin({\n \"process.env\": {\n GFV: JSON.stringify(gfv),\n NODE_ENV: JSON.stringify(options.mode),\n RESOURCES_HASH: JSON.stringify(options.resourcesHash),\n },\n }),\n buildCacheWebpackPlugin,\n ].filter(isNotNullOrUndefined),\n };\n}\n\nfunction isNotNullOrUndefined<T>(input: T | undefined | null): input is T {\n return input != undefined;\n}\n\ntype BuildMode = \"production\" | \"development\";\n\nexport interface CreateWebpackConfigurationOptions {\n gfv: string;\n resourcesHash: string;\n formPath: string;\n resourcesDirectoryPath: string;\n modes: BuildMode[];\n buildCacheOptions?: FormBuildCacheOptions;\n}\n\nexport function createConfig(options: CreateWebpackConfigurationOptions): Promise<Configuration[]> {\n const result: Array<Promise<Configuration>> = [];\n\n for (const mode of options.modes) {\n result.push(\n createConfigVariant({\n gfv: options.gfv,\n resourcesHash: options.resourcesHash,\n formPath: options.formPath,\n resourcesDirectoryPath: options.resourcesDirectoryPath,\n mode: mode,\n buildCacheOptions: options.buildCacheOptions,\n })\n );\n }\n return Promise.all(result);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
@candy-unit-background: #fff;
|
|
2
|
+
@candy-color-primary: #ff8000;
|
|
3
|
+
@candy-color-secondary: #5199db;
|
|
4
|
+
|
|
5
|
+
@candy-text-color-primary: #e35e00;
|
|
6
|
+
@candy-text-color-secondary: #3072c4;
|
|
7
|
+
@candy-text-color-secondary-light: #80caff;
|
|
8
|
+
|
|
9
|
+
@candy-text-color-selected: #222;
|
|
10
|
+
@candy-text-color-default: #333;
|
|
11
|
+
@candy-text-color-caption: #808080;
|
|
12
|
+
@candy-text-color-disabled: #a0a0a0;
|
|
13
|
+
|
|
14
|
+
@candy-bg-color-footer: #e9e9e9;
|
|
15
|
+
@candy-bg-color-panel: #f3f3f3;
|
|
16
|
+
@candy-bg-color-default: #fff;
|
|
17
|
+
@candy-bg-color-highlighted: #fff0bc;
|
|
18
|
+
@candy-bg-color-choosed: #efefef;
|
|
19
|
+
|
|
20
|
+
@candy-bg-color-success: #e2f7dc;
|
|
21
|
+
@candy-color-success: #3f9726;
|
|
22
|
+
@candy-text-color-success: #228007;
|
|
23
|
+
|
|
24
|
+
@candy-bg-color-warning: #fff0bc;
|
|
25
|
+
@candy-color-warning: #ffc200;
|
|
26
|
+
@candy-text-color-warning: #e6b000;
|
|
27
|
+
|
|
28
|
+
@candy-bg-color-error: #ffd7d7;
|
|
29
|
+
@candy-color-error: #da0c09;
|
|
30
|
+
@candy-text-color-error: #ce0014;
|
|
31
|
+
|
|
32
|
+
// Additional color alias
|
|
33
|
+
@candy-text-color-header: @candy-text-color-disabled;
|
|
34
|
+
@candy-text-color-invert: @candy-bg-color-default;
|
|
35
|
+
@candy-bg-color-active: @candy-bg-color-footer;
|
|
36
|
+
@candy-bg-color-hover: @candy-bg-color-footer;
|
|
37
|
+
@candy-border-color: @candy-bg-color-footer;
|
|
38
|
+
@candy-border-color-highlight: @candy-color-secondary;
|
|
39
|
+
@candy-text-color-link: @candy-text-color-secondary;
|
|
40
|
+
@candy-icon-color-help: @candy-text-color-secondary;
|
|
41
|
+
@candy-icon-color-search: @candy-color-primary;
|
|
42
|
+
@candy-shadow-color: rgba(54, 41, 2, 0.2);
|
|
43
|
+
|
|
44
|
+
// List
|
|
45
|
+
@candy-listitem-padding-top: 15px;
|
|
46
|
+
@candy-listitem-padding-bottom: 15px;
|
|
47
|
+
@candy-listitem-disc-color: @candy-text-color-secondary;
|
|
48
|
+
@candy-listitem-disc-content: "•";
|
|
49
|
+
|
|
50
|
+
//AddRowButton
|
|
51
|
+
@add-button-color: tint(@candy-text-color-secondary, 10%);
|
|
52
|
+
@add-button-link-hover: darken(mix(@candy-text-color-link, @candy-text-color-secondary-light), 9%);
|
|
53
|
+
|
|
54
|
+
//CrossfitTable
|
|
55
|
+
@crossfit-border-color: @candy-text-color-caption;
|
|
56
|
+
|
|
57
|
+
//EmbeddedLog
|
|
58
|
+
@embedded-border: tint(@candy-text-color-disabled, 60%);
|
|
59
|
+
@embedded-instance-label: @candy-text-color-disabled;
|
|
60
|
+
|
|
61
|
+
//HiddenPanel
|
|
62
|
+
@hidden-button-bg-color: @candy-bg-color-panel;
|
|
63
|
+
@hidden-button-text-color: @candy-text-color-default;
|
|
64
|
+
@hidden-button-shadow: rgba(0, 0, 0, 0.3);
|
|
65
|
+
|
|
66
|
+
//Highlight
|
|
67
|
+
@highlight-text-color: @candy-text-color-secondary;
|
|
68
|
+
@highlight-text-color-hover: tint(@candy-text-color-secondary, 10%);
|
|
69
|
+
@highlight-bg-color: tint(@candy-bg-color-error, 44%);
|
|
70
|
+
@highlight-bg-color-hover: @candy-bg-color-error;
|
|
71
|
+
|
|
72
|
+
//Multiline
|
|
73
|
+
@multiline-current-bg-color: tint(@candy-text-color-disabled, 60%);
|
|
74
|
+
|
|
75
|
+
//MultilineField
|
|
76
|
+
@multiline-field-bg-color: @candy-bg-color-panel;
|
|
77
|
+
@multiline-field-icon-color: @candy-text-color-caption;
|
|
78
|
+
@multiline-field-icon-color-hover: @candy-text-color-selected;
|
|
79
|
+
|
|
80
|
+
//Panel
|
|
81
|
+
@panel-link-text: @candy-text-color-selected;
|
|
82
|
+
@panel-instance-lable: @candy-text-color-disabled;
|
|
83
|
+
@panel-instance-lable-current: @candy-text-color-default;
|
|
84
|
+
@panel-border: tint(@candy-text-color-disabled, 60%);
|
|
85
|
+
|
|
86
|
+
//ActionPanel
|
|
87
|
+
@action-panel-border-color: tint(@candy-text-color-disabled, 60%);
|
|
88
|
+
@action-link-color: @candy-text-color-default;
|
|
89
|
+
@action-item-color: @candy-text-color-default;
|
|
90
|
+
|
|
91
|
+
//ListTemplatesModal
|
|
92
|
+
@template-deleted-bg-color: @candy-bg-color-highlighted;
|
|
93
|
+
|
|
94
|
+
//Picklist
|
|
95
|
+
@picklist-item-hover: @candy-color-secondary;
|
|
96
|
+
|
|
97
|
+
//ScrollableContainer
|
|
98
|
+
@scrollbar-bg-color: @candy-bg-color-footer;
|
|
99
|
+
@scroll-bg-color: tint(@candy-text-color-caption, 43%);
|
|
100
|
+
|
|
101
|
+
//SimpleForm
|
|
102
|
+
@simple-form-border-color: tint(@candy-text-color-disabled, 66%);
|
|
103
|
+
|
|
104
|
+
//Tooltip
|
|
105
|
+
@candy-forms-tooltip-max-width: 240px;
|
|
106
|
+
|
|
107
|
+
//Arrows
|
|
108
|
+
@arrow-bg-color: tint(@candy-text-color-secondary, 10%);
|
|
109
|
+
|
|
110
|
+
//Pencil
|
|
111
|
+
@pencil-block-hover: @candy-bg-color-panel;
|
|
112
|
+
|
|
113
|
+
//Unit
|
|
114
|
+
@unit-label-color: lighten(@candy-text-color-caption, 11%);
|
|
115
|
+
@unit-link-color-hover: darken(mix(@candy-icon-color-help, @candy-text-color-secondary-light), 9%);
|
|
116
|
+
|
|
117
|
+
//FileLoader
|
|
118
|
+
@fileloader-icon-color: @candy-text-color-caption;
|
|
119
|
+
@fileloader-bg-color-hover: @candy-bg-color-panel;
|
|
120
|
+
@fileloader-progress-bg-color: tint(@candy-text-color-disabled, 60%);
|
|
121
|
+
|
|
122
|
+
//DiadocSuggestComboBox
|
|
123
|
+
@diadoc-suggest-combobox-hint-hover: @candy-bg-color-default;
|
|
124
|
+
|
|
125
|
+
// NOTE: Override react-ui theme
|
|
126
|
+
@tab-color-focus: @candy-color-primary;
|
|
127
|
+
@tab-color-hover: lighten(@candy-color-primary, 30%);
|
|
128
|
+
|
|
129
|
+
@loader-bg: @candy-bg-color-panel;
|
|
130
|
+
@loader-opacity: 0.8;
|
|
131
|
+
|
|
132
|
+
@import (optional) "~candy-ui-theme";
|