element-ps 1.0.4 → 1.0.5

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.
Files changed (140) hide show
  1. package/dist/index.full.js +29 -24
  2. package/dist/index.full.min.js +3 -3
  3. package/dist/index.full.min.js.map +1 -1
  4. package/dist/index.full.min.mjs +3 -3
  5. package/dist/index.full.min.mjs.map +1 -1
  6. package/dist/index.full.mjs +29 -24
  7. package/es/components/cascader/index.d.ts +18 -2
  8. package/es/components/cascader/src/index.vue.d.ts +9 -1
  9. package/es/components/color-picker/index.d.ts +2 -2
  10. package/es/components/color-picker/src/index.vue.d.ts +1 -1
  11. package/es/components/input/index.d.ts +4 -0
  12. package/es/components/input/src/input.d.ts +1 -0
  13. package/es/components/input/src/input.vue.d.ts +4 -0
  14. package/es/components/table/index.d.ts +2 -2
  15. package/es/components/table/src/table-column/index.d.ts +1 -1
  16. package/es/index.mjs +7 -7
  17. package/es/packages/components/alert/index.mjs +2 -2
  18. package/es/packages/components/alert/src/alert.mjs +5 -34
  19. package/es/packages/components/alert/src/alert.mjs.map +1 -1
  20. package/es/packages/components/alert/src/alert.vue_vue&type=script&lang.mjs +1 -1
  21. package/es/packages/components/alert/src/alert2.mjs +34 -5
  22. package/es/packages/components/alert/src/alert2.mjs.map +1 -1
  23. package/es/packages/components/avatar/index.mjs +2 -2
  24. package/es/packages/components/avatar/src/avatar.mjs +5 -29
  25. package/es/packages/components/avatar/src/avatar.mjs.map +1 -1
  26. package/es/packages/components/avatar/src/avatar.vue_vue&type=script&lang.mjs +1 -1
  27. package/es/packages/components/avatar/src/avatar2.mjs +29 -5
  28. package/es/packages/components/avatar/src/avatar2.mjs.map +1 -1
  29. package/es/packages/components/button/index.mjs +2 -2
  30. package/es/packages/components/button/src/button-group.mjs +1 -1
  31. package/es/packages/components/button/src/button.mjs +45 -5
  32. package/es/packages/components/button/src/button.mjs.map +1 -1
  33. package/es/packages/components/button/src/button.vue_vue&type=script&lang.mjs +1 -1
  34. package/es/packages/components/button/src/button2.mjs +5 -45
  35. package/es/packages/components/button/src/button2.mjs.map +1 -1
  36. package/es/packages/components/dialog/index.mjs +2 -2
  37. package/es/packages/components/dialog/src/dialog.mjs +79 -5
  38. package/es/packages/components/dialog/src/dialog.mjs.map +1 -1
  39. package/es/packages/components/dialog/src/dialog.vue_vue&type=script&lang.mjs +1 -1
  40. package/es/packages/components/dialog/src/dialog2.mjs +5 -79
  41. package/es/packages/components/dialog/src/dialog2.mjs.map +1 -1
  42. package/es/packages/components/drawer/src/index.vue_vue&type=script&lang.mjs +1 -1
  43. package/es/packages/components/dropdown/index.mjs +1 -1
  44. package/es/packages/components/dropdown/src/dropdown.mjs +0 -5
  45. package/es/packages/components/dropdown/src/dropdown.mjs.map +1 -1
  46. package/es/packages/components/dropdown/src/dropdown2.mjs +5 -0
  47. package/es/packages/components/dropdown/src/dropdown2.mjs.map +1 -1
  48. package/es/packages/components/icon/index.mjs +2 -2
  49. package/es/packages/components/icon/src/icon.mjs +5 -11
  50. package/es/packages/components/icon/src/icon.mjs.map +1 -1
  51. package/es/packages/components/icon/src/icon.vue_vue&type=script&lang.mjs +1 -1
  52. package/es/packages/components/icon/src/icon2.mjs +11 -5
  53. package/es/packages/components/icon/src/icon2.mjs.map +1 -1
  54. package/es/packages/components/index.mjs +7 -7
  55. package/es/packages/components/input/src/input.mjs +3 -0
  56. package/es/packages/components/input/src/input.mjs.map +1 -1
  57. package/es/packages/components/input/src/input.vue_vue&type=script&lang.mjs.map +1 -1
  58. package/es/packages/components/input/src/input.vue_vue&type=template&id=3290dcb6&lang.mjs +26 -24
  59. package/es/packages/components/input/src/input.vue_vue&type=template&id=3290dcb6&lang.mjs.map +1 -1
  60. package/es/packages/components/link/index.mjs +2 -2
  61. package/es/packages/components/link/src/link.mjs +5 -20
  62. package/es/packages/components/link/src/link.mjs.map +1 -1
  63. package/es/packages/components/link/src/link.vue_vue&type=script&lang.mjs +1 -1
  64. package/es/packages/components/link/src/link2.mjs +20 -5
  65. package/es/packages/components/link/src/link2.mjs.map +1 -1
  66. package/es/packages/components/page-header/index.mjs +2 -2
  67. package/es/packages/components/page-header/src/page-header.mjs +14 -5
  68. package/es/packages/components/page-header/src/page-header.mjs.map +1 -1
  69. package/es/packages/components/page-header/src/page-header.vue_vue&type=script&lang.mjs +1 -1
  70. package/es/packages/components/page-header/src/page-header2.mjs +5 -14
  71. package/es/packages/components/page-header/src/page-header2.mjs.map +1 -1
  72. package/es/packages/components/popconfirm/src/popconfirm.mjs +1 -1
  73. package/lib/components/cascader/index.d.ts +18 -2
  74. package/lib/components/cascader/src/index.vue.d.ts +9 -1
  75. package/lib/components/color-picker/index.d.ts +2 -2
  76. package/lib/components/color-picker/src/index.vue.d.ts +1 -1
  77. package/lib/components/input/index.d.ts +4 -0
  78. package/lib/components/input/src/input.d.ts +1 -0
  79. package/lib/components/input/src/input.vue.d.ts +4 -0
  80. package/lib/components/table/index.d.ts +2 -2
  81. package/lib/components/table/src/table-column/index.d.ts +1 -1
  82. package/lib/index.js +7 -7
  83. package/lib/packages/components/alert/index.js +2 -2
  84. package/lib/packages/components/alert/src/alert.js +5 -33
  85. package/lib/packages/components/alert/src/alert.js.map +1 -1
  86. package/lib/packages/components/alert/src/alert.vue_vue&type=script&lang.js +1 -1
  87. package/lib/packages/components/alert/src/alert2.js +33 -5
  88. package/lib/packages/components/alert/src/alert2.js.map +1 -1
  89. package/lib/packages/components/avatar/index.js +2 -2
  90. package/lib/packages/components/avatar/src/avatar.js +5 -28
  91. package/lib/packages/components/avatar/src/avatar.js.map +1 -1
  92. package/lib/packages/components/avatar/src/avatar.vue_vue&type=script&lang.js +1 -1
  93. package/lib/packages/components/avatar/src/avatar2.js +28 -5
  94. package/lib/packages/components/avatar/src/avatar2.js.map +1 -1
  95. package/lib/packages/components/button/index.js +2 -2
  96. package/lib/packages/components/button/src/button-group.js +1 -1
  97. package/lib/packages/components/button/src/button.js +48 -5
  98. package/lib/packages/components/button/src/button.js.map +1 -1
  99. package/lib/packages/components/button/src/button.vue_vue&type=script&lang.js +1 -1
  100. package/lib/packages/components/button/src/button2.js +5 -48
  101. package/lib/packages/components/button/src/button2.js.map +1 -1
  102. package/lib/packages/components/dialog/index.js +2 -2
  103. package/lib/packages/components/dialog/src/dialog.js +78 -5
  104. package/lib/packages/components/dialog/src/dialog.js.map +1 -1
  105. package/lib/packages/components/dialog/src/dialog.vue_vue&type=script&lang.js +1 -1
  106. package/lib/packages/components/dialog/src/dialog2.js +5 -78
  107. package/lib/packages/components/dialog/src/dialog2.js.map +1 -1
  108. package/lib/packages/components/drawer/src/index.vue_vue&type=script&lang.js +1 -1
  109. package/lib/packages/components/dropdown/index.js +1 -1
  110. package/lib/packages/components/dropdown/src/dropdown.js +0 -9
  111. package/lib/packages/components/dropdown/src/dropdown.js.map +1 -1
  112. package/lib/packages/components/dropdown/src/dropdown2.js +9 -0
  113. package/lib/packages/components/dropdown/src/dropdown2.js.map +1 -1
  114. package/lib/packages/components/icon/index.js +2 -2
  115. package/lib/packages/components/icon/src/icon.js +5 -10
  116. package/lib/packages/components/icon/src/icon.js.map +1 -1
  117. package/lib/packages/components/icon/src/icon.vue_vue&type=script&lang.js +1 -1
  118. package/lib/packages/components/icon/src/icon2.js +10 -5
  119. package/lib/packages/components/icon/src/icon2.js.map +1 -1
  120. package/lib/packages/components/index.js +7 -7
  121. package/lib/packages/components/input/src/input.js +3 -0
  122. package/lib/packages/components/input/src/input.js.map +1 -1
  123. package/lib/packages/components/input/src/input.vue_vue&type=script&lang.js.map +1 -1
  124. package/lib/packages/components/input/src/input.vue_vue&type=template&id=3290dcb6&lang.js +26 -24
  125. package/lib/packages/components/input/src/input.vue_vue&type=template&id=3290dcb6&lang.js.map +1 -1
  126. package/lib/packages/components/link/index.js +2 -2
  127. package/lib/packages/components/link/src/link.js +5 -19
  128. package/lib/packages/components/link/src/link.js.map +1 -1
  129. package/lib/packages/components/link/src/link.vue_vue&type=script&lang.js +1 -1
  130. package/lib/packages/components/link/src/link2.js +19 -5
  131. package/lib/packages/components/link/src/link2.js.map +1 -1
  132. package/lib/packages/components/page-header/index.js +2 -2
  133. package/lib/packages/components/page-header/src/page-header.js +13 -5
  134. package/lib/packages/components/page-header/src/page-header.js.map +1 -1
  135. package/lib/packages/components/page-header/src/page-header.vue_vue&type=script&lang.js +1 -1
  136. package/lib/packages/components/page-header/src/page-header2.js +5 -13
  137. package/lib/packages/components/page-header/src/page-header2.js.map +1 -1
  138. package/lib/packages/components/popconfirm/src/popconfirm.js +1 -1
  139. package/package.json +1 -1
  140. package/web-types.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"input.js","sources":["../../../../../../../packages/components/input/src/input.ts"],"sourcesContent":["import { useFormItemProps } from '@element-ps/hooks'\nimport { buildProps, definePropType, mutable } from '@element-ps/utils/props'\nimport type { StyleValue } from '@element-ps/utils/types'\nimport type { ExtractPropTypes, Component } from 'vue'\n\ntype AutoSize = { minRows?: number; maxRows?: number } | boolean\n\nexport const inputProps = buildProps({\n ...useFormItemProps,\n modelValue: {\n type: definePropType<string | number | null | undefined>(undefined),\n default: '',\n },\n type: {\n type: String,\n default: 'text',\n },\n resize: {\n type: String,\n values: ['none', 'both', 'horizontal', 'vertical'],\n },\n autosize: {\n type: definePropType<AutoSize>([Boolean, Object]),\n default: false,\n },\n autocomplete: {\n type: String,\n default: 'off',\n },\n placeholder: {\n type: String,\n },\n form: {\n type: String,\n default: '',\n },\n readonly: {\n type: Boolean,\n default: false,\n },\n clearable: {\n type: Boolean,\n default: false,\n },\n showPassword: {\n type: Boolean,\n default: false,\n },\n showWordLimit: {\n type: Boolean,\n default: false,\n },\n suffixIcon: {\n type: definePropType<string | Component>([String, Object]),\n default: '',\n },\n prefixIcon: {\n type: definePropType<string | Component>([String, Object]),\n default: '',\n },\n label: {\n type: String,\n },\n tabindex: {\n type: [Number, String],\n },\n validateEvent: {\n type: Boolean,\n default: true,\n },\n inputStyle: {\n type: definePropType<StyleValue>([Object, Array, String]),\n default: () => mutable({} as const),\n },\n maxlength: {\n type: [Number, String],\n },\n} as const)\nexport type InputProps = ExtractPropTypes<typeof inputProps>\n"],"names":["buildProps","useFormItemProps","definePropType","mutable"],"mappings":";;;;;;;;MAOa,aAAaA,iBAAW;AAAA,KAChCC;AAAA,EACH,YAAY;AAAA,IACV,MAAMC,qBAAmD;AAAA,IACzD,SAAS;AAAA;AAAA,EAEX,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,QAAQ;AAAA,IACN,MAAM;AAAA,IACN,QAAQ,CAAC,QAAQ,QAAQ,cAAc;AAAA;AAAA,EAEzC,UAAU;AAAA,IACR,MAAMA,qBAAyB,CAAC,SAAS;AAAA,IACzC,SAAS;AAAA;AAAA,EAEX,cAAc;AAAA,IACZ,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,aAAa;AAAA,IACX,MAAM;AAAA;AAAA,EAER,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,UAAU;AAAA,IACR,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,WAAW;AAAA,IACT,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,cAAc;AAAA,IACZ,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,eAAe;AAAA,IACb,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,YAAY;AAAA,IACV,MAAMA,qBAAmC,CAAC,QAAQ;AAAA,IAClD,SAAS;AAAA;AAAA,EAEX,YAAY;AAAA,IACV,MAAMA,qBAAmC,CAAC,QAAQ;AAAA,IAClD,SAAS;AAAA;AAAA,EAEX,OAAO;AAAA,IACL,MAAM;AAAA;AAAA,EAER,UAAU;AAAA,IACR,MAAM,CAAC,QAAQ;AAAA;AAAA,EAEjB,eAAe;AAAA,IACb,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,YAAY;AAAA,IACV,MAAMA,qBAA2B,CAAC,QAAQ,OAAO;AAAA,IACjD,SAAS,MAAMC,cAAQ;AAAA;AAAA,EAEzB,WAAW;AAAA,IACT,MAAM,CAAC,QAAQ;AAAA;AAAA;;;;"}
