primevue 4.3.9 → 4.4.1

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 (101) hide show
  1. package/autocomplete/AutoComplete.vue +19 -4
  2. package/autocomplete/BaseAutoComplete.vue +4 -0
  3. package/autocomplete/index.d.ts +20 -0
  4. package/autocomplete/index.mjs +35 -8
  5. package/autocomplete/index.mjs.map +1 -1
  6. package/autocomplete/style/index.d.ts +4 -0
  7. package/autocomplete/style/index.mjs +3 -1
  8. package/autocomplete/style/index.mjs.map +1 -1
  9. package/cascadeselect/CascadeSelect.vue +1 -1
  10. package/cascadeselect/index.mjs +1 -1
  11. package/cascadeselect/index.mjs.map +1 -1
  12. package/checkbox/Checkbox.vue +15 -2
  13. package/checkbox/index.mjs +14 -2
  14. package/checkbox/index.mjs.map +1 -1
  15. package/colorpicker/ColorPicker.vue +3 -4
  16. package/colorpicker/index.mjs +3 -3
  17. package/colorpicker/index.mjs.map +1 -1
  18. package/confirmdialog/ConfirmDialog.vue +1 -1
  19. package/confirmdialog/index.d.ts +5 -0
  20. package/confirmdialog/index.mjs +3 -2
  21. package/confirmdialog/index.mjs.map +1 -1
  22. package/datatable/ColumnFilter.vue +1 -1
  23. package/datatable/DataTable.vue +2 -2
  24. package/datatable/HeaderCheckbox.vue +3 -3
  25. package/datatable/index.mjs +13 -4
  26. package/datatable/index.mjs.map +1 -1
  27. package/datepicker/BaseDatePicker.vue +8 -0
  28. package/datepicker/DatePicker.vue +225 -105
  29. package/datepicker/index.d.ts +43 -2
  30. package/datepicker/index.mjs +303 -186
  31. package/datepicker/index.mjs.map +1 -1
  32. package/datepicker/style/index.d.ts +4 -0
  33. package/datepicker/style/index.mjs +5 -2
  34. package/datepicker/style/index.mjs.map +1 -1
  35. package/drawer/BaseDrawer.vue +4 -0
  36. package/drawer/Drawer.vue +5 -5
  37. package/drawer/index.d.ts +5 -0
  38. package/drawer/index.mjs +11 -7
  39. package/drawer/index.mjs.map +1 -1
  40. package/editor/Editor.vue +5 -1
  41. package/editor/index.mjs +5 -0
  42. package/editor/index.mjs.map +1 -1
  43. package/image/index.d.ts +5 -11
  44. package/inputmask/InputMask.vue +1 -2
  45. package/inputmask/index.mjs +1 -1
  46. package/inputmask/index.mjs.map +1 -1
  47. package/inputnumber/BaseInputNumber.vue +4 -0
  48. package/inputnumber/InputNumber.vue +30 -5
  49. package/inputnumber/index.d.ts +20 -0
  50. package/inputnumber/index.mjs +45 -7
  51. package/inputnumber/index.mjs.map +1 -1
  52. package/inputnumber/style/index.mjs +1 -0
  53. package/inputnumber/style/index.mjs.map +1 -1
  54. package/inputotp/InputOtp.vue +7 -3
  55. package/inputotp/index.mjs +6 -3
  56. package/inputotp/index.mjs.map +1 -1
  57. package/listbox/Listbox.vue +1 -1
  58. package/listbox/index.mjs +1 -1
  59. package/listbox/index.mjs.map +1 -1
  60. package/menu/Menu.vue +2 -2
  61. package/menu/index.mjs +1 -1
  62. package/menu/index.mjs.map +1 -1
  63. package/multiselect/MultiSelect.vue +10 -6
  64. package/multiselect/index.mjs +15 -11
  65. package/multiselect/index.mjs.map +1 -1
  66. package/package.json +5 -5
  67. package/panel/Panel.vue +1 -1
  68. package/panel/index.d.ts +4 -0
  69. package/panel/index.mjs +2 -1
  70. package/panel/index.mjs.map +1 -1
  71. package/password/BasePassword.vue +4 -0
  72. package/password/Password.vue +14 -2
  73. package/password/index.d.ts +20 -0
  74. package/password/index.mjs +26 -3
  75. package/password/index.mjs.map +1 -1
  76. package/password/style/index.d.ts +4 -0
  77. package/password/style/index.mjs +1 -0
  78. package/password/style/index.mjs.map +1 -1
  79. package/select/Select.vue +2 -1
  80. package/select/index.mjs +2 -1
  81. package/select/index.mjs.map +1 -1
  82. package/speeddial/SpeedDial.vue +1 -1
  83. package/speeddial/index.mjs +1 -1
  84. package/speeddial/index.mjs.map +1 -1
  85. package/splitbutton/SplitButton.vue +1 -1
  86. package/splitbutton/index.mjs +1 -1
  87. package/splitbutton/index.mjs.map +1 -1
  88. package/tree/BaseTree.vue +20 -0
  89. package/tree/Tree.vue +236 -4
  90. package/tree/TreeNode.vue +295 -3
  91. package/tree/index.d.ts +140 -0
  92. package/tree/index.mjs +637 -27
  93. package/tree/index.mjs.map +1 -1
  94. package/tree/style/index.mjs +9 -4
  95. package/tree/style/index.mjs.map +1 -1
  96. package/treenode/index.d.ts +12 -0
  97. package/treeselect/TreeSelect.vue +3 -2
  98. package/treeselect/index.mjs +6 -5
  99. package/treeselect/index.mjs.map +1 -1
  100. package/umd/primevue.min.js +1 -1
  101. package/web-types.json +1 -1
@@ -30,6 +30,10 @@ export enum DatePickerClasses {
30
30
  * Class name of the input icon element
31
31
  */
32
32
  inputIcon = 'p-datepicker-input-icon',
33
+ /**
34
+ * Class name of the clear icon element
35
+ */
36
+ clearIcon = 'p-datepicker-clear-icon',
33
37
  /**
34
38
  * Class name of the panel element
35
39
  */
@@ -5,7 +5,7 @@ var inlineStyles = {
5
5
  root: function root(_ref) {
6
6
  var props = _ref.props;
7
7
  return {
8
- position: props.appendTo === 'self' ? 'relative' : undefined
8
+ position: props.appendTo === 'self' || props.showClear ? 'relative' : undefined
9
9
  };
10
10
  }
11
11
  };
@@ -22,6 +22,7 @@ var classes = {
22
22
  }];
23
23
  },
24
24
  pcInputText: 'p-datepicker-input',
25
+ clearIcon: 'p-datepicker-clear-icon',
25
26
  dropdown: 'p-datepicker-dropdown',
26
27
  inputIconContainer: 'p-datepicker-input-icon-container',
27
28
  inputIcon: 'p-datepicker-input-icon',
