UNPKG

powerplatform-review-tool

Version:

Evaluate Power Platform solution zip files based on best practice patterns

215 lines 7.56 kB
import { PatternResult } from "./interface/pattern"; export declare const enum ManifestPropertyNames { dataset = "dataset", SolutionFile = "SolutionFile" } /** @public */ export declare const enum ManifestPropertyStatusNames { Pass = "Pass", Fail = "Fail", Skipped = "Skipped", NotExecuted = "NotExecuted", Warning = "Warning" } export declare const enum ItemColumns { PatternID = "PatternID", PatternName = "PatternName", PatternDescription = "PatternDescription", PatternRecommendation = "PatternRecommendation", PatternDocLink = "PatternDocLink", PatternSeverity = "PatternSeverity", PatternCategory = "PatternCategory", PatternType = "PatternType", PatternScore = "PatternScore", PatternActive = "PatternActive" } export declare const XML_MIME_TYPE = "application/xml"; export declare const customizationFileName = "customizations.xml"; export interface ContextEx { page: { getClientUrl: () => string; entityId: string; entityTypeName: string; }; mode: { isAuthoringMode: boolean; }; } export declare const enum EventConstants { OnReviewComplete = "OnReviewComplete" } export declare const enum SourceDataConstants { RequestData = 809060000, PreviousNodeOutcome = 809060001, RequestDataString = "Request Data", PreviousNodeOutcomeString = "Previous Node Outcome" } export declare enum BotPatternInfo { TriggerPhraseCount = "TriggerPhraseCount", SingleWordPhrases = "SingleWordPhrases", LongPhrases = "LongPhrases", ConditionCount = "ConditionCount", SharePointAuthMode = "SharePointAuthMode", FlowCount = "FlowCount", UnusedTopics = "UnusedTopics", SynonymsQuality = "SynonymsQuality", DuplicateRegexEntities = "DuplicateRegexEntities", EndOfConversationReference = "EndOfConversationReference", EvaluateTopicDescription = "EvaluateTopicDescription", EvaluateTopicInputOutputVariableDescription = "EvaluateTopicInputOutputVariableDescription", EvaluateActionDescription = "EvaluateActionDescription", EvaluateKnowledgeDescription = "EvaluateKnowledgeDescription" } export declare enum FlowPatternInfo { UnusedVariables = "UnusedVariables", ActionCount = "ActionCount", NamingConventions = "NamingConventions", NestedLoops = "NestedLoops", Concurrency = "Concurrency", MultipleInitializeVariableActions = "MultipleInitializeVariableActions", StaticVariables = "StaticVariables", PowerAppResponse = "PowerAppResponse", ScopeUsage = "ScopeUsage", TriggerCondition = "TriggerCondition", DataRetrievalParameters = "DataRetrievalParameters", ActionNote = "ActionNote", CreateUpdateInsideLoop = "CreateUpdateInsideLoop" } export declare const FlowPatternDetails: Record<FlowPatternInfo, { patternID: string; patternName: string; description: string; docLink: string; recommendation: string; severity: Severity; category: Category; }>; export declare const BotPatternDetails: Record<BotPatternInfo, { patternID: string; patternName: string; description: string; docLink: string; recommendation: string; severity: string; category: string; }>; export declare enum PowerAppsPatternInfo { MediaFileSize = "MediaFileSize", AppSettings = "AppSettings", AppCheckerAccessibilityIssues = "AppCheckerAccessibilityIssues", UnusedElements = "UnusedElements", NPlusOne = "NPlusOne", ErrorHandling = "ErrorHandling", CodeReadability = "CodeReadability", InefficientDataRetrieval = "InefficientDataRetrieval", NestedFilters = "NestedFilters", PatchFormulaOptimization = "PatchFormulaOptimization", NestedAPICalls = "NestedAPICalls", NamedFormulas = "NamedFormulas", UxLayout = "UxLayout", UnusedMediaResources = "UnusedMediaResources", InefficientDelayLoading = "InefficientDelayLoading" } export declare const PowerAppsPatternDetails: Record<PowerAppsPatternInfo, PatternResult>; export declare const enum StringConstants { SelectComponents = "Select components to be reviewed", PickSolution = "Pick a solution to review", AttachSolution = "Attach Solution", SpinnerLoading = "Loading...", Reviewing = "Reviewing...", Solutions = "solutions", PowerApps = "canvasapp", PowerAutomate = "workflow", CopilotStudio = "bot", OneBranchNodeWidth = 650, TwoBranchNodeWidth = 550, ThreeBranchNodeWidth = 400, FourBranchNodeWidth = 300, FiveBranchNodeWidth = 220, NodePadding = 10, StageWidth = 1300, PrimaryColor = "#0066ff", SessionStorageID = "PowerCAT_IntelligentReview_Key", NodeHeight = 100, ConditionLabelYPosition = 20, PreAddNodeYPosition = 80, TrueLabel = "TRUE", FalseLabel = "FALSE", SRC_FOLDER = "SrcV3", ASSETS_IMAGES_FOLDER = "Assets\\Images\\", RESOURCE_FOLDER = "Resources", CONTROLS_FOLDER = "Controls", ARRAYBUFFER = "arraybuffer", STRING = "string", MSAPP_EXTENSION = ".msapp", AppCheckerErrorStatement = "Errors or warnings from App Checker Results: ", classicgenmode = "classic/genmode", classic = "classic", genmode = "genmode" } export declare const enum Severity { High = "High", Low = "Low", Medium = "Medium", Critical = "Critical", Informational = "Informational" } export declare const enum Category { Performance = "Performance", Accessibility = "Accessibility", Maintainability = "Maintainability", Security = "Security", Data = "Data", CodingStandards = "Coding Standards", UX = "UX", Supportability = "Supportability", Usage = "Usage", Design = "Design", Configuration = "Configuration", Optimization = "Optimization", Usability = "Usability", Reliability = "Reliability", Scalability = "Scalability", Compliance = "Compliance", Privacy = "Privacy", Functionality = "Functionality", Mantainability = "Mantainability", Validation = "Validation" } export declare const MEDIA_FILE_SIZE_THRESHOLD: number; export declare const AppSettingsList: string[]; export declare const QueryFunctions: string[]; export declare const RelevantRuleIdsForUnusedElements: string[]; export declare const RelevantRuleIdsForMediaFileSize: string[]; export declare const OuterFunctions: string[]; export declare const InnerFunctions: string[]; export declare const PropertyExclusionList: string[]; export declare const topicExclusionList: string[]; /** ******************************************************************** * Component types and their numeric codes as stored in <componenttype>. * https://learn.microsoft.com/en-us/power-apps/developer/data-platform/reference/entities/botcomponent#componenttype-choicesoptions * ******************************************************************** */ export declare const enum BotComponentType { Topic = 0, Skill = 1, BotVariable = 2, BotEntity = 3, Dialog = 4, Trigger = 5, LanguageUnderstanding = 6, LanguageGeneration = 7, DialogSchema = 8, TopicV2 = 9, BotTranslationsV2 = 10, BotEntityV2 = 11, BotVariableV2 = 12, SkillV2 = 13, BotFileAttachment = 14, CustomGPT = 15, KnowledgeSource = 16, ExternalTrigger = 17, CopilotSettings = 18 } /** Map numeric componenttype codes to readable labels used in Agents.botComponents[]. */ export declare function codeToLabel(code: number, yamlKind?: string): string; //# sourceMappingURL=ManifestConstant.d.ts.map