@syntrologie/adapt-faq 2.8.0-canary.217 → 2.8.0-canary.218

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.
@@ -84,6 +84,9 @@ export declare class FAQAccordionEditableElement extends LitElement {
84
84
  _expandedId: {
85
85
  state: boolean;
86
86
  };
87
+ _containerHovered: {
88
+ state: boolean;
89
+ };
87
90
  };
88
91
  faqConfig: FAQConfig;
89
92
  /** Null when loaded without an editor context — renders read-only accordion. */
@@ -111,6 +114,7 @@ export declare class FAQAccordionEditableElement extends LitElement {
111
114
  liveRegion: HTMLElement | null;
112
115
  _hoveredId: string | null;
113
116
  _expandedId: string | null;
117
+ _containerHovered: boolean;
114
118
  private _sortableHandle;
115
119
  createRenderRoot(): this;
116
120
  connectedCallback(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"FAQWidgetLit.editable.d.ts","sourceRoot":"","sources":["../src/FAQWidgetLit.editable.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH,OAAO,EAAQ,UAAU,EAAW,MAAM,KAAK,CAAC;AAEhD,OAAO,KAAK,EAAE,SAAS,EAAqB,MAAM,SAAS,CAAC;AAM5D;;;;;;;GAOG;AACH,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAClE,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvD,WAAW,IAAI,OAAO,CAAC;IACvB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3E;AAMD,sCAAsC;AACtC,MAAM,WAAW,cAAc;IAC7B,OAAO,IAAI,IAAI,CAAC;CACjB;AAED,gFAAgF;AAChF,MAAM,WAAW,eAAe;IAC9B,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,MAAM,EAAE,CAAC;IACzB,SAAS,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IACxC,UAAU,EAAE,WAAW,CAAC;CACzB;AAED;;;GAGG;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,eAAe,KAAK,cAAc,CAAC;AAqJtF;;;;;;GAMG;AACH,qBAAa,2BAA4B,SAAQ,UAAU;IAKzD,OAAgB,UAAU;;;;;;;;;;;;;;;;MAQxB;IAMF,SAAS,EAAE,SAAS,CAKlB;IAEF,gFAAgF;IAChF,UAAU,EAAE,cAAc,GAAG,IAAI,CAAQ;IAEzC;;;;OAIG;IACH,MAAM,SAAM;IAEZ;;;;;;OAMG;IACH,QAAQ,EAAE,UAAU,GAAG,IAAI,CAAQ;IAEnC;;;;;OAKG;IACH,UAAU,EAAE,WAAW,GAAG,IAAI,CAAQ;IAEtC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAQ;IACjC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAQ;IAMlC,OAAO,CAAC,eAAe,CAA+B;IAM7C,gBAAgB;IAIhB,iBAAiB,IAAI,IAAI;IASlC;;;;;OAKG;cACgB,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAQtD,oBAAoB,IAAI,IAAI;IAMrC,OAAO,CAAC,eAAe;IAuBvB,OAAO,CAAC,WAAW;IAMnB,OAAO,CAAC,kBAAkB;IAK1B,OAAO,CAAC,oBAAoB;IAM5B,OAAO,CAAC,aAAa;IAQrB,OAAO,CAAC,UAAU;IA2DT,MAAM;CA8DhB;AAcD;;;;;;GAMG;AACH,eAAO,MAAM,6BAA6B;qBAE3B,WAAW,WACb,SAAS,GAAG;QACnB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,UAAU,CAAC,EAAE,cAAc,GAAG,IAAI,CAAC;QACnC,mFAAmF;QACnF,QAAQ,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC;QAC7B,8EAA8E;QAC9E,UAAU,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;KACjC;CAkCJ,CAAC"}
1
+ {"version":3,"file":"FAQWidgetLit.editable.d.ts","sourceRoot":"","sources":["../src/FAQWidgetLit.editable.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH,OAAO,EAAQ,UAAU,EAAW,MAAM,KAAK,CAAC;AAEhD,OAAO,KAAK,EAAE,SAAS,EAAqB,MAAM,SAAS,CAAC;AAM5D;;;;;;;GAOG;AACH,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAClE,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvD,WAAW,IAAI,OAAO,CAAC;IACvB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3E;AAMD,sCAAsC;AACtC,MAAM,WAAW,cAAc;IAC7B,OAAO,IAAI,IAAI,CAAC;CACjB;AAED,gFAAgF;AAChF,MAAM,WAAW,eAAe;IAC9B,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,MAAM,EAAE,CAAC;IACzB,SAAS,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IACxC,UAAU,EAAE,WAAW,CAAC;CACzB;AAED;;;GAGG;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,eAAe,KAAK,cAAc,CAAC;AAuJtF;;;;;;GAMG;AACH,qBAAa,2BAA4B,SAAQ,UAAU;IAKzD,OAAgB,UAAU;;;;;;;;;;;;;;;;;;;MASxB;IAMF,SAAS,EAAE,SAAS,CAKlB;IAEF,gFAAgF;IAChF,UAAU,EAAE,cAAc,GAAG,IAAI,CAAQ;IAEzC;;;;OAIG;IACH,MAAM,SAAM;IAEZ;;;;;;OAMG;IACH,QAAQ,EAAE,UAAU,GAAG,IAAI,CAAQ;IAEnC;;;;;OAKG;IACH,UAAU,EAAE,WAAW,GAAG,IAAI,CAAQ;IAEtC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAQ;IACjC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAQ;IAClC,iBAAiB,UAAS;IAM1B,OAAO,CAAC,eAAe,CAA+B;IAM7C,gBAAgB;IAIhB,iBAAiB,IAAI,IAAI;IASlC;;;;;OAKG;cACgB,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAQtD,oBAAoB,IAAI,IAAI;IAMrC,OAAO,CAAC,eAAe;IAuBvB,OAAO,CAAC,WAAW;IAMnB,OAAO,CAAC,kBAAkB;IAK1B,OAAO,CAAC,oBAAoB;IAM5B,OAAO,CAAC,aAAa;IAQrB,OAAO,CAAC,UAAU;IA2DT,MAAM;CAuEhB;AAcD;;;;;;GAMG;AACH,eAAO,MAAM,6BAA6B;qBAE3B,WAAW,WACb,SAAS,GAAG;QACnB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,UAAU,CAAC,EAAE,cAAc,GAAG,IAAI,CAAC;QACnC,mFAAmF;QACnF,QAAQ,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC;QAC7B,8EAA8E;QAC9E,UAAU,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;KACjC;CAkCJ,CAAC"}
package/dist/editor.js CHANGED
@@ -5181,25 +5181,27 @@ var EMPTY_STYLE = {
5181
5181
  fontSize: "13px",
5182
5182
  textAlign: "center"
5183
5183
  };
5184
- var HEADER_STYLE = {
5185
- display: "flex",
5186
- alignItems: "center",
5187
- justifyContent: "flex-end",
5188
- padding: "8px 12px",
5189
- borderBottom: "1px solid rgba(0, 0, 0, 0.06)"
5190
- };
5191
- var SETTINGS_BTN_STYLE = {
5192
- display: "flex",
5193
- alignItems: "center",
5194
- gap: "4px",
5195
- padding: "4px 8px",
5184
+ var TILE_EDIT_BTN_STYLE = {
5185
+ position: "absolute",
5186
+ top: "8px",
5187
+ right: "8px",
5188
+ padding: "4px 6px",
5196
5189
  background: "transparent",
5197
5190
  border: "1px solid rgba(106, 89, 206, 0.3)",
5198
5191
  borderRadius: "4px",
5199
5192
  cursor: "pointer",
5200
- fontSize: "11px",
5193
+ fontSize: "12px",
5194
+ opacity: "0",
5195
+ transition: "opacity 0.15s ease",
5201
5196
  color: "rgb(106, 89, 206)",
5202
- fontFamily: "inherit"
5197
+ display: "flex",
5198
+ alignItems: "center",
5199
+ justifyContent: "center",
5200
+ zIndex: "1"
5201
+ };
5202
+ var TILE_EDIT_BTN_VISIBLE_STYLE = {
5203
+ ...TILE_EDIT_BTN_STYLE,
5204
+ opacity: "1"
5203
5205
  };
5204
5206
  var FAQAccordionEditableElement = class extends LitElement12 {
5205
5207
  constructor() {
@@ -5238,6 +5240,7 @@ var FAQAccordionEditableElement = class extends LitElement12 {
5238
5240
  this.liveRegion = null;
5239
5241
  this._hoveredId = null;
5240
5242
  this._expandedId = null;
5243
+ this._containerHovered = false;
5241
5244
  // -------------------------------------------------------------------------
5242
5245
  // Private sortable state
5243
5246
  // -------------------------------------------------------------------------
@@ -5376,21 +5379,27 @@ var FAQAccordionEditableElement = class extends LitElement12 {
5376
5379
  `;
5377
5380
  }
5378
5381
  if (hasController) {
5382
+ const editBtnStyle = this._containerHovered ? TILE_EDIT_BTN_VISIBLE_STYLE : TILE_EDIT_BTN_STYLE;
5379
5383
  return html13`
5380
5384
  <div
5381
- style=${styleMap4(sm(CONTAINER_STYLE))}
5385
+ style=${styleMap4(sm({ ...CONTAINER_STYLE, position: "relative" }))}
5382
5386
  data-adaptive-id="faq-editable"
5383
5387
  data-adaptive-type="adaptive-faq"
5388
+ @mouseenter=${() => {
5389
+ this._containerHovered = true;
5390
+ }}
5391
+ @mouseleave=${() => {
5392
+ this._containerHovered = false;
5393
+ }}
5384
5394
  >
5385
- <div style=${styleMap4(sm(HEADER_STYLE))}>
5386
- <button
5387
- type="button"
5388
- data-settings-btn
5389
- style=${styleMap4(sm(SETTINGS_BTN_STYLE))}
5390
- title="Edit tile settings"
5391
- @click=${() => this._handleContainerEdit()}
5392
- >⚙ Settings</button>
5393
- </div>
5395
+ <button
5396
+ type="button"
5397
+ data-settings-btn
5398
+ style=${styleMap4(sm(editBtnStyle))}
5399
+ title="Edit tile settings"
5400
+ aria-label="Edit tile settings"
5401
+ @click=${() => this._handleContainerEdit()}
5402
+ >✏️</button>
5394
5403
  ${items.map((item) => this._renderRow(item, showHandles))}
5395
5404
  </div>
5396
5405
  `;
@@ -5424,7 +5433,8 @@ FAQAccordionEditableElement.properties = {
5424
5433
  tileId: { attribute: false },
5425
5434
  // Internal hover state per item id
5426
5435
  _hoveredId: { state: true },
5427
- _expandedId: { state: true }
5436
+ _expandedId: { state: true },
5437
+ _containerHovered: { state: true }
5428
5438
  };
5429
5439
  if (!customElements.get("syntro-faq-accordion-editable")) {
5430
5440
  customElements.define("syntro-faq-accordion-editable", FAQAccordionEditableElement);