@@ -62,7 +63,9 @@ var classes = {
62
63
  date = _ref5.date;
63
64
  var selectedDayClass = '';
64
65
  if (instance.isRangeSelection() && instance.isSelected(date) && date.selectable) {
65
- selectedDayClass = instance.isDateEquals(state.d_value[0], date) || instance.isDateEquals(state.d_value[1], date) ? 'p-datepicker-day-selected' : 'p-datepicker-day-selected-range';
66
+ var start = typeof state.rawValue[0] === 'string' ? instance.parseValue(state.rawValue[0])[0] : state.rawValue[0];
67
+ var end = typeof state.rawValue[1] === 'string' ? instance.parseValue(state.rawValue[1])[0] : state.rawValue[1];
68
+ selectedDayClass = instance.isDateEquals(start, date) || instance.isDateEquals(end, date) ? 'p-datepicker-day-selected' : 'p-datepicker-day-selected-range';
66
69
  }
67
70
  return ['p-datepicker-day', {
68
71
  'p-datepicker-day-selected': !instance.isRangeSelection() && instance.isSelected(date) && date.selectable,
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../src/datepicker/style/DatePickerStyle.js"],"sourcesContent":["import { style } from '@primeuix/styles/datepicker';\nimport BaseStyle from '@primevue/core/base/style';\n\nconst inlineStyles = {\n root: ({ props }) => ({ position: props.appendTo === 'self' ? 'relative' : undefined })\n};\n\nconst classes = {\n root: ({ instance, state }) => [\n 'p-datepicker p-component p-inputwrapper',\n {\n 'p-invalid': instance.$invalid,\n 'p-inputwrapper-filled': instance.$filled,\n 'p-inputwrapper-focus': state.focused || state.overlayVisible,\n 'p-focus': state.focused || state.overlayVisible,\n 'p-datepicker-fluid': instance.$fluid\n }\n ],\n pcInputText: 'p-datepicker-input',\n dropdown: 'p-datepicker-dropdown',\n inputIconContainer: 'p-datepicker-input-icon-container',\n inputIcon: 'p-datepicker-input-icon',\n panel: ({ props }) => [\n 'p-datepicker-panel p-component',\n {\n 'p-datepicker-panel-inline': props.inline,\n 'p-disabled': props.disabled,\n 'p-datepicker-timeonly': props.timeOnly\n }\n ],\n calendarContainer: 'p-datepicker-calendar-container',\n calendar: 'p-datepicker-calendar',\n header: 'p-datepicker-header',\n pcPrevButton: 'p-datepicker-prev-button',\n title: 'p-datepicker-title',\n selectMonth: 'p-datepicker-select-month',\n selectYear: 'p-datepicker-select-year',\n decade: 'p-datepicker-decade',\n pcNextButton: 'p-datepicker-next-button',\n dayView: 'p-datepicker-day-view',\n weekHeader: 'p-datepicker-weekheader p-disabled',\n weekNumber: 'p-datepicker-weeknumber',\n weekLabelContainer: 'p-datepicker-weeklabel-container p-disabled',\n weekDayCell: 'p-datepicker-weekday-cell',\n weekDay: 'p-datepicker-weekday',\n dayCell: ({ date }) => [\n 'p-datepicker-day-cell',\n {\n 'p-datepicker-other-month': date.otherMonth,\n 'p-datepicker-today': date.today\n }\n ],\n day: ({ instance, props, state, date }) => {\n let selectedDayClass = '';\n\n if (instance.isRangeSelection() && instance.isSelected(date) && date.selectable) {\n selectedDayClass = instance.isDateEquals(state.d_value[0], date) || instance.isDateEquals(state.d_value[1], date) ? 'p-datepicker-day-selected' : 'p-datepicker-day-selected-range';\n }\n\n return [\n 'p-datepicker-day',\n {\n 'p-datepicker-day-selected': !instance.isRangeSelection() && instance.isSelected(date) && date.selectable,\n 'p-disabled': props.disabled || !date.selectable\n },\n selectedDayClass\n ];\n },\n monthView: 'p-datepicker-month-view',\n month: ({ instance, props, month, index }) => [\n 'p-datepicker-month',\n {\n 'p-datepicker-month-selected': instance.isMonthSelected(index),\n 'p-disabled': props.disabled || !month.selectable\n }\n ],\n yearView: 'p-datepicker-year-view',\n year: ({ instance, props, year }) => [\n 'p-datepicker-year',\n {\n 'p-datepicker-year-selected': instance.isYearSelected(year.value),\n 'p-disabled': props.disabled || !year.selectable\n }\n ],\n timePicker: 'p-datepicker-time-picker',\n hourPicker: 'p-datepicker-hour-picker',\n pcIncrementButton: 'p-datepicker-increment-button',\n pcDecrementButton: 'p-datepicker-decrement-button',\n separator: 'p-datepicker-separator',\n minutePicker: 'p-datepicker-minute-picker',\n secondPicker: 'p-datepicker-second-picker',\n ampmPicker: 'p-datepicker-ampm-picker',\n buttonbar: 'p-datepicker-buttonbar',\n pcTodayButton: 'p-datepicker-today-button',\n pcClearButton: 'p-datepicker-clear-button'\n};\n\nexport default BaseStyle.extend({\n name: 'datepicker',\n style,\n classes,\n inlineStyles\n});\n"],"names":["inlineStyles","root","_ref","props","position","appendTo","undefined","classes","_ref2","instance","state","$invalid","$filled","focused","overlayVisible","$fluid","pcInputText","dropdown","inputIconContainer","inputIcon","panel","_ref3","inline","disabled","timeOnly","calendarContainer","calendar","header","pcPrevButton","title","selectMonth","selectYear","decade","pcNextButton","dayView","weekHeader","weekNumber","weekLabelContainer","weekDayCell","weekDay","dayCell","_ref4","date","otherMonth","today","day","_ref5","selectedDayClass","isRangeSelection","isSelected","selectable","isDateEquals","d_value","monthView","month","_ref6","index","isMonthSelected","yearView","year","_ref7","isYearSelected","value","timePicker","hourPicker","pcIncrementButton","pcDecrementButton","separator","minutePicker","secondPicker","ampmPicker","buttonbar","pcTodayButton","pcClearButton","BaseStyle","extend","name","style"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../src/datepicker/style/DatePickerStyle.js"],"sourcesContent":["import { style } from '@primeuix/styles/datepicker';\nimport BaseStyle from '@primevue/core/base/style';\n\nconst inlineStyles = {\n root: ({ props }) => ({ position: props.appendTo === 'self' || props.showClear ? 'relative' : undefined })\n};\n\nconst classes = {\n root: ({ instance, state }) => [\n 'p-datepicker p-component p-inputwrapper',\n {\n 'p-invalid': instance.$invalid,\n 'p-inputwrapper-filled': instance.$filled,\n 'p-inputwrapper-focus': state.focused || state.overlayVisible,\n 'p-focus': state.focused || state.overlayVisible,\n 'p-datepicker-fluid': instance.$fluid\n }\n ],\n pcInputText: 'p-datepicker-input',\n clearIcon: 'p-datepicker-clear-icon',\n dropdown: 'p-datepicker-dropdown',\n inputIconContainer: 'p-datepicker-input-icon-container',\n inputIcon: 'p-datepicker-input-icon',\n panel: ({ props }) => [\n 'p-datepicker-panel p-component',\n {\n 'p-datepicker-panel-inline': props.inline,\n 'p-disabled': props.disabled,\n 'p-datepicker-timeonly': props.timeOnly\n }\n ],\n calendarContainer: 'p-datepicker-calendar-container',\n calendar: 'p-datepicker-calendar',\n header: 'p-datepicker-header',\n pcPrevButton: 'p-datepicker-prev-button',\n title: 'p-datepicker-title',\n selectMonth: 'p-datepicker-select-month',\n selectYear: 'p-datepicker-select-year',\n decade: 'p-datepicker-decade',\n pcNextButton: 'p-datepicker-next-button',\n dayView: 'p-datepicker-day-view',\n weekHeader: 'p-datepicker-weekheader p-disabled',\n weekNumber: 'p-datepicker-weeknumber',\n weekLabelContainer: 'p-datepicker-weeklabel-container p-disabled',\n weekDayCell: 'p-datepicker-weekday-cell',\n weekDay: 'p-datepicker-weekday',\n dayCell: ({ date }) => [\n 'p-datepicker-day-cell',\n {\n 'p-datepicker-other-month': date.otherMonth,\n 'p-datepicker-today': date.today\n }\n ],\n day: ({ instance, props, state, date }) => {\n let selectedDayClass = '';\n\n if (instance.isRangeSelection() && instance.isSelected(date) && date.selectable) {\n const start = typeof state.rawValue[0] === 'string' ? instance.parseValue(state.rawValue[0])[0] : state.rawValue[0];\n const end = typeof state.rawValue[1] === 'string' ? instance.parseValue(state.rawValue[1])[0] : state.rawValue[1];\n\n selectedDayClass = instance.isDateEquals(start, date) || instance.isDateEquals(end, date) ? 'p-datepicker-day-selected' : 'p-datepicker-day-selected-range';\n }\n\n return [\n 'p-datepicker-day',\n {\n 'p-datepicker-day-selected': !instance.isRangeSelection() && instance.isSelected(date) && date.selectable,\n 'p-disabled': props.disabled || !date.selectable\n },\n selectedDayClass\n ];\n },\n monthView: 'p-datepicker-month-view',\n month: ({ instance, props, month, index }) => [\n 'p-datepicker-month',\n {\n 'p-datepicker-month-selected': instance.isMonthSelected(index),\n 'p-disabled': props.disabled || !month.selectable\n }\n ],\n yearView: 'p-datepicker-year-view',\n year: ({ instance, props, year }) => [\n 'p-datepicker-year',\n {\n 'p-datepicker-year-selected': instance.isYearSelected(year.value),\n 'p-disabled': props.disabled || !year.selectable\n }\n ],\n timePicker: 'p-datepicker-time-picker',\n hourPicker: 'p-datepicker-hour-picker',\n pcIncrementButton: 'p-datepicker-increment-button',\n pcDecrementButton: 'p-datepicker-decrement-button',\n separator: 'p-datepicker-separator',\n minutePicker: 'p-datepicker-minute-picker',\n secondPicker: 'p-datepicker-second-picker',\n ampmPicker: 'p-datepicker-ampm-picker',\n buttonbar: 'p-datepicker-buttonbar',\n pcTodayButton: 'p-datepicker-today-button',\n pcClearButton: 'p-datepicker-clear-button'\n};\n\nexport default BaseStyle.extend({\n name: 'datepicker',\n style,\n classes,\n inlineStyles\n});\n"],"names":["inlineStyles","root","_ref","props","position","appendTo","showClear","undefined","classes","_ref2","instance","state","$invalid","$filled","focused","overlayVisible","$fluid","pcInputText","clearIcon","dropdown","inputIconContainer","inputIcon","panel","_ref3","inline","disabled","timeOnly","calendarContainer","calendar","header","pcPrevButton","title","selectMonth","selectYear","decade","pcNextButton","dayView","weekHeader","weekNumber","weekLabelContainer","weekDayCell","weekDay","dayCell","_ref4","date","otherMonth","today","day","_ref5","selectedDayClass","isRangeSelection","isSelected","selectable","start","rawValue","parseValue","end","isDateEquals","monthView","month","_ref6","index","isMonthSelected","yearView","year","_ref7","isYearSelected","value","timePicker","hourPicker","pcIncrementButton","pcDecrementButton","separator","minutePicker","secondPicker","ampmPicker","buttonbar","pcTodayButton","pcClearButton","BaseStyle","extend","name","style"],"mappings":"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"}
@@ -51,6 +51,10 @@ export default {
51
51
  blockScroll: {
52
52
  type: Boolean,
53
53
  default: false
54
+ },
55
+ closeOnEscape: {
56
+ type: Boolean,
57
+ default: true
54
58
  }
55
59
  },
56
60
  style: DrawerStyle,
package/drawer/Drawer.vue CHANGED
@@ -2,7 +2,7 @@
2
2
  <Portal>
3
3
  <div v-if="containerVisible" :ref="maskRef" @mousedown="onMaskClick" :class="cx('mask')" :style="sx('mask', true, { position, modal })" :data-p="dataP" v-bind="ptm('mask')">
4
4
  <transition name="p-drawer" @enter="onEnter" @after-enter="onAfterEnter" @before-leave="onBeforeLeave" @leave="onLeave" @after-leave="onAfterLeave" appear v-bind="ptm('transition')">
5
- <div v-if="visible" :ref="containerRef" v-focustrap :class="cx('root')" :style="sx('root')" role="complementary" :aria-modal="modal" :data-p="dataP" v-bind="ptmi('root')">
5
+ <div v-if="visible" :ref="containerRef" v-focustrap :class="cx('root')" :style="sx('root')" :role="modal ? 'dialog' : 'complementary'" :aria-modal="modal ? true : undefined" :data-p="dataP" v-bind="ptmi('root')">
6
6
  <slot v-if="$slots.container" name="container" :closeCallback="hide"></slot>
7
7
  <template v-else>
8
8
  <div :ref="headerContainerRef" :class="cx('header')" v-bind="ptm('header')">
@@ -73,10 +73,10 @@ export default {
73
73
  documentKeydownListener: null,
74
74
  watch: {
75
75
  dismissable(newValue) {
76
- if (newValue) {
77
- this.enableDocumentSettings();
76
+ if (newValue && !this.modal) {
77
+ this.bindOutsideClickListener();
78
78
  } else {
79
- this.disableDocumentSettings();
79
+ this.unbindOutsideClickListener();
80
80
  }
81
81
  }
82
82
  },
@@ -175,7 +175,7 @@ export default {
175
175
  }
176
176
  },
177
177
  onKeydown(event) {
178
- if (event.code === 'Escape') {
178
+ if (event.code === 'Escape' && this.closeOnEscape) {
179
179
  this.hide();
180
180
  }
181
181
  },
package/drawer/index.d.ts CHANGED
@@ -200,6 +200,11 @@ export interface DrawerProps {
200
200
  * @defaultValue false
201
201
  */
202
202
  unstyled?: boolean;
203
+ /**
204
+ * Specifies if pressing escape key should hide the drawer.
205
+ * @defaultValue true
206
+ */
207
+ closeOnEscape?: boolean | undefined;
203
208
  }
204
209
 
205
210
  /**
package/drawer/index.mjs CHANGED
@@ -63,6 +63,10 @@ var script$1 = {
63
63
  blockScroll: {
64
64
  type: Boolean,
65
65
  "default": false
66
+ },
67
+ closeOnEscape: {
68
+ type: Boolean,
69
+ "default": true
66
70
  }
67
71
  },
68
72
  style: DrawerStyle,
@@ -98,10 +102,10 @@ var script = {
98
102
  documentKeydownListener: null,
99
103
  watch: {
100
104
  dismissable: function dismissable(newValue) {
101
- if (newValue) {
102
- this.enableDocumentSettings();
105
+ if (newValue && !this.modal) {
106
+ this.bindOutsideClickListener();
103
107
  } else {
104
- this.disableDocumentSettings();
108
+ this.unbindOutsideClickListener();
105
109
  }
106
110
  }
107
111
  },
@@ -188,7 +192,7 @@ var script = {
188
192
  }
189
193
  },
190
194
  onKeydown: function onKeydown(event) {
191
- if (event.code === 'Escape') {
195
+ if (event.code === 'Escape' && this.closeOnEscape) {
192
196
  this.hide();
193
197
  }
194
198
  },
@@ -267,7 +271,7 @@ var script = {
267
271
  };
268
272
 
269
273
  var _hoisted_1 = ["data-p"];
270
- var _hoisted_2 = ["aria-modal", "data-p"];
274
+ var _hoisted_2 = ["role", "aria-modal", "data-p"];
271
275
  function render(_ctx, _cache, $props, $setup, $data, $options) {
272
276
  var _component_Button = resolveComponent("Button");
273
277
  var _component_Portal = resolveComponent("Portal");
@@ -301,8 +305,8 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
301
305
  ref: $options.containerRef,
302
306
  "class": _ctx.cx('root'),
303
307
  style: _ctx.sx('root'),
304
- role: "complementary",
305
- "aria-modal": _ctx.modal,
308
+ role: _ctx.modal ? 'dialog' : 'complementary',
309
+ "aria-modal": _ctx.modal ? true : undefined,
306
310
  "data-p": $options.dataP
307
311
  }, _ctx.ptmi('root')), [_ctx.$slots.container ? renderSlot(_ctx.$slots, "container", {
308
312
  key: 0,
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../src/drawer/BaseDrawer.vue","../../src/drawer/Drawer.vue","../../src/drawer/Drawer.vue?vue&type=template&id=148b78ee&lang.js"],"sourcesContent":["<script>\nimport BaseComponent from '@primevue/core/basecomponent';\nimport DrawerStyle from 'primevue/drawer/style';\n\nexport default {\n name: 'BaseDrawer',\n extends: BaseComponent,\n props: {\n visible: {\n type: Boolean,\n default: false\n },\n position: {\n type: String,\n default: 'left'\n },\n header: {\n type: null,\n default: null\n },\n baseZIndex: {\n type: Number,\n default: 0\n },\n autoZIndex: {\n type: Boolean,\n default: true\n },\n dismissable: {\n type: Boolean,\n default: true\n },\n showCloseIcon: {\n type: Boolean,\n default: true\n },\n closeButtonProps: {\n type: Object,\n default: () => {\n return { severity: 'secondary', text: true, rounded: true };\n }\n },\n closeIcon: {\n type: String,\n default: undefined\n },\n modal: {\n type: Boolean,\n default: true\n },\n blockScroll: {\n type: Boolean,\n default: false\n }\n },\n style: DrawerStyle,\n provide() {\n return {\n $pcDrawer: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <Portal>\n <div v-if=\"containerVisible\" :ref=\"maskRef\" @mousedown=\"onMaskClick\" :class=\"cx('mask')\" :style=\"sx('mask', true, { position, modal })\" :data-p=\"dataP\" v-bind=\"ptm('mask')\">\n <transition name=\"p-drawer\" @enter=\"onEnter\" @after-enter=\"onAfterEnter\" @before-leave=\"onBeforeLeave\" @leave=\"onLeave\" @after-leave=\"onAfterLeave\" appear v-bind=\"ptm('transition')\">\n <div v-if=\"visible\" :ref=\"containerRef\" v-focustrap :class=\"cx('root')\" :style=\"sx('root')\" role=\"complementary\" :aria-modal=\"modal\" :data-p=\"dataP\" v-bind=\"ptmi('root')\">\n <slot v-if=\"$slots.container\" name=\"container\" :closeCallback=\"hide\"></slot>\n <template v-else>\n <div :ref=\"headerContainerRef\" :class=\"cx('header')\" v-bind=\"ptm('header')\">\n <slot name=\"header\" :class=\"cx('title')\">\n <div v-if=\"header\" :class=\"cx('title')\" v-bind=\"ptm('title')\">{{ header }}</div>\n </slot>\n <slot v-if=\"showCloseIcon\" name=\"closebutton\" :closeCallback=\"hide\">\n <Button\n :ref=\"closeButtonRef\"\n type=\"button\"\n :class=\"cx('pcCloseButton')\"\n :aria-label=\"closeAriaLabel\"\n :unstyled=\"unstyled\"\n @click=\"hide\"\n v-bind=\"closeButtonProps\"\n :pt=\"ptm('pcCloseButton')\"\n data-pc-group-section=\"iconcontainer\"\n >\n <template #icon=\"slotProps\">\n <slot name=\"closeicon\">\n <component :is=\"closeIcon ? 'span' : 'TimesIcon'\" :class=\"[closeIcon, slotProps.class]\" v-bind=\"ptm('pcCloseButton')['icon']\"></component>\n </slot>\n </template>\n </Button>\n </slot>\n </div>\n <div :ref=\"contentRef\" :class=\"cx('content')\" v-bind=\"ptm('content')\">\n <slot></slot>\n </div>\n <div v-if=\"$slots.footer\" :ref=\"footerContainerRef\" :class=\"cx('footer')\" v-bind=\"ptm('footer')\">\n <slot name=\"footer\"> </slot>\n </div>\n </template>\n </div>\n </transition>\n </div>\n </Portal>\n</template>\n\n<script>\nimport { cn } from '@primeuix/utils';\nimport { addClass, focus } from '@primeuix/utils/dom';\nimport { ZIndex } from '@primeuix/utils/zindex';\nimport TimesIcon from '@primevue/icons/times';\nimport Button from 'primevue/button';\nimport FocusTrap from 'primevue/focustrap';\nimport Portal from 'primevue/portal';\nimport { blockBodyScroll, unblockBodyScroll } from 'primevue/utils';\nimport BaseDrawer from './BaseDrawer.vue';\n\nexport default {\n name: 'Drawer',\n extends: BaseDrawer,\n inheritAttrs: false,\n emits: ['update:visible', 'show', 'after-show', 'hide', 'after-hide', 'before-hide'],\n data() {\n return {\n containerVisible: this.visible\n };\n },\n container: null,\n mask: null,\n content: null,\n headerContainer: null,\n footerContainer: null,\n closeButton: null,\n outsideClickListener: null,\n documentKeydownListener: null,\n watch: {\n dismissable(newValue) {\n if (newValue) {\n this.enableDocumentSettings();\n } else {\n this.disableDocumentSettings();\n }\n }\n },\n updated() {\n if (this.visible) {\n this.containerVisible = this.visible;\n }\n },\n beforeUnmount() {\n this.disableDocumentSettings();\n\n if (this.mask && this.autoZIndex) {\n ZIndex.clear(this.mask);\n }\n\n this.container = null;\n this.mask = null;\n },\n methods: {\n hide() {\n this.$emit('update:visible', false);\n },\n onEnter() {\n this.$emit('show');\n this.focus();\n this.bindDocumentKeyDownListener();\n\n if (this.autoZIndex) {\n ZIndex.set('modal', this.mask, this.baseZIndex || this.$primevue.config.zIndex.modal);\n }\n },\n onAfterEnter() {\n this.enableDocumentSettings();\n this.$emit('after-show');\n },\n onBeforeLeave() {\n if (this.modal) {\n !this.isUnstyled && addClass(this.mask, 'p-overlay-mask-leave');\n }\n\n this.$emit('before-hide');\n },\n onLeave() {\n this.$emit('hide');\n },\n onAfterLeave() {\n if (this.autoZIndex) {\n ZIndex.clear(this.mask);\n }\n\n this.unbindDocumentKeyDownListener();\n this.containerVisible = false;\n this.disableDocumentSettings();\n this.$emit('after-hide');\n },\n onMaskClick(event) {\n if (this.dismissable && this.modal && this.mask === event.target) {\n this.hide();\n }\n },\n focus() {\n const findFocusableElement = (container) => {\n return container && container.querySelector('[autofocus]');\n };\n\n let focusTarget = this.$slots.header && findFocusableElement(this.headerContainer);\n\n if (!focusTarget) {\n focusTarget = this.$slots.default && findFocusableElement(this.container);\n\n if (!focusTarget) {\n focusTarget = this.$slots.footer && findFocusableElement(this.footerContainer);\n\n if (!focusTarget) {\n focusTarget = this.closeButton;\n }\n }\n }\n\n focusTarget && focus(focusTarget);\n },\n enableDocumentSettings() {\n if (this.dismissable && !this.modal) {\n this.bindOutsideClickListener();\n }\n\n if (this.blockScroll) {\n blockBodyScroll();\n }\n },\n disableDocumentSettings() {\n this.unbindOutsideClickListener();\n\n if (this.blockScroll) {\n unblockBodyScroll();\n }\n },\n onKeydown(event) {\n if (event.code === 'Escape') {\n this.hide();\n }\n },\n containerRef(el) {\n this.container = el;\n },\n maskRef(el) {\n this.mask = el;\n },\n contentRef(el) {\n this.content = el;\n },\n headerContainerRef(el) {\n this.headerContainer = el;\n },\n footerContainerRef(el) {\n this.footerContainer = el;\n },\n closeButtonRef(el) {\n this.closeButton = el ? el.$el : undefined;\n },\n bindDocumentKeyDownListener() {\n if (!this.documentKeydownListener) {\n this.documentKeydownListener = this.onKeydown;\n document.addEventListener('keydown', this.documentKeydownListener);\n }\n },\n unbindDocumentKeyDownListener() {\n if (this.documentKeydownListener) {\n document.removeEventListener('keydown', this.documentKeydownListener);\n this.documentKeydownListener = null;\n }\n },\n bindOutsideClickListener() {\n if (!this.outsideClickListener) {\n this.outsideClickListener = (event) => {\n if (this.isOutsideClicked(event)) {\n this.hide();\n }\n };\n\n document.addEventListener('click', this.outsideClickListener, true);\n }\n },\n unbindOutsideClickListener() {\n if (this.outsideClickListener) {\n document.removeEventListener('click', this.outsideClickListener, true);\n this.outsideClickListener = null;\n }\n },\n isOutsideClicked(event) {\n return this.container && !this.container.contains(event.target);\n }\n },\n computed: {\n fullScreen() {\n return this.position === 'full';\n },\n closeAriaLabel() {\n return this.$primevue.config.locale.aria ? this.$primevue.config.locale.aria.close : undefined;\n },\n dataP() {\n return cn({\n 'full-screen': this.position === 'full',\n [this.position]: this.position,\n open: this.containerVisible,\n modal: this.modal\n });\n }\n },\n directives: {\n focustrap: FocusTrap\n },\n components: {\n Button,\n Portal,\n TimesIcon\n }\n};\n</script>\n","<template>\n <Portal>\n <div v-if=\"containerVisible\" :ref=\"maskRef\" @mousedown=\"onMaskClick\" :class=\"cx('mask')\" :style=\"sx('mask', true, { position, modal })\" :data-p=\"dataP\" v-bind=\"ptm('mask')\">\n <transition name=\"p-drawer\" @enter=\"onEnter\" @after-enter=\"onAfterEnter\" @before-leave=\"onBeforeLeave\" @leave=\"onLeave\" @after-leave=\"onAfterLeave\" appear v-bind=\"ptm('transition')\">\n <div v-if=\"visible\" :ref=\"containerRef\" v-focustrap :class=\"cx('root')\" :style=\"sx('root')\" role=\"complementary\" :aria-modal=\"modal\" :data-p=\"dataP\" v-bind=\"ptmi('root')\">\n <slot v-if=\"$slots.container\" name=\"container\" :closeCallback=\"hide\"></slot>\n <template v-else>\n <div :ref=\"headerContainerRef\" :class=\"cx('header')\" v-bind=\"ptm('header')\">\n <slot name=\"header\" :class=\"cx('title')\">\n <div v-if=\"header\" :class=\"cx('title')\" v-bind=\"ptm('title')\">{{ header }}</div>\n </slot>\n <slot v-if=\"showCloseIcon\" name=\"closebutton\" :closeCallback=\"hide\">\n <Button\n :ref=\"closeButtonRef\"\n type=\"button\"\n :class=\"cx('pcCloseButton')\"\n :aria-label=\"closeAriaLabel\"\n :unstyled=\"unstyled\"\n @click=\"hide\"\n v-bind=\"closeButtonProps\"\n :pt=\"ptm('pcCloseButton')\"\n data-pc-group-section=\"iconcontainer\"\n >\n <template #icon=\"slotProps\">\n <slot name=\"closeicon\">\n <component :is=\"closeIcon ? 'span' : 'TimesIcon'\" :class=\"[closeIcon, slotProps.class]\" v-bind=\"ptm('pcCloseButton')['icon']\"></component>\n </slot>\n </template>\n </Button>\n </slot>\n </div>\n <div :ref=\"contentRef\" :class=\"cx('content')\" v-bind=\"ptm('content')\">\n <slot></slot>\n </div>\n <div v-if=\"$slots.footer\" :ref=\"footerContainerRef\" :class=\"cx('footer')\" v-bind=\"ptm('footer')\">\n <slot name=\"footer\"> </slot>\n </div>\n </template>\n </div>\n </transition>\n </div>\n </Portal>\n</template>\n\n<script>\nimport { cn } from '@primeuix/utils';\nimport { addClass, focus } from '@primeuix/utils/dom';\nimport { ZIndex } from '@primeuix/utils/zindex';\nimport TimesIcon from '@primevue/icons/times';\nimport Button from 'primevue/button';\nimport FocusTrap from 'primevue/focustrap';\nimport Portal from 'primevue/portal';\nimport { blockBodyScroll, unblockBodyScroll } from 'primevue/utils';\nimport BaseDrawer from './BaseDrawer.vue';\n\nexport default {\n name: 'Drawer',\n extends: BaseDrawer,\n inheritAttrs: false,\n emits: ['update:visible', 'show', 'after-show', 'hide', 'after-hide', 'before-hide'],\n data() {\n return {\n containerVisible: this.visible\n };\n },\n container: null,\n mask: null,\n content: null,\n headerContainer: null,\n footerContainer: null,\n closeButton: null,\n outsideClickListener: null,\n documentKeydownListener: null,\n watch: {\n dismissable(newValue) {\n if (newValue) {\n this.enableDocumentSettings();\n } else {\n this.disableDocumentSettings();\n }\n }\n },\n updated() {\n if (this.visible) {\n this.containerVisible = this.visible;\n }\n },\n beforeUnmount() {\n this.disableDocumentSettings();\n\n if (this.mask && this.autoZIndex) {\n ZIndex.clear(this.mask);\n }\n\n this.container = null;\n this.mask = null;\n },\n methods: {\n hide() {\n this.$emit('update:visible', false);\n },\n onEnter() {\n this.$emit('show');\n this.focus();\n this.bindDocumentKeyDownListener();\n\n if (this.autoZIndex) {\n ZIndex.set('modal', this.mask, this.baseZIndex || this.$primevue.config.zIndex.modal);\n }\n },\n onAfterEnter() {\n this.enableDocumentSettings();\n this.$emit('after-show');\n },\n onBeforeLeave() {\n if (this.modal) {\n !this.isUnstyled && addClass(this.mask, 'p-overlay-mask-leave');\n }\n\n this.$emit('before-hide');\n },\n onLeave() {\n this.$emit('hide');\n },\n onAfterLeave() {\n if (this.autoZIndex) {\n ZIndex.clear(this.mask);\n }\n\n this.unbindDocumentKeyDownListener();\n this.containerVisible = false;\n this.disableDocumentSettings();\n this.$emit('after-hide');\n },\n onMaskClick(event) {\n if (this.dismissable && this.modal && this.mask === event.target) {\n this.hide();\n }\n },\n focus() {\n const findFocusableElement = (container) => {\n return container && container.querySelector('[autofocus]');\n };\n\n let focusTarget = this.$slots.header && findFocusableElement(this.headerContainer);\n\n if (!focusTarget) {\n focusTarget = this.$slots.default && findFocusableElement(this.container);\n\n if (!focusTarget) {\n focusTarget = this.$slots.footer && findFocusableElement(this.footerContainer);\n\n if (!focusTarget) {\n focusTarget = this.closeButton;\n }\n }\n }\n\n focusTarget && focus(focusTarget);\n },\n enableDocumentSettings() {\n if (this.dismissable && !this.modal) {\n this.bindOutsideClickListener();\n }\n\n if (this.blockScroll) {\n blockBodyScroll();\n }\n },\n disableDocumentSettings() {\n this.unbindOutsideClickListener();\n\n if (this.blockScroll) {\n unblockBodyScroll();\n }\n },\n onKeydown(event) {\n if (event.code === 'Escape') {\n this.hide();\n }\n },\n containerRef(el) {\n this.container = el;\n },\n maskRef(el) {\n this.mask = el;\n },\n contentRef(el) {\n this.content = el;\n },\n headerContainerRef(el) {\n this.headerContainer = el;\n },\n footerContainerRef(el) {\n this.footerContainer = el;\n },\n closeButtonRef(el) {\n this.closeButton = el ? el.$el : undefined;\n },\n bindDocumentKeyDownListener() {\n if (!this.documentKeydownListener) {\n this.documentKeydownListener = this.onKeydown;\n document.addEventListener('keydown', this.documentKeydownListener);\n }\n },\n unbindDocumentKeyDownListener() {\n if (this.documentKeydownListener) {\n document.removeEventListener('keydown', this.documentKeydownListener);\n this.documentKeydownListener = null;\n }\n },\n bindOutsideClickListener() {\n if (!this.outsideClickListener) {\n this.outsideClickListener = (event) => {\n if (this.isOutsideClicked(event)) {\n this.hide();\n }\n };\n\n document.addEventListener('click', this.outsideClickListener, true);\n }\n },\n unbindOutsideClickListener() {\n if (this.outsideClickListener) {\n document.removeEventListener('click', this.outsideClickListener, true);\n this.outsideClickListener = null;\n }\n },\n isOutsideClicked(event) {\n return this.container && !this.container.contains(event.target);\n }\n },\n computed: {\n fullScreen() {\n return this.position === 'full';\n },\n closeAriaLabel() {\n return this.$primevue.config.locale.aria ? this.$primevue.config.locale.aria.close : undefined;\n },\n dataP() {\n return cn({\n 'full-screen': this.position === 'full',\n [this.position]: this.position,\n open: this.containerVisible,\n modal: this.modal\n });\n }\n },\n directives: {\n focustrap: FocusTrap\n },\n components: {\n Button,\n Portal,\n TimesIcon\n }\n};\n</script>\n"],"names":["name","BaseComponent","props","visible","type","Boolean","position","String","header","baseZIndex","Number","autoZIndex","dismissable","showCloseIcon","closeButtonProps","Object","default","severity","text","rounded","closeIcon","undefined","modal","blockScroll","style","DrawerStyle","provide","$pcDrawer","$parentInstance","BaseDrawer","inheritAttrs","emits","data","containerVisible","container","mask","content","headerContainer","footerContainer","closeButton","outsideClickListener","documentKeydownListener","watch","newValue","enableDocumentSettings","disableDocumentSettings","updated","beforeUnmount","ZIndex","clear","methods","hide","$emit","onEnter","focus","bindDocumentKeyDownListener","set","$primevue","config","zIndex","onAfterEnter","onBeforeLeave","isUnstyled","addClass","onLeave","onAfterLeave","unbindDocumentKeyDownListener","onMaskClick","event","target","findFocusableElement","querySelector","focusTarget","$slots","footer","bindOutsideClickListener","blockBodyScroll","unbindOutsideClickListener","unblockBodyScroll","onKeydown","code","containerRef","el","maskRef","contentRef","headerContainerRef","footerContainerRef","closeButtonRef","$el","document","addEventListener","removeEventListener","_this","isOutsideClicked","contains","computed","fullScreen","closeAriaLabel","locale","aria","close","dataP","cn","_defineProperty","directives","focustrap","FocusTrap","components","Button","Portal","TimesIcon","_createBlock","_component_Portal","$data","_openBlock","_createElementBlock","_mergeProps","ref","$options","onMousedown","apply","arguments","_ctx","cx","sx","ptm","_createVNode","_Transition","appear","_withDirectives","role","ptmi","_renderSlot","closeCallback","_Fragment","key","_createElementVNode","_component_Button","unstyled","onClick","pt","icon","_withCtx","slotProps","_resolveDynamicComponent"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../src/drawer/BaseDrawer.vue","../../src/drawer/Drawer.vue","../../src/drawer/Drawer.vue?vue&type=template&id=61e28d7e&lang.js"],"sourcesContent":["<script>\nimport BaseComponent from '@primevue/core/basecomponent';\nimport DrawerStyle from 'primevue/drawer/style';\n\nexport default {\n name: 'BaseDrawer',\n extends: BaseComponent,\n props: {\n visible: {\n type: Boolean,\n default: false\n },\n position: {\n type: String,\n default: 'left'\n },\n header: {\n type: null,\n default: null\n },\n baseZIndex: {\n type: Number,\n default: 0\n },\n autoZIndex: {\n type: Boolean,\n default: true\n },\n dismissable: {\n type: Boolean,\n default: true\n },\n showCloseIcon: {\n type: Boolean,\n default: true\n },\n closeButtonProps: {\n type: Object,\n default: () => {\n return { severity: 'secondary', text: true, rounded: true };\n }\n },\n closeIcon: {\n type: String,\n default: undefined\n },\n modal: {\n type: Boolean,\n default: true\n },\n blockScroll: {\n type: Boolean,\n default: false\n },\n closeOnEscape: {\n type: Boolean,\n default: true\n }\n },\n style: DrawerStyle,\n provide() {\n return {\n $pcDrawer: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <Portal>\n <div v-if=\"containerVisible\" :ref=\"maskRef\" @mousedown=\"onMaskClick\" :class=\"cx('mask')\" :style=\"sx('mask', true, { position, modal })\" :data-p=\"dataP\" v-bind=\"ptm('mask')\">\n <transition name=\"p-drawer\" @enter=\"onEnter\" @after-enter=\"onAfterEnter\" @before-leave=\"onBeforeLeave\" @leave=\"onLeave\" @after-leave=\"onAfterLeave\" appear v-bind=\"ptm('transition')\">\n <div v-if=\"visible\" :ref=\"containerRef\" v-focustrap :class=\"cx('root')\" :style=\"sx('root')\" :role=\"modal ? 'dialog' : 'complementary'\" :aria-modal=\"modal ? true : undefined\" :data-p=\"dataP\" v-bind=\"ptmi('root')\">\n <slot v-if=\"$slots.container\" name=\"container\" :closeCallback=\"hide\"></slot>\n <template v-else>\n <div :ref=\"headerContainerRef\" :class=\"cx('header')\" v-bind=\"ptm('header')\">\n <slot name=\"header\" :class=\"cx('title')\">\n <div v-if=\"header\" :class=\"cx('title')\" v-bind=\"ptm('title')\">{{ header }}</div>\n </slot>\n <slot v-if=\"showCloseIcon\" name=\"closebutton\" :closeCallback=\"hide\">\n <Button\n :ref=\"closeButtonRef\"\n type=\"button\"\n :class=\"cx('pcCloseButton')\"\n :aria-label=\"closeAriaLabel\"\n :unstyled=\"unstyled\"\n @click=\"hide\"\n v-bind=\"closeButtonProps\"\n :pt=\"ptm('pcCloseButton')\"\n data-pc-group-section=\"iconcontainer\"\n >\n <template #icon=\"slotProps\">\n <slot name=\"closeicon\">\n <component :is=\"closeIcon ? 'span' : 'TimesIcon'\" :class=\"[closeIcon, slotProps.class]\" v-bind=\"ptm('pcCloseButton')['icon']\"></component>\n </slot>\n </template>\n </Button>\n </slot>\n </div>\n <div :ref=\"contentRef\" :class=\"cx('content')\" v-bind=\"ptm('content')\">\n <slot></slot>\n </div>\n <div v-if=\"$slots.footer\" :ref=\"footerContainerRef\" :class=\"cx('footer')\" v-bind=\"ptm('footer')\">\n <slot name=\"footer\"> </slot>\n </div>\n </template>\n </div>\n </transition>\n </div>\n </Portal>\n</template>\n\n<script>\nimport { cn } from '@primeuix/utils';\nimport { addClass, focus } from '@primeuix/utils/dom';\nimport { ZIndex } from '@primeuix/utils/zindex';\nimport TimesIcon from '@primevue/icons/times';\nimport Button from 'primevue/button';\nimport FocusTrap from 'primevue/focustrap';\nimport Portal from 'primevue/portal';\nimport { blockBodyScroll, unblockBodyScroll } from 'primevue/utils';\nimport BaseDrawer from './BaseDrawer.vue';\n\nexport default {\n name: 'Drawer',\n extends: BaseDrawer,\n inheritAttrs: false,\n emits: ['update:visible', 'show', 'after-show', 'hide', 'after-hide', 'before-hide'],\n data() {\n return {\n containerVisible: this.visible\n };\n },\n container: null,\n mask: null,\n content: null,\n headerContainer: null,\n footerContainer: null,\n closeButton: null,\n outsideClickListener: null,\n documentKeydownListener: null,\n watch: {\n dismissable(newValue) {\n if (newValue && !this.modal) {\n this.bindOutsideClickListener();\n } else {\n this.unbindOutsideClickListener();\n }\n }\n },\n updated() {\n if (this.visible) {\n this.containerVisible = this.visible;\n }\n },\n beforeUnmount() {\n this.disableDocumentSettings();\n\n if (this.mask && this.autoZIndex) {\n ZIndex.clear(this.mask);\n }\n\n this.container = null;\n this.mask = null;\n },\n methods: {\n hide() {\n this.$emit('update:visible', false);\n },\n onEnter() {\n this.$emit('show');\n this.focus();\n this.bindDocumentKeyDownListener();\n\n if (this.autoZIndex) {\n ZIndex.set('modal', this.mask, this.baseZIndex || this.$primevue.config.zIndex.modal);\n }\n },\n onAfterEnter() {\n this.enableDocumentSettings();\n this.$emit('after-show');\n },\n onBeforeLeave() {\n if (this.modal) {\n !this.isUnstyled && addClass(this.mask, 'p-overlay-mask-leave');\n }\n\n this.$emit('before-hide');\n },\n onLeave() {\n this.$emit('hide');\n },\n onAfterLeave() {\n if (this.autoZIndex) {\n ZIndex.clear(this.mask);\n }\n\n this.unbindDocumentKeyDownListener();\n this.containerVisible = false;\n this.disableDocumentSettings();\n this.$emit('after-hide');\n },\n onMaskClick(event) {\n if (this.dismissable && this.modal && this.mask === event.target) {\n this.hide();\n }\n },\n focus() {\n const findFocusableElement = (container) => {\n return container && container.querySelector('[autofocus]');\n };\n\n let focusTarget = this.$slots.header && findFocusableElement(this.headerContainer);\n\n if (!focusTarget) {\n focusTarget = this.$slots.default && findFocusableElement(this.container);\n\n if (!focusTarget) {\n focusTarget = this.$slots.footer && findFocusableElement(this.footerContainer);\n\n if (!focusTarget) {\n focusTarget = this.closeButton;\n }\n }\n }\n\n focusTarget && focus(focusTarget);\n },\n enableDocumentSettings() {\n if (this.dismissable && !this.modal) {\n this.bindOutsideClickListener();\n }\n\n if (this.blockScroll) {\n blockBodyScroll();\n }\n },\n disableDocumentSettings() {\n this.unbindOutsideClickListener();\n\n if (this.blockScroll) {\n unblockBodyScroll();\n }\n },\n onKeydown(event) {\n if (event.code === 'Escape' && this.closeOnEscape) {\n this.hide();\n }\n },\n containerRef(el) {\n this.container = el;\n },\n maskRef(el) {\n this.mask = el;\n },\n contentRef(el) {\n this.content = el;\n },\n headerContainerRef(el) {\n this.headerContainer = el;\n },\n footerContainerRef(el) {\n this.footerContainer = el;\n },\n closeButtonRef(el) {\n this.closeButton = el ? el.$el : undefined;\n },\n bindDocumentKeyDownListener() {\n if (!this.documentKeydownListener) {\n this.documentKeydownListener = this.onKeydown;\n document.addEventListener('keydown', this.documentKeydownListener);\n }\n },\n unbindDocumentKeyDownListener() {\n if (this.documentKeydownListener) {\n document.removeEventListener('keydown', this.documentKeydownListener);\n this.documentKeydownListener = null;\n }\n },\n bindOutsideClickListener() {\n if (!this.outsideClickListener) {\n this.outsideClickListener = (event) => {\n if (this.isOutsideClicked(event)) {\n this.hide();\n }\n };\n\n document.addEventListener('click', this.outsideClickListener, true);\n }\n },\n unbindOutsideClickListener() {\n if (this.outsideClickListener) {\n document.removeEventListener('click', this.outsideClickListener, true);\n this.outsideClickListener = null;\n }\n },\n isOutsideClicked(event) {\n return this.container && !this.container.contains(event.target);\n }\n },\n computed: {\n fullScreen() {\n return this.position === 'full';\n },\n closeAriaLabel() {\n return this.$primevue.config.locale.aria ? this.$primevue.config.locale.aria.close : undefined;\n },\n dataP() {\n return cn({\n 'full-screen': this.position === 'full',\n [this.position]: this.position,\n open: this.containerVisible,\n modal: this.modal\n });\n }\n },\n directives: {\n focustrap: FocusTrap\n },\n components: {\n Button,\n Portal,\n TimesIcon\n }\n};\n</script>\n","<template>\n <Portal>\n <div v-if=\"containerVisible\" :ref=\"maskRef\" @mousedown=\"onMaskClick\" :class=\"cx('mask')\" :style=\"sx('mask', true, { position, modal })\" :data-p=\"dataP\" v-bind=\"ptm('mask')\">\n <transition name=\"p-drawer\" @enter=\"onEnter\" @after-enter=\"onAfterEnter\" @before-leave=\"onBeforeLeave\" @leave=\"onLeave\" @after-leave=\"onAfterLeave\" appear v-bind=\"ptm('transition')\">\n <div v-if=\"visible\" :ref=\"containerRef\" v-focustrap :class=\"cx('root')\" :style=\"sx('root')\" :role=\"modal ? 'dialog' : 'complementary'\" :aria-modal=\"modal ? true : undefined\" :data-p=\"dataP\" v-bind=\"ptmi('root')\">\n <slot v-if=\"$slots.container\" name=\"container\" :closeCallback=\"hide\"></slot>\n <template v-else>\n <div :ref=\"headerContainerRef\" :class=\"cx('header')\" v-bind=\"ptm('header')\">\n <slot name=\"header\" :class=\"cx('title')\">\n <div v-if=\"header\" :class=\"cx('title')\" v-bind=\"ptm('title')\">{{ header }}</div>\n </slot>\n <slot v-if=\"showCloseIcon\" name=\"closebutton\" :closeCallback=\"hide\">\n <Button\n :ref=\"closeButtonRef\"\n type=\"button\"\n :class=\"cx('pcCloseButton')\"\n :aria-label=\"closeAriaLabel\"\n :unstyled=\"unstyled\"\n @click=\"hide\"\n v-bind=\"closeButtonProps\"\n :pt=\"ptm('pcCloseButton')\"\n data-pc-group-section=\"iconcontainer\"\n >\n <template #icon=\"slotProps\">\n <slot name=\"closeicon\">\n <component :is=\"closeIcon ? 'span' : 'TimesIcon'\" :class=\"[closeIcon, slotProps.class]\" v-bind=\"ptm('pcCloseButton')['icon']\"></component>\n </slot>\n </template>\n </Button>\n </slot>\n </div>\n <div :ref=\"contentRef\" :class=\"cx('content')\" v-bind=\"ptm('content')\">\n <slot></slot>\n </div>\n <div v-if=\"$slots.footer\" :ref=\"footerContainerRef\" :class=\"cx('footer')\" v-bind=\"ptm('footer')\">\n <slot name=\"footer\"> </slot>\n </div>\n </template>\n </div>\n </transition>\n </div>\n </Portal>\n</template>\n\n<script>\nimport { cn } from '@primeuix/utils';\nimport { addClass, focus } from '@primeuix/utils/dom';\nimport { ZIndex } from '@primeuix/utils/zindex';\nimport TimesIcon from '@primevue/icons/times';\nimport Button from 'primevue/button';\nimport FocusTrap from 'primevue/focustrap';\nimport Portal from 'primevue/portal';\nimport { blockBodyScroll, unblockBodyScroll } from 'primevue/utils';\nimport BaseDrawer from './BaseDrawer.vue';\n\nexport default {\n name: 'Drawer',\n extends: BaseDrawer,\n inheritAttrs: false,\n emits: ['update:visible', 'show', 'after-show', 'hide', 'after-hide', 'before-hide'],\n data() {\n return {\n containerVisible: this.visible\n };\n },\n container: null,\n mask: null,\n content: null,\n headerContainer: null,\n footerContainer: null,\n closeButton: null,\n outsideClickListener: null,\n documentKeydownListener: null,\n watch: {\n dismissable(newValue) {\n if (newValue && !this.modal) {\n this.bindOutsideClickListener();\n } else {\n this.unbindOutsideClickListener();\n }\n }\n },\n updated() {\n if (this.visible) {\n this.containerVisible = this.visible;\n }\n },\n beforeUnmount() {\n this.disableDocumentSettings();\n\n if (this.mask && this.autoZIndex) {\n ZIndex.clear(this.mask);\n }\n\n this.container = null;\n this.mask = null;\n },\n methods: {\n hide() {\n this.$emit('update:visible', false);\n },\n onEnter() {\n this.$emit('show');\n this.focus();\n this.bindDocumentKeyDownListener();\n\n if (this.autoZIndex) {\n ZIndex.set('modal', this.mask, this.baseZIndex || this.$primevue.config.zIndex.modal);\n }\n },\n onAfterEnter() {\n this.enableDocumentSettings();\n this.$emit('after-show');\n },\n onBeforeLeave() {\n if (this.modal) {\n !this.isUnstyled && addClass(this.mask, 'p-overlay-mask-leave');\n }\n\n this.$emit('before-hide');\n },\n onLeave() {\n this.$emit('hide');\n },\n onAfterLeave() {\n if (this.autoZIndex) {\n ZIndex.clear(this.mask);\n }\n\n this.unbindDocumentKeyDownListener();\n this.containerVisible = false;\n this.disableDocumentSettings();\n this.$emit('after-hide');\n },\n onMaskClick(event) {\n if (this.dismissable && this.modal && this.mask === event.target) {\n this.hide();\n }\n },\n focus() {\n const findFocusableElement = (container) => {\n return container && container.querySelector('[autofocus]');\n };\n\n let focusTarget = this.$slots.header && findFocusableElement(this.headerContainer);\n\n if (!focusTarget) {\n focusTarget = this.$slots.default && findFocusableElement(this.container);\n\n if (!focusTarget) {\n focusTarget = this.$slots.footer && findFocusableElement(this.footerContainer);\n\n if (!focusTarget) {\n focusTarget = this.closeButton;\n }\n }\n }\n\n focusTarget && focus(focusTarget);\n },\n enableDocumentSettings() {\n if (this.dismissable && !this.modal) {\n this.bindOutsideClickListener();\n }\n\n if (this.blockScroll) {\n blockBodyScroll();\n }\n },\n disableDocumentSettings() {\n this.unbindOutsideClickListener();\n\n if (this.blockScroll) {\n unblockBodyScroll();\n }\n },\n onKeydown(event) {\n if (event.code === 'Escape' && this.closeOnEscape) {\n this.hide();\n }\n },\n containerRef(el) {\n this.container = el;\n },\n maskRef(el) {\n this.mask = el;\n },\n contentRef(el) {\n this.content = el;\n },\n headerContainerRef(el) {\n this.headerContainer = el;\n },\n footerContainerRef(el) {\n this.footerContainer = el;\n },\n closeButtonRef(el) {\n this.closeButton = el ? el.$el : undefined;\n },\n bindDocumentKeyDownListener() {\n if (!this.documentKeydownListener) {\n this.documentKeydownListener = this.onKeydown;\n document.addEventListener('keydown', this.documentKeydownListener);\n }\n },\n unbindDocumentKeyDownListener() {\n if (this.documentKeydownListener) {\n document.removeEventListener('keydown', this.documentKeydownListener);\n this.documentKeydownListener = null;\n }\n },\n bindOutsideClickListener() {\n if (!this.outsideClickListener) {\n this.outsideClickListener = (event) => {\n if (this.isOutsideClicked(event)) {\n this.hide();\n }\n };\n\n document.addEventListener('click', this.outsideClickListener, true);\n }\n },\n unbindOutsideClickListener() {\n if (this.outsideClickListener) {\n document.removeEventListener('click', this.outsideClickListener, true);\n this.outsideClickListener = null;\n }\n },\n isOutsideClicked(event) {\n return this.container && !this.container.contains(event.target);\n }\n },\n computed: {\n fullScreen() {\n return this.position === 'full';\n },\n closeAriaLabel() {\n return this.$primevue.config.locale.aria ? this.$primevue.config.locale.aria.close : undefined;\n },\n dataP() {\n return cn({\n 'full-screen': this.position === 'full',\n [this.position]: this.position,\n open: this.containerVisible,\n modal: this.modal\n });\n }\n },\n directives: {\n focustrap: FocusTrap\n },\n components: {\n Button,\n Portal,\n TimesIcon\n }\n};\n</script>\n"],"names":["name","BaseComponent","props","visible","type","Boolean","position","String","header","baseZIndex","Number","autoZIndex","dismissable","showCloseIcon","closeButtonProps","Object","default","severity","text","rounded","closeIcon","undefined","modal","blockScroll","closeOnEscape","style","DrawerStyle","provide","$pcDrawer","$parentInstance","BaseDrawer","inheritAttrs","emits","data","containerVisible","container","mask","content","headerContainer","footerContainer","closeButton","outsideClickListener","documentKeydownListener","watch","newValue","bindOutsideClickListener","unbindOutsideClickListener","updated","beforeUnmount","disableDocumentSettings","ZIndex","clear","methods","hide","$emit","onEnter","focus","bindDocumentKeyDownListener","set","$primevue","config","zIndex","onAfterEnter","enableDocumentSettings","onBeforeLeave","isUnstyled","addClass","onLeave","onAfterLeave","unbindDocumentKeyDownListener","onMaskClick","event","target","findFocusableElement","querySelector","focusTarget","$slots","footer","blockBodyScroll","unblockBodyScroll","onKeydown","code","containerRef","el","maskRef","contentRef","headerContainerRef","footerContainerRef","closeButtonRef","$el","document","addEventListener","removeEventListener","_this","isOutsideClicked","contains","computed","fullScreen","closeAriaLabel","locale","aria","close","dataP","cn","_defineProperty","directives","focustrap","FocusTrap","components","Button","Portal","TimesIcon","_createBlock","_component_Portal","$data","_openBlock","_createElementBlock","_mergeProps","ref","$options","onMousedown","apply","arguments","_ctx","cx","sx","ptm","_createVNode","_Transition","appear","_withDirectives","role","ptmi","_renderSlot","closeCallback","_Fragment","key","_createElementVNode","_component_Button","unstyled","onClick","pt","icon","_withCtx","slotProps","_resolveDynamicComponent"],"mappings":";;;;;;;;;;;;AAIA,eAAe;AACXA,EAAAA,IAAI,EAAE,YAAY;AAClB,EAAA,SAAA,EAASC,aAAa;AACtBC,EAAAA,KAAK,EAAE;AACHC,IAAAA,OAAO,EAAE;AACLC,MAAAA,IAAI,EAAEC,OAAO;MACb,SAAA,EAAS;KACZ;AACDC,IAAAA,QAAQ,EAAE;AACNF,MAAAA,IAAI,EAAEG,MAAM;MACZ,SAAA,EAAS;KACZ;AACDC,IAAAA,MAAM,EAAE;AACJJ,MAAAA,IAAI,EAAE,IAAI;MACV,SAAA,EAAS;KACZ;AACDK,IAAAA,UAAU,EAAE;AACRL,MAAAA,IAAI,EAAEM,MAAM;MACZ,SAAA,EAAS;KACZ;AACDC,IAAAA,UAAU,EAAE;AACRP,MAAAA,IAAI,EAAEC,OAAO;MACb,SAAA,EAAS;KACZ;AACDO,IAAAA,WAAW,EAAE;AACTR,MAAAA,IAAI,EAAEC,OAAO;MACb,SAAA,EAAS;KACZ;AACDQ,IAAAA,aAAa,EAAE;AACXT,MAAAA,IAAI,EAAEC,OAAO;MACb,SAAA,EAAS;KACZ;AACDS,IAAAA,gBAAgB,EAAE;AACdV,MAAAA,IAAI,EAAEW,MAAM;MACZ,SAAA,EAAS,SAATC,QAAOA,GAAQ;QACX,OAAO;AAAEC,UAAAA,QAAQ,EAAE,WAAW;AAAEC,UAAAA,IAAI,EAAE,IAAI;AAAEC,UAAAA,OAAO,EAAE;SAAM;AAC/D,MAAA;KACH;AACDC,IAAAA,SAAS,EAAE;AACPhB,MAAAA,IAAI,EAAEG,MAAM;MACZ,SAAA,EAASc;KACZ;AACDC,IAAAA,KAAK,EAAE;AACHlB,MAAAA,IAAI,EAAEC,OAAO;MACb,SAAA,EAAS;KACZ;AACDkB,IAAAA,WAAW,EAAE;AACTnB,MAAAA,IAAI,EAAEC,OAAO;MACb,SAAA,EAAS;KACZ;AACDmB,IAAAA,aAAa,EAAE;AACXpB,MAAAA,IAAI,EAAEC,OAAO;MACb,SAAA,EAAS;AACb;GACH;AACDoB,EAAAA,KAAK,EAAEC,WAAW;EAClBC,OAAO,EAAA,SAAPA,OAAOA,GAAG;IACN,OAAO;AACHC,MAAAA,SAAS,EAAE,IAAI;AACfC,MAAAA,eAAe,EAAE;KACpB;AACL,EAAA;AACJ,CAAC;;;;;;ACXD,aAAe;AACX7B,EAAAA,IAAI,EAAE,QAAQ;AACd,EAAA,SAAA,EAAS8B,QAAU;AACnBC,EAAAA,YAAY,EAAE,KAAK;AACnBC,EAAAA,KAAK,EAAE,CAAC,gBAAgB,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,aAAa,CAAC;EACpFC,IAAI,EAAA,SAAJA,IAAIA,GAAG;IACH,OAAO;MACHC,gBAAgB,EAAE,IAAI,CAAC/B;KAC1B;EACL,CAAC;AACDgC,EAAAA,SAAS,EAAE,IAAI;AACfC,EAAAA,IAAI,EAAE,IAAI;AACVC,EAAAA,OAAO,EAAE,IAAI;AACbC,EAAAA,eAAe,EAAE,IAAI;AACrBC,EAAAA,eAAe,EAAE,IAAI;AACrBC,EAAAA,WAAW,EAAE,IAAI;AACjBC,EAAAA,oBAAoB,EAAE,IAAI;AAC1BC,EAAAA,uBAAuB,EAAE,IAAI;AAC7BC,EAAAA,KAAK,EAAE;AACH/B,IAAAA,WAAW,EAAA,SAAXA,WAAWA,CAACgC,QAAQ,EAAE;AAClB,MAAA,IAAIA,QAAO,IAAK,CAAC,IAAI,CAACtB,KAAK,EAAE;QACzB,IAAI,CAACuB,wBAAwB,EAAE;AACnC,MAAA,CAAA,MAAO;QACH,IAAI,CAACC,0BAA0B,EAAE;AACrC,MAAA;AACJ,IAAA;GACH;EACDC,OAAO,EAAA,SAAPA,OAAOA,GAAG;IACN,IAAI,IAAI,CAAC5C,OAAO,EAAE;AACd,MAAA,IAAI,CAAC+B,gBAAe,GAAI,IAAI,CAAC/B,OAAO;AACxC,IAAA;EACJ,CAAC;EACD6C,aAAa,EAAA,SAAbA,aAAaA,GAAG;IACZ,IAAI,CAACC,uBAAuB,EAAE;AAE9B,IAAA,IAAI,IAAI,CAACb,IAAG,IAAK,IAAI,CAACzB,UAAU,EAAE;AAC9BuC,MAAAA,MAAM,CAACC,KAAK,CAAC,IAAI,CAACf,IAAI,CAAC;AAC3B,IAAA;IAEA,IAAI,CAACD,SAAQ,GAAI,IAAI;IACrB,IAAI,CAACC,IAAG,GAAI,IAAI;EACpB,CAAC;AACDgB,EAAAA,OAAO,EAAE;IACLC,IAAI,EAAA,SAAJA,IAAIA,GAAG;AACH,MAAA,IAAI,CAACC,KAAK,CAAC,gBAAgB,EAAE,KAAK,CAAC;IACvC,CAAC;IACDC,OAAO,EAAA,SAAPA,OAAOA,GAAG;AACN,MAAA,IAAI,CAACD,KAAK,CAAC,MAAM,CAAC;MAClB,IAAI,CAACE,KAAK,EAAE;MACZ,IAAI,CAACC,2BAA2B,EAAE;MAElC,IAAI,IAAI,CAAC9C,UAAU,EAAE;QACjBuC,MAAM,CAACQ,GAAG,CAAC,OAAO,EAAE,IAAI,CAACtB,IAAI,EAAE,IAAI,CAAC3B,UAAS,IAAK,IAAI,CAACkD,SAAS,CAACC,MAAM,CAACC,MAAM,CAACvC,KAAK,CAAC;AACzF,MAAA;IACJ,CAAC;IACDwC,YAAY,EAAA,SAAZA,YAAYA,GAAG;MACX,IAAI,CAACC,sBAAsB,EAAE;AAC7B,MAAA,IAAI,CAACT,KAAK,CAAC,YAAY,CAAC;IAC5B,CAAC;IACDU,aAAa,EAAA,SAAbA,aAAaA,GAAG;MACZ,IAAI,IAAI,CAAC1C,KAAK,EAAE;QACZ,CAAC,IAAI,CAAC2C,UAAS,IAAKC,QAAQ,CAAC,IAAI,CAAC9B,IAAI,EAAE,sBAAsB,CAAC;AACnE,MAAA;AAEA,MAAA,IAAI,CAACkB,KAAK,CAAC,aAAa,CAAC;IAC7B,CAAC;IACDa,OAAO,EAAA,SAAPA,OAAOA,GAAG;AACN,MAAA,IAAI,CAACb,KAAK,CAAC,MAAM,CAAC;IACtB,CAAC;IACDc,YAAY,EAAA,SAAZA,YAAYA,GAAG;MACX,IAAI,IAAI,CAACzD,UAAU,EAAE;AACjBuC,QAAAA,MAAM,CAACC,KAAK,CAAC,IAAI,CAACf,IAAI,CAAC;AAC3B,MAAA;MAEA,IAAI,CAACiC,6BAA6B,EAAE;MACpC,IAAI,CAACnC,gBAAe,GAAI,KAAK;MAC7B,IAAI,CAACe,uBAAuB,EAAE;AAC9B,MAAA,IAAI,CAACK,KAAK,CAAC,YAAY,CAAC;IAC5B,CAAC;AACDgB,IAAAA,WAAW,EAAA,SAAXA,WAAWA,CAACC,KAAK,EAAE;AACf,MAAA,IAAI,IAAI,CAAC3D,WAAU,IAAK,IAAI,CAACU,KAAI,IAAK,IAAI,CAACc,IAAG,KAAMmC,KAAK,CAACC,MAAM,EAAE;QAC9D,IAAI,CAACnB,IAAI,EAAE;AACf,MAAA;IACJ,CAAC;IACDG,KAAK,EAAA,SAALA,OAAKA,GAAG;AACJ,MAAA,IAAMiB,oBAAmB,GAAI,SAAvBA,oBAAmBA,CAAKtC,SAAS,EAAK;AACxC,QAAA,OAAOA,SAAQ,IAAKA,SAAS,CAACuC,aAAa,CAAC,aAAa,CAAC;MAC9D,CAAC;AAED,MAAA,IAAIC,WAAU,GAAI,IAAI,CAACC,MAAM,CAACpE,MAAK,IAAKiE,oBAAoB,CAAC,IAAI,CAACnC,eAAe,CAAC;MAElF,IAAI,CAACqC,WAAW,EAAE;QACdA,WAAU,GAAI,IAAI,CAACC,MAAM,CAAA,SAAA,CAAO,IAAKH,oBAAoB,CAAC,IAAI,CAACtC,SAAS,CAAC;QAEzE,IAAI,CAACwC,WAAW,EAAE;AACdA,UAAAA,cAAc,IAAI,CAACC,MAAM,CAACC,UAAUJ,oBAAoB,CAAC,IAAI,CAAClC,eAAe,CAAC;UAE9E,IAAI,CAACoC,WAAW,EAAE;YACdA,WAAU,GAAI,IAAI,CAACnC,WAAW;AAClC,UAAA;AACJ,QAAA;AACJ,MAAA;AAEAmC,MAAAA,WAAU,IAAKnB,KAAK,CAACmB,WAAW,CAAC;IACrC,CAAC;IACDZ,sBAAsB,EAAA,SAAtBA,sBAAsBA,GAAG;MACrB,IAAI,IAAI,CAACnD,WAAU,IAAK,CAAC,IAAI,CAACU,KAAK,EAAE;QACjC,IAAI,CAACuB,wBAAwB,EAAE;AACnC,MAAA;MAEA,IAAI,IAAI,CAACtB,WAAW,EAAE;AAClBuD,QAAAA,eAAe,EAAE;AACrB,MAAA;IACJ,CAAC;IACD7B,uBAAuB,EAAA,SAAvBA,uBAAuBA,GAAG;MACtB,IAAI,CAACH,0BAA0B,EAAE;MAEjC,IAAI,IAAI,CAACvB,WAAW,EAAE;AAClBwD,QAAAA,iBAAiB,EAAE;AACvB,MAAA;IACJ,CAAC;AACDC,IAAAA,SAAS,EAAA,SAATA,SAASA,CAACT,KAAK,EAAE;MACb,IAAIA,KAAK,CAACU,IAAG,KAAM,QAAO,IAAK,IAAI,CAACzD,aAAa,EAAE;QAC/C,IAAI,CAAC6B,IAAI,EAAE;AACf,MAAA;IACJ,CAAC;AACD6B,IAAAA,YAAY,EAAA,SAAZA,YAAYA,CAACC,EAAE,EAAE;MACb,IAAI,CAAChD,SAAQ,GAAIgD,EAAE;IACvB,CAAC;AACDC,IAAAA,OAAO,EAAA,SAAPA,OAAOA,CAACD,EAAE,EAAE;MACR,IAAI,CAAC/C,IAAG,GAAI+C,EAAE;IAClB,CAAC;AACDE,IAAAA,UAAU,EAAA,SAAVA,UAAUA,CAACF,EAAE,EAAE;MACX,IAAI,CAAC9C,OAAM,GAAI8C,EAAE;IACrB,CAAC;AACDG,IAAAA,kBAAkB,EAAA,SAAlBA,kBAAkBA,CAACH,EAAE,EAAE;MACnB,IAAI,CAAC7C,eAAc,GAAI6C,EAAE;IAC7B,CAAC;AACDI,IAAAA,kBAAkB,EAAA,SAAlBA,kBAAkBA,CAACJ,EAAE,EAAE;MACnB,IAAI,CAAC5C,eAAc,GAAI4C,EAAE;IAC7B,CAAC;AACDK,IAAAA,cAAc,EAAA,SAAdA,cAAcA,CAACL,EAAE,EAAE;MACf,IAAI,CAAC3C,cAAc2C,EAAC,GAAIA,EAAE,CAACM,GAAE,GAAIpE,SAAS;IAC9C,CAAC;IACDoC,2BAA2B,EAAA,SAA3BA,2BAA2BA,GAAG;AAC1B,MAAA,IAAI,CAAC,IAAI,CAACf,uBAAuB,EAAE;AAC/B,QAAA,IAAI,CAACA,uBAAsB,GAAI,IAAI,CAACsC,SAAS;QAC7CU,QAAQ,CAACC,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAACjD,uBAAuB,CAAC;AACtE,MAAA;IACJ,CAAC;IACD2B,6BAA6B,EAAA,SAA7BA,6BAA6BA,GAAG;MAC5B,IAAI,IAAI,CAAC3B,uBAAuB,EAAE;QAC9BgD,QAAQ,CAACE,mBAAmB,CAAC,SAAS,EAAE,IAAI,CAAClD,uBAAuB,CAAC;QACrE,IAAI,CAACA,uBAAsB,GAAI,IAAI;AACvC,MAAA;IACJ,CAAC;IACDG,wBAAwB,EAAA,SAAxBA,wBAAwBA,GAAG;AAAA,MAAA,IAAAgD,KAAA,GAAA,IAAA;AACvB,MAAA,IAAI,CAAC,IAAI,CAACpD,oBAAoB,EAAE;AAC5B,QAAA,IAAI,CAACA,oBAAmB,GAAI,UAAC8B,KAAK,EAAK;AACnC,UAAA,IAAIsB,KAAI,CAACC,gBAAgB,CAACvB,KAAK,CAAC,EAAE;YAC9BsB,KAAI,CAACxC,IAAI,EAAE;AACf,UAAA;QACJ,CAAC;QAEDqC,QAAQ,CAACC,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAClD,oBAAoB,EAAE,IAAI,CAAC;AACvE,MAAA;IACJ,CAAC;IACDK,0BAA0B,EAAA,SAA1BA,0BAA0BA,GAAG;MACzB,IAAI,IAAI,CAACL,oBAAoB,EAAE;QAC3BiD,QAAQ,CAACE,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAACnD,oBAAoB,EAAE,IAAI,CAAC;QACtE,IAAI,CAACA,oBAAmB,GAAI,IAAI;AACpC,MAAA;IACJ,CAAC;AACDqD,IAAAA,gBAAgB,EAAA,SAAhBA,gBAAgBA,CAACvB,KAAK,EAAE;AACpB,MAAA,OAAO,IAAI,CAACpC,SAAQ,IAAK,CAAC,IAAI,CAACA,SAAS,CAAC4D,QAAQ,CAACxB,KAAK,CAACC,MAAM,CAAC;AACnE,IAAA;GACH;AACDwB,EAAAA,QAAQ,EAAE;IACNC,UAAU,EAAA,SAAVA,UAAUA,GAAG;AACT,MAAA,OAAO,IAAI,CAAC3F,QAAO,KAAM,MAAM;IACnC,CAAC;IACD4F,cAAc,EAAA,SAAdA,cAAcA,GAAG;MACb,OAAO,IAAI,CAACvC,SAAS,CAACC,MAAM,CAACuC,MAAM,CAACC,OAAO,IAAI,CAACzC,SAAS,CAACC,MAAM,CAACuC,MAAM,CAACC,IAAI,CAACC,QAAQhF,SAAS;IAClG,CAAC;IACDiF,KAAK,EAAA,SAALA,KAAKA,GAAG;AACJ,MAAA,OAAOC,EAAE,CAAAC,eAAA,CAAAA,eAAA,CAAAA,eAAA,CAAA;AACL,QAAA,aAAa,EAAE,IAAI,CAAClG,QAAO,KAAM;AAAM,OAAA,EACtC,IAAI,CAACA,QAAQ,EAAG,IAAI,CAACA,QAAQ,CAAA,EAAA,MAAA,EACxB,IAAI,CAAC4B,gBAAgB,CAAA,EAAA,OAAA,EACpB,IAAI,CAACZ,KAAI,CACnB,CAAC;AACN,IAAA;GACH;AACDmF,EAAAA,UAAU,EAAE;AACRC,IAAAA,SAAS,EAAEC;GACd;AACDC,EAAAA,UAAU,EAAE;AACRC,IAAAA,MAAM,EAANA,MAAM;AACNC,IAAAA,MAAM,EAANA,MAAM;AACNC,IAAAA,SAAQ,EAARA;AACJ;AACJ,CAAC;;;;;;;;sBC/PGC,WAAA,CAwCQC,iBAAA,EAAA,IAAA,EAAA;uBAvCJ,YAAA;AAAA,MAAA,OAsCK,CAtCMC,KAAA,CAAAhF,gBAAgB,IAA3BiF,SAAA,EAAA,EAAAC,kBAAA,CAsCK,OAtCLC,UAAA,CAsCK;;QAtCyBC,GAAG,EAAEC,QAAA,CAAAnC,OAAO;QAAGoC,WAAS;iBAAED,QAAA,CAAAjD,WAAA,IAAAiD,QAAA,CAAAjD,WAAA,CAAAmD,KAAA,CAAAF,QAAA,EAAAG,SAAA,CAAW;AAAA,QAAA,CAAA,CAAA;AAAG,QAAA,OAAA,EAAOC,IAAA,CAAAC,EAAE,CAAA,MAAA,CAAA;QAAWnG,KAAK,EAAEkG,IAAA,CAAAE,EAAE,CAAA,MAAA,EAAA,IAAA,EAAA;UAAAvH,QAAA,EAAiBqH,IAAA,CAAArH,QAAQ;iBAAEqH,IAAA,CAAArG;AAAI,SAAA,CAAA;QAAO,QAAM,EAAEiG,QAAA,CAAAjB;SAAeqB,IAAA,CAAAG,GAAG,CAAA,MAAA,CAAA,CAAA,EAAA,CAC/JC,WAAA,CAoCYC,YApCZX,UAAA,CAoCY;AApCArH,QAAAA,IAAI,EAAC;QAAYuD,OAAK,EAAEgE,QAAA,CAAAhE,OAAO;QAAGO,YAAW,EAAEyD,QAAA,CAAAzD,YAAY;QAAGE,aAAY,EAAEuD,QAAA,CAAAvD,aAAa;QAAGG,OAAK,EAAEoD,QAAA,CAAApD,OAAO;QAAGC,YAAW,EAAEmD,QAAA,CAAAnD,YAAY;AAAE6D,QAAAA,QAAA;SAAeN,IAAA,CAAAG,GAAG,CAAA,YAAA,CAAA,CAAA,EAAA;2BAClK,YAAA;AAAA,UAAA,OAkCK,CAlCMH,IAAA,CAAAxH,OAAO,GAAlB+H,cAAA,EAAAf,SAAA,EAAA,EAAAC,kBAAA,CAkCK,OAlCLC,UAAA,CAkCK;;YAlCgBC,GAAG,EAAEC,QAAA,CAAArC,YAAY;AAAe,YAAA,OAAA,EAAOyC,IAAA,CAAAC,EAAE,CAAA,MAAA,CAAA;AAAWnG,YAAAA,KAAK,EAAEkG,IAAA,CAAAE,EAAE,CAAA,MAAA,CAAA;AAAWM,YAAAA,IAAI,EAAER,IAAA,CAAArG;AAAqC,YAAA,YAAU,EAAEqG,IAAA,CAAArG,KAAI,GAAA,IAAA,GAAWD,SAAS;YAAG,QAAM,EAAEkG,QAAA,CAAAjB;aAAeqB,IAAA,CAAAS,IAAI,CAAA,MAAA,CAAA,CAAA,EAAA,CAC1LT,IAAA,CAAA/C,MAAM,CAACzC,SAAS,GAA5BkG,UAAA,CAA2EV,IAAA,CAAA/C,MAAA,EAAA,WAAA,EAAA;;YAA3B0D,aAAa,EAAEf,QAAA,CAAAlE;6BAC/D+D,kBAAA,CA+BUmB,QAAA,EAAA;AAAAC,YAAAA,GAAA,EAAA;AAAA,WAAA,EAAA,CA9BNC,kBAAA,CAuBK,OAvBLpB,UAAA,CAuBK;YAvBCC,GAAG,EAAEC,QAAA,CAAAjC,kBAAkB;AAAG,YAAA,OAAA,EAAOqC,IAAA,CAAAC,EAAE,CAAA,QAAA;aAAoBD,IAAA,CAAAG,GAAG,CAAA,QAAA,CAAA,CAAA,EAAA,CAC5DO,UAAA,CAEMV,IAAA,CAAA/C,MAAA,EAAA,QAAA,EAAA;AAFe,YAAA,OAAA,iBAAO+C,IAAA,CAAAC,EAAE,CAAA,OAAA,CAAA;aAA9B,YAAA;AAAA,YAAA,OAEM,CADSD,IAAA,CAAAnH,MAAM,IAAjB2G,SAAA,EAAA,EAAAC,kBAAA,CAA+E,OAA/EC,UAAA,CAA+E;;AAA3D,cAAA,OAAA,EAAOM,IAAA,CAAAC,EAAE,CAAA,OAAA;aAAmB,EAAAD,IAAA,CAAAG,GAAG,4BAAcH,IAAA,CAAAnH,MAAK,CAAA,EAAA,EAAA,CAAA;cAE9DmH,IAAA,CAAA9G,aAAa,GAAzBwH,UAAA,CAkBMV,IAAA,CAAA/C,MAAA,EAAA,aAAA,EAAA;;YAlByC0D,aAAa,EAAEf,QAAA,CAAAlE;aAA9D,YAAA;AAAA,YAAA,OAkBM,CAjBF0E,WAAA,CAgBQW,mBAhBRrB,UAAA,CAgBQ;cAfHC,GAAG,EAAEC,QAAA,CAAA/B,cAAc;AACpBpF,cAAAA,IAAI,EAAC,QAAO;AACX,cAAA,OAAA,EAAOuH,IAAA,CAAAC,EAAE,CAAA,eAAA,CAAA;cACT,YAAU,EAAEL,QAAA,CAAArB,cAAc;cAC1ByC,QAAQ,EAAEhB,IAAA,CAAAgB,QAAQ;cAClBC,OAAK,EAAErB,QAAA,CAAAlE;eACAsE,IAAA,CAAA7G,gBAAgB,EAAA;AACvB+H,cAAAA,EAAE,EAAElB,IAAA,CAAAG,GAAG,CAAA,eAAA,CAAA;AACR,cAAA,uBAAqB,EAAC;;AAEXgB,cAAAA,IAAI,EAAAC,OAAA,CACX,UAEMC,SAHgB,EAAA;gBAAA,OAAA,CACtBX,UAAA,CAEMV,8BAFN,YAAA;AAAA,kBAAA,OAEM,eADFX,WAAA,CAAyIiC,uBAAA,CAAzHtB,IAAA,CAAAvG,SAAQ,GAAA,MAAA,GAAA,WAAA,CAAA,EAAxBiG,UAAA,CAAyI;AAAtF,oBAAA,OAAA,EAAK,CAAGM,IAAA,CAAAvG,SAAS,EAAE4H,SAAS,CAAA,OAAA,CAAM;qBAAWrB,IAAA,CAAAG,GAAG,CAAA,eAAA,CAAA,CAAA,MAAA,CAAA,CAAA,EAAA,IAAA,EAAA,EAAA,EAAA,CAAA,OAAA,CAAA,CAAA;;;;;mDAMvHW,kBAAA,CAEK,OAFLpB,UAAA,CAEK;YAFCC,GAAG,EAAEC,QAAA,CAAAlC,UAAU;AAAG,YAAA,OAAA,EAAOsC,IAAA,CAAAC,EAAE,CAAA,SAAA;aAAqBD,IAAA,CAAAG,GAAG,CAAA,SAAA,CAAA,CAAA,EAAA,CACrDO,UAAA,CAAYV,IAAA,CAAA/C,MAAA,EAAA,SAAA,CAAA,QAEL+C,IAAA,CAAA/C,MAAM,CAACC,MAAM,IAAxBsC,SAAA,EAAA,EAAAC,kBAAA,CAEK,OAFLC,UAAA,CAEK;;YAFsBC,GAAG,EAAEC,QAAA,CAAAhC,kBAAkB;AAAG,YAAA,OAAA,EAAOoC,IAAA,CAAAC,EAAE,CAAA,QAAA;aAAoBD,IAAA,CAAAG,GAAG,CAAA,QAAA,CAAA,CAAA,EAAA,CACjFO,UAAA,CAA2BV,IAAA,CAAA/C,MAAA,EAAA,QAAA,CAAA;;;;;;;;;;;;;"}
package/editor/Editor.vue CHANGED
@@ -71,6 +71,11 @@ export default {
71
71
  this.renderValue(newValue);
72
72
  }
73
73
  },
74
+ d_value(newValue, oldValue) {
75
+ if (newValue !== oldValue && this.quill && !this.quill.hasFocus()) {
76
+ this.renderValue(newValue);
77
+ }
78
+ },
74
79
  readonly() {
75
80
  this.handleReadOnlyChange();
76
81
  }
@@ -86,7 +91,6 @@ export default {
86
91
  formats: this.formats,
87
92
  placeholder: this.placeholder
88
93
  };
89
-
90
94
  if (QuillJS) {
91
95
  // Loaded by script only
92
96
  this.quill = new QuillJS(this.$refs.editorElement, configuration);
package/editor/index.mjs CHANGED
@@ -47,6 +47,11 @@ var script = {
47
47
  this.renderValue(newValue);
48
48
  }
49
49
  },
50
+ d_value: function d_value(newValue, oldValue) {
51
+ if (newValue !== oldValue && this.quill && !this.quill.hasFocus()) {
52
+ this.renderValue(newValue);
53
+ }
54
+ },
50
55
  readonly: function readonly() {
51
56
  this.handleReadOnlyChange();
52
57
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../src/editor/BaseEditor.vue","../../src/editor/Editor.vue","../../src/editor/Editor.vue?vue&type=template&id=5563cab3&lang.js"],"sourcesContent":["<script>\nimport BaseEditableHolder from '@primevue/core/baseeditableholder';\nimport EditorStyle from 'primevue/editor/style';\n\nexport default {\n name: 'BaseEditor',\n extends: BaseEditableHolder,\n props: {\n placeholder: String,\n readonly: Boolean,\n formats: Array,\n editorStyle: null,\n modules: null\n },\n style: EditorStyle,\n provide() {\n return {\n $pcEditor: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <div :class=\"cx('root')\" v-bind=\"ptmi('root')\">\n <div ref=\"toolbarElement\" :class=\"cx('toolbar')\" v-bind=\"ptm('toolbar')\">\n <slot name=\"toolbar\">\n <span class=\"ql-formats\" v-bind=\"ptm('formats')\">\n <select class=\"ql-header\" defaultValue=\"0\" v-bind=\"ptm('header')\">\n <option value=\"1\" v-bind=\"ptm('option')\">Heading</option>\n <option value=\"2\" v-bind=\"ptm('option')\">Subheading</option>\n <option value=\"0\" v-bind=\"ptm('option')\">Normal</option>\n </select>\n <select class=\"ql-font\" v-bind=\"ptm('font')\">\n <option v-bind=\"ptm('option')\"></option>\n <option value=\"serif\" v-bind=\"ptm('option')\"></option>\n <option value=\"monospace\" v-bind=\"ptm('option')\"></option>\n </select>\n </span>\n <span class=\"ql-formats\" v-bind=\"ptm('formats')\">\n <button class=\"ql-bold\" type=\"button\" v-bind=\"ptm('bold')\"></button>\n <button class=\"ql-italic\" type=\"button\" v-bind=\"ptm('italic')\"></button>\n <button class=\"ql-underline\" type=\"button\" v-bind=\"ptm('underline')\"></button>\n </span>\n <span class=\"ql-formats\" v-bind=\"ptm('formats')\">\n <select class=\"ql-color\" v-bind=\"ptm('color')\"></select>\n <select class=\"ql-background\" v-bind=\"ptm('background')\"></select>\n </span>\n <span class=\"ql-formats\" v-bind=\"ptm('formats')\">\n <button class=\"ql-list\" value=\"ordered\" type=\"button\" v-bind=\"ptm('list')\"></button>\n <button class=\"ql-list\" value=\"bullet\" type=\"button\" v-bind=\"ptm('list')\"></button>\n <select class=\"ql-align\" v-bind=\"ptm('select')\">\n <option defaultValue v-bind=\"ptm('option')\"></option>\n <option value=\"center\" v-bind=\"ptm('option')\"></option>\n <option value=\"right\" v-bind=\"ptm('option')\"></option>\n <option value=\"justify\" v-bind=\"ptm('option')\"></option>\n </select>\n </span>\n <span class=\"ql-formats\" v-bind=\"ptm('formats')\">\n <button class=\"ql-link\" type=\"button\" v-bind=\"ptm('link')\"></button>\n <button class=\"ql-image\" type=\"button\" v-bind=\"ptm('image')\"></button>\n <button class=\"ql-code-block\" type=\"button\" v-bind=\"ptm('codeBlock')\"></button>\n </span>\n <span class=\"ql-formats\" v-bind=\"ptm('formats')\">\n <button class=\"ql-clean\" type=\"button\" v-bind=\"ptm('clean')\"></button>\n </span>\n </slot>\n </div>\n <div ref=\"editorElement\" :class=\"cx('content')\" :style=\"editorStyle\" v-bind=\"ptm('content')\"></div>\n </div>\n</template>\n\n<script>\nimport { isExist } from '@primeuix/utils/dom';\nimport BaseEditor from './BaseEditor.vue';\n\nconst QuillJS = (function () {\n try {\n return window.Quill;\n } catch {\n return null;\n }\n})();\n\nexport default {\n name: 'Editor',\n extends: BaseEditor,\n inheritAttrs: false,\n emits: ['text-change', 'selection-change', 'load'],\n quill: null,\n watch: {\n modelValue(newValue, oldValue) {\n if (newValue !== oldValue && this.quill && !this.quill.hasFocus()) {\n this.renderValue(newValue);\n }\n },\n readonly() {\n this.handleReadOnlyChange();\n }\n },\n mounted() {\n const configuration = {\n modules: {\n toolbar: this.$refs.toolbarElement,\n ...this.modules\n },\n readOnly: this.readonly,\n theme: 'snow',\n formats: this.formats,\n placeholder: this.placeholder\n };\n\n if (QuillJS) {\n // Loaded by script only\n this.quill = new QuillJS(this.$refs.editorElement, configuration);\n this.initQuill();\n this.handleLoad();\n } else {\n import('quill')\n .then((module) => {\n if (module && isExist(this.$refs.editorElement)) {\n if (module.default) {\n // webpack\n this.quill = new module.default(this.$refs.editorElement, configuration);\n } else {\n // parceljs\n this.quill = new module(this.$refs.editorElement, configuration);\n }\n\n this.initQuill();\n }\n })\n .then(() => {\n this.handleLoad();\n });\n }\n },\n beforeUnmount() {\n this.quill = null;\n },\n methods: {\n renderValue(value) {\n if (this.quill) {\n if (value) {\n const delta = this.quill.clipboard.convert({ html: value });\n this.quill.setContents(delta);\n } else {\n this.quill.setText('');\n }\n }\n },\n initQuill() {\n this.renderValue(this.d_value);\n\n this.quill.on('text-change', (delta, oldContents, source) => {\n if (source === 'user') {\n let html = this.quill.getSemanticHTML();\n let text = this.quill.getText().trim();\n\n if (html === '<p><br></p>') {\n html = '';\n }\n\n this.writeValue(html);\n this.$emit('text-change', {\n htmlValue: html,\n textValue: text,\n delta: delta,\n source: source,\n instance: this.quill\n });\n }\n });\n\n this.quill.on('selection-change', (range, oldRange, source) => {\n let html = this.quill.getSemanticHTML();\n let text = this.quill.getText().trim();\n\n this.$emit('selection-change', {\n htmlValue: html,\n textValue: text,\n range: range,\n oldRange: oldRange,\n source: source,\n instance: this.quill\n });\n });\n },\n handleLoad() {\n if (this.quill && this.quill.getModule('toolbar')) {\n this.$emit('load', { instance: this.quill });\n }\n },\n handleReadOnlyChange() {\n if (this.quill) this.quill.enable(!this.readonly);\n }\n }\n};\n</script>\n","<template>\n <div :class=\"cx('root')\" v-bind=\"ptmi('root')\">\n <div ref=\"toolbarElement\" :class=\"cx('toolbar')\" v-bind=\"ptm('toolbar')\">\n <slot name=\"toolbar\">\n <span class=\"ql-formats\" v-bind=\"ptm('formats')\">\n <select class=\"ql-header\" defaultValue=\"0\" v-bind=\"ptm('header')\">\n <option value=\"1\" v-bind=\"ptm('option')\">Heading</option>\n <option value=\"2\" v-bind=\"ptm('option')\">Subheading</option>\n <option value=\"0\" v-bind=\"ptm('option')\">Normal</option>\n </select>\n <select class=\"ql-font\" v-bind=\"ptm('font')\">\n <option v-bind=\"ptm('option')\"></option>\n <option value=\"serif\" v-bind=\"ptm('option')\"></option>\n <option value=\"monospace\" v-bind=\"ptm('option')\"></option>\n </select>\n </span>\n <span class=\"ql-formats\" v-bind=\"ptm('formats')\">\n <button class=\"ql-bold\" type=\"button\" v-bind=\"ptm('bold')\"></button>\n <button class=\"ql-italic\" type=\"button\" v-bind=\"ptm('italic')\"></button>\n <button class=\"ql-underline\" type=\"button\" v-bind=\"ptm('underline')\"></button>\n </span>\n <span class=\"ql-formats\" v-bind=\"ptm('formats')\">\n <select class=\"ql-color\" v-bind=\"ptm('color')\"></select>\n <select class=\"ql-background\" v-bind=\"ptm('background')\"></select>\n </span>\n <span class=\"ql-formats\" v-bind=\"ptm('formats')\">\n <button class=\"ql-list\" value=\"ordered\" type=\"button\" v-bind=\"ptm('list')\"></button>\n <button class=\"ql-list\" value=\"bullet\" type=\"button\" v-bind=\"ptm('list')\"></button>\n <select class=\"ql-align\" v-bind=\"ptm('select')\">\n <option defaultValue v-bind=\"ptm('option')\"></option>\n <option value=\"center\" v-bind=\"ptm('option')\"></option>\n <option value=\"right\" v-bind=\"ptm('option')\"></option>\n <option value=\"justify\" v-bind=\"ptm('option')\"></option>\n </select>\n </span>\n <span class=\"ql-formats\" v-bind=\"ptm('formats')\">\n <button class=\"ql-link\" type=\"button\" v-bind=\"ptm('link')\"></button>\n <button class=\"ql-image\" type=\"button\" v-bind=\"ptm('image')\"></button>\n <button class=\"ql-code-block\" type=\"button\" v-bind=\"ptm('codeBlock')\"></button>\n </span>\n <span class=\"ql-formats\" v-bind=\"ptm('formats')\">\n <button class=\"ql-clean\" type=\"button\" v-bind=\"ptm('clean')\"></button>\n </span>\n </slot>\n </div>\n <div ref=\"editorElement\" :class=\"cx('content')\" :style=\"editorStyle\" v-bind=\"ptm('content')\"></div>\n </div>\n</template>\n\n<script>\nimport { isExist } from '@primeuix/utils/dom';\nimport BaseEditor from './BaseEditor.vue';\n\nconst QuillJS = (function () {\n try {\n return window.Quill;\n } catch {\n return null;\n }\n})();\n\nexport default {\n name: 'Editor',\n extends: BaseEditor,\n inheritAttrs: false,\n emits: ['text-change', 'selection-change', 'load'],\n quill: null,\n watch: {\n modelValue(newValue, oldValue) {\n if (newValue !== oldValue && this.quill && !this.quill.hasFocus()) {\n this.renderValue(newValue);\n }\n },\n readonly() {\n this.handleReadOnlyChange();\n }\n },\n mounted() {\n const configuration = {\n modules: {\n toolbar: this.$refs.toolbarElement,\n ...this.modules\n },\n readOnly: this.readonly,\n theme: 'snow',\n formats: this.formats,\n placeholder: this.placeholder\n };\n\n if (QuillJS) {\n // Loaded by script only\n this.quill = new QuillJS(this.$refs.editorElement, configuration);\n this.initQuill();\n this.handleLoad();\n } else {\n import('quill')\n .then((module) => {\n if (module && isExist(this.$refs.editorElement)) {\n if (module.default) {\n // webpack\n this.quill = new module.default(this.$refs.editorElement, configuration);\n } else {\n // parceljs\n this.quill = new module(this.$refs.editorElement, configuration);\n }\n\n this.initQuill();\n }\n })\n .then(() => {\n this.handleLoad();\n });\n }\n },\n beforeUnmount() {\n this.quill = null;\n },\n methods: {\n renderValue(value) {\n if (this.quill) {\n if (value) {\n const delta = this.quill.clipboard.convert({ html: value });\n this.quill.setContents(delta);\n } else {\n this.quill.setText('');\n }\n }\n },\n initQuill() {\n this.renderValue(this.d_value);\n\n this.quill.on('text-change', (delta, oldContents, source) => {\n if (source === 'user') {\n let html = this.quill.getSemanticHTML();\n let text = this.quill.getText().trim();\n\n if (html === '<p><br></p>') {\n html = '';\n }\n\n this.writeValue(html);\n this.$emit('text-change', {\n htmlValue: html,\n textValue: text,\n delta: delta,\n source: source,\n instance: this.quill\n });\n }\n });\n\n this.quill.on('selection-change', (range, oldRange, source) => {\n let html = this.quill.getSemanticHTML();\n let text = this.quill.getText().trim();\n\n this.$emit('selection-change', {\n htmlValue: html,\n textValue: text,\n range: range,\n oldRange: oldRange,\n source: source,\n instance: this.quill\n });\n });\n },\n handleLoad() {\n if (this.quill && this.quill.getModule('toolbar')) {\n this.$emit('load', { instance: this.quill });\n }\n },\n handleReadOnlyChange() {\n if (this.quill) this.quill.enable(!this.readonly);\n }\n }\n};\n</script>\n"],"names":["name","BaseEditableHolder","props","placeholder","String","readonly","Boolean","formats","Array","editorStyle","modules","style","EditorStyle","provide","$pcEditor","$parentInstance","QuillJS","window","Quill","_unused","BaseEditor","inheritAttrs","emits","quill","watch","modelValue","newValue","oldValue","hasFocus","renderValue","handleReadOnlyChange","mounted","_this","configuration","_objectSpread","toolbar","$refs","toolbarElement","readOnly","theme","editorElement","initQuill","handleLoad","then","module","isExist","beforeUnmount","methods","value","delta","clipboard","convert","html","setContents","setText","_this2","d_value","on","oldContents","source","getSemanticHTML","text","getText","trim","writeValue","$emit","htmlValue","textValue","instance","range","oldRange","getModule","enable","_openBlock","_createElementBlock","_mergeProps","_ctx","cx","ptmi","_createElementVNode","ref","ptm","_renderSlot","defaultValue","type"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../src/editor/BaseEditor.vue","../../src/editor/Editor.vue","../../src/editor/Editor.vue?vue&type=template&id=1c46a73e&lang.js"],"sourcesContent":["<script>\nimport BaseEditableHolder from '@primevue/core/baseeditableholder';\nimport EditorStyle from 'primevue/editor/style';\n\nexport default {\n name: 'BaseEditor',\n extends: BaseEditableHolder,\n props: {\n placeholder: String,\n readonly: Boolean,\n formats: Array,\n editorStyle: null,\n modules: null\n },\n style: EditorStyle,\n provide() {\n return {\n $pcEditor: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <div :class=\"cx('root')\" v-bind=\"ptmi('root')\">\n <div ref=\"toolbarElement\" :class=\"cx('toolbar')\" v-bind=\"ptm('toolbar')\">\n <slot name=\"toolbar\">\n <span class=\"ql-formats\" v-bind=\"ptm('formats')\">\n <select class=\"ql-header\" defaultValue=\"0\" v-bind=\"ptm('header')\">\n <option value=\"1\" v-bind=\"ptm('option')\">Heading</option>\n <option value=\"2\" v-bind=\"ptm('option')\">Subheading</option>\n <option value=\"0\" v-bind=\"ptm('option')\">Normal</option>\n </select>\n <select class=\"ql-font\" v-bind=\"ptm('font')\">\n <option v-bind=\"ptm('option')\"></option>\n <option value=\"serif\" v-bind=\"ptm('option')\"></option>\n <option value=\"monospace\" v-bind=\"ptm('option')\"></option>\n </select>\n </span>\n <span class=\"ql-formats\" v-bind=\"ptm('formats')\">\n <button class=\"ql-bold\" type=\"button\" v-bind=\"ptm('bold')\"></button>\n <button class=\"ql-italic\" type=\"button\" v-bind=\"ptm('italic')\"></button>\n <button class=\"ql-underline\" type=\"button\" v-bind=\"ptm('underline')\"></button>\n </span>\n <span class=\"ql-formats\" v-bind=\"ptm('formats')\">\n <select class=\"ql-color\" v-bind=\"ptm('color')\"></select>\n <select class=\"ql-background\" v-bind=\"ptm('background')\"></select>\n </span>\n <span class=\"ql-formats\" v-bind=\"ptm('formats')\">\n <button class=\"ql-list\" value=\"ordered\" type=\"button\" v-bind=\"ptm('list')\"></button>\n <button class=\"ql-list\" value=\"bullet\" type=\"button\" v-bind=\"ptm('list')\"></button>\n <select class=\"ql-align\" v-bind=\"ptm('select')\">\n <option defaultValue v-bind=\"ptm('option')\"></option>\n <option value=\"center\" v-bind=\"ptm('option')\"></option>\n <option value=\"right\" v-bind=\"ptm('option')\"></option>\n <option value=\"justify\" v-bind=\"ptm('option')\"></option>\n </select>\n </span>\n <span class=\"ql-formats\" v-bind=\"ptm('formats')\">\n <button class=\"ql-link\" type=\"button\" v-bind=\"ptm('link')\"></button>\n <button class=\"ql-image\" type=\"button\" v-bind=\"ptm('image')\"></button>\n <button class=\"ql-code-block\" type=\"button\" v-bind=\"ptm('codeBlock')\"></button>\n </span>\n <span class=\"ql-formats\" v-bind=\"ptm('formats')\">\n <button class=\"ql-clean\" type=\"button\" v-bind=\"ptm('clean')\"></button>\n </span>\n </slot>\n </div>\n <div ref=\"editorElement\" :class=\"cx('content')\" :style=\"editorStyle\" v-bind=\"ptm('content')\"></div>\n </div>\n</template>\n\n<script>\nimport { isExist } from '@primeuix/utils/dom';\nimport BaseEditor from './BaseEditor.vue';\n\nconst QuillJS = (function () {\n try {\n return window.Quill;\n } catch {\n return null;\n }\n})();\n\nexport default {\n name: 'Editor',\n extends: BaseEditor,\n inheritAttrs: false,\n emits: ['text-change', 'selection-change', 'load'],\n quill: null,\n watch: {\n modelValue(newValue, oldValue) {\n if (newValue !== oldValue && this.quill && !this.quill.hasFocus()) {\n this.renderValue(newValue);\n }\n },\n d_value(newValue, oldValue) {\n if (newValue !== oldValue && this.quill && !this.quill.hasFocus()) {\n this.renderValue(newValue);\n }\n },\n readonly() {\n this.handleReadOnlyChange();\n }\n },\n mounted() {\n const configuration = {\n modules: {\n toolbar: this.$refs.toolbarElement,\n ...this.modules\n },\n readOnly: this.readonly,\n theme: 'snow',\n formats: this.formats,\n placeholder: this.placeholder\n };\n if (QuillJS) {\n // Loaded by script only\n this.quill = new QuillJS(this.$refs.editorElement, configuration);\n this.initQuill();\n this.handleLoad();\n } else {\n import('quill')\n .then((module) => {\n if (module && isExist(this.$refs.editorElement)) {\n if (module.default) {\n // webpack\n this.quill = new module.default(this.$refs.editorElement, configuration);\n } else {\n // parceljs\n this.quill = new module(this.$refs.editorElement, configuration);\n }\n\n this.initQuill();\n }\n })\n .then(() => {\n this.handleLoad();\n });\n }\n },\n beforeUnmount() {\n this.quill = null;\n },\n methods: {\n renderValue(value) {\n if (this.quill) {\n if (value) {\n const delta = this.quill.clipboard.convert({ html: value });\n this.quill.setContents(delta);\n } else {\n this.quill.setText('');\n }\n }\n },\n initQuill() {\n this.renderValue(this.d_value);\n\n this.quill.on('text-change', (delta, oldContents, source) => {\n if (source === 'user') {\n let html = this.quill.getSemanticHTML();\n let text = this.quill.getText().trim();\n\n if (html === '<p><br></p>') {\n html = '';\n }\n\n this.writeValue(html);\n this.$emit('text-change', {\n htmlValue: html,\n textValue: text,\n delta: delta,\n source: source,\n instance: this.quill\n });\n }\n });\n\n this.quill.on('selection-change', (range, oldRange, source) => {\n let html = this.quill.getSemanticHTML();\n let text = this.quill.getText().trim();\n\n this.$emit('selection-change', {\n htmlValue: html,\n textValue: text,\n range: range,\n oldRange: oldRange,\n source: source,\n instance: this.quill\n });\n });\n },\n handleLoad() {\n if (this.quill && this.quill.getModule('toolbar')) {\n this.$emit('load', { instance: this.quill });\n }\n },\n handleReadOnlyChange() {\n if (this.quill) this.quill.enable(!this.readonly);\n }\n }\n};\n</script>\n","<template>\n <div :class=\"cx('root')\" v-bind=\"ptmi('root')\">\n <div ref=\"toolbarElement\" :class=\"cx('toolbar')\" v-bind=\"ptm('toolbar')\">\n <slot name=\"toolbar\">\n <span class=\"ql-formats\" v-bind=\"ptm('formats')\">\n <select class=\"ql-header\" defaultValue=\"0\" v-bind=\"ptm('header')\">\n <option value=\"1\" v-bind=\"ptm('option')\">Heading</option>\n <option value=\"2\" v-bind=\"ptm('option')\">Subheading</option>\n <option value=\"0\" v-bind=\"ptm('option')\">Normal</option>\n </select>\n <select class=\"ql-font\" v-bind=\"ptm('font')\">\n <option v-bind=\"ptm('option')\"></option>\n <option value=\"serif\" v-bind=\"ptm('option')\"></option>\n <option value=\"monospace\" v-bind=\"ptm('option')\"></option>\n </select>\n </span>\n <span class=\"ql-formats\" v-bind=\"ptm('formats')\">\n <button class=\"ql-bold\" type=\"button\" v-bind=\"ptm('bold')\"></button>\n <button class=\"ql-italic\" type=\"button\" v-bind=\"ptm('italic')\"></button>\n <button class=\"ql-underline\" type=\"button\" v-bind=\"ptm('underline')\"></button>\n </span>\n <span class=\"ql-formats\" v-bind=\"ptm('formats')\">\n <select class=\"ql-color\" v-bind=\"ptm('color')\"></select>\n <select class=\"ql-background\" v-bind=\"ptm('background')\"></select>\n </span>\n <span class=\"ql-formats\" v-bind=\"ptm('formats')\">\n <button class=\"ql-list\" value=\"ordered\" type=\"button\" v-bind=\"ptm('list')\"></button>\n <button class=\"ql-list\" value=\"bullet\" type=\"button\" v-bind=\"ptm('list')\"></button>\n <select class=\"ql-align\" v-bind=\"ptm('select')\">\n <option defaultValue v-bind=\"ptm('option')\"></option>\n <option value=\"center\" v-bind=\"ptm('option')\"></option>\n <option value=\"right\" v-bind=\"ptm('option')\"></option>\n <option value=\"justify\" v-bind=\"ptm('option')\"></option>\n </select>\n </span>\n <span class=\"ql-formats\" v-bind=\"ptm('formats')\">\n <button class=\"ql-link\" type=\"button\" v-bind=\"ptm('link')\"></button>\n <button class=\"ql-image\" type=\"button\" v-bind=\"ptm('image')\"></button>\n <button class=\"ql-code-block\" type=\"button\" v-bind=\"ptm('codeBlock')\"></button>\n </span>\n <span class=\"ql-formats\" v-bind=\"ptm('formats')\">\n <button class=\"ql-clean\" type=\"button\" v-bind=\"ptm('clean')\"></button>\n </span>\n </slot>\n </div>\n <div ref=\"editorElement\" :class=\"cx('content')\" :style=\"editorStyle\" v-bind=\"ptm('content')\"></div>\n </div>\n</template>\n\n<script>\nimport { isExist } from '@primeuix/utils/dom';\nimport BaseEditor from './BaseEditor.vue';\n\nconst QuillJS = (function () {\n try {\n return window.Quill;\n } catch {\n return null;\n }\n})();\n\nexport default {\n name: 'Editor',\n extends: BaseEditor,\n inheritAttrs: false,\n emits: ['text-change', 'selection-change', 'load'],\n quill: null,\n watch: {\n modelValue(newValue, oldValue) {\n if (newValue !== oldValue && this.quill && !this.quill.hasFocus()) {\n this.renderValue(newValue);\n }\n },\n d_value(newValue, oldValue) {\n if (newValue !== oldValue && this.quill && !this.quill.hasFocus()) {\n this.renderValue(newValue);\n }\n },\n readonly() {\n this.handleReadOnlyChange();\n }\n },\n mounted() {\n const configuration = {\n modules: {\n toolbar: this.$refs.toolbarElement,\n ...this.modules\n },\n readOnly: this.readonly,\n theme: 'snow',\n formats: this.formats,\n placeholder: this.placeholder\n };\n if (QuillJS) {\n // Loaded by script only\n this.quill = new QuillJS(this.$refs.editorElement, configuration);\n this.initQuill();\n this.handleLoad();\n } else {\n import('quill')\n .then((module) => {\n if (module && isExist(this.$refs.editorElement)) {\n if (module.default) {\n // webpack\n this.quill = new module.default(this.$refs.editorElement, configuration);\n } else {\n // parceljs\n this.quill = new module(this.$refs.editorElement, configuration);\n }\n\n this.initQuill();\n }\n })\n .then(() => {\n this.handleLoad();\n });\n }\n },\n beforeUnmount() {\n this.quill = null;\n },\n methods: {\n renderValue(value) {\n if (this.quill) {\n if (value) {\n const delta = this.quill.clipboard.convert({ html: value });\n this.quill.setContents(delta);\n } else {\n this.quill.setText('');\n }\n }\n },\n initQuill() {\n this.renderValue(this.d_value);\n\n this.quill.on('text-change', (delta, oldContents, source) => {\n if (source === 'user') {\n let html = this.quill.getSemanticHTML();\n let text = this.quill.getText().trim();\n\n if (html === '<p><br></p>') {\n html = '';\n }\n\n this.writeValue(html);\n this.$emit('text-change', {\n htmlValue: html,\n textValue: text,\n delta: delta,\n source: source,\n instance: this.quill\n });\n }\n });\n\n this.quill.on('selection-change', (range, oldRange, source) => {\n let html = this.quill.getSemanticHTML();\n let text = this.quill.getText().trim();\n\n this.$emit('selection-change', {\n htmlValue: html,\n textValue: text,\n range: range,\n oldRange: oldRange,\n source: source,\n instance: this.quill\n });\n });\n },\n handleLoad() {\n if (this.quill && this.quill.getModule('toolbar')) {\n this.$emit('load', { instance: this.quill });\n }\n },\n handleReadOnlyChange() {\n if (this.quill) this.quill.enable(!this.readonly);\n }\n }\n};\n</script>\n"],"names":["name","BaseEditableHolder","props","placeholder","String","readonly","Boolean","formats","Array","editorStyle","modules","style","EditorStyle","provide","$pcEditor","$parentInstance","QuillJS","window","Quill","_unused","BaseEditor","inheritAttrs","emits","quill","watch","modelValue","newValue","oldValue","hasFocus","renderValue","d_value","handleReadOnlyChange","mounted","_this","configuration","_objectSpread","toolbar","$refs","toolbarElement","readOnly","theme","editorElement","initQuill","handleLoad","then","module","isExist","beforeUnmount","methods","value","delta","clipboard","convert","html","setContents","setText","_this2","on","oldContents","source","getSemanticHTML","text","getText","trim","writeValue","$emit","htmlValue","textValue","instance","range","oldRange","getModule","enable","_openBlock","_createElementBlock","_mergeProps","_ctx","cx","ptmi","_createElementVNode","ref","ptm","_renderSlot","defaultValue","type"],"mappings":"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"}
package/image/index.d.ts CHANGED
@@ -318,31 +318,25 @@ export interface ImageSlots {
318
318
  }): VNode[];
319
319
  }
320
320
 
321
- export interface ImageEmitsOptions {}
322
-
323
- export declare type ImageEmits = EmitFn<ImageEmitsOptions>;
324
-
325
- export interface ImageMethods {
321
+ export interface ImageEmitsOptions {
326
322
  /**
327
323
  * Triggered when the preview overlay is shown.
328
- *
329
- * @memberof Image
330
324
  */
331
325
  show(): void;
332
326
  /**
333
327
  * Triggered when the preview overlay is hidden.
334
- *
335
- * @memberof Image
336
328
  */
337
329
  hide(): void;
338
330
  /**
339
331
  * Triggered when an error occurs while loading an image file.
340
- *
341
- * @memberof Image
342
332
  */
343
333
  error(): void;
344
334
  }
345
335
 
336
+ export declare type ImageEmits = EmitFn<ImageEmitsOptions>;
337
+
338
+ export interface ImageMethods {}
339
+
346
340
  /**
347
341
  * **PrimeVue - Image**
348
342
  *
@@ -468,10 +468,9 @@ export default {
468
468
 
469
469
  return unmaskedBuffer.join('');
470
470
  },
471
-
472
471
  updateModelValue(value) {
473
472
  if (this.currentVal === value) return;
474
- const val = this.unmask ? this.unmaskValue(value) : value;
473
+ const val = this.unmask ? this.getUnmaskedValue() : value;
475
474
 
476
475
  this.currentVal = value;
477
476