1
+ {"version":3,"file":"input.js","sources":["../../../../../../../packages/components/input/src/input.ts"],"sourcesContent":["import { useFormItemProps } from '@element-ps/hooks'\nimport { buildProps, definePropType, mutable } from '@element-ps/utils/props'\nimport type { StyleValue } from '@element-ps/utils/types'\nimport type { ExtractPropTypes, Component } from 'vue'\n\ntype AutoSize = { minRows?: number; maxRows?: number } | boolean\n\nexport const inputProps = buildProps({\n ...useFormItemProps,\n modelValue: {\n type: definePropType<string | number | null | undefined>(undefined),\n default: '',\n },\n type: {\n type: String,\n default: 'text',\n },\n resize: {\n type: String,\n values: ['none', 'both', 'horizontal', 'vertical'],\n },\n autosize: {\n type: definePropType<AutoSize>([Boolean, Object]),\n default: false,\n },\n autocomplete: {\n type: String,\n default: 'off',\n },\n placeholder: {\n type: String,\n },\n form: {\n type: String,\n default: '',\n },\n readonly: {\n type: Boolean,\n default: false,\n },\n clearable: {\n type: Boolean,\n default: false,\n },\n showPassword: {\n type: Boolean,\n default: false,\n },\n showWordLimit: {\n type: Boolean,\n default: false,\n },\n suffixIcon: {\n type: definePropType<string | Component>([String, Object]),\n default: '',\n },\n prefixIcon: {\n type: definePropType<string | Component>([String, Object]),\n default: '',\n },\n label: {\n type: String,\n },\n tabindex: {\n type: [Number, String],\n },\n validateEvent: {\n type: Boolean,\n default: true,\n },\n inputStyle: {\n type: definePropType<StyleValue>([Object, Array, String]),\n default: () => mutable({} as const),\n },\n maxlength: {\n type: [Number, String],\n },\n widget: {\n type: String,\n }\n} as const)\nexport type InputProps = ExtractPropTypes<typeof inputProps>\n"],"names":["buildProps","useFormItemProps","definePropType","mutable"],"mappings":";;;;;;;;MAOa,aAAaA,iBAAW;AAAA,KAChCC;AAAA,EACH,YAAY;AAAA,IACV,MAAMC,qBAAmD;AAAA,IACzD,SAAS;AAAA;AAAA,EAEX,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,QAAQ;AAAA,IACN,MAAM;AAAA,IACN,QAAQ,CAAC,QAAQ,QAAQ,cAAc;AAAA;AAAA,EAEzC,UAAU;AAAA,IACR,MAAMA,qBAAyB,CAAC,SAAS;AAAA,IACzC,SAAS;AAAA;AAAA,EAEX,cAAc;AAAA,IACZ,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,aAAa;AAAA,IACX,MAAM;AAAA;AAAA,EAER,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,UAAU;AAAA,IACR,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,WAAW;AAAA,IACT,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,cAAc;AAAA,IACZ,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,eAAe;AAAA,IACb,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,YAAY;AAAA,IACV,MAAMA,qBAAmC,CAAC,QAAQ;AAAA,IAClD,SAAS;AAAA;AAAA,EAEX,YAAY;AAAA,IACV,MAAMA,qBAAmC,CAAC,QAAQ;AAAA,IAClD,SAAS;AAAA;AAAA,EAEX,OAAO;AAAA,IACL,MAAM;AAAA;AAAA,EAER,UAAU;AAAA,IACR,MAAM,CAAC,QAAQ;AAAA;AAAA,EAEjB,eAAe;AAAA,IACb,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,YAAY;AAAA,IACV,MAAMA,qBAA2B,CAAC,QAAQ,OAAO;AAAA,IACjD,SAAS,MAAMC,cAAQ;AAAA;AAAA,EAEzB,WAAW;AAAA,IACT,MAAM,CAAC,QAAQ;AAAA;AAAA,EAEjB,QAAQ;AAAA,IACN,MAAM;AAAA;AAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"input.vue_vue&type=script&lang.js","sources":["../../../../../../../packages/components/input/src/input.vue"],"sourcesContent":["<template>\n <div\n v-show=\"type !== 'hidden'\"\n :class=\"[\n type === 'textarea' ? 'el-textarea' : 'el-input',\n inputSize ? 'el-input--' + inputSize : '',\n {\n 'is-disabled': inputDisabled,\n 'is-exceed': inputExceed,\n 'el-input-group': $slots.prepend || $slots.append,\n 'el-input-group--append': $slots.append,\n 'el-input-group--prepend': $slots.prepend,\n 'el-input--prefix': $slots.prefix || prefixIcon,\n 'el-input--suffix':\n $slots.suffix || suffixIcon || clearable || showPassword,\n 'el-input--suffix--password-clear': clearable && showPassword,\n },\n $attrs.class,\n ]\"\n :style=\"containerStyle\"\n >\n <!-- input -->\n <template v-if=\"type !== 'textarea'\">\n <!-- prepend slot -->\n <div v-if=\"$slots.prepend\" class=\"el-input-group__prepend\">\n <slot name=\"prepend\" />\n </div>\n\n <input\n ref=\"input\"\n class=\"el-input__inner\"\n v-bind=\"attrs\"\n :type=\"showPassword ? (passwordVisible ? 'text' : 'password') : type\"\n :disabled=\"inputDisabled\"\n :readonly=\"readonly\"\n :autocomplete=\"autocomplete\"\n :tabindex=\"tabindex\"\n :aria-label=\"label\"\n :placeholder=\"placeholder\"\n :style=\"inputStyle\"\n />\n\n <!-- prefix slot -->\n <span v-if=\"$slots.prefix || prefixIcon\" class=\"el-input__prefix\">\n <span class=\"el-input__prefix-inner\">\n <slot name=\"prefix\"></slot>\n <ps-icon v-if=\"prefixIcon\" class=\"el-input__icon\">\n <component :is=\"prefixIcon\" />\n </ps-icon>\n </span>\n </span>\n\n <!-- suffix slot -->\n <span v-if=\"suffixVisible\" class=\"el-input__suffix\">\n <span class=\"el-input__suffix-inner\">\n <template v-if=\"!showClear || !showPwdVisible || !isWordLimitVisible\">\n <slot name=\"suffix\"></slot>\n <ps-icon v-if=\"suffixIcon\" class=\"el-input__icon\">\n <component :is=\"suffixIcon\" />\n </ps-icon>\n </template>\n <ps-icon\n v-if=\"showClear\"\n class=\"el-input__icon el-input__clear\"\n >\n <circle-close />\n </ps-icon>\n <ps-icon\n v-if=\"showPwdVisible\"\n class=\"el-input__icon el-input__clear\"\n >\n <icon-view />\n </ps-icon>\n <span v-if=\"isWordLimitVisible\" class=\"el-input__count\">\n <span class=\"el-input__count-inner\">\n {{ textLength }} / {{ attrs.maxlength }}\n </span>\n </span>\n </span>\n <ps-icon\n v-if=\"validateState && validateIcon\"\n class=\"el-input__icon el-input__validateIcon\"\n >\n <component :is=\"validateIcon\" />\n </ps-icon>\n </span>\n\n <!-- append slot -->\n <div v-if=\"$slots.append\" class=\"el-input-group__append\">\n <slot name=\"append\" />\n </div>\n </template>\n\n <!-- textarea -->\n <template v-else>\n <textarea\n ref=\"textarea\"\n class=\"el-textarea__inner\"\n v-bind=\"attrs\"\n :tabindex=\"tabindex\"\n :disabled=\"inputDisabled\"\n :readonly=\"readonly\"\n :autocomplete=\"autocomplete\"\n :style=\"computedTextareaStyle\"\n :aria-label=\"label\"\n :placeholder=\"placeholder\"\n />\n <span v-if=\"isWordLimitVisible\" class=\"el-input__count\">\n {{ textLength }} / {{ attrs.maxlength }}\n </span>\n </template>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport {\n defineComponent,\n inject,\n computed,\n watch,\n nextTick,\n getCurrentInstance,\n ref,\n shallowRef,\n onMounted,\n onUpdated,\n} from 'vue'\nimport { elFormKey, elFormItemKey } from '@element-ps/tokens'\nimport { useAttrs, useFormItem } from '@element-ps/hooks'\nimport { VALIDATE_STATE_MAP } from '@element-ps/utils/constants'\nimport { isObject } from '@element-ps/utils/util'\nimport isServer from '@element-ps/utils/isServer'\nimport { calcTextareaHeight } from './calc-textarea-height'\nimport { inputProps } from './input'\nimport type { StyleValue } from '@element-ps/utils/types'\nimport { PsIcon } from '@element-ps/components/icon'\nimport { CircleClose, View as IconView } from '@element-plus/icons'\n\nconst PENDANT_MAP = {\n suffix: 'append',\n prefix: 'prepend',\n} as const\n\nexport default defineComponent({\n name: 'PsInput',\n inheritAttrs: false,\n components: { PsIcon, CircleClose, IconView },\n props: inputProps,\n\n setup(props, { slots, attrs: rawAttrs }) {\n const instance = getCurrentInstance()!\n const attrs = useAttrs()\n\n const elForm = inject(elFormKey, undefined)\n const elFormItem = inject(elFormItemKey, undefined)\n\n const { size: inputSize, disabled: inputDisabled } = useFormItem({})\n\n const input = ref<HTMLInputElement>()\n const textarea = ref<HTMLTextAreaElement>()\n const focused = ref(false)\n const hovering = ref(false)\n const passwordVisible = ref(false)\n const _textareaCalcStyle = shallowRef(props.inputStyle)\n\n const inputOrTextarea = computed(() => input.value || textarea.value)\n const needStatusIcon = computed(() => elForm?.statusIcon ?? false)\n const validateState = computed(() => elFormItem?.validateState || '')\n const validateIcon = computed(() => VALIDATE_STATE_MAP[validateState.value])\n const containerStyle = computed(() => rawAttrs.style as StyleValue)\n const computedTextareaStyle = computed<StyleValue>(() => [\n props.inputStyle,\n _textareaCalcStyle.value,\n { resize: props.resize },\n ])\n const nativeInputValue = computed(() =>\n props.modelValue === null || props.modelValue === undefined\n ? ''\n : String(props.modelValue)\n )\n const showClear = computed(\n () =>\n props.clearable &&\n !inputDisabled.value &&\n !props.readonly &&\n !!nativeInputValue.value &&\n (focused.value || hovering.value)\n )\n const showPwdVisible = computed(\n () =>\n props.showPassword &&\n !inputDisabled.value &&\n !props.readonly &&\n (!!nativeInputValue.value || focused.value)\n )\n const isWordLimitVisible = computed(\n () =>\n props.showWordLimit &&\n !!attrs.value.maxlength &&\n (props.type === 'text' || props.type === 'textarea') &&\n !inputDisabled.value &&\n !props.readonly &&\n !props.showPassword\n )\n const textLength = computed(() => Array.from(nativeInputValue.value).length)\n const inputExceed = computed(\n () =>\n // show exceed style if length of initial value greater then maxlength\n !!isWordLimitVisible.value &&\n textLength.value > Number(attrs.value.maxlength)\n )\n\n const resizeTextarea = () => {\n const { type, autosize } = props\n\n if (isServer || type !== 'textarea') return\n\n if (autosize) {\n const minRows = isObject(autosize) ? autosize.minRows : undefined\n const maxRows = isObject(autosize) ? autosize.maxRows : undefined\n _textareaCalcStyle.value = {\n ...calcTextareaHeight(textarea.value!, minRows, maxRows),\n }\n } else {\n _textareaCalcStyle.value = {\n minHeight: calcTextareaHeight(textarea.value!).minHeight,\n }\n }\n }\n\n const setNativeInputValue = () => {\n const input = inputOrTextarea.value\n if (!input || input.value === nativeInputValue.value) return\n input.value = nativeInputValue.value\n }\n\n const calcIconOffset = (place: 'prefix' | 'suffix') => {\n const { el } = instance.vnode\n if (!el) return\n const elList: HTMLSpanElement[] = Array.from(\n el.querySelectorAll(`.el-input__${place}`)\n )\n const target = elList.find((item) => item.parentNode === el)\n\n if (!target) return\n\n const pendant = PENDANT_MAP[place]\n\n if (slots[pendant]) {\n target.style.transform = `translateX(${place === 'suffix' ? '-' : ''}${\n el.querySelector(`.el-input-group__${pendant}`).offsetWidth\n }px)`\n } else {\n target.removeAttribute('style')\n }\n }\n\n const updateIconOffset = () => {\n calcIconOffset('prefix')\n calcIconOffset('suffix')\n }\n\n const suffixVisible = computed(\n () =>\n !!slots.suffix ||\n !!props.suffixIcon ||\n showClear.value ||\n props.showPassword ||\n isWordLimitVisible.value ||\n (!!validateState.value && needStatusIcon.value)\n )\n\n watch(\n () => props.modelValue,\n () => {\n nextTick(resizeTextarea)\n if (props.validateEvent) {\n elFormItem?.validate?.('change')\n }\n }\n )\n\n // native input value is set explicitly\n // do not use v-model / :value in template\n // see: https://github.com/ElemeFE/element/issues/14521\n watch(nativeInputValue, () => setNativeInputValue())\n\n // when change between <input> and <textarea>,\n // update DOM dependent value and styles\n // https://github.com/ElemeFE/element/issues/14857\n watch(\n () => props.type,\n () => {\n nextTick(() => {\n setNativeInputValue()\n resizeTextarea()\n updateIconOffset()\n })\n }\n )\n\n onMounted(() => {\n setNativeInputValue()\n updateIconOffset()\n nextTick(resizeTextarea)\n })\n\n onUpdated(() => {\n nextTick(updateIconOffset)\n })\n\n return {\n input,\n textarea,\n attrs,\n inputSize,\n validateState,\n validateIcon,\n containerStyle,\n computedTextareaStyle,\n inputDisabled,\n showClear,\n showPwdVisible,\n isWordLimitVisible,\n textLength,\n hovering,\n inputExceed,\n passwordVisible,\n inputOrTextarea,\n suffixVisible,\n }\n },\n})\n</script>\n"],"names":["defineComponent","PsIcon","CircleClose","IconView","inputProps","getCurrentInstance","useAttrs","inject","elFormKey","elFormItemKey","useFormItem","ref","shallowRef","computed","VALIDATE_STATE_MAP","isServer","isObject","calcTextareaHeight"],"mappings":"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"}
1
+ {"version":3,"file":"input.vue_vue&type=script&lang.js","sources":["../../../../../../../packages/components/input/src/input.vue"],"sourcesContent":["<template>\n <div\n v-show=\"type !== 'hidden'\"\n :class=\"[\n type === 'textarea' ? 'el-textarea' : 'el-input',\n inputSize ? 'el-input--' + inputSize : '',\n {\n 'is-disabled': inputDisabled,\n 'is-exceed': inputExceed,\n 'el-input-group': $slots.prepend || $slots.append,\n 'el-input-group--append': $slots.append,\n 'el-input-group--prepend': $slots.prepend,\n 'el-input--prefix': $slots.prefix || prefixIcon,\n 'el-input--suffix':\n $slots.suffix || suffixIcon || clearable || showPassword,\n 'el-input--suffix--password-clear': clearable && showPassword,\n },\n $attrs.class,\n ]\"\n :style=\"containerStyle\"\n :widget=\"widget\"\n >\n <!-- input -->\n <template v-if=\"type !== 'textarea'\">\n <!-- prepend slot -->\n <div v-if=\"$slots.prepend\" class=\"el-input-group__prepend\">\n <slot name=\"prepend\" />\n </div>\n\n <input\n ref=\"input\"\n class=\"el-input__inner\"\n v-bind=\"attrs\"\n :type=\"showPassword ? (passwordVisible ? 'text' : 'password') : type\"\n :disabled=\"inputDisabled\"\n :readonly=\"readonly\"\n :autocomplete=\"autocomplete\"\n :tabindex=\"tabindex\"\n :aria-label=\"label\"\n :placeholder=\"placeholder\"\n :style=\"inputStyle\"\n />\n\n <!-- prefix slot -->\n <span v-if=\"$slots.prefix || prefixIcon\" class=\"el-input__prefix\">\n <span class=\"el-input__prefix-inner\">\n <slot name=\"prefix\"></slot>\n <ps-icon v-if=\"prefixIcon\" class=\"el-input__icon\">\n <component :is=\"prefixIcon\" />\n </ps-icon>\n </span>\n </span>\n\n <!-- suffix slot -->\n <span v-if=\"suffixVisible\" class=\"el-input__suffix\">\n <span class=\"el-input__suffix-inner\">\n <template v-if=\"!showClear || !showPwdVisible || !isWordLimitVisible\">\n <slot name=\"suffix\"></slot>\n <ps-icon v-if=\"suffixIcon\" class=\"el-input__icon\">\n <component :is=\"suffixIcon\" />\n </ps-icon>\n </template>\n <ps-icon\n v-if=\"showClear\"\n class=\"el-input__icon el-input__clear\"\n >\n <circle-close />\n </ps-icon>\n <ps-icon\n v-if=\"showPwdVisible\"\n class=\"el-input__icon el-input__clear\"\n >\n <icon-view />\n </ps-icon>\n <span v-if=\"isWordLimitVisible\" class=\"el-input__count\">\n <span class=\"el-input__count-inner\">\n {{ textLength }} / {{ attrs.maxlength }}\n </span>\n </span>\n </span>\n <ps-icon\n v-if=\"validateState && validateIcon\"\n class=\"el-input__icon el-input__validateIcon\"\n >\n <component :is=\"validateIcon\" />\n </ps-icon>\n </span>\n\n <!-- append slot -->\n <div v-if=\"$slots.append\" class=\"el-input-group__append\">\n <slot name=\"append\" />\n </div>\n </template>\n\n <!-- textarea -->\n <template v-else>\n <textarea\n ref=\"textarea\"\n class=\"el-textarea__inner\"\n v-bind=\"attrs\"\n :tabindex=\"tabindex\"\n :disabled=\"inputDisabled\"\n :readonly=\"readonly\"\n :autocomplete=\"autocomplete\"\n :style=\"computedTextareaStyle\"\n :aria-label=\"label\"\n :placeholder=\"placeholder\"\n />\n <span v-if=\"isWordLimitVisible\" class=\"el-input__count\">\n {{ textLength }} / {{ attrs.maxlength }}\n </span>\n </template>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport {\n defineComponent,\n inject,\n computed,\n watch,\n nextTick,\n getCurrentInstance,\n ref,\n shallowRef,\n onMounted,\n onUpdated,\n} from 'vue'\nimport { elFormKey, elFormItemKey } from '@element-ps/tokens'\nimport { useAttrs, useFormItem } from '@element-ps/hooks'\nimport { VALIDATE_STATE_MAP } from '@element-ps/utils/constants'\nimport { isObject } from '@element-ps/utils/util'\nimport isServer from '@element-ps/utils/isServer'\nimport { calcTextareaHeight } from './calc-textarea-height'\nimport { inputProps } from './input'\nimport type { StyleValue } from '@element-ps/utils/types'\nimport { PsIcon } from '@element-ps/components/icon'\nimport { CircleClose, View as IconView } from '@element-plus/icons'\n\nconst PENDANT_MAP = {\n suffix: 'append',\n prefix: 'prepend',\n} as const\n\nexport default defineComponent({\n name: 'PsInput',\n inheritAttrs: false,\n components: { PsIcon, CircleClose, IconView },\n props: inputProps,\n\n setup(props, { slots, attrs: rawAttrs }) {\n const instance = getCurrentInstance()!\n const attrs = useAttrs()\n\n const elForm = inject(elFormKey, undefined)\n const elFormItem = inject(elFormItemKey, undefined)\n\n const { size: inputSize, disabled: inputDisabled } = useFormItem({})\n\n const input = ref<HTMLInputElement>()\n const textarea = ref<HTMLTextAreaElement>()\n const focused = ref(false)\n const hovering = ref(false)\n const passwordVisible = ref(false)\n const _textareaCalcStyle = shallowRef(props.inputStyle)\n\n const inputOrTextarea = computed(() => input.value || textarea.value)\n const needStatusIcon = computed(() => elForm?.statusIcon ?? false)\n const validateState = computed(() => elFormItem?.validateState || '')\n const validateIcon = computed(() => VALIDATE_STATE_MAP[validateState.value])\n const containerStyle = computed(() => rawAttrs.style as StyleValue)\n const computedTextareaStyle = computed<StyleValue>(() => [\n props.inputStyle,\n _textareaCalcStyle.value,\n { resize: props.resize },\n ])\n const nativeInputValue = computed(() =>\n props.modelValue === null || props.modelValue === undefined\n ? ''\n : String(props.modelValue)\n )\n const showClear = computed(\n () =>\n props.clearable &&\n !inputDisabled.value &&\n !props.readonly &&\n !!nativeInputValue.value &&\n (focused.value || hovering.value)\n )\n const showPwdVisible = computed(\n () =>\n props.showPassword &&\n !inputDisabled.value &&\n !props.readonly &&\n (!!nativeInputValue.value || focused.value)\n )\n const isWordLimitVisible = computed(\n () =>\n props.showWordLimit &&\n !!attrs.value.maxlength &&\n (props.type === 'text' || props.type === 'textarea') &&\n !inputDisabled.value &&\n !props.readonly &&\n !props.showPassword\n )\n const textLength = computed(() => Array.from(nativeInputValue.value).length)\n const inputExceed = computed(\n () =>\n // show exceed style if length of initial value greater then maxlength\n !!isWordLimitVisible.value &&\n textLength.value > Number(attrs.value.maxlength)\n )\n\n const resizeTextarea = () => {\n const { type, autosize } = props\n\n if (isServer || type !== 'textarea') return\n\n if (autosize) {\n const minRows = isObject(autosize) ? autosize.minRows : undefined\n const maxRows = isObject(autosize) ? autosize.maxRows : undefined\n _textareaCalcStyle.value = {\n ...calcTextareaHeight(textarea.value!, minRows, maxRows),\n }\n } else {\n _textareaCalcStyle.value = {\n minHeight: calcTextareaHeight(textarea.value!).minHeight,\n }\n }\n }\n\n const setNativeInputValue = () => {\n const input = inputOrTextarea.value\n if (!input || input.value === nativeInputValue.value) return\n input.value = nativeInputValue.value\n }\n\n const calcIconOffset = (place: 'prefix' | 'suffix') => {\n const { el } = instance.vnode\n if (!el) return\n const elList: HTMLSpanElement[] = Array.from(\n el.querySelectorAll(`.el-input__${place}`)\n )\n const target = elList.find((item) => item.parentNode === el)\n\n if (!target) return\n\n const pendant = PENDANT_MAP[place]\n\n if (slots[pendant]) {\n target.style.transform = `translateX(${place === 'suffix' ? '-' : ''}${\n el.querySelector(`.el-input-group__${pendant}`).offsetWidth\n }px)`\n } else {\n target.removeAttribute('style')\n }\n }\n\n const updateIconOffset = () => {\n calcIconOffset('prefix')\n calcIconOffset('suffix')\n }\n\n const suffixVisible = computed(\n () =>\n !!slots.suffix ||\n !!props.suffixIcon ||\n showClear.value ||\n props.showPassword ||\n isWordLimitVisible.value ||\n (!!validateState.value && needStatusIcon.value)\n )\n\n watch(\n () => props.modelValue,\n () => {\n nextTick(resizeTextarea)\n if (props.validateEvent) {\n elFormItem?.validate?.('change')\n }\n }\n )\n\n // native input value is set explicitly\n // do not use v-model / :value in template\n // see: https://github.com/ElemeFE/element/issues/14521\n watch(nativeInputValue, () => setNativeInputValue())\n\n // when change between <input> and <textarea>,\n // update DOM dependent value and styles\n // https://github.com/ElemeFE/element/issues/14857\n watch(\n () => props.type,\n () => {\n nextTick(() => {\n setNativeInputValue()\n resizeTextarea()\n updateIconOffset()\n })\n }\n )\n\n onMounted(() => {\n setNativeInputValue()\n updateIconOffset()\n nextTick(resizeTextarea)\n })\n\n onUpdated(() => {\n nextTick(updateIconOffset)\n })\n\n return {\n input,\n textarea,\n attrs,\n inputSize,\n validateState,\n validateIcon,\n containerStyle,\n computedTextareaStyle,\n inputDisabled,\n showClear,\n showPwdVisible,\n isWordLimitVisible,\n textLength,\n hovering,\n inputExceed,\n passwordVisible,\n inputOrTextarea,\n suffixVisible,\n }\n },\n})\n</script>\n"],"names":["defineComponent","PsIcon","CircleClose","IconView","inputProps","getCurrentInstance","useAttrs","inject","elFormKey","elFormItemKey","useFormItem","ref","shallowRef","computed","VALIDATE_STATE_MAP","isServer","isObject","calcTextareaHeight"],"mappings":"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"}
@@ -4,32 +4,33 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var vue = require('vue');
6
6
 
