/*
 * Copyright (c) 2018, 2025, Oracle and/or its affiliates.
 * Licensed under The Universal Permissive License (UPL), Version 1.0
 * as shown at https://oss.oracle.com/licenses/upl/
 */
const RULENAME="oj-tsx-tabbar-edge";const DESCRIPTION="Vertical support in <oj-tab-bar> is deprecated in JET 15.0.0 (use <oj-navigation-list> instead). "+"Use of 'edge' property values 'start' or 'end' (or omitting 'edge') is not recommended, and the values 'top' or 'bottom' should be used.";const SHORT="Vertical support in <oj-tab-bar> is deprecated in JET 15.0.0, use 'edge' property values 'top' or 'bottom'";const MSG_NOEDGE="Vertical support is deprecated (JET 15.0.0) : 'edge' property default value is 'start'. Specify 'top' or 'bottom'. <oj-navigation-list> is suggested for vertical layout.";const MSG_EDGE_START="The 'start' value for 'edge' attribute is not recommended (as of JET 15.0.0). Specify 'top' or 'bottom'.  Specify 'top' or 'bottom'. <oj-navigation-list> is suggested for vertical layout.";const EDGE="edge";const START="start";class Rule{getName(){return RULENAME}getDescription(){return DESCRIPTION}getShortDescription(){return SHORT}register(regCtx){this._tsxUtils=regCtx.utils.tsxUtils;return{"Tsx<oj-tab-bar>":this._onTabBar}}_onTabBar(ruleCtx,tsxComp){let tsxProp;if(!(tsxProp=this._tsxUtils.getProperty(tsxComp,EDGE))){ruleCtx.reporter.addIssue(new ruleCtx.Issue(MSG_NOEDGE),ruleCtx);return}let edge;if(edge=this._tsxUtils.getPropertyStringValue(tsxProp)){if(edge===START){let issue=new ruleCtx.Issue(MSG_EDGE_START);this._tsxUtils.setIssuePropValuePosition(issue,tsxProp);issue.setMsgKey(RULENAME+"_1");ruleCtx.reporter.addIssue(issue,ruleCtx)}}}}module.exports=Rule;