const require_runtime = require('../_virtual/_rolldown/runtime.js'); const require_index = require('../utils/index.js'); const require_slot_scope_attribute$1 = require('./syntaxes/slot-scope-attribute.js'); const require_v_is$1 = require('./syntaxes/v-is.js'); const require_dynamic_directive_arguments$1 = require('./syntaxes/dynamic-directive-arguments.js'); const require_v_slot$1 = require('./syntaxes/v-slot.js'); const require_script_setup$1 = require('./syntaxes/script-setup.js'); const require_style_css_vars_injection = require('./syntaxes/style-css-vars-injection.js'); const require_v_model_argument$1 = require('./syntaxes/v-model-argument.js'); const require_v_model_custom_modifiers$1 = require('./syntaxes/v-model-custom-modifiers.js'); const require_is_attribute_with_vue_prefix$1 = require('./syntaxes/is-attribute-with-vue-prefix.js'); const require_v_memo$1 = require('./syntaxes/v-memo.js'); const require_v_bind_prop_modifier_shorthand$1 = require('./syntaxes/v-bind-prop-modifier-shorthand.js'); const require_v_bind_attr_modifier$1 = require('./syntaxes/v-bind-attr-modifier.js'); const require_define_options$1 = require('./syntaxes/define-options.js'); const require_define_slots$1 = require('./syntaxes/define-slots.js'); const require_define_model$1 = require('./syntaxes/define-model.js'); const require_v_bind_same_name_shorthand$1 = require('./syntaxes/v-bind-same-name-shorthand.js'); let semver = require("semver"); semver = require_runtime.__toESM(semver); //#region lib/rules/no-unsupported-features.ts /** * @author Yosuke Ota * See LICENSE file in root directory for full license. */ var import_utils = /* @__PURE__ */ require_runtime.__toESM(require_index.default); var import_slot_scope_attribute = /* @__PURE__ */ require_runtime.__toESM(require_slot_scope_attribute$1.default); var import_dynamic_directive_arguments = /* @__PURE__ */ require_runtime.__toESM(require_dynamic_directive_arguments$1.default); var import_v_slot = /* @__PURE__ */ require_runtime.__toESM(require_v_slot$1.default); var import_script_setup = /* @__PURE__ */ require_runtime.__toESM(require_script_setup$1.default); var import_v_model_argument = /* @__PURE__ */ require_runtime.__toESM(require_v_model_argument$1.default); var import_v_model_custom_modifiers = /* @__PURE__ */ require_runtime.__toESM(require_v_model_custom_modifiers$1.default); var import_v_is = /* @__PURE__ */ require_runtime.__toESM(require_v_is$1.default); var import_is_attribute_with_vue_prefix = /* @__PURE__ */ require_runtime.__toESM(require_is_attribute_with_vue_prefix$1.default); var import_v_memo = /* @__PURE__ */ require_runtime.__toESM(require_v_memo$1.default); var import_v_bind_prop_modifier_shorthand = /* @__PURE__ */ require_runtime.__toESM(require_v_bind_prop_modifier_shorthand$1.default); var import_v_bind_attr_modifier = /* @__PURE__ */ require_runtime.__toESM(require_v_bind_attr_modifier$1.default); var import_define_options = /* @__PURE__ */ require_runtime.__toESM(require_define_options$1.default); var import_define_slots = /* @__PURE__ */ require_runtime.__toESM(require_define_slots$1.default); var import_define_model = /* @__PURE__ */ require_runtime.__toESM(require_define_model$1.default); var import_v_bind_same_name_shorthand = /* @__PURE__ */ require_runtime.__toESM(require_v_bind_same_name_shorthand$1.default); const FEATURES = { "slot-scope-attribute": import_slot_scope_attribute.default, "dynamic-directive-arguments": import_dynamic_directive_arguments.default, "v-slot": import_v_slot.default, "script-setup": import_script_setup.default, "style-css-vars-injection": require_style_css_vars_injection.default, "v-model-argument": import_v_model_argument.default, "v-model-custom-modifiers": import_v_model_custom_modifiers.default, "v-is": import_v_is.default, "is-attribute-with-vue-prefix": import_is_attribute_with_vue_prefix.default, "v-memo": import_v_memo.default, "v-bind-prop-modifier-shorthand": import_v_bind_prop_modifier_shorthand.default, "v-bind-attr-modifier": import_v_bind_attr_modifier.default, "define-options": import_define_options.default, "define-slots": import_define_slots.default, "define-model": import_define_model.default, "v-bind-same-name-shorthand": import_v_bind_same_name_shorthand.default }; const SYNTAX_NAMES = Object.keys(FEATURES); const cache = /* @__PURE__ */ new Map(); /** * Get the `semver.Range` object of a given range text. * It's null if the `x` is not a valid range text. */ function getSemverRange(x) { const s = String(x); let ret = cache.get(s) || null; if (!ret) { try { ret = new semver.default.Range(s); } catch {} cache.set(s, ret); } return ret; } var no_unsupported_features_default = { meta: { type: "suggestion", docs: { description: "disallow unsupported Vue.js syntax on the specified version", categories: void 0, url: "https://eslint.vuejs.org/rules/no-unsupported-features.html" }, fixable: "code", schema: [{ type: "object", properties: { version: { type: "string" }, ignores: { type: "array", items: { enum: SYNTAX_NAMES }, uniqueItems: true } }, additionalProperties: false }], messages: { forbiddenSlotScopeAttribute: "`slot-scope` are not supported except Vue.js \">=2.5.0 <3.0.0\".", forbiddenDynamicDirectiveArguments: "Dynamic arguments are not supported until Vue.js \"2.6.0\".", forbiddenVSlot: "`v-slot` are not supported until Vue.js \"2.6.0\".", forbiddenScriptSetup: "`