7
- const _hoisted_1 = {
7
+ const _hoisted_1 = ["widget"];
8
+ const _hoisted_2 = {
8
9
  key: 0,
9
10
  class: "el-input-group__prepend"
10
11
  };
11
- const _hoisted_2 = ["type", "disabled", "readonly", "autocomplete", "tabindex", "aria-label", "placeholder"];
12
- const _hoisted_3 = {
12
+ const _hoisted_3 = ["type", "disabled", "readonly", "autocomplete", "tabindex", "aria-label", "placeholder"];
13
+ const _hoisted_4 = {
13
14
  key: 1,
14
15
  class: "el-input__prefix"
15
16
  };
16
- const _hoisted_4 = { class: "el-input__prefix-inner" };
17
- const _hoisted_5 = {
17
+ const _hoisted_5 = { class: "el-input__prefix-inner" };
18
+ const _hoisted_6 = {
18
19
  key: 2,
19
20
  class: "el-input__suffix"
20
21
  };
21
- const _hoisted_6 = { class: "el-input__suffix-inner" };
22
- const _hoisted_7 = {
22
+ const _hoisted_7 = { class: "el-input__suffix-inner" };
23
+ const _hoisted_8 = {
23
24
  key: 3,
24
25
  class: "el-input__count"
25
26
  };
26
- const _hoisted_8 = { class: "el-input__count-inner" };
27
- const _hoisted_9 = {
27
+ const _hoisted_9 = { class: "el-input__count-inner" };
28
+ const _hoisted_10 = {
28
29
  key: 3,
29
30
  class: "el-input-group__append"
30
31
  };
31
- const _hoisted_10 = ["tabindex", "disabled", "readonly", "autocomplete", "aria-label", "placeholder"];
32
- const _hoisted_11 = {
32
+ const _hoisted_11 = ["tabindex", "disabled", "readonly", "autocomplete", "aria-label", "placeholder"];
33
+ const _hoisted_12 = {
33
34
  key: 0,
34
35
  class: "el-input__count"
35
36
  };
@@ -53,12 +54,13 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
53
54
  },
54
55
  _ctx.$attrs.class
55
56
  ]),
56
- style: vue.normalizeStyle(_ctx.containerStyle)
57
+ style: vue.normalizeStyle(_ctx.containerStyle),
58
+ widget: _ctx.widget
57
59
  }, [
58
60
  vue.createCommentVNode(" input "),
59
61
  _ctx.type !== "textarea" ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 0 }, [
60
62
  vue.createCommentVNode(" prepend slot "),
61
- _ctx.$slots.prepend ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1, [
63
+ _ctx.$slots.prepend ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2, [
62
64
  vue.renderSlot(_ctx.$slots, "prepend")
63
65
  ])) : vue.createCommentVNode("v-if", true),
64
66
  vue.createElementVNode("input", vue.mergeProps({
@@ -73,10 +75,10 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
73
75
  "aria-label": _ctx.label,
74
76
  placeholder: _ctx.placeholder,
75
77
  style: _ctx.inputStyle
76
- }), null, 16, _hoisted_2),
78
+ }), null, 16, _hoisted_3),
77
79
  vue.createCommentVNode(" prefix slot "),
