c74e67c4e456b993f451aab2303d87fb4237241fd6ca4472e8fa23aea370c8d4b8805cd893b720994c2c62baf4bf9288ffba05b08dd39eed763e46b8c06b1d 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. import { buildProps, definePropType } from '../../../utils/vue/props/runtime.mjs';
  2. import { mutable } from '../../../utils/typescript.mjs';
  3. import { isNumber } from '../../../utils/types.mjs';
  4. const imageProps = buildProps({
  5. hideOnClickModal: Boolean,
  6. src: {
  7. type: String,
  8. default: ""
  9. },
  10. fit: {
  11. type: String,
  12. values: ["", "contain", "cover", "fill", "none", "scale-down"],
  13. default: ""
  14. },
  15. loading: {
  16. type: String,
  17. values: ["eager", "lazy"]
  18. },
  19. lazy: Boolean,
  20. scrollContainer: {
  21. type: definePropType([String, Object])
  22. },
  23. previewSrcList: {
  24. type: definePropType(Array),
  25. default: () => mutable([])
  26. },
  27. previewTeleported: Boolean,
  28. zIndex: {
  29. type: Number
  30. },
  31. initialIndex: {
  32. type: Number,
  33. default: 0
  34. },
  35. infinite: {
  36. type: Boolean,
  37. default: true
  38. },
  39. closeOnPressEscape: {
  40. type: Boolean,
  41. default: true
  42. },
  43. zoomRate: {
  44. type: Number,
  45. default: 1.2
  46. },
  47. scale: {
  48. type: Number,
  49. default: 1
  50. },
  51. minScale: {
  52. type: Number,
  53. default: 0.2
  54. },
  55. maxScale: {
  56. type: Number,
  57. default: 7
  58. },
  59. showProgress: Boolean,
  60. crossorigin: {
  61. type: definePropType(String)
  62. }
  63. });
  64. const imageEmits = {
  65. load: (evt) => evt instanceof Event,
  66. error: (evt) => evt instanceof Event,
  67. switch: (val) => isNumber(val),
  68. close: () => true,
  69. show: () => true
  70. };
  71. export { imageEmits, imageProps };
  72. //# sourceMappingURL=image.mjs.map