tour.mjs 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. import { tourContentProps } from './content2.mjs';
  2. import { buildProps, definePropType } from '../../../utils/vue/props/runtime.mjs';
  3. import { iconPropType } from '../../../utils/vue/icon.mjs';
  4. import { teleportProps } from '../../teleport/src/teleport2.mjs';
  5. import { UPDATE_MODEL_EVENT } from '../../../constants/event.mjs';
  6. import { isBoolean, isNumber } from '../../../utils/types.mjs';
  7. const tourProps = buildProps({
  8. modelValue: Boolean,
  9. current: {
  10. type: Number,
  11. default: 0
  12. },
  13. showArrow: {
  14. type: Boolean,
  15. default: true
  16. },
  17. showClose: {
  18. type: Boolean,
  19. default: true
  20. },
  21. closeIcon: {
  22. type: iconPropType
  23. },
  24. placement: tourContentProps.placement,
  25. contentStyle: {
  26. type: definePropType([Object])
  27. },
  28. mask: {
  29. type: definePropType([Boolean, Object]),
  30. default: true
  31. },
  32. gap: {
  33. type: definePropType(Object),
  34. default: () => ({
  35. offset: 6,
  36. radius: 2
  37. })
  38. },
  39. zIndex: {
  40. type: Number
  41. },
  42. scrollIntoViewOptions: {
  43. type: definePropType([Boolean, Object]),
  44. default: () => ({
  45. block: "center"
  46. })
  47. },
  48. type: {
  49. type: definePropType(String)
  50. },
  51. appendTo: {
  52. type: teleportProps.to.type,
  53. default: "body"
  54. },
  55. closeOnPressEscape: {
  56. type: Boolean,
  57. default: true
  58. },
  59. targetAreaClickable: {
  60. type: Boolean,
  61. default: true
  62. }
  63. });
  64. const tourEmits = {
  65. [UPDATE_MODEL_EVENT]: (value) => isBoolean(value),
  66. ["update:current"]: (current) => isNumber(current),
  67. close: (current) => isNumber(current),
  68. finish: () => true,
  69. change: (current) => isNumber(current)
  70. };
  71. export { tourEmits, tourProps };
  72. //# sourceMappingURL=tour.mjs.map