78
- _ctx.$slots.prefix || _ctx.prefixIcon ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_3, [
79
- vue.createElementVNode("span", _hoisted_4, [
80
+ _ctx.$slots.prefix || _ctx.prefixIcon ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_4, [
81
+ vue.createElementVNode("span", _hoisted_5, [
80
82
  vue.renderSlot(_ctx.$slots, "prefix"),
81
83
  _ctx.prefixIcon ? (vue.openBlock(), vue.createBlock(_component_ps_icon, {
82
84
  key: 0,
@@ -90,8 +92,8 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
90
92
  ])
91
93
  ])) : vue.createCommentVNode("v-if", true),
92
94
  vue.createCommentVNode(" suffix slot "),
93
- _ctx.suffixVisible ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_5, [
94
- vue.createElementVNode("span", _hoisted_6, [
95
+ _ctx.suffixVisible ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_6, [
96
+ vue.createElementVNode("span", _hoisted_7, [
95
97
  !_ctx.showClear || !_ctx.showPwdVisible || !_ctx.isWordLimitVisible ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 0 }, [
96
98
  vue.renderSlot(_ctx.$slots, "suffix"),
97
99
  _ctx.suffixIcon ? (vue.openBlock(), vue.createBlock(_component_ps_icon, {
@@ -122,8 +124,8 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
122
124
  ]),
123
125
  _: 1
124
126
  })) : vue.createCommentVNode("v-if", true),
125
- _ctx.isWordLimitVisible ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_7, [
126
- vue.createElementVNode("span", _hoisted_8, vue.toDisplayString(_ctx.textLength) + " / " + vue.toDisplayString(_ctx.attrs.maxlength), 1)
127
+ _ctx.isWordLimitVisible ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_8, [
128
+ vue.createElementVNode("span", _hoisted_9, vue.toDisplayString(_ctx.textLength) + " / " + vue.toDisplayString(_ctx.attrs.maxlength), 1)
127
129
  ])) : vue.createCommentVNode("v-if", true)
128
130
  ]),
129
131
  _ctx.validateState && _ctx.validateIcon ? (vue.openBlock(), vue.createBlock(_component_ps_icon, {
@@ -137,7 +139,7 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
137
139
  })) : vue.createCommentVNode("v-if", true)
138
140
  ])) : vue.createCommentVNode("v-if", true),
139
141
  vue.createCommentVNode(" append slot "),
140
- _ctx.$slots.append ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_9, [
142
+ _ctx.$slots.append ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_10, [
141
143
  vue.renderSlot(_ctx.$slots, "append")
142
144
  ])) : vue.createCommentVNode("v-if", true)
143
145
  ], 64)) : (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 1 }, [
@@ -153,10 +155,10 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
153
155
  style: _ctx.computedTextareaStyle,
154
156
  "aria-label": _ctx.label,
155
157
  placeholder: _ctx.placeholder
156
- }), null, 16, _hoisted_10),
157
- _ctx.isWordLimitVisible ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_11, vue.toDisplayString(_ctx.textLength) + " / " + vue.toDisplayString(_ctx.attrs.maxlength), 1)) : vue.createCommentVNode("v-if", true)
158
+ }), null, 16, _hoisted_11),
159
+ _ctx.isWordLimitVisible ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_12, vue.toDisplayString(_ctx.textLength) + " / " + vue.toDisplayString(_ctx.attrs.maxlength), 1)) : vue.createCommentVNode("v-if", true)
158
160
  ], 64))
159
- ], 6)), [
161
+ ], 14, _hoisted_1)), [
160
162
  [vue.vShow, _ctx.type !== "hidden"]
161
163
  ]);
162
164
  }
@@ -1 +1 @@
1
- {"version":3,"file":"input.vue_vue&type=template&id=3290dcb6&lang.js","sources":["../../../../../../../packages/components/input/src/input.vue?vue&type=template&id=3290dcb6&lang.js"],"sourcesContent":["<template>\n <div\n v-show=\"type !== 'hidden'\"\n :class=\"[\n type === 'textarea' ? 'el-textarea' : 'el-input',\n inputSize ? 'el-input--' + inputSize : '',\n {\n 'is-disabled': inputDisabled,\n 'is-exceed': inputExceed,\n 'el-input-group': $slots.prepend || $slots.append,\n 'el-input-group--append': $slots.append,\n 'el-input-group--prepend': $slots.prepend,\n 'el-input--prefix': $slots.prefix || prefixIcon,\n 'el-input--suffix':\n $slots.suffix || suffixIcon || clearable || showPassword,\n 'el-input--suffix--password-clear': clearable && showPassword,\n },\n $attrs.class,\n ]\"\n :style=\"containerStyle\"\n >\n <!-- input -->\n <template v-if=\"type !== 'textarea'\">\n <!-- prepend slot -->\n <div v-if=\"$slots.prepend\" class=\"el-input-group__prepend\">\n <slot name=\"prepend\" />\n </div>\n\n <input\n ref=\"input\"\n class=\"el-input__inner\"\n v-bind=\"attrs\"\n :type=\"showPassword ? (passwordVisible ? 'text' : 'password') : type\"\n :disabled=\"inputDisabled\"\n :readonly=\"readonly\"\n :autocomplete=\"autocomplete\"\n :tabindex=\"tabindex\"\n :aria-label=\"label\"\n :placeholder=\"placeholder\"\n :style=\"inputStyle\"\n />\n\n <!-- prefix slot -->\n <span v-if=\"$slots.prefix || prefixIcon\" class=\"el-input__prefix\">\n <span class=\"el-input__prefix-inner\">\n <slot name=\"prefix\"></slot>\n <ps-icon v-if=\"prefixIcon\" class=\"el-input__icon\">\n <component :is=\"prefixIcon\" />\n </ps-icon>\n </span>\n </span>\n\n <!-- suffix slot -->\n <span v-if=\"suffixVisible\" class=\"el-input__suffix\">\n <span class=\"el-input__suffix-inner\">\n <template v-if=\"!showClear || !showPwdVisible || !isWordLimitVisible\">\n <slot name=\"suffix\"></slot>\n <ps-icon v-if=\"suffixIcon\" class=\"el-input__icon\">\n <component :is=\"suffixIcon\" />\n </ps-icon>\n </template>\n <ps-icon\n v-if=\"showClear\"\n class=\"el-input__icon el-input__clear\"\n >\n <circle-close />\n </ps-icon>\n <ps-icon\n v-if=\"showPwdVisible\"\n class=\"el-input__icon el-input__clear\"\n >\n <icon-view />\n </ps-icon>\n <span v-if=\"isWordLimitVisible\" class=\"el-input__count\">\n <span class=\"el-input__count-inner\">\n {{ textLength }} / {{ attrs.maxlength }}\n </span>\n </span>\n </span>\n <ps-icon\n v-if=\"validateState && validateIcon\"\n class=\"el-input__icon el-input__validateIcon\"\n >\n <component :is=\"validateIcon\" />\n </ps-icon>\n </span>\n\n <!-- append slot -->\n <div v-if=\"$slots.append\" class=\"el-input-group__append\">\n <slot name=\"append\" />\n </div>\n </template>\n\n <!-- textarea -->\n <template v-else>\n <textarea\n ref=\"textarea\"\n class=\"el-textarea__inner\"\n v-bind=\"attrs\"\n :tabindex=\"tabindex\"\n :disabled=\"inputDisabled\"\n :readonly=\"readonly\"\n :autocomplete=\"autocomplete\"\n :style=\"computedTextareaStyle\"\n :aria-label=\"label\"\n :placeholder=\"placeholder\"\n />\n <span v-if=\"isWordLimitVisible\" class=\"el-input__count\">\n {{ textLength }} / {{ attrs.maxlength }}\n </span>\n </template>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport {\n defineComponent,\n inject,\n computed,\n watch,\n nextTick,\n getCurrentInstance,\n ref,\n shallowRef,\n onMounted,\n onUpdated,\n} from 'vue'\nimport { elFormKey, elFormItemKey } from '@element-ps/tokens'\nimport { useAttrs, useFormItem } from '@element-ps/hooks'\nimport { VALIDATE_STATE_MAP } from '@element-ps/utils/constants'\nimport { isObject } from '@element-ps/utils/util'\nimport isServer from '@element-ps/utils/isServer'\nimport { calcTextareaHeight } from './calc-textarea-height'\nimport { inputProps } from './input'\nimport type { StyleValue } from '@element-ps/utils/types'\nimport { PsIcon } from '@element-ps/components/icon'\nimport { CircleClose, View as IconView } from '@element-plus/icons'\n\nconst PENDANT_MAP = {\n suffix: 'append',\n prefix: 'prepend',\n} as const\n\nexport default defineComponent({\n name: 'PsInput',\n inheritAttrs: false,\n components: { PsIcon, CircleClose, IconView },\n props: inputProps,\n\n setup(props, { slots, attrs: rawAttrs }) {\n const instance = getCurrentInstance()!\n const attrs = useAttrs()\n\n const elForm = inject(elFormKey, undefined)\n const elFormItem = inject(elFormItemKey, undefined)\n\n const { size: inputSize, disabled: inputDisabled } = useFormItem({})\n\n const input = ref<HTMLInputElement>()\n const textarea = ref<HTMLTextAreaElement>()\n const focused = ref(false)\n const hovering = ref(false)\n const passwordVisible = ref(false)\n const _textareaCalcStyle = shallowRef(props.inputStyle)\n\n const inputOrTextarea = computed(() => input.value || textarea.value)\n const needStatusIcon = computed(() => elForm?.statusIcon ?? false)\n const validateState = computed(() => elFormItem?.validateState || '')\n const validateIcon = computed(() => VALIDATE_STATE_MAP[validateState.value])\n const containerStyle = computed(() => rawAttrs.style as StyleValue)\n const computedTextareaStyle = computed<StyleValue>(() => [\n props.inputStyle,\n _textareaCalcStyle.value,\n { resize: props.resize },\n ])\n const nativeInputValue = computed(() =>\n props.modelValue === null || props.modelValue === undefined\n ? ''\n : String(props.modelValue)\n )\n const showClear = computed(\n () =>\n props.clearable &&\n !inputDisabled.value &&\n !props.readonly &&\n !!nativeInputValue.value &&\n (focused.value || hovering.value)\n )\n const showPwdVisible = computed(\n () =>\n props.showPassword &&\n !inputDisabled.value &&\n !props.readonly &&\n (!!nativeInputValue.value || focused.value)\n )\n const isWordLimitVisible = computed(\n () =>\n props.showWordLimit &&\n !!attrs.value.maxlength &&\n (props.type === 'text' || props.type === 'textarea') &&\n !inputDisabled.value &&\n !props.readonly &&\n !props.showPassword\n )\n const textLength = computed(() => Array.from(nativeInputValue.value).length)\n const inputExceed = computed(\n () =>\n // show exceed style if length of initial value greater then maxlength\n !!isWordLimitVisible.value &&\n textLength.value > Number(attrs.value.maxlength)\n )\n\n const resizeTextarea = () => {\n const { type, autosize } = props\n\n if (isServer || type !== 'textarea') return\n\n if (autosize) {\n const minRows = isObject(autosize) ? autosize.minRows : undefined\n const maxRows = isObject(autosize) ? autosize.maxRows : undefined\n _textareaCalcStyle.value = {\n ...calcTextareaHeight(textarea.value!, minRows, maxRows),\n }\n } else {\n _textareaCalcStyle.value = {\n minHeight: calcTextareaHeight(textarea.value!).minHeight,\n }\n }\n }\n\n const setNativeInputValue = () => {\n const input = inputOrTextarea.value\n if (!input || input.value === nativeInputValue.value) return\n input.value = nativeInputValue.value\n }\n\n const calcIconOffset = (place: 'prefix' | 'suffix') => {\n const { el } = instance.vnode\n if (!el) return\n const elList: HTMLSpanElement[] = Array.from(\n el.querySelectorAll(`.el-input__${place}`)\n )\n const target = elList.find((item) => item.parentNode === el)\n\n if (!target) return\n\n const pendant = PENDANT_MAP[place]\n\n if (slots[pendant]) {\n target.style.transform = `translateX(${place === 'suffix' ? '-' : ''}${\n el.querySelector(`.el-input-group__${pendant}`).offsetWidth\n }px)`\n } else {\n target.removeAttribute('style')\n }\n }\n\n const updateIconOffset = () => {\n calcIconOffset('prefix')\n calcIconOffset('suffix')\n }\n\n const suffixVisible = computed(\n () =>\n !!slots.suffix ||\n !!props.suffixIcon ||\n showClear.value ||\n props.showPassword ||\n isWordLimitVisible.value ||\n (!!validateState.value && needStatusIcon.value)\n )\n\n watch(\n () => props.modelValue,\n () => {\n nextTick(resizeTextarea)\n if (props.validateEvent) {\n elFormItem?.validate?.('change')\n }\n }\n )\n\n // native input value is set explicitly\n // do not use v-model / :value in template\n // see: https://github.com/ElemeFE/element/issues/14521\n watch(nativeInputValue, () => setNativeInputValue())\n\n // when change between <input> and <textarea>,\n // update DOM dependent value and styles\n // https://github.com/ElemeFE/element/issues/14857\n watch(\n () => props.type,\n () => {\n nextTick(() => {\n setNativeInputValue()\n resizeTextarea()\n updateIconOffset()\n })\n }\n )\n\n onMounted(() => {\n setNativeInputValue()\n updateIconOffset()\n nextTick(resizeTextarea)\n })\n\n onUpdated(() => {\n nextTick(updateIconOffset)\n })\n\n return {\n input,\n textarea,\n attrs,\n inputSize,\n validateState,\n validateIcon,\n containerStyle,\n computedTextareaStyle,\n inputDisabled,\n showClear,\n showPwdVisible,\n isWordLimitVisible,\n textLength,\n hovering,\n inputExceed,\n passwordVisible,\n inputOrTextarea,\n suffixVisible,\n }\n },\n})\n</script>\n"],"names":["_createElementBlock","_createCommentVNode","_renderSlot","_createElementVNode","_mergeProps","_createBlock","_createVNode"],"mappings":";;;;;;;;EAwBiC,OAAM;AAAA;;;;EAmBQ,OAAM;AAAA;qBACvC,OAAM;;;EASa,OAAM;AAAA;qBACzB,OAAM;;;EAmBsB,OAAM;AAAA;qBAC9B,OAAM;;;EAcQ,OAAM;AAAA;;;;EAmBA,OAAM;AAAA;;;;;8CA1G1CA;IAEG;;;;;;;;;;;;;;;IAgBA,0BAAO;;IAERC;IACgB,6CAAhBD;MACEC;MACW,YAAO,4BAAlBD,8BAAA;QACEE;;MAGFC,gCAAAC;QACE,KAAI;AAAA,QACJ,OAAM;AAAA,SACE;QACP,MAAM,oBAAgB,6CAAyC;QAC/D,UAAU;QACV,UAAU;QACV,cAAc;QACd,UAAU;QACV,cAAY;QACZ,aAAa;QACb,OAAO;;MAGVH;MACY,YAAO,UAAU,oCAA7BD,+BAAA;QACEG,+BAAA;UACED;UACe,oCAAfG;;YAA2B,OAAM;AAAA;iCAC/B;gCAAAA,4CAAgB;;;;;;MAKtBJ;MACY,uCAAZD,+BAAA;QACEG,+BAAA;WACmB,mBAAc,wBAAmB,4CAAlDH;YACEE;YACe,oCAAfG;;cAA2B,OAAM;AAAA;mCAC/B;kCAAAA,4CAAgB;;;;;UAIZ,mCADRA;;YAEE,OAAM;AAAA;iCAEN;cAAAC;;;;UAGM,wCADRD;;YAEE,OAAM;AAAA;iCAEN;cAAAC;;;;UAEU,4CAAZN,+BAAA;YACEG,+BAAA,gCACK,+CAAmB,WAAM;;;QAK1B,sBAAiB,sCADzBE;;UAEE,OAAM;AAAA;+BAEN;8BAAAA,4CAAgB;;;;;MAIpBJ;MACW,YAAO,2BAAlBD,8BAAA;QACEE;;gCAKJF;MADAC;MAEEE,mCAAAC;QACE,KAAI;AAAA,QACJ,OAAM;AAAA,SACE;QACP,UAAU;QACV,UAAU;QACV,UAAU;QACV,cAAc;QACd,OAAO;QACP,cAAY;QACZ,aAAa;;MAEJ,4CAAZJ,+BAAA,iCACK,+CAAmB,WAAM;;;gBA1GxB;;;;;;"}
1
+ {"version":3,"file":"input.vue_vue&type=template&id=3290dcb6&lang.js","sources":["../../../../../../../packages/components/input/src/input.vue?vue&type=template&id=3290dcb6&lang.js"],"sourcesContent":["<template>\n <div\n v-show=\"type !== 'hidden'\"\n :class=\"[\n type === 'textarea' ? 'el-textarea' : 'el-input',\n inputSize ? 'el-input--' + inputSize : '',\n {\n 'is-disabled': inputDisabled,\n 'is-exceed': inputExceed,\n 'el-input-group': $slots.prepend || $slots.append,\n 'el-input-group--append': $slots.append,\n 'el-input-group--prepend': $slots.prepend,\n 'el-input--prefix': $slots.prefix || prefixIcon,\n 'el-input--suffix':\n $slots.suffix || suffixIcon || clearable || showPassword,\n 'el-input--suffix--password-clear': clearable && showPassword,\n },\n $attrs.class,\n ]\"\n :style=\"containerStyle\"\n :widget=\"widget\"\n >\n <!-- input -->\n <template v-if=\"type !== 'textarea'\">\n <!-- prepend slot -->\n <div v-if=\"$slots.prepend\" class=\"el-input-group__prepend\">\n <slot name=\"prepend\" />\n </div>\n\n <input\n ref=\"input\"\n class=\"el-input__inner\"\n v-bind=\"attrs\"\n :type=\"showPassword ? (passwordVisible ? 'text' : 'password') : type\"\n :disabled=\"inputDisabled\"\n :readonly=\"readonly\"\n :autocomplete=\"autocomplete\"\n :tabindex=\"tabindex\"\n :aria-label=\"label\"\n :placeholder=\"placeholder\"\n :style=\"inputStyle\"\n />\n\n <!-- prefix slot -->\n <span v-if=\"$slots.prefix || prefixIcon\" class=\"el-input__prefix\">\n <span class=\"el-input__prefix-inner\">\n <slot name=\"prefix\"></slot>\n <ps-icon v-if=\"prefixIcon\" class=\"el-input__icon\">\n <component :is=\"prefixIcon\" />\n </ps-icon>\n </span>\n </span>\n\n <!-- suffix slot -->\n <span v-if=\"suffixVisible\" class=\"el-input__suffix\">\n <span class=\"el-input__suffix-inner\">\n <template v-if=\"!showClear || !showPwdVisible || !isWordLimitVisible\">\n <slot name=\"suffix\"></slot>\n <ps-icon v-if=\"suffixIcon\" class=\"el-input__icon\">\n <component :is=\"suffixIcon\" />\n </ps-icon>\n </template>\n <ps-icon\n v-if=\"showClear\"\n class=\"el-input__icon el-input__clear\"\n >\n <circle-close />\n </ps-icon>\n <ps-icon\n v-if=\"showPwdVisible\"\n class=\"el-input__icon el-input__clear\"\n >\n <icon-view />\n </ps-icon>\n <span v-if=\"isWordLimitVisible\" class=\"el-input__count\">\n <span class=\"el-input__count-inner\">\n {{ textLength }} / {{ attrs.maxlength }}\n </span>\n </span>\n </span>\n <ps-icon\n v-if=\"validateState && validateIcon\"\n class=\"el-input__icon el-input__validateIcon\"\n >\n <component :is=\"validateIcon\" />\n </ps-icon>\n </span>\n\n <!-- append slot -->\n <div v-if=\"$slots.append\" class=\"el-input-group__append\">\n <slot name=\"append\" />\n </div>\n </template>\n\n <!-- textarea -->\n <template v-else>\n <textarea\n ref=\"textarea\"\n class=\"el-textarea__inner\"\n v-bind=\"attrs\"\n :tabindex=\"tabindex\"\n :disabled=\"inputDisabled\"\n :readonly=\"readonly\"\n :autocomplete=\"autocomplete\"\n :style=\"computedTextareaStyle\"\n :aria-label=\"label\"\n :placeholder=\"placeholder\"\n />\n <span v-if=\"isWordLimitVisible\" class=\"el-input__count\">\n {{ textLength }} / {{ attrs.maxlength }}\n </span>\n </template>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport {\n defineComponent,\n inject,\n computed,\n watch,\n nextTick,\n getCurrentInstance,\n ref,\n shallowRef,\n onMounted,\n onUpdated,\n} from 'vue'\nimport { elFormKey, elFormItemKey } from '@element-ps/tokens'\nimport { useAttrs, useFormItem } from '@element-ps/hooks'\nimport { VALIDATE_STATE_MAP } from '@element-ps/utils/constants'\nimport { isObject } from '@element-ps/utils/util'\nimport isServer from '@element-ps/utils/isServer'\nimport { calcTextareaHeight } from './calc-textarea-height'\nimport { inputProps } from './input'\nimport type { StyleValue } from '@element-ps/utils/types'\nimport { PsIcon } from '@element-ps/components/icon'\nimport { CircleClose, View as IconView } from '@element-plus/icons'\n\nconst PENDANT_MAP = {\n suffix: 'append',\n prefix: 'prepend',\n} as const\n\nexport default defineComponent({\n name: 'PsInput',\n inheritAttrs: false,\n components: { PsIcon, CircleClose, IconView },\n props: inputProps,\n\n setup(props, { slots, attrs: rawAttrs }) {\n const instance = getCurrentInstance()!\n const attrs = useAttrs()\n\n const elForm = inject(elFormKey, undefined)\n const elFormItem = inject(elFormItemKey, undefined)\n\n const { size: inputSize, disabled: inputDisabled } = useFormItem({})\n\n const input = ref<HTMLInputElement>()\n const textarea = ref<HTMLTextAreaElement>()\n const focused = ref(false)\n const hovering = ref(false)\n const passwordVisible = ref(false)\n const _textareaCalcStyle = shallowRef(props.inputStyle)\n\n const inputOrTextarea = computed(() => input.value || textarea.value)\n const needStatusIcon = computed(() => elForm?.statusIcon ?? false)\n const validateState = computed(() => elFormItem?.validateState || '')\n const validateIcon = computed(() => VALIDATE_STATE_MAP[validateState.value])\n const containerStyle = computed(() => rawAttrs.style as StyleValue)\n const computedTextareaStyle = computed<StyleValue>(() => [\n props.inputStyle,\n _textareaCalcStyle.value,\n { resize: props.resize },\n ])\n const nativeInputValue = computed(() =>\n props.modelValue === null || props.modelValue === undefined\n ? ''\n : String(props.modelValue)\n )\n const showClear = computed(\n () =>\n props.clearable &&\n !inputDisabled.value &&\n !props.readonly &&\n !!nativeInputValue.value &&\n (focused.value || hovering.value)\n )\n const showPwdVisible = computed(\n () =>\n props.showPassword &&\n !inputDisabled.value &&\n !props.readonly &&\n (!!nativeInputValue.value || focused.value)\n )\n const isWordLimitVisible = computed(\n () =>\n props.showWordLimit &&\n !!attrs.value.maxlength &&\n (props.type === 'text' || props.type === 'textarea') &&\n !inputDisabled.value &&\n !props.readonly &&\n !props.showPassword\n )\n const textLength = computed(() => Array.from(nativeInputValue.value).length)\n const inputExceed = computed(\n () =>\n // show exceed style if length of initial value greater then maxlength\n !!isWordLimitVisible.value &&\n textLength.value > Number(attrs.value.maxlength)\n )\n\n const resizeTextarea = () => {\n const { type, autosize } = props\n\n if (isServer || type !== 'textarea') return\n\n if (autosize) {\n const minRows = isObject(autosize) ? autosize.minRows : undefined\n const maxRows = isObject(autosize) ? autosize.maxRows : undefined\n _textareaCalcStyle.value = {\n ...calcTextareaHeight(textarea.value!, minRows, maxRows),\n }\n } else {\n _textareaCalcStyle.value = {\n minHeight: calcTextareaHeight(textarea.value!).minHeight,\n }\n }\n }\n\n const setNativeInputValue = () => {\n const input = inputOrTextarea.value\n if (!input || input.value === nativeInputValue.value) return\n input.value = nativeInputValue.value\n }\n\n const calcIconOffset = (place: 'prefix' | 'suffix') => {\n const { el } = instance.vnode\n if (!el) return\n const elList: HTMLSpanElement[] = Array.from(\n el.querySelectorAll(`.el-input__${place}`)\n )\n const target = elList.find((item) => item.parentNode === el)\n\n if (!target) return\n\n const pendant = PENDANT_MAP[place]\n\n if (slots[pendant]) {\n target.style.transform = `translateX(${place === 'suffix' ? '-' : ''}${\n el.querySelector(`.el-input-group__${pendant}`).offsetWidth\n }px)`\n } else {\n target.removeAttribute('style')\n }\n }\n\n const updateIconOffset = () => {\n calcIconOffset('prefix')\n calcIconOffset('suffix')\n }\n\n const suffixVisible = computed(\n () =>\n !!slots.suffix ||\n !!props.suffixIcon ||\n showClear.value ||\n props.showPassword ||\n isWordLimitVisible.value ||\n (!!validateState.value && needStatusIcon.value)\n )\n\n watch(\n () => props.modelValue,\n () => {\n nextTick(resizeTextarea)\n if (props.validateEvent) {\n elFormItem?.validate?.('change')\n }\n }\n )\n\n // native input value is set explicitly\n // do not use v-model / :value in template\n // see: https://github.com/ElemeFE/element/issues/14521\n watch(nativeInputValue, () => setNativeInputValue())\n\n // when change between <input> and <textarea>,\n // update DOM dependent value and styles\n // https://github.com/ElemeFE/element/issues/14857\n watch(\n () => props.type,\n () => {\n nextTick(() => {\n setNativeInputValue()\n resizeTextarea()\n updateIconOffset()\n })\n }\n )\n\n onMounted(() => {\n setNativeInputValue()\n updateIconOffset()\n nextTick(resizeTextarea)\n })\n\n onUpdated(() => {\n nextTick(updateIconOffset)\n })\n\n return {\n input,\n textarea,\n attrs,\n inputSize,\n validateState,\n validateIcon,\n containerStyle,\n computedTextareaStyle,\n inputDisabled,\n showClear,\n showPwdVisible,\n isWordLimitVisible,\n textLength,\n hovering,\n inputExceed,\n passwordVisible,\n inputOrTextarea,\n suffixVisible,\n }\n },\n})\n</script>\n"],"names":["_createElementBlock","_createCommentVNode","_renderSlot","_createElementVNode","_mergeProps","_createBlock","_createVNode"],"mappings":";;;;;;;;;EAyBiC,OAAM;AAAA;;;;EAmBQ,OAAM;AAAA;qBACvC,OAAM;;;EASa,OAAM;AAAA;qBACzB,OAAM;;;EAmBsB,OAAM;AAAA;qBAC9B,OAAM;;;EAcQ,OAAM;AAAA;;;;EAmBA,OAAM;AAAA;;;;;8CA3G1CA;IAEG;;;;;;;;;;;;;;;IAgBA,0BAAO;IACP,QAAQ;;IAETC;IACgB,6CAAhBD;MACEC;MACW,YAAO,4BAAlBD,8BAAA;QACEE;;MAGFC,gCAAAC;QACE,KAAI;AAAA,QACJ,OAAM;AAAA,SACE;QACP,MAAM,oBAAgB,6CAAyC;QAC/D,UAAU;QACV,UAAU;QACV,cAAc;QACd,UAAU;QACV,cAAY;QACZ,aAAa;QACb,OAAO;;MAGVH;MACY,YAAO,UAAU,oCAA7BD,+BAAA;QACEG,+BAAA;UACED;UACe,oCAAfG;;YAA2B,OAAM;AAAA;iCAC/B;gCAAAA,4CAAgB;;;;;;MAKtBJ;MACY,uCAAZD,+BAAA;QACEG,+BAAA;WACmB,mBAAc,wBAAmB,4CAAlDH;YACEE;YACe,oCAAfG;;cAA2B,OAAM;AAAA;mCAC/B;kCAAAA,4CAAgB;;;;;UAIZ,mCADRA;;YAEE,OAAM;AAAA;iCAEN;cAAAC;;;;UAGM,wCADRD;;YAEE,OAAM;AAAA;iCAEN;cAAAC;;;;UAEU,4CAAZN,+BAAA;YACEG,+BAAA,gCACK,+CAAmB,WAAM;;;QAK1B,sBAAiB,sCADzBE;;UAEE,OAAM;AAAA;+BAEN;8BAAAA,4CAAgB;;;;;MAIpBJ;MACW,YAAO,2BAAlBD,8BAAA;QACEE;;gCAKJF;MADAC;MAEEE,mCAAAC;QACE,KAAI;AAAA,QACJ,OAAM;AAAA,SACE;QACP,UAAU;QACV,UAAU;QACV,UAAU;QACV,cAAc;QACd,OAAO;QACP,cAAY;QACZ,aAAa;;MAEJ,4CAAZJ,+BAAA,iCACK,+CAAmB,WAAM;;;gBA3GxB;;;;;;"}
@@ -3,8 +3,8 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var withInstall = require('../../utils/with-install.js');
6
- require('./src/link2.js');
7
- var link = require('./src/link.js');
6
+ require('./src/link.js');
7
+ var link = require('./src/link2.js');
8
8
  var link_vue_vue_type_script_lang = require('./src/link.vue_vue&type=script&lang.js');
9
9
 
10
10
  const PsLink = withInstall.withInstall(link_vue_vue_type_script_lang["default"]);
@@ -2,25 +2,11 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var props = require('../../../utils/props.js');
5
+ var link_vue_vue_type_script_lang = require('./link.vue_vue&type=script&lang.js');
6
+ var link_vue_vue_type_template_id_6a422645_lang = require('./link.vue_vue&type=template&id=6a422645&lang.js');
6
7
 
7
- const linkProps = props.buildProps({
8
- type: {
9
- type: String,
10
- values: ["primary", "success", "warning", "info", "danger", "default"],
11
- default: "default"
12
- },
13
- underline: {
14
- type: Boolean,
15
- default: true
16
- },
17
- disabled: { type: Boolean, default: false },
18
- href: { type: String, default: "" },
19
- icon: {
20
- type: props.definePropType([String, Object]),
21
- default: ""
22
- }
23
- });
8
+ link_vue_vue_type_script_lang["default"].render = link_vue_vue_type_template_id_6a422645_lang.render;
9
+ link_vue_vue_type_script_lang["default"].__file = "packages/components/link/src/link.vue";
24
10
 
25
- exports.linkProps = linkProps;
11
+ exports["default"] = link_vue_vue_type_script_lang["default"];
26
12
  //# sourceMappingURL=link.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"link.js","sources":["../../../../../../../packages/components/link/src/link.ts"],"sourcesContent":["import { buildProps, definePropType } from '@element-ps/utils/props'\nimport type { Component, ExtractPropTypes } from 'vue'\n\nexport const linkProps = buildProps({\n type: {\n type: String,\n values: ['primary', 'success', 'warning', 'info', 'danger', 'default'],\n default: 'default',\n },\n underline: {\n type: Boolean,\n default: true,\n },\n disabled: { type: Boolean, default: false },\n href: { type: String, default: '' },\n icon: {\n type: definePropType<string | Component>([String, Object]),\n default: '',\n },\n} as const)\nexport type LinkProps = ExtractPropTypes<typeof linkProps>\n"],"names":["buildProps","definePropType"],"mappings":";;;;;;MAGa,YAAYA,iBAAW;AAAA,EAClC,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,QAAQ,CAAC,WAAW,WAAW,WAAW,QAAQ,UAAU;AAAA,IAC5D,SAAS;AAAA;AAAA,EAEX,WAAW;AAAA,IACT,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,UAAU,EAAE,MAAM,SAAS,SAAS;AAAA,EACpC,MAAM,EAAE,MAAM,QAAQ,SAAS;AAAA,EAC/B,MAAM;AAAA,IACJ,MAAMC,qBAAmC,CAAC,QAAQ;AAAA,IAClD,SAAS;AAAA;AAAA;;;;"}
