@tailor-cms/ce-image-edit 1.0.4 → 1.1.0

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.
@@ -1,8 +1,9 @@
1
1
  import type { Element } from '@tailor-cms/ce-image-manifest';
2
2
  type __VLS_Props = {
3
3
  element: Element;
4
+ isDragged: boolean;
4
5
  isFocused: boolean;
5
- isDisabled: boolean;
6
+ isReadonly: boolean;
6
7
  };
7
8
  declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
8
9
  save: (...args: any[]) => void;
@@ -3497,6 +3497,7 @@ var _a17, _b17;
3497
3497
  appIds: /* @__PURE__ */ new Set()
3498
3498
  };
3499
3499
  init_esm_shims();
3500
+ init_esm_shims();
3500
3501
  function toggleHighPerfMode(state) {
3501
3502
  devtoolsState.highPerfModeEnabled = state != null ? state : !devtoolsState.highPerfModeEnabled;
3502
3503
  if (!state && activeAppRecord.value) {
@@ -3495,6 +3495,7 @@ var _a17, _b17;
3495
3495
  appIds: /* @__PURE__ */ new Set()
3496
3496
  };
3497
3497
  init_esm_shims();
3498
+ init_esm_shims();
3498
3499
  function toggleHighPerfMode(state) {
3499
3500
  devtoolsState.highPerfModeEnabled = state != null ? state : !devtoolsState.highPerfModeEnabled;
3500
3501
  if (!state && activeAppRecord.value) {
package/dist/index.cjs CHANGED
@@ -1,7 +1,4 @@
1
1
  "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
4
- var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
5
2
  var import_index = require("./index.css");
6
3
  Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
7
4
  const vue = require("vue");
@@ -779,8 +776,8 @@ Stack.prototype.set = stackSet;
779
776
  var freeExports = typeof exports == "object" && exports && !exports.nodeType && exports;
780
777
  var freeModule = freeExports && typeof module == "object" && module && !module.nodeType && module;
781
778
  var moduleExports = freeModule && freeModule.exports === freeExports;
782
- var Buffer2 = moduleExports ? root.Buffer : void 0;
783
- Buffer2 ? Buffer2.allocUnsafe : void 0;
779
+ var Buffer = moduleExports ? root.Buffer : void 0;
780
+ Buffer ? Buffer.allocUnsafe : void 0;
784
781
  function cloneBuffer(buffer, isDeep) {
785
782
  {
786
783
  return buffer.slice();
@@ -855,10 +852,10 @@ function initCloneArray(array2) {
855
852
  }
856
853
  return result;
857
854
  }
858
- var Uint8Array2 = root.Uint8Array;
855
+ var Uint8Array = root.Uint8Array;
859
856
  function cloneArrayBuffer(arrayBuffer) {
860
857
  var result = new arrayBuffer.constructor(arrayBuffer.byteLength);
861
- new Uint8Array2(result).set(new Uint8Array2(arrayBuffer));
858
+ new Uint8Array(result).set(new Uint8Array(arrayBuffer));
862
859
  return result;
863
860
  }
864
861
  function cloneDataView(dataView, isDeep) {
@@ -1089,7 +1086,7 @@ function equalByTag(object2, other, tag, bitmask, customizer, equalFunc, stack)
1089
1086
  object2 = object2.buffer;
1090
1087
  other = other.buffer;
1091
1088
  case arrayBufferTag:
1092
- if (object2.byteLength != other.byteLength || !equalFunc(new Uint8Array2(object2), new Uint8Array2(other))) {
1089
+ if (object2.byteLength != other.byteLength || !equalFunc(new Uint8Array(object2), new Uint8Array(other))) {
1093
1090
  return false;
1094
1091
  }
1095
1092
  return true;
@@ -1533,10 +1530,10 @@ function uniqueId(prefix) {
1533
1530
  var id = ++idCounter;
1534
1531
  return toString$1(prefix) + id;
1535
1532
  }
1536
- var __defProp2 = Object.defineProperty;
1533
+ var __defProp = Object.defineProperty;
1537
1534
  var __export = (target, all) => {
1538
1535
  for (var name2 in all)
1539
- __defProp2(target, name2, { get: all[name2], enumerable: true });
1536
+ __defProp(target, name2, { get: all[name2], enumerable: true });
1540
1537
  };
1541
1538
  var InsertLocation = /* @__PURE__ */ ((InsertLocation2) => {
1542
1539
  InsertLocation2["AddBefore"] = "ADD_BEFORE";
@@ -4344,7 +4341,7 @@ async function installDevtoolsPlugin(app) {
4344
4341
  if (!isClient) {
4345
4342
  return;
4346
4343
  }
4347
- const devtools = await Promise.resolve().then(() => require("./index-PPSxWWE-.cjs"));
4344
+ const devtools = await Promise.resolve().then(() => require("./index-B7I2cEJD.cjs"));
4348
4345
  devtools.setupDevtoolsPlugin({
4349
4346
  id: "vee-validate-devtools-plugin",
4350
4347
  label: "VeeValidate Plugin",
@@ -16635,7 +16632,7 @@ const cut = (originRange, targetPos) => ({ editor, tr }) => {
16635
16632
  tr.deleteRange(originRange.from, originRange.to);
16636
16633
  const newPos = tr.mapping.map(targetPos);
16637
16634
  tr.insert(newPos, contentSlice.content);
16638
- tr.setSelection(new TextSelection(tr.doc.resolve(newPos - 1)));
16635
+ tr.setSelection(new TextSelection(tr.doc.resolve(Math.max(newPos - 1, 0))));
16639
16636
  return true;
16640
16637
  };
16641
16638
  const deleteCurrentNode = () => ({ tr, dispatch }) => {
@@ -18524,6 +18521,26 @@ function markPasteRule(config) {
18524
18521
  }
18525
18522
  });
18526
18523
  }
18524
+ function canInsertNode(state, nodeType) {
18525
+ const { selection } = state;
18526
+ const { $from } = selection;
18527
+ if (selection instanceof NodeSelection) {
18528
+ const index2 = $from.index();
18529
+ const parent = $from.parent;
18530
+ return parent.canReplaceWith(index2, index2 + 1, nodeType);
18531
+ }
18532
+ let depth = $from.depth;
18533
+ while (depth >= 0) {
18534
+ const index2 = $from.index(depth);
18535
+ const parent = $from.node(depth);
18536
+ const match = parent.contentMatchAt(index2);
18537
+ if (match.matchType(nodeType)) {
18538
+ return true;
18539
+ }
18540
+ depth -= 1;
18541
+ }
18542
+ return false;
18543
+ }
18527
18544
  Extension.create({
18528
18545
  name: "characterCount",
18529
18546
  addOptions() {
@@ -20124,6 +20141,9 @@ const HorizontalRule = Node2.create({
20124
20141
  addCommands() {
20125
20142
  return {
20126
20143
  setHorizontalRule: () => ({ chain, state }) => {
20144
+ if (!canInsertNode(state, state.schema.nodes[this.name])) {
20145
+ return false;
20146
+ }
20127
20147
  const { selection } = state;
20128
20148
  const { $from: $originFrom, $to: $originTo } = selection;
20129
20149
  const currentChain = chain();
@@ -20763,10 +20783,7 @@ const _sfc_main$4 = /* @__PURE__ */ vue.defineComponent({
20763
20783
  const [urlInput] = defineField("url");
20764
20784
  const hasAsset = vue.computed(() => file.value || urlInput.value);
20765
20785
  const hasChanges = vue.computed(
20766
- () => {
20767
- var _a;
20768
- return props2.url !== (urlInput.value || ((_a = file.value) == null ? void 0 : _a.url) || null);
20769
- }
20786
+ () => props2.url !== (urlInput.value || file.value?.url || null)
20770
20787
  );
20771
20788
  const fileName = vue.computed(() => {
20772
20789
  if (!file.value || !file.value.url) return;
@@ -20835,7 +20852,8 @@ const _sfc_main$4 = /* @__PURE__ */ vue.defineComponent({
20835
20852
  default: vue.withCtx(() => _cache[4] || (_cache[4] = [
20836
20853
  vue.createTextVNode("Edit")
20837
20854
  ])),
20838
- _: 1
20855
+ _: 1,
20856
+ __: [4]
20839
20857
  })) : (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 4 }, [
20840
20858
  hasChanges.value ? (vue.openBlock(), vue.createBlock(_component_VBtn, {
20841
20859
  key: 0,
@@ -20845,7 +20863,8 @@ const _sfc_main$4 = /* @__PURE__ */ vue.defineComponent({
20845
20863
  default: vue.withCtx(() => _cache[5] || (_cache[5] = [
20846
20864
  vue.createTextVNode("Save")
20847
20865
  ])),
20848
- _: 1
20866
+ _: 1,
20867
+ __: [5]
20849
20868
  }, 8, ["disabled"])) : vue.createCommentVNode("", true),
20850
20869
  hasChanges.value || _ctx.url ? (vue.openBlock(), vue.createBlock(_component_VBtn, {
20851
20870
  key: 1,
@@ -20855,7 +20874,8 @@ const _sfc_main$4 = /* @__PURE__ */ vue.defineComponent({
20855
20874
  default: vue.withCtx(() => _cache[6] || (_cache[6] = [
20856
20875
  vue.createTextVNode(" Cancel ")
20857
20876
  ])),
20858
- _: 1
20877
+ _: 1,
20878
+ __: [6]
20859
20879
  }, 8, ["disabled"])) : vue.createCommentVNode("", true)
20860
20880
  ], 64))
20861
20881
  ]),
@@ -21496,7 +21516,7 @@ class Color {
21496
21516
  }
21497
21517
  }
21498
21518
  /*!
21499
- * Chart.js v4.4.9
21519
+ * Chart.js v4.5.0
21500
21520
  * https://www.chartjs.org
21501
21521
  * (c) 2025 Chart.js Contributors
21502
21522
  * Released under the MIT License
@@ -22393,7 +22413,7 @@ function _isDomSupported() {
22393
22413
  return passiveSupported;
22394
22414
  })();
22395
22415
  /*!
22396
- * Chart.js v4.4.9
22416
+ * Chart.js v4.5.0
22397
22417
  * https://www.chartjs.org
22398
22418
  * (c) 2025 Chart.js Contributors
22399
22419
  * Released under the MIT License
@@ -22402,10 +22422,6 @@ function abstract() {
22402
22422
  throw new Error("This method is not implemented: Check that a complete date adapter is provided.");
22403
22423
  }
22404
22424
  class DateAdapterBase {
22405
- constructor(options) {
22406
- __publicField(this, "options");
22407
- this.options = options || {};
22408
- }
22409
22425
  /**
22410
22426
  * Override default date adapter methods.
22411
22427
  * Accepts type parameter to define options type.
@@ -22419,6 +22435,10 @@ class DateAdapterBase {
22419
22435
  static override(members) {
22420
22436
  Object.assign(DateAdapterBase.prototype, members);
22421
22437
  }
22438
+ options;
22439
+ constructor(options) {
22440
+ this.options = options || {};
22441
+ }
22422
22442
  // eslint-disable-next-line @typescript-eslint/no-empty-function
22423
22443
  init() {
22424
22444
  }
@@ -22448,13 +22468,13 @@ var adapters = {
22448
22468
  _date: DateAdapterBase
22449
22469
  };
22450
22470
  class Element {
22451
- constructor() {
22452
- __publicField(this, "x");
22453
- __publicField(this, "y");
22454
- __publicField(this, "active", false);
22455
- __publicField(this, "options");
22456
- __publicField(this, "$animations");
22457
- }
22471
+ static defaults = {};
22472
+ static defaultRoutes = void 0;
22473
+ x;
22474
+ y;
22475
+ active = false;
22476
+ options;
22477
+ $animations;
22458
22478
  tooltipPosition(useFinalPosition) {
22459
22479
  const { x, y } = this.getProps([
22460
22480
  "x",
@@ -22480,8 +22500,6 @@ class Element {
22480
22500
  return ret;
22481
22501
  }
22482
22502
  }
22483
- __publicField(Element, "defaults", {});
22484
- __publicField(Element, "defaultRoutes");
22485
22503
  function autoSkip(scale, ticks) {
22486
22504
  const tickOpts = scale.options.ticks;
22487
22505
  const determinedMaxTicks = determineMaxTicks(scale);
@@ -23864,6 +23882,34 @@ class Scale extends Element {
23864
23882
  return (this.isHorizontal() ? this.width : this.height) / fontSize;
23865
23883
  }
23866
23884
  }
23885
+ function clipSelf(ctx, element, endAngle) {
23886
+ const { startAngle, x, y, outerRadius, innerRadius, options } = element;
23887
+ const { borderWidth, borderJoinStyle } = options;
23888
+ const outerAngleClip = Math.min(borderWidth / outerRadius, _normalizeAngle(startAngle - endAngle));
23889
+ ctx.beginPath();
23890
+ ctx.arc(x, y, outerRadius - borderWidth / 2, startAngle + outerAngleClip / 2, endAngle - outerAngleClip / 2);
23891
+ if (innerRadius > 0) {
23892
+ const innerAngleClip = Math.min(borderWidth / innerRadius, _normalizeAngle(startAngle - endAngle));
23893
+ ctx.arc(x, y, innerRadius + borderWidth / 2, endAngle - innerAngleClip / 2, startAngle + innerAngleClip / 2, true);
23894
+ } else {
23895
+ const clipWidth = Math.min(borderWidth / 2, outerRadius * _normalizeAngle(startAngle - endAngle));
23896
+ if (borderJoinStyle === "round") {
23897
+ ctx.arc(x, y, clipWidth, endAngle - PI / 2, startAngle + PI / 2, true);
23898
+ } else if (borderJoinStyle === "bevel") {
23899
+ const r = 2 * clipWidth * clipWidth;
23900
+ const endX = -r * Math.cos(endAngle + PI / 2) + x;
23901
+ const endY = -r * Math.sin(endAngle + PI / 2) + y;
23902
+ const startX = r * Math.cos(startAngle + PI / 2) + x;
23903
+ const startY = r * Math.sin(startAngle + PI / 2) + y;
23904
+ ctx.lineTo(endX, endY);
23905
+ ctx.lineTo(startX, startY);
23906
+ }
23907
+ }
23908
+ ctx.closePath();
23909
+ ctx.moveTo(0, 0);
23910
+ ctx.rect(0, 0, ctx.canvas.width, ctx.canvas.height);
23911
+ ctx.clip("evenodd");
23912
+ }
23867
23913
  function clipArc(ctx, element, endAngle) {
23868
23914
  const { startAngle, pixelMargin, x, y, outerRadius, innerRadius } = element;
23869
23915
  let angleMargin = pixelMargin / outerRadius;
@@ -23990,7 +24036,7 @@ function drawArc(ctx, element, offset, spacing, circular) {
23990
24036
  }
23991
24037
  function drawBorder(ctx, element, offset, spacing, circular) {
23992
24038
  const { fullCircles, startAngle, circumference, options } = element;
23993
- const { borderWidth, borderJoinStyle, borderDash, borderDashOffset } = options;
24039
+ const { borderWidth, borderJoinStyle, borderDash, borderDashOffset, borderRadius } = options;
23994
24040
  const inner = options.borderAlign === "inner";
23995
24041
  if (!borderWidth) {
23996
24042
  return;
@@ -24017,21 +24063,46 @@ function drawBorder(ctx, element, offset, spacing, circular) {
24017
24063
  if (inner) {
24018
24064
  clipArc(ctx, element, endAngle);
24019
24065
  }
24066
+ if (options.selfJoin && endAngle - startAngle >= PI && borderRadius === 0 && borderJoinStyle !== "miter") {
24067
+ clipSelf(ctx, element, endAngle);
24068
+ }
24020
24069
  if (!fullCircles) {
24021
24070
  pathArc(ctx, element, offset, spacing, endAngle, circular);
24022
24071
  ctx.stroke();
24023
24072
  }
24024
24073
  }
24025
24074
  class ArcElement extends Element {
24075
+ static id = "arc";
24076
+ static defaults = {
24077
+ borderAlign: "center",
24078
+ borderColor: "#fff",
24079
+ borderDash: [],
24080
+ borderDashOffset: 0,
24081
+ borderJoinStyle: void 0,
24082
+ borderRadius: 0,
24083
+ borderWidth: 2,
24084
+ offset: 0,
24085
+ spacing: 0,
24086
+ angle: void 0,
24087
+ circular: true,
24088
+ selfJoin: false
24089
+ };
24090
+ static defaultRoutes = {
24091
+ backgroundColor: "backgroundColor"
24092
+ };
24093
+ static descriptors = {
24094
+ _scriptable: true,
24095
+ _indexable: (name2) => name2 !== "borderDash"
24096
+ };
24097
+ circumference;
24098
+ endAngle;
24099
+ fullCircles;
24100
+ innerRadius;
24101
+ outerRadius;
24102
+ pixelMargin;
24103
+ startAngle;
24026
24104
  constructor(cfg) {
24027
24105
  super();
24028
- __publicField(this, "circumference");
24029
- __publicField(this, "endAngle");
24030
- __publicField(this, "fullCircles");
24031
- __publicField(this, "innerRadius");
24032
- __publicField(this, "outerRadius");
24033
- __publicField(this, "pixelMargin");
24034
- __publicField(this, "startAngle");
24035
24106
  this.options = void 0;
24036
24107
  this.circumference = void 0;
24037
24108
  this.startAngle = void 0;
@@ -24109,27 +24180,6 @@ class ArcElement extends Element {
24109
24180
  ctx.restore();
24110
24181
  }
24111
24182
  }
24112
- __publicField(ArcElement, "id", "arc");
24113
- __publicField(ArcElement, "defaults", {
24114
- borderAlign: "center",
24115
- borderColor: "#fff",
24116
- borderDash: [],
24117
- borderDashOffset: 0,
24118
- borderJoinStyle: void 0,
24119
- borderRadius: 0,
24120
- borderWidth: 2,
24121
- offset: 0,
24122
- spacing: 0,
24123
- angle: void 0,
24124
- circular: true
24125
- });
24126
- __publicField(ArcElement, "defaultRoutes", {
24127
- backgroundColor: "backgroundColor"
24128
- });
24129
- __publicField(ArcElement, "descriptors", {
24130
- _scriptable: true,
24131
- _indexable: (name2) => name2 !== "borderDash"
24132
- });
24133
24183
  function inRange$1(el, pos, axis, useFinalPosition) {
24134
24184
  const options = el.options;
24135
24185
  const { [axis]: value } = el.getProps([
@@ -24138,11 +24188,31 @@ function inRange$1(el, pos, axis, useFinalPosition) {
24138
24188
  return Math.abs(pos - value) < options.radius + options.hitRadius;
24139
24189
  }
24140
24190
  class PointElement extends Element {
24191
+ static id = "point";
24192
+ parsed;
24193
+ skip;
24194
+ stop;
24195
+ /**
24196
+ * @type {any}
24197
+ */
24198
+ static defaults = {
24199
+ borderWidth: 1,
24200
+ hitRadius: 1,
24201
+ hoverBorderWidth: 1,
24202
+ hoverRadius: 4,
24203
+ pointStyle: "circle",
24204
+ radius: 3,
24205
+ rotation: 0
24206
+ };
24207
+ /**
24208
+ * @type {any}
24209
+ */
24210
+ static defaultRoutes = {
24211
+ backgroundColor: "backgroundColor",
24212
+ borderColor: "borderColor"
24213
+ };
24141
24214
  constructor(cfg) {
24142
24215
  super();
24143
- __publicField(this, "parsed");
24144
- __publicField(this, "skip");
24145
- __publicField(this, "stop");
24146
24216
  this.options = void 0;
24147
24217
  this.parsed = void 0;
24148
24218
  this.skip = void 0;
@@ -24197,26 +24267,6 @@ class PointElement extends Element {
24197
24267
  return options.radius + options.hitRadius;
24198
24268
  }
24199
24269
  }
24200
- __publicField(PointElement, "id", "point");
24201
- /**
24202
- * @type {any}
24203
- */
24204
- __publicField(PointElement, "defaults", {
24205
- borderWidth: 1,
24206
- hitRadius: 1,
24207
- hoverBorderWidth: 1,
24208
- hoverRadius: 4,
24209
- pointStyle: "circle",
24210
- radius: 3,
24211
- rotation: 0
24212
- });
24213
- /**
24214
- * @type {any}
24215
- */
24216
- __publicField(PointElement, "defaultRoutes", {
24217
- backgroundColor: "backgroundColor",
24218
- borderColor: "borderColor"
24219
- });
24220
24270
  function getBarBounds(bar, useFinalPosition) {
24221
24271
  const { x, y, base: base2, width, height } = bar.getProps([
24222
24272
  "x",
@@ -24331,6 +24381,18 @@ function inflateRect(rect, amount, refRect = {}) {
24331
24381
  };
24332
24382
  }
24333
24383
  class BarElement extends Element {
24384
+ static id = "bar";
24385
+ static defaults = {
24386
+ borderSkipped: "start",
24387
+ borderWidth: 0,
24388
+ borderRadius: 0,
24389
+ inflateAmount: "auto",
24390
+ pointStyle: void 0
24391
+ };
24392
+ static defaultRoutes = {
24393
+ backgroundColor: "backgroundColor",
24394
+ borderColor: "borderColor"
24395
+ };
24334
24396
  constructor(cfg) {
24335
24397
  super();
24336
24398
  this.options = void 0;
@@ -24387,18 +24449,6 @@ class BarElement extends Element {
24387
24449
  return axis === "x" ? this.width / 2 : this.height / 2;
24388
24450
  }
24389
24451
  }
24390
- __publicField(BarElement, "id", "bar");
24391
- __publicField(BarElement, "defaults", {
24392
- borderSkipped: "start",
24393
- borderWidth: 0,
24394
- borderRadius: 0,
24395
- inflateAmount: "auto",
24396
- pointStyle: void 0
24397
- });
24398
- __publicField(BarElement, "defaultRoutes", {
24399
- backgroundColor: "backgroundColor",
24400
- borderColor: "borderColor"
24401
- });
24402
24452
  const INTERVALS = {
24403
24453
  millisecond: {
24404
24454
  common: true,
@@ -24535,6 +24585,26 @@ function ticksFromTimestamps(scale, values, majorUnit) {
24535
24585
  return ilen === 0 || !majorUnit ? ticks : setMajorTicks(scale, ticks, map3, majorUnit);
24536
24586
  }
24537
24587
  class TimeScale extends Scale {
24588
+ static id = "time";
24589
+ static defaults = {
24590
+ bounds: "data",
24591
+ adapters: {},
24592
+ time: {
24593
+ parser: false,
24594
+ unit: false,
24595
+ round: false,
24596
+ isoWeekday: false,
24597
+ minUnit: "millisecond",
24598
+ displayFormats: {}
24599
+ },
24600
+ ticks: {
24601
+ source: "auto",
24602
+ callback: false,
24603
+ major: {
24604
+ enabled: false
24605
+ }
24606
+ }
24607
+ };
24538
24608
  constructor(props2) {
24539
24609
  super(props2);
24540
24610
  this._cache = {
@@ -24801,26 +24871,6 @@ class TimeScale extends Scale {
24801
24871
  return _arrayUnique(values.sort(sorter));
24802
24872
  }
24803
24873
  }
24804
- __publicField(TimeScale, "id", "time");
24805
- __publicField(TimeScale, "defaults", {
24806
- bounds: "data",
24807
- adapters: {},
24808
- time: {
24809
- parser: false,
24810
- unit: false,
24811
- round: false,
24812
- isoWeekday: false,
24813
- minUnit: "millisecond",
24814
- displayFormats: {}
24815
- },
24816
- ticks: {
24817
- source: "auto",
24818
- callback: false,
24819
- major: {
24820
- enabled: false
24821
- }
24822
- }
24823
- });
24824
24874
  function interpolate(table, val, reverse) {
24825
24875
  let lo = 0;
24826
24876
  let hi = table.length - 1;
@@ -24842,6 +24892,8 @@ function interpolate(table, val, reverse) {
24842
24892
  return span ? prevTarget + (nextTarget - prevTarget) * (val - prevSource) / span : prevTarget;
24843
24893
  }
24844
24894
  class TimeSeriesScale extends TimeScale {
24895
+ static id = "timeseries";
24896
+ static defaults = TimeScale.defaults;
24845
24897
  constructor(props2) {
24846
24898
  super(props2);
24847
24899
  this._table = [];
@@ -24927,8 +24979,6 @@ class TimeSeriesScale extends TimeScale {
24927
24979
  return interpolate(this._table, decimal * this._tableRange + this._minPos, true);
24928
24980
  }
24929
24981
  }
24930
- __publicField(TimeSeriesScale, "id", "timeseries");
24931
- __publicField(TimeSeriesScale, "defaults", TimeScale.defaults);
24932
24982
  /*!
24933
24983
  * chartjs-plugin-datalabels v2.2.0
24934
24984
  * https://chartjs-plugin-datalabels.netlify.app
@@ -25631,8 +25681,9 @@ const _sfc_main$2 = /* @__PURE__ */ vue.defineComponent({
25631
25681
  __name: "Edit",
25632
25682
  props: {
25633
25683
  element: {},
25684
+ isDragged: { type: Boolean },
25634
25685
  isFocused: { type: Boolean },
25635
- isDisabled: { type: Boolean }
25686
+ isReadonly: { type: Boolean }
25636
25687
  },
25637
25688
  emits: ["save"],
25638
25689
  setup(__props) {
@@ -25642,7 +25693,7 @@ const _sfc_main$2 = /* @__PURE__ */ vue.defineComponent({
25642
25693
  return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$1, [
25643
25694
  !_ctx.element.data.url ? (vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$3), {
25644
25695
  key: 0,
25645
- "is-disabled": _ctx.isDisabled,
25696
+ "is-disabled": _ctx.isReadonly,
25646
25697
  "is-focused": _ctx.isFocused,
25647
25698
  name: `${vue.unref(index_default).name} component`,
25648
25699
  "active-icon": "mdi-arrow-up",
@@ -25669,7 +25720,7 @@ const _sfc_main$2 = /* @__PURE__ */ vue.defineComponent({
25669
25720
  };
25670
25721
  }
25671
25722
  });
25672
- const Edit = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["__scopeId", "data-v-3d1ca580"]]);
25723
+ const Edit = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["__scopeId", "data-v-d53be3ce"]]);
25673
25724
  const _sfc_main$1 = /* @__PURE__ */ vue.defineComponent({
25674
25725
  __name: "SideToolbar",
25675
25726
  props: {
@@ -25722,12 +25773,11 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
25722
25773
  emit2("save", elementData);
25723
25774
  };
25724
25775
  return (_ctx, _cache) => {
25725
- var _a;
25726
25776
  return vue.openBlock(), vue.createElementBlock("div", _hoisted_1, [
25727
25777
  vue.createVNode(vue.unref(_sfc_main$4), {
25728
25778
  extensions: [".png", ".jpg", ".jpeg"],
25729
25779
  "public-url": _ctx.element.data.url,
25730
- url: (_a = _ctx.element.data.assets) == null ? void 0 : _a.url,
25780
+ url: _ctx.element.data.assets?.url,
25731
25781
  class: "mx-auto",
25732
25782
  "upload-label": "Upload image",
25733
25783
  onInput: save2
package/dist/index.css CHANGED
@@ -1,3 +1,3 @@
1
- .tce-image[data-v-3d1ca580] {
1
+ .tce-image[data-v-d53be3ce] {
2
2
  text-align: left;
3
3
  }
package/dist/index.js CHANGED
@@ -1,6 +1,3 @@
1
- var __defProp = Object.defineProperty;
2
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
3
- var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
4
1
  import "./index.css";
5
2
  import { ref, reactive, computed, toValue, unref, onMounted, isRef, watch, provide, readonly, watchEffect, nextTick, shallowRef, warn, getCurrentInstance, onUnmounted, inject, resolveComponent, TransitionGroup, defineComponent, h, createElementBlock, createCommentVNode, openBlock, Fragment as Fragment$1, createBlock, withCtx, createVNode, createTextVNode, toDisplayString, normalizeClass, createElementVNode } from "vue";
6
3
  var type = "IMAGE";
@@ -777,8 +774,8 @@ Stack.prototype.set = stackSet;
777
774
  var freeExports = typeof exports == "object" && exports && !exports.nodeType && exports;
778
775
  var freeModule = freeExports && typeof module == "object" && module && !module.nodeType && module;
779
776
  var moduleExports = freeModule && freeModule.exports === freeExports;
780
- var Buffer2 = moduleExports ? root.Buffer : void 0;
781
- Buffer2 ? Buffer2.allocUnsafe : void 0;
777
+ var Buffer = moduleExports ? root.Buffer : void 0;
778
+ Buffer ? Buffer.allocUnsafe : void 0;
782
779
  function cloneBuffer(buffer, isDeep) {
783
780
  {
784
781
  return buffer.slice();
@@ -853,10 +850,10 @@ function initCloneArray(array2) {
853
850
  }
854
851
  return result;
855
852
  }
856
- var Uint8Array2 = root.Uint8Array;
853
+ var Uint8Array = root.Uint8Array;
857
854
  function cloneArrayBuffer(arrayBuffer) {
858
855
  var result = new arrayBuffer.constructor(arrayBuffer.byteLength);
859
- new Uint8Array2(result).set(new Uint8Array2(arrayBuffer));
856
+ new Uint8Array(result).set(new Uint8Array(arrayBuffer));
860
857
  return result;
861
858
  }
862
859
  function cloneDataView(dataView, isDeep) {
@@ -1087,7 +1084,7 @@ function equalByTag(object2, other, tag, bitmask, customizer, equalFunc, stack)
1087
1084
  object2 = object2.buffer;
1088
1085
  other = other.buffer;
1089
1086
  case arrayBufferTag:
1090
- if (object2.byteLength != other.byteLength || !equalFunc(new Uint8Array2(object2), new Uint8Array2(other))) {
1087
+ if (object2.byteLength != other.byteLength || !equalFunc(new Uint8Array(object2), new Uint8Array(other))) {
1091
1088
  return false;
1092
1089
  }
1093
1090
  return true;
@@ -1531,10 +1528,10 @@ function uniqueId(prefix) {
1531
1528
  var id = ++idCounter;
1532
1529
  return toString$1(prefix) + id;
1533
1530
  }
1534
- var __defProp2 = Object.defineProperty;
1531
+ var __defProp = Object.defineProperty;
1535
1532
  var __export = (target, all) => {
1536
1533
  for (var name2 in all)
1537
- __defProp2(target, name2, { get: all[name2], enumerable: true });
1534
+ __defProp(target, name2, { get: all[name2], enumerable: true });
1538
1535
  };
1539
1536
  var InsertLocation = /* @__PURE__ */ ((InsertLocation2) => {
1540
1537
  InsertLocation2["AddBefore"] = "ADD_BEFORE";
@@ -4342,7 +4339,7 @@ async function installDevtoolsPlugin(app) {
4342
4339
  if (!isClient) {
4343
4340
  return;
4344
4341
  }
4345
- const devtools = await import("./index-Dl6RoEe8.js");
4342
+ const devtools = await import("./index-CjgztT59.js");
4346
4343
  devtools.setupDevtoolsPlugin({
4347
4344
  id: "vee-validate-devtools-plugin",
4348
4345
  label: "VeeValidate Plugin",
@@ -16633,7 +16630,7 @@ const cut = (originRange, targetPos) => ({ editor, tr }) => {
16633
16630
  tr.deleteRange(originRange.from, originRange.to);
16634
16631
  const newPos = tr.mapping.map(targetPos);
16635
16632
  tr.insert(newPos, contentSlice.content);
16636
- tr.setSelection(new TextSelection(tr.doc.resolve(newPos - 1)));
16633
+ tr.setSelection(new TextSelection(tr.doc.resolve(Math.max(newPos - 1, 0))));
16637
16634
  return true;
16638
16635
  };
16639
16636
  const deleteCurrentNode = () => ({ tr, dispatch }) => {
@@ -18522,6 +18519,26 @@ function markPasteRule(config) {
18522
18519
  }
18523
18520
  });
18524
18521
  }
18522
+ function canInsertNode(state, nodeType) {
18523
+ const { selection } = state;
18524
+ const { $from } = selection;
18525
+ if (selection instanceof NodeSelection) {
18526
+ const index2 = $from.index();
18527
+ const parent = $from.parent;
18528
+ return parent.canReplaceWith(index2, index2 + 1, nodeType);
18529
+ }
18530
+ let depth = $from.depth;
18531
+ while (depth >= 0) {
18532
+ const index2 = $from.index(depth);
18533
+ const parent = $from.node(depth);
18534
+ const match = parent.contentMatchAt(index2);
18535
+ if (match.matchType(nodeType)) {
18536
+ return true;
18537
+ }
18538
+ depth -= 1;
18539
+ }
18540
+ return false;
18541
+ }
18525
18542
  Extension.create({
18526
18543
  name: "characterCount",
18527
18544
  addOptions() {
@@ -20122,6 +20139,9 @@ const HorizontalRule = Node2.create({
20122
20139
  addCommands() {
20123
20140
  return {
20124
20141
  setHorizontalRule: () => ({ chain, state }) => {
20142
+ if (!canInsertNode(state, state.schema.nodes[this.name])) {
20143
+ return false;
20144
+ }
20125
20145
  const { selection } = state;
20126
20146
  const { $from: $originFrom, $to: $originTo } = selection;
20127
20147
  const currentChain = chain();
@@ -20761,10 +20781,7 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
20761
20781
  const [urlInput] = defineField("url");
20762
20782
  const hasAsset = computed(() => file.value || urlInput.value);
20763
20783
  const hasChanges = computed(
20764
- () => {
20765
- var _a;
20766
- return props2.url !== (urlInput.value || ((_a = file.value) == null ? void 0 : _a.url) || null);
20767
- }
20784
+ () => props2.url !== (urlInput.value || file.value?.url || null)
20768
20785
  );
20769
20786
  const fileName = computed(() => {
20770
20787
  if (!file.value || !file.value.url) return;
@@ -20833,7 +20850,8 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
20833
20850
  default: withCtx(() => _cache[4] || (_cache[4] = [
20834
20851
  createTextVNode("Edit")
20835
20852
  ])),
20836
- _: 1
20853
+ _: 1,
20854
+ __: [4]
20837
20855
  })) : (openBlock(), createElementBlock(Fragment$1, { key: 4 }, [
20838
20856
  hasChanges.value ? (openBlock(), createBlock(_component_VBtn, {
20839
20857
  key: 0,
@@ -20843,7 +20861,8 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
20843
20861
  default: withCtx(() => _cache[5] || (_cache[5] = [
20844
20862
  createTextVNode("Save")
20845
20863
  ])),
20846
- _: 1
20864
+ _: 1,
20865
+ __: [5]
20847
20866
  }, 8, ["disabled"])) : createCommentVNode("", true),
20848
20867
  hasChanges.value || _ctx.url ? (openBlock(), createBlock(_component_VBtn, {
20849
20868
  key: 1,
@@ -20853,7 +20872,8 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
20853
20872
  default: withCtx(() => _cache[6] || (_cache[6] = [
20854
20873
  createTextVNode(" Cancel ")
20855
20874
  ])),
20856
- _: 1
20875
+ _: 1,
20876
+ __: [6]
20857
20877
  }, 8, ["disabled"])) : createCommentVNode("", true)
20858
20878
  ], 64))
20859
20879
  ]),
@@ -21494,7 +21514,7 @@ class Color {
21494
21514
  }
21495
21515
  }
21496
21516
  /*!
21497
- * Chart.js v4.4.9
21517
+ * Chart.js v4.5.0
21498
21518
  * https://www.chartjs.org
21499
21519
  * (c) 2025 Chart.js Contributors
21500
21520
  * Released under the MIT License
@@ -22391,7 +22411,7 @@ function _isDomSupported() {
22391
22411
  return passiveSupported;
22392
22412
  })();
22393
22413
  /*!
22394
- * Chart.js v4.4.9
22414
+ * Chart.js v4.5.0
22395
22415
  * https://www.chartjs.org
22396
22416
  * (c) 2025 Chart.js Contributors
22397
22417
  * Released under the MIT License
@@ -22400,10 +22420,6 @@ function abstract() {
22400
22420
  throw new Error("This method is not implemented: Check that a complete date adapter is provided.");
22401
22421
  }
22402
22422
  class DateAdapterBase {
22403
- constructor(options) {
22404
- __publicField(this, "options");
22405
- this.options = options || {};
22406
- }
22407
22423
  /**
22408
22424
  * Override default date adapter methods.
22409
22425
  * Accepts type parameter to define options type.
@@ -22417,6 +22433,10 @@ class DateAdapterBase {
22417
22433
  static override(members) {
22418
22434
  Object.assign(DateAdapterBase.prototype, members);
22419
22435
  }
22436
+ options;
22437
+ constructor(options) {
22438
+ this.options = options || {};
22439
+ }
22420
22440
  // eslint-disable-next-line @typescript-eslint/no-empty-function
22421
22441
  init() {
22422
22442
  }
@@ -22446,13 +22466,13 @@ var adapters = {
22446
22466
  _date: DateAdapterBase
22447
22467
  };
22448
22468
  class Element {
22449
- constructor() {
22450
- __publicField(this, "x");
22451
- __publicField(this, "y");
22452
- __publicField(this, "active", false);
22453
- __publicField(this, "options");
22454
- __publicField(this, "$animations");
22455
- }
22469
+ static defaults = {};
22470
+ static defaultRoutes = void 0;
22471
+ x;
22472
+ y;
22473
+ active = false;
22474
+ options;
22475
+ $animations;
22456
22476
  tooltipPosition(useFinalPosition) {
22457
22477
  const { x, y } = this.getProps([
22458
22478
  "x",
@@ -22478,8 +22498,6 @@ class Element {
22478
22498
  return ret;
22479
22499
  }
22480
22500
  }
22481
- __publicField(Element, "defaults", {});
22482
- __publicField(Element, "defaultRoutes");
22483
22501
  function autoSkip(scale, ticks) {
22484
22502
  const tickOpts = scale.options.ticks;
22485
22503
  const determinedMaxTicks = determineMaxTicks(scale);
@@ -23862,6 +23880,34 @@ class Scale extends Element {
23862
23880
  return (this.isHorizontal() ? this.width : this.height) / fontSize;
23863
23881
  }
23864
23882
  }
23883
+ function clipSelf(ctx, element, endAngle) {
23884
+ const { startAngle, x, y, outerRadius, innerRadius, options } = element;
23885
+ const { borderWidth, borderJoinStyle } = options;
23886
+ const outerAngleClip = Math.min(borderWidth / outerRadius, _normalizeAngle(startAngle - endAngle));
23887
+ ctx.beginPath();
23888
+ ctx.arc(x, y, outerRadius - borderWidth / 2, startAngle + outerAngleClip / 2, endAngle - outerAngleClip / 2);
23889
+ if (innerRadius > 0) {
23890
+ const innerAngleClip = Math.min(borderWidth / innerRadius, _normalizeAngle(startAngle - endAngle));
23891
+ ctx.arc(x, y, innerRadius + borderWidth / 2, endAngle - innerAngleClip / 2, startAngle + innerAngleClip / 2, true);
23892
+ } else {
23893
+ const clipWidth = Math.min(borderWidth / 2, outerRadius * _normalizeAngle(startAngle - endAngle));
23894
+ if (borderJoinStyle === "round") {
23895
+ ctx.arc(x, y, clipWidth, endAngle - PI / 2, startAngle + PI / 2, true);
23896
+ } else if (borderJoinStyle === "bevel") {
23897
+ const r = 2 * clipWidth * clipWidth;
23898
+ const endX = -r * Math.cos(endAngle + PI / 2) + x;
23899
+ const endY = -r * Math.sin(endAngle + PI / 2) + y;
23900
+ const startX = r * Math.cos(startAngle + PI / 2) + x;
23901
+ const startY = r * Math.sin(startAngle + PI / 2) + y;
23902
+ ctx.lineTo(endX, endY);
23903
+ ctx.lineTo(startX, startY);
23904
+ }
23905
+ }
23906
+ ctx.closePath();
23907
+ ctx.moveTo(0, 0);
23908
+ ctx.rect(0, 0, ctx.canvas.width, ctx.canvas.height);
23909
+ ctx.clip("evenodd");
23910
+ }
23865
23911
  function clipArc(ctx, element, endAngle) {
23866
23912
  const { startAngle, pixelMargin, x, y, outerRadius, innerRadius } = element;
23867
23913
  let angleMargin = pixelMargin / outerRadius;
@@ -23988,7 +24034,7 @@ function drawArc(ctx, element, offset, spacing, circular) {
23988
24034
  }
23989
24035
  function drawBorder(ctx, element, offset, spacing, circular) {
23990
24036
  const { fullCircles, startAngle, circumference, options } = element;
23991
- const { borderWidth, borderJoinStyle, borderDash, borderDashOffset } = options;
24037
+ const { borderWidth, borderJoinStyle, borderDash, borderDashOffset, borderRadius } = options;
23992
24038
  const inner = options.borderAlign === "inner";
23993
24039
  if (!borderWidth) {
23994
24040
  return;
@@ -24015,21 +24061,46 @@ function drawBorder(ctx, element, offset, spacing, circular) {
24015
24061
  if (inner) {
24016
24062
  clipArc(ctx, element, endAngle);
24017
24063
  }
24064
+ if (options.selfJoin && endAngle - startAngle >= PI && borderRadius === 0 && borderJoinStyle !== "miter") {
24065
+ clipSelf(ctx, element, endAngle);
24066
+ }
24018
24067
  if (!fullCircles) {
24019
24068
  pathArc(ctx, element, offset, spacing, endAngle, circular);
24020
24069
  ctx.stroke();
24021
24070
  }
24022
24071
  }
24023
24072
  class ArcElement extends Element {
24073
+ static id = "arc";
24074
+ static defaults = {
24075
+ borderAlign: "center",
24076
+ borderColor: "#fff",
24077
+ borderDash: [],
24078
+ borderDashOffset: 0,
24079
+ borderJoinStyle: void 0,
24080
+ borderRadius: 0,
24081
+ borderWidth: 2,
24082
+ offset: 0,
24083
+ spacing: 0,
24084
+ angle: void 0,
24085
+ circular: true,
24086
+ selfJoin: false
24087
+ };
24088
+ static defaultRoutes = {
24089
+ backgroundColor: "backgroundColor"
24090
+ };
24091
+ static descriptors = {
24092
+ _scriptable: true,
24093
+ _indexable: (name2) => name2 !== "borderDash"
24094
+ };
24095
+ circumference;
24096
+ endAngle;
24097
+ fullCircles;
24098
+ innerRadius;
24099
+ outerRadius;
24100
+ pixelMargin;
24101
+ startAngle;
24024
24102
  constructor(cfg) {
24025
24103
  super();
24026
- __publicField(this, "circumference");
24027
- __publicField(this, "endAngle");
24028
- __publicField(this, "fullCircles");
24029
- __publicField(this, "innerRadius");
24030
- __publicField(this, "outerRadius");
24031
- __publicField(this, "pixelMargin");
24032
- __publicField(this, "startAngle");
24033
24104
  this.options = void 0;
24034
24105
  this.circumference = void 0;
24035
24106
  this.startAngle = void 0;
@@ -24107,27 +24178,6 @@ class ArcElement extends Element {
24107
24178
  ctx.restore();
24108
24179
  }
24109
24180
  }
24110
- __publicField(ArcElement, "id", "arc");
24111
- __publicField(ArcElement, "defaults", {
24112
- borderAlign: "center",
24113
- borderColor: "#fff",
24114
- borderDash: [],
24115
- borderDashOffset: 0,
24116
- borderJoinStyle: void 0,
24117
- borderRadius: 0,
24118
- borderWidth: 2,
24119
- offset: 0,
24120
- spacing: 0,
24121
- angle: void 0,
24122
- circular: true
24123
- });
24124
- __publicField(ArcElement, "defaultRoutes", {
24125
- backgroundColor: "backgroundColor"
24126
- });
24127
- __publicField(ArcElement, "descriptors", {
24128
- _scriptable: true,
24129
- _indexable: (name2) => name2 !== "borderDash"
24130
- });
24131
24181
  function inRange$1(el, pos, axis, useFinalPosition) {
24132
24182
  const options = el.options;
24133
24183
  const { [axis]: value } = el.getProps([
@@ -24136,11 +24186,31 @@ function inRange$1(el, pos, axis, useFinalPosition) {
24136
24186
  return Math.abs(pos - value) < options.radius + options.hitRadius;
24137
24187
  }
24138
24188
  class PointElement extends Element {
24189
+ static id = "point";
24190
+ parsed;
24191
+ skip;
24192
+ stop;
24193
+ /**
24194
+ * @type {any}
24195
+ */
24196
+ static defaults = {
24197
+ borderWidth: 1,
24198
+ hitRadius: 1,
24199
+ hoverBorderWidth: 1,
24200
+ hoverRadius: 4,
24201
+ pointStyle: "circle",
24202
+ radius: 3,
24203
+ rotation: 0
24204
+ };
24205
+ /**
24206
+ * @type {any}
24207
+ */
24208
+ static defaultRoutes = {
24209
+ backgroundColor: "backgroundColor",
24210
+ borderColor: "borderColor"
24211
+ };
24139
24212
  constructor(cfg) {
24140
24213
  super();
24141
- __publicField(this, "parsed");
24142
- __publicField(this, "skip");
24143
- __publicField(this, "stop");
24144
24214
  this.options = void 0;
24145
24215
  this.parsed = void 0;
24146
24216
  this.skip = void 0;
@@ -24195,26 +24265,6 @@ class PointElement extends Element {
24195
24265
  return options.radius + options.hitRadius;
24196
24266
  }
24197
24267
  }
24198
- __publicField(PointElement, "id", "point");
24199
- /**
24200
- * @type {any}
24201
- */
24202
- __publicField(PointElement, "defaults", {
24203
- borderWidth: 1,
24204
- hitRadius: 1,
24205
- hoverBorderWidth: 1,
24206
- hoverRadius: 4,
24207
- pointStyle: "circle",
24208
- radius: 3,
24209
- rotation: 0
24210
- });
24211
- /**
24212
- * @type {any}
24213
- */
24214
- __publicField(PointElement, "defaultRoutes", {
24215
- backgroundColor: "backgroundColor",
24216
- borderColor: "borderColor"
24217
- });
24218
24268
  function getBarBounds(bar, useFinalPosition) {
24219
24269
  const { x, y, base: base2, width, height } = bar.getProps([
24220
24270
  "x",
@@ -24329,6 +24379,18 @@ function inflateRect(rect, amount, refRect = {}) {
24329
24379
  };
24330
24380
  }
24331
24381
  class BarElement extends Element {
24382
+ static id = "bar";
24383
+ static defaults = {
24384
+ borderSkipped: "start",
24385
+ borderWidth: 0,
24386
+ borderRadius: 0,
24387
+ inflateAmount: "auto",
24388
+ pointStyle: void 0
24389
+ };
24390
+ static defaultRoutes = {
24391
+ backgroundColor: "backgroundColor",
24392
+ borderColor: "borderColor"
24393
+ };
24332
24394
  constructor(cfg) {
24333
24395
  super();
24334
24396
  this.options = void 0;
@@ -24385,18 +24447,6 @@ class BarElement extends Element {
24385
24447
  return axis === "x" ? this.width / 2 : this.height / 2;
24386
24448
  }
24387
24449
  }
24388
- __publicField(BarElement, "id", "bar");
24389
- __publicField(BarElement, "defaults", {
24390
- borderSkipped: "start",
24391
- borderWidth: 0,
24392
- borderRadius: 0,
24393
- inflateAmount: "auto",
24394
- pointStyle: void 0
24395
- });
24396
- __publicField(BarElement, "defaultRoutes", {
24397
- backgroundColor: "backgroundColor",
24398
- borderColor: "borderColor"
24399
- });
24400
24450
  const INTERVALS = {
24401
24451
  millisecond: {
24402
24452
  common: true,
@@ -24533,6 +24583,26 @@ function ticksFromTimestamps(scale, values, majorUnit) {
24533
24583
  return ilen === 0 || !majorUnit ? ticks : setMajorTicks(scale, ticks, map3, majorUnit);
24534
24584
  }
24535
24585
  class TimeScale extends Scale {
24586
+ static id = "time";
24587
+ static defaults = {
24588
+ bounds: "data",
24589
+ adapters: {},
24590
+ time: {
24591
+ parser: false,
24592
+ unit: false,
24593
+ round: false,
24594
+ isoWeekday: false,
24595
+ minUnit: "millisecond",
24596
+ displayFormats: {}
24597
+ },
24598
+ ticks: {
24599
+ source: "auto",
24600
+ callback: false,
24601
+ major: {
24602
+ enabled: false
24603
+ }
24604
+ }
24605
+ };
24536
24606
  constructor(props2) {
24537
24607
  super(props2);
24538
24608
  this._cache = {
@@ -24799,26 +24869,6 @@ class TimeScale extends Scale {
24799
24869
  return _arrayUnique(values.sort(sorter));
24800
24870
  }
24801
24871
  }
24802
- __publicField(TimeScale, "id", "time");
24803
- __publicField(TimeScale, "defaults", {
24804
- bounds: "data",
24805
- adapters: {},
24806
- time: {
24807
- parser: false,
24808
- unit: false,
24809
- round: false,
24810
- isoWeekday: false,
24811
- minUnit: "millisecond",
24812
- displayFormats: {}
24813
- },
24814
- ticks: {
24815
- source: "auto",
24816
- callback: false,
24817
- major: {
24818
- enabled: false
24819
- }
24820
- }
24821
- });
24822
24872
  function interpolate(table, val, reverse) {
24823
24873
  let lo = 0;
24824
24874
  let hi = table.length - 1;
@@ -24840,6 +24890,8 @@ function interpolate(table, val, reverse) {
24840
24890
  return span ? prevTarget + (nextTarget - prevTarget) * (val - prevSource) / span : prevTarget;
24841
24891
  }
24842
24892
  class TimeSeriesScale extends TimeScale {
24893
+ static id = "timeseries";
24894
+ static defaults = TimeScale.defaults;
24843
24895
  constructor(props2) {
24844
24896
  super(props2);
24845
24897
  this._table = [];
@@ -24925,8 +24977,6 @@ class TimeSeriesScale extends TimeScale {
24925
24977
  return interpolate(this._table, decimal * this._tableRange + this._minPos, true);
24926
24978
  }
24927
24979
  }
24928
- __publicField(TimeSeriesScale, "id", "timeseries");
24929
- __publicField(TimeSeriesScale, "defaults", TimeScale.defaults);
24930
24980
  /*!
24931
24981
  * chartjs-plugin-datalabels v2.2.0
24932
24982
  * https://chartjs-plugin-datalabels.netlify.app
@@ -25629,8 +25679,9 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
25629
25679
  __name: "Edit",
25630
25680
  props: {
25631
25681
  element: {},
25682
+ isDragged: { type: Boolean },
25632
25683
  isFocused: { type: Boolean },
25633
- isDisabled: { type: Boolean }
25684
+ isReadonly: { type: Boolean }
25634
25685
  },
25635
25686
  emits: ["save"],
25636
25687
  setup(__props) {
@@ -25640,7 +25691,7 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
25640
25691
  return openBlock(), createElementBlock("div", _hoisted_1$1, [
25641
25692
  !_ctx.element.data.url ? (openBlock(), createBlock(unref(_sfc_main$3), {
25642
25693
  key: 0,
25643
- "is-disabled": _ctx.isDisabled,
25694
+ "is-disabled": _ctx.isReadonly,
25644
25695
  "is-focused": _ctx.isFocused,
25645
25696
  name: `${unref(index_default).name} component`,
25646
25697
  "active-icon": "mdi-arrow-up",
@@ -25667,7 +25718,7 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
25667
25718
  };
25668
25719
  }
25669
25720
  });
25670
- const Edit = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["__scopeId", "data-v-3d1ca580"]]);
25721
+ const Edit = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["__scopeId", "data-v-d53be3ce"]]);
25671
25722
  const _sfc_main$1 = /* @__PURE__ */ defineComponent({
25672
25723
  __name: "SideToolbar",
25673
25724
  props: {
@@ -25720,12 +25771,11 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
25720
25771
  emit2("save", elementData);
25721
25772
  };
25722
25773
  return (_ctx, _cache) => {
25723
- var _a;
25724
25774
  return openBlock(), createElementBlock("div", _hoisted_1, [
25725
25775
  createVNode(unref(_sfc_main$4), {
25726
25776
  extensions: [".png", ".jpg", ".jpeg"],
25727
25777
  "public-url": _ctx.element.data.url,
25728
- url: (_a = _ctx.element.data.assets) == null ? void 0 : _a.url,
25778
+ url: _ctx.element.data.assets?.url,
25729
25779
  class: "mx-auto",
25730
25780
  "upload-label": "Upload image",
25731
25781
  onInput: save2
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "description": "Tailor CMS image element authoring component",
4
4
  "author": "Studion <info@gostudion.com> (https://github.com/tailor-cms)",
5
5
  "type": "module",
6
- "version": "1.0.4",
6
+ "version": "1.1.0",
7
7
  "exports": {
8
8
  ".": {
9
9
  "import": "./dist/index.js",
@@ -19,17 +19,17 @@
19
19
  "vue": "^3.5.13"
20
20
  },
21
21
  "devDependencies": {
22
- "@tailor-cms/eslint-config": "0.0.2",
22
+ "@tailor-cms/eslint-config": "1.1.2",
23
23
  "@types/lodash-es": "^4.17.12",
24
- "@vitejs/plugin-vue": "^5.2.1",
25
- "typescript": "^5.7.3",
26
- "vite": "^6.1.0",
27
- "vue-tsc": "^2.2.0",
28
- "@tailor-cms/ce-image-manifest": "1.0.4"
24
+ "@vitejs/plugin-vue": "^6.0.0",
25
+ "typescript": "^5.8.3",
26
+ "vite": "^7.0.3",
27
+ "vue-tsc": "^3.0.1",
28
+ "@tailor-cms/ce-image-manifest": "1.1.0"
29
29
  },
30
30
  "dependencies": {
31
- "@tailor-cms/cek-common": "^0.0.3",
32
- "@tailor-cms/core-components": "^1.0.40",
31
+ "@tailor-cms/cek-common": "^1.3.2",
32
+ "@tailor-cms/core-components": "^1.2.0",
33
33
  "lodash-es": "^4.17.21"
34
34
  },
35
35
  "publishConfig": {
@@ -37,8 +37,11 @@
37
37
  },
38
38
  "scripts": {
39
39
  "dev": "vite build --watch",
40
- "build": "vue-tsc && vite build",
41
- "lint": "eslint --ext .js,.ts,.vue ./src",
42
- "lint:fix": "pnpm lint --fix"
40
+ "build": "pnpm nuke:dist && vue-tsc && vite build",
41
+ "lint": "eslint ./src",
42
+ "lint:fix": "pnpm lint --fix",
43
+ "nuke": "pnpm dlx del-cli dist node_modules",
44
+ "nuke:dist": "pnpm dlx del-cli dist",
45
+ "prepublish": "pnpm build"
43
46
  }
44
47
  }