1
+ {"version":3,"file":"link.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;"}
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var vue = require('vue');
6
- var link = require('./link.js');
6
+ var link = require('./link2.js');
7
7
  var index = require('../../icon/index.js');
8
8
 
9
9
  var script = vue.defineComponent({
@@ -2,11 +2,25 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var link_vue_vue_type_script_lang = require('./link.vue_vue&type=script&lang.js');
6
- var link_vue_vue_type_template_id_6a422645_lang = require('./link.vue_vue&type=template&id=6a422645&lang.js');
5
+ var props = require('../../../utils/props.js');
7
6
 
8
- link_vue_vue_type_script_lang["default"].render = link_vue_vue_type_template_id_6a422645_lang.render;
9
- link_vue_vue_type_script_lang["default"].__file = "packages/components/link/src/link.vue";
7
+ const linkProps = props.buildProps({
8
+ type: {
9
+ type: String,
10
+ values: ["primary", "success", "warning", "info", "danger", "default"],
11
+ default: "default"
12
+ },
13
+ underline: {
14
+ type: Boolean,
15
+ default: true
16
+ },
17
+ disabled: { type: Boolean, default: false },
18
+ href: { type: String, default: "" },
19
+ icon: {
20
+ type: props.definePropType([String, Object]),
21
+ default: ""
22
+ }
23
+ });
10
24
 
11
- exports["default"] = link_vue_vue_type_script_lang["default"];
25
+ exports.linkProps = linkProps;
12
26
  //# sourceMappingURL=link2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"link2.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;"}
1
+ {"version":3,"file":"link2.js","sources":["../../../../../../../packages/components/link/src/link.ts"],"sourcesContent":["import { buildProps, definePropType } from '@element-ps/utils/props'\nimport type { Component, ExtractPropTypes } from 'vue'\n\nexport const linkProps = buildProps({\n type: {\n type: String,\n values: ['primary', 'success', 'warning', 'info', 'danger', 'default'],\n default: 'default',\n },\n underline: {\n type: Boolean,\n default: true,\n },\n disabled: { type: Boolean, default: false },\n href: { type: String, default: '' },\n icon: {\n type: definePropType<string | Component>([String, Object]),\n default: '',\n },\n} as const)\nexport type LinkProps = ExtractPropTypes<typeof linkProps>\n"],"names":["buildProps","definePropType"],"mappings":";;;;;;MAGa,YAAYA,iBAAW;AAAA,EAClC,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,QAAQ,CAAC,WAAW,WAAW,WAAW,QAAQ,UAAU;AAAA,IAC5D,SAAS;AAAA;AAAA,EAEX,WAAW;AAAA,IACT,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,UAAU,EAAE,MAAM,SAAS,SAAS;AAAA,EACpC,MAAM,EAAE,MAAM,QAAQ,SAAS;AAAA,EAC/B,MAAM;AAAA,IACJ,MAAMC,qBAAmC,CAAC,QAAQ;AAAA,IAClD,SAAS;AAAA;AAAA;;;;"}
@@ -3,8 +3,8 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var withInstall = require('../../utils/with-install.js');
6
- require('./src/page-header.js');
7
- var pageHeader = require('./src/page-header2.js');
6
+ require('./src/page-header2.js');
7
+ var pageHeader = require('./src/page-header.js');
8
8
  var pageHeader_vue_vue_type_script_lang = require('./src/page-header.vue_vue&type=script&lang.js');
9
9
 
10
10
  const PsPageHeader = withInstall.withInstall(pageHeader_vue_vue_type_script_lang["default"]);
@@ -2,11 +2,19 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var pageHeader_vue_vue_type_script_lang = require('./page-header.vue_vue&type=script&lang.js');
6
- var pageHeader_vue_vue_type_template_id_d12fb4b2_lang = require('./page-header.vue_vue&type=template&id=d12fb4b2&lang.js');
5
+ var icons = require('@element-plus/icons');
7
6
 
8
- pageHeader_vue_vue_type_script_lang["default"].render = pageHeader_vue_vue_type_template_id_d12fb4b2_lang.render;
9
- pageHeader_vue_vue_type_script_lang["default"].__file = "packages/components/page-header/src/page-header.vue";
7
+ const pageHeaderProps = {
8
+ icon: {
9
+ type: [String, Object],
10
+ default: icons.Back
11
+ },
12
+ title: String,
13
+ content: {
14
+ type: String,
15
+ default: ""
16
+ }
17
+ };
10
18
 
11
- exports["default"] = pageHeader_vue_vue_type_script_lang["default"];
19
+ exports.pageHeaderProps = pageHeaderProps;
12
20
  //# sourceMappingURL=page-header.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"page-header.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;"}
1
+ {"version":3,"file":"page-header.js","sources":["../../../../../../../packages/components/page-header/src/page-header.ts"],"sourcesContent":["import { Back } from '@element-plus/icons'\nimport type { ExtractPropTypes, PropType, Component } from 'vue'\n\nexport const pageHeaderProps = {\n icon: {\n type: [String, Object] as PropType<string | Component>,\n default: Back,\n },\n title: String,\n content: {\n type: String,\n default: '',\n },\n} as const\nexport type PageHeaderProps = ExtractPropTypes<typeof pageHeaderProps>\n"],"names":["Back"],"mappings":";;;;;;MAGa,kBAAkB;AAAA,EAC7B,MAAM;AAAA,IACJ,MAAM,CAAC,QAAQ;AAAA,IACf,SAASA;AAAA;AAAA,EAEX,OAAO;AAAA,EACP,SAAS;AAAA,IACP,MAAM;AAAA,IACN,SAAS;AAAA;AAAA;;;;"}
@@ -4,7 +4,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var vue = require('vue');
6
6
  require('../../../hooks/index.js');
7
- var pageHeader = require('./page-header2.js');
7
+ var pageHeader = require('./page-header.js');
8
8
  var index = require('../../icon/index.js');
9
9
  var index$1 = require('../../../hooks/use-locale/index.js');
10
10
 
@@ -2,19 +2,11 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var icons = require('@element-plus/icons');
5
+ var pageHeader_vue_vue_type_script_lang = require('./page-header.vue_vue&type=script&lang.js');
6
+ var pageHeader_vue_vue_type_template_id_d12fb4b2_lang = require('./page-header.vue_vue&type=template&id=d12fb4b2&lang.js');
6
7
 
7
- const pageHeaderProps = {
8
- icon: {
9
- type: [String, Object],
10
- default: icons.Back
11
- },
12
- title: String,
13
- content: {
14
- type: String,
15
- default: ""
16
- }
17
- };
8
+ pageHeader_vue_vue_type_script_lang["default"].render = pageHeader_vue_vue_type_template_id_d12fb4b2_lang.render;
9
+ pageHeader_vue_vue_type_script_lang["default"].__file = "packages/components/page-header/src/page-header.vue";
18
10
 
19
- exports.pageHeaderProps = pageHeaderProps;
11
+ exports["default"] = pageHeader_vue_vue_type_script_lang["default"];
20
12
  //# sourceMappingURL=page-header2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"page-header2.js","sources":["../../../../../../../packages/components/page-header/src/page-header.ts"],"sourcesContent":["import { Back } from '@element-plus/icons'\nimport type { ExtractPropTypes, PropType, Component } from 'vue'\n\nexport const pageHeaderProps = {\n icon: {\n type: [String, Object] as PropType<string | Component>,\n default: Back,\n },\n title: String,\n content: {\n type: String,\n default: '',\n },\n} as const\nexport type PageHeaderProps = ExtractPropTypes<typeof pageHeaderProps>\n"],"names":["Back"],"mappings":";;;;;;MAGa,kBAAkB;AAAA,EAC7B,MAAM;AAAA,IACJ,MAAM,CAAC,QAAQ;AAAA,IACf,SAASA;AAAA;AAAA,EAEX,OAAO;AAAA,EACP,SAAS;AAAA,IACP,MAAM;AAAA,IACN,SAAS;AAAA;AAAA;;;;"}
1
+ {"version":3,"file":"page-header2.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;"}
@@ -4,7 +4,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  require('../../button/index.js');
6
6
  var props = require('../../../utils/props.js');
7
- var button = require('../../button/src/button2.js');
7
+ var button = require('../../button/src/button.js');
8
8
 
9
9
  const popconfirmProps = props.buildProps({
10
10
  title: {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "element-ps",
3
- "version": "1.0.4",
3
+ "version": "1.0.5",
4
4
  "description": "A Component Library for Vue 3",
5
5
  "homepage": "https://element-plus.org/",
6
6
  "keywords": [
package/web-types.json CHANGED
@@ -1 +1 @@
1
- {"$schema":"https://raw.githubusercontent.com/JetBrains/web-types/master/schema/web-types.json","framework":"vue","name":"element-ps","version":"1.0.4","contributions":{"html":{"types-syntax":"typescript","description-markup":"markdown"}}}
1
+ {"$schema":"https://raw.githubusercontent.com/JetBrains/web-types/master/schema/web-types.json","framework":"vue","name":"element-ps","version":"1.0.5","contributions":{"html":{"types-syntax":"typescript","description-markup":"markdown"}}}