inline-style-editor 1.4.2 → 1.5.3

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.
@@ -2559,18 +2559,6 @@ function from_html(content, flags) {
2559
2559
  };
2560
2560
  }
2561
2561
 
2562
- /**
2563
- * Don't mark this as side-effect-free, hydration needs to walk all nodes
2564
- * @param {any} value
2565
- */
2566
- function text(value = '') {
2567
- {
2568
- var t = create_text(value + '');
2569
- assign_nodes(t, t);
2570
- return t;
2571
- }
2572
- }
2573
-
2574
2562
  function comment() {
2575
2563
 
2576
2564
  var frag = document.createDocumentFragment();
@@ -3278,6 +3266,63 @@ function link(state, prev, next) {
3278
3266
  }
3279
3267
  }
3280
3268
 
3269
+ /** @import { Effect, TemplateNode } from '#client' */
3270
+
3271
+ /**
3272
+ * @param {Element | Text | Comment} node
3273
+ * @param {() => string} get_value
3274
+ * @param {boolean} [svg]
3275
+ * @param {boolean} [mathml]
3276
+ * @param {boolean} [skip_warning]
3277
+ * @returns {void}
3278
+ */
3279
+ function html(node, get_value, svg = false, mathml = false, skip_warning = false) {
3280
+ var anchor = node;
3281
+
3282
+ var value = '';
3283
+
3284
+ template_effect(() => {
3285
+ var effect = /** @type {Effect} */ (active_effect);
3286
+
3287
+ if (value === (value = get_value() ?? '')) {
3288
+ return;
3289
+ }
3290
+
3291
+ if (effect.nodes_start !== null) {
3292
+ remove_effect_dom(effect.nodes_start, /** @type {TemplateNode} */ (effect.nodes_end));
3293
+ effect.nodes_start = effect.nodes_end = null;
3294
+ }
3295
+
3296
+ if (value === '') return;
3297
+
3298
+ var html = value + '';
3299
+ if (svg) html = `<svg>${html}</svg>`;
3300
+ else if (mathml) html = `<math>${html}</math>`;
3301
+
3302
+ // Don't use create_fragment_with_script_from_html here because that would mean script tags are executed.
3303
+ // @html is basically `.innerHTML = ...` and that doesn't execute scripts either due to security reasons.
3304
+ /** @type {DocumentFragment | Element} */
3305
+ var node = create_fragment_from_html(html);
3306
+
3307
+ if (svg || mathml) {
3308
+ node = /** @type {Element} */ (get_first_child(node));
3309
+ }
3310
+
3311
+ assign_nodes(
3312
+ /** @type {TemplateNode} */ (get_first_child(node)),
3313
+ /** @type {TemplateNode} */ (node.lastChild)
3314
+ );
3315
+
3316
+ if (svg || mathml) {
3317
+ while (get_first_child(node)) {
3318
+ anchor.before(/** @type {Node} */ (get_first_child(node)));
3319
+ }
3320
+ } else {
3321
+ anchor.before(node);
3322
+ }
3323
+ });
3324
+ }
3325
+
3281
3326
  const whitespace = [...' \t\n\r\f\u00a0\u000b\ufeff'];
3282
3327
 
3283
3328
  /**
@@ -5456,22 +5501,18 @@ function deleteElem(__2, currentElement, close) {
5456
5501
  var root_2 = from_html(`<span> </span>`);
5457
5502
  var root_1 = from_html(`<div class="select-tab"><b>Element</b> <!></div>`);
5458
5503
  var on_change = (e, selectRule) => selectRule(e.target.value);
5459
- var root_4 = from_html(`<option> </option>`);
5460
- var root_3 = from_html(`<select></select>`);
5461
- var root_6 = from_html(`<span> </span>`);
5462
- var root_8 = from_html(`<span> </span>`);
5463
-
5464
- var on_change_1 = async (e, choices) => {
5465
- (get(choices).selected = e.target.value);
5466
- await tick();
5467
- };
5468
-
5469
- var root_12 = from_html(`<option><!></option>`);
5470
- var root_11 = from_html(`<select></select>`);
5504
+ var root_5 = from_html(`<option> </option>`);
5505
+ var root_4 = from_html(`<select></select>`);
5506
+ var root_7 = from_html(`<span> </span>`);
5507
+ var root_3 = from_html(`<div class="select-tab"><b>Applied to:</b> <!></div>`);
5508
+ var root_10 = from_html(`<span> </span>`);
5509
+ var root_8 = from_html(`<div class="select-tab"><b>Property type:</b> <!></div>`);
5510
+ var root_14 = from_html(`<button><!></button>`);
5511
+ var root_13 = from_html(`<div class="icon-selector"></div> <span class="selected-label"> </span>`, 1);
5471
5512
  var root_15 = from_html(`<span> </span>`);
5472
5513
  var on_click = (__3, deleteProp, selectedName) => deleteProp(get(selectedName));
5473
5514
 
5474
- var on_change_2 = (
5515
+ var on_change_1 = (
5475
5516
  e,
5476
5517
  updateProp,
5477
5518
  selectedName,
@@ -5479,15 +5520,15 @@ var on_change_2 = (
5479
5520
  ) => updateProp(get(selectedName), e.target.value, get(allCurrentPropDefs)[get(selectedName)].suffix, e.target);
5480
5521
 
5481
5522
  var root_16 = from_html(`<input type="range"/> <span class="current-value"> </span>`, 1);
5482
- var on_change_3 = (e, updateProp, selectedName) => updateProp(get(selectedName), e.target.value);
5523
+ var on_change_2 = (e, updateProp, selectedName) => updateProp(get(selectedName), e.target.value);
5483
5524
  var root_19 = from_html(`<option selected="true">---</option>`);
5484
5525
  var root_20 = from_html(`<option> </option>`);
5485
5526
  var root_18 = from_html(`<select><!><!></select>`);
5486
- var root_10 = from_html(`<div><div class="prop-name"><!> <span class="delete">✕</span></div> <!></div>`);
5527
+ var root_12 = from_html(`<div><div class="prop-header"><div class="prop-name"><!></div> <button class="delete-btn" title="Reset to default"><svg viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="2"><path d="M4 4 L12 12 M12 4 L4 12"></path></svg></button></div> <!></div>`);
5487
5528
  var root_23 = from_html(`<div>Bring to front</div>`);
5488
5529
  var root_24 = from_html(`<div class="btn delete-elem">Delete element</div>`);
5489
- var root_9 = from_html(`<div class="editor"><!> <!> <!></div>`);
5490
- var root = from_html(`<div style="position: absolute;"></div> <svg class="ise-helper-wrapper" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><clipPath id="overlay-clip" clip-rule="evenodd"><path></path></clipPath><rect y="0" x="0" height="100%" width="100%" class="overlay-over"></rect></svg> <div class="ise"><div class="close-button">x</div> <!> <div class="select-tab"><b>Applied to:</b> <!></div> <div class="select-tab"><b>Property type:</b> <!></div> <!></div>`, 1);
5530
+ var root_11 = from_html(`<div class="editor"><!> <!> <!></div>`);
5531
+ var root = from_html(`<div style="position: absolute;"></div> <svg class="ise-helper-wrapper" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><clipPath id="overlay-clip" clip-rule="evenodd"><path></path></clipPath><rect y="0" x="0" height="100%" width="100%" class="overlay-over"></rect></svg> <div class="ise"><button class="close-button" title="Close"><svg viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="2.5"><path d="M4 4 L12 12 M12 4 L4 12"></path></svg></button> <!> <!> <!> <!></div>`, 1);
5491
5532
 
5492
5533
  function InlineStyleEditor$1($$anchor, $$props) {
5493
5534
  push($$props, true);
@@ -5504,7 +5545,8 @@ function InlineStyleEditor$1($$anchor, $$props) {
5504
5545
  "text",
5505
5546
  "textPath",
5506
5547
  "tref",
5507
- "tspan"
5548
+ "tspan",
5549
+ "g"
5508
5550
  ];
5509
5551
 
5510
5552
  const borderProps = [
@@ -5589,6 +5631,23 @@ function InlineStyleEditor$1($$anchor, $$props) {
5589
5631
  },
5590
5632
  "background-color": { type: "color" }
5591
5633
  };
5634
+
5635
+ const propertyIcons = {
5636
+ stroke: `<svg viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round"><line x1="2" y1="14" x2="14" y2="2"/></svg>`,
5637
+ fill: `<svg viewBox="0 0 16 16" fill="currentColor"><rect x="2" y="2" width="12" height="12" rx="2"/></svg>`,
5638
+ color: `<svg viewBox="0 0 16 16" fill="currentColor"><text x="3" y="11" font-size="10" font-weight="bold">A</text><rect x="2" y="13" width="12" height="2"/></svg>`,
5639
+ "border-color": `<svg viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.5"><rect x="2" y="2" width="12" height="12" rx="1"/></svg>`,
5640
+ "background-color": `<svg viewBox="0 0 16 16" fill="currentColor"><rect x="4" y="4" width="10" height="10" rx="1" opacity="0.5"/><rect x="2" y="2" width="10" height="10" rx="1"/></svg>`,
5641
+ "border-radius": `<svg viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.5"><path d="M2 10 L2 2 L10 2" stroke-linecap="round"/><path d="M2 10 Q2 14 6 14 L14 14" stroke-linecap="round"/></svg>`,
5642
+ "border-width": `<svg viewBox="0 0 16 16" fill="currentColor"><rect x="2" y="2" width="12" height="2"/><rect x="2" y="7" width="12" height="3"/><rect x="2" y="13" width="12" height="1"/></svg>`,
5643
+ "border-style": `<svg viewBox="0 0 16 16" fill="currentColor"><rect x="2" y="2" width="12" height="1.5"/><rect x="2" y="7" width="3" height="1.5"/><rect x="7" y="7" width="3" height="1.5"/><rect x="2" y="12" width="1.5" height="1.5"/><rect x="5" y="12" width="1.5" height="1.5"/><rect x="8" y="12" width="1.5" height="1.5"/><rect x="11" y="12" width="1.5" height="1.5"/></svg>`,
5644
+ "font-size": `<svg viewBox="0 0 16 16" fill="currentColor"><text x="1" y="12" font-size="12" font-weight="bold">T</text><text x="9" y="12" font-size="8" font-weight="bold">T</text></svg>`,
5645
+ "font-weight": `<svg viewBox="0 0 16 16" fill="currentColor"><text x="3" y="13" font-size="14" font-weight="bold">B</text></svg>`,
5646
+ "font-family": `<svg viewBox="0 0 16 16" fill="currentColor"><text x="4" y="13" font-size="14" font-style="italic" font-family="serif">F</text></svg>`,
5647
+ "stroke-width": `<svg viewBox="0 0 16 16" fill="currentColor"><rect x="2" y="2" width="12" height="2"/><rect x="2" y="7" width="12" height="3"/><rect x="2" y="13" width="12" height="1"/></svg>`,
5648
+ "stroke-dasharray": `<svg viewBox="0 0 16 16" fill="currentColor"><rect x="1" y="7" width="4" height="2"/><rect x="7" y="7" width="4" height="2"/><rect x="13" y="7" width="2" height="2"/></svg>`,
5649
+ "stroke-linejoin": `<svg viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="2" stroke-linejoin="round"><polyline points="3,12 8,4 13,12"/></svg>`
5650
+ };
5592
5651
  const getElems = $$props.getElems ?? null;
5593
5652
  const listenOnClick = $$props.listenOnClick ?? false;
5594
5653
  const onStyleChanged = $$props.onStyleChanged ?? (() => {});
@@ -5601,6 +5660,7 @@ function InlineStyleEditor$1($$anchor, $$props) {
5601
5660
  return cssRuleName;
5602
5661
  });
5603
5662
 
5663
+ const ignoredProps = $$props.ignoredProps ?? [];
5604
5664
  const typeText = "text";
5605
5665
  const typeBorder = "border";
5606
5666
  const typeStroke = "stroke";
@@ -5689,6 +5749,8 @@ function InlineStyleEditor$1($$anchor, $$props) {
5689
5749
  const allProps = { ...cssPropByType, ...customProps };
5690
5750
  const _allCurrentPropDefs = pick(allProps, propByType[get(curType)]);
5691
5751
 
5752
+ ignoredProps.forEach((prop) => delete _allCurrentPropDefs[prop]);
5753
+
5692
5754
  Object.keys(_allCurrentPropDefs).forEach((key) => {
5693
5755
  const propSelectType = _allCurrentPropDefs[key].type;
5694
5756
  let retrieveType = "number";
@@ -5711,30 +5773,39 @@ function InlineStyleEditor$1($$anchor, $$props) {
5711
5773
  }
5712
5774
  });
5713
5775
 
5714
- set(
5715
- propsByType,
5716
- Object.entries(_allCurrentPropDefs).reduce(
5717
- (byType, [propName, selectorDef]) => {
5718
- const selectorType = selectorDef.type;
5719
- const existing = byType.find((x) => x.type === selectorType);
5720
-
5721
- if (!existing) byType.push({
5722
- selected: 0,
5723
- props: [propName],
5724
- type: selectorType
5725
- }); else existing.props.push(propName);
5726
-
5727
- return byType;
5728
- },
5729
- []
5730
- ).sort((a, b) => {
5731
- if (inputTypeOrder[a.type] < inputTypeOrder[b.type]) return -1;
5732
- if (inputTypeOrder[a.type] > inputTypeOrder[b.type]) return 1;
5733
- return 0;
5734
- }),
5735
- true
5736
- );
5776
+ const _propsByType = Object.entries(_allCurrentPropDefs).reduce(
5777
+ (byType, [propName, selectorDef]) => {
5778
+ const selectorType = selectorDef.type;
5779
+ const existing = byType.find((x) => x.type === selectorType);
5780
+
5781
+ if (!existing) byType.push({
5782
+ selected: 0,
5783
+ props: [propName],
5784
+ type: selectorType
5785
+ }); else existing.props.push(propName);
5786
+
5787
+ return byType;
5788
+ },
5789
+ []
5790
+ ).sort((a, b) => {
5791
+ if (inputTypeOrder[a.type] < inputTypeOrder[b.type]) return -1;
5792
+ if (inputTypeOrder[a.type] > inputTypeOrder[b.type]) return 1;
5793
+ return 0;
5794
+ });
5737
5795
 
5796
+ // Pre-select fill over stroke if the element has a non-transparent fill
5797
+ const colorGroup = _propsByType.find((g) => g.type === "color");
5798
+
5799
+ if (colorGroup) {
5800
+ const fillIndex = colorGroup.props.indexOf("fill");
5801
+ const fillValue = _allCurrentPropDefs["fill"]?.value;
5802
+
5803
+ if (fillIndex !== -1 && fillValue && fillValue !== "#00000000") {
5804
+ colorGroup.selected = fillIndex;
5805
+ }
5806
+ }
5807
+
5808
+ set(propsByType, _propsByType, true);
5738
5809
  set(allCurrentPropDefs, _allCurrentPropDefs, true);
5739
5810
  updateHelpers();
5740
5811
  }
@@ -5803,7 +5874,7 @@ function InlineStyleEditor$1($$anchor, $$props) {
5803
5874
  const elem = elemDef[0];
5804
5875
  const types = [];
5805
5876
 
5806
- if (elem.firstChild && (elem.firstChild.nodeType === 3 || elem.firstChild.tagName === "tspan")) {
5877
+ if (elem.firstChild && (!elem.firstElementChild && elem.firstChild.nodeType === 3 || elem.firstChild.tagName === "tspan")) {
5807
5878
  // Node.TEXT_NODE
5808
5879
  types.push(typeText);
5809
5880
  }
@@ -6014,14 +6085,42 @@ function InlineStyleEditor$1($$anchor, $$props) {
6014
6085
  }
6015
6086
 
6016
6087
  function deleteProp(propName) {
6017
- if (get(currentRule) === "inline") {
6018
- get(currentElement).style.removeProperty(propName);
6088
+ const propDef = get(allCurrentPropDefs)[propName];
6089
+ const isCustomProp = propName in customProps;
6090
+
6091
+ // Check if custom prop has a defaultValue
6092
+ if (isCustomProp && propDef && "defaultValue" in customProps[propName]) {
6093
+ const defaultValue = customProps[propName].defaultValue;
6094
+
6095
+ if (propDef.setter) {
6096
+ propDef.setter(get(currentElement), defaultValue);
6097
+ }
6098
+
6099
+ propDef.value = defaultValue;
6100
+ propDef.displayed = defaultValue;
6101
+ onStyleChanged(get(currentElement), get(currentRule), propName, defaultValue);
6019
6102
  } else {
6020
- get(currentRule).style.removeProperty(propName);
6103
+ // Standard CSS property reset
6104
+ if (get(currentRule) === "inline") {
6105
+ get(currentElement).style.removeProperty(propName);
6106
+ } else {
6107
+ get(currentRule).style.removeProperty(propName);
6108
+ }
6109
+
6110
+ onStyleChanged(get(currentElement), get(currentRule), propName, null);
6111
+
6112
+ // Update the displayed value without rebuilding (which would reset selection)
6113
+ if (propDef) {
6114
+ const propSelectType = propDef.type;
6115
+ let retrieveType = "number";
6116
+
6117
+ if (propSelectType === "color") retrieveType = "rgb"; else if (propSelectType === "select") retrieveType = "raw";
6118
+ propDef.displayed = getComputedPropValue(get(currentElement), propName, "raw");
6119
+ propDef.value = getComputedPropValue(get(currentElement), propName, retrieveType);
6120
+ }
6021
6121
  }
6022
6122
 
6023
- onStyleChanged(get(currentElement), get(currentRule), propName, null);
6024
- initAndGroup();
6123
+ updateHelpers();
6025
6124
  }
6026
6125
 
6027
6126
  function selectRule(ruleIndex) {
@@ -6048,16 +6147,16 @@ function InlineStyleEditor$1($$anchor, $$props) {
6048
6147
  bind_this(svg, ($$value) => set(helperElemWrapper, $$value), () => get(helperElemWrapper));
6049
6148
 
6050
6149
  var div_1 = sibling(svg, 2);
6051
- var div_2 = child(div_1);
6150
+ var button = child(div_1);
6052
6151
 
6053
- div_2.__click = close;
6152
+ button.__click = close;
6054
6153
 
6055
- var node = sibling(div_2, 2);
6154
+ var node = sibling(button, 2);
6056
6155
 
6057
6156
  {
6058
6157
  var consequent = ($$anchor) => {
6059
- var div_3 = root_1();
6060
- var node_1 = sibling(child(div_3), 2);
6158
+ var div_2 = root_1();
6159
+ var node_1 = sibling(child(div_2), 2);
6061
6160
 
6062
6161
  each(node_1, 17, () => get(targetsToSearch), index, ($$anchor, $$item, elemIndex) => {
6063
6162
  var $$array = user_derived(() => to_array(get($$item), 2));
@@ -6086,7 +6185,7 @@ function InlineStyleEditor$1($$anchor, $$props) {
6086
6185
 
6087
6186
  append($$anchor, span);
6088
6187
  });
6089
- append($$anchor, div_3);
6188
+ append($$anchor, div_2);
6090
6189
  };
6091
6190
 
6092
6191
  if_block(node, ($$render) => {
@@ -6094,264 +6193,285 @@ function InlineStyleEditor$1($$anchor, $$props) {
6094
6193
  });
6095
6194
  }
6096
6195
 
6097
- var div_4 = sibling(node, 2);
6098
- var node_2 = sibling(child(div_4), 2);
6196
+ var node_2 = sibling(node, 2);
6099
6197
 
6100
6198
  {
6101
- var consequent_1 = ($$anchor) => {
6102
- var select = root_3();
6199
+ var consequent_2 = ($$anchor) => {
6200
+ var div_3 = root_3();
6201
+ var node_3 = sibling(child(div_3), 2);
6103
6202
 
6104
- select.__change = [on_change, selectRule];
6203
+ {
6204
+ var consequent_1 = ($$anchor) => {
6205
+ var select = root_4();
6105
6206
 
6106
- each(select, 21, () => getRuleNames(get(allRules)[get(selectedElemIndex)]), index, ($$anchor, ruleName, ruleIndex) => {
6107
- var option = root_4();
6207
+ select.__change = [on_change, selectRule];
6108
6208
 
6109
- option.value = option.__value = ruleIndex;
6209
+ each(select, 21, () => getRuleNames(get(allRules)[get(selectedElemIndex)]), index, ($$anchor, ruleName, ruleIndex) => {
6210
+ var option = root_5();
6110
6211
 
6111
- var text_1 = child(option);
6212
+ option.value = option.__value = ruleIndex;
6112
6213
 
6113
- template_effect(
6114
- ($0) => {
6115
- set_selected(option, get(selectedRuleIndex) === ruleIndex);
6116
- set_text(text_1, $0);
6117
- },
6118
- [
6119
- () => getCssRuleName(get(ruleName), get(clickedElement))
6120
- ]
6121
- );
6122
-
6123
- append($$anchor, option);
6124
- });
6125
- append($$anchor, select);
6126
- };
6214
+ var text_1 = child(option);
6127
6215
 
6128
- var alternate = ($$anchor) => {
6129
- var fragment_1 = comment();
6130
- var node_3 = first_child(fragment_1);
6216
+ template_effect(
6217
+ ($0) => {
6218
+ set_selected(option, get(selectedRuleIndex) === ruleIndex);
6219
+ set_text(text_1, $0);
6220
+ },
6221
+ [
6222
+ () => getCssRuleName(get(ruleName), get(clickedElement))
6223
+ ]
6224
+ );
6131
6225
 
6132
- each(node_3, 17, () => getRuleNames(get(allRules)[get(selectedElemIndex)]), index, ($$anchor, ruleName, ruleIndex) => {
6133
- var span_1 = root_6();
6134
-
6135
- span_1.__click = () => {
6136
- selectRule(ruleIndex);
6226
+ append($$anchor, option);
6227
+ });
6228
+ append($$anchor, select);
6137
6229
  };
6138
6230
 
6139
- let classes_1;
6140
- var text_2 = child(span_1);
6141
-
6142
- template_effect(
6143
- ($0, $1) => {
6144
- set_attribute(span_1, 'title', get(ruleName));
6145
- classes_1 = set_class(span_1, 1, '', null, classes_1, $0);
6146
- set_text(text_2, $1);
6147
- },
6148
- [
6149
- () => ({
6150
- selected: get(selectedRuleIndex) === ruleIndex
6151
- }),
6152
- () => getCssRuleName(get(ruleName), get(clickedElement))
6153
- ]
6154
- );
6231
+ var alternate = ($$anchor) => {
6232
+ var fragment_1 = comment();
6233
+ var node_4 = first_child(fragment_1);
6234
+
6235
+ each(node_4, 17, () => getRuleNames(get(allRules)[get(selectedElemIndex)]), index, ($$anchor, ruleName, ruleIndex) => {
6236
+ var span_1 = root_7();
6237
+
6238
+ span_1.__click = () => {
6239
+ selectRule(ruleIndex);
6240
+ };
6241
+
6242
+ let classes_1;
6243
+ var text_2 = child(span_1);
6244
+
6245
+ template_effect(
6246
+ ($0, $1) => {
6247
+ set_attribute(span_1, 'title', get(ruleName));
6248
+ classes_1 = set_class(span_1, 1, '', null, classes_1, $0);
6249
+ set_text(text_2, $1);
6250
+ },
6251
+ [
6252
+ () => ({
6253
+ selected: get(selectedRuleIndex) === ruleIndex
6254
+ }),
6255
+ () => getCssRuleName(get(ruleName), get(clickedElement))
6256
+ ]
6257
+ );
6258
+
6259
+ append($$anchor, span_1);
6260
+ });
6155
6261
 
6156
- append($$anchor, span_1);
6157
- });
6262
+ append($$anchor, fragment_1);
6263
+ };
6158
6264
 
6159
- append($$anchor, fragment_1);
6265
+ if_block(node_3, ($$render) => {
6266
+ if (nbChars(getRuleNamesTransformed(get(allRules)[get(selectedElemIndex)])) > 30) $$render(consequent_1); else $$render(alternate, false);
6267
+ });
6268
+ }
6269
+ append($$anchor, div_3);
6160
6270
  };
6161
6271
 
6162
6272
  if_block(node_2, ($$render) => {
6163
- if (nbChars(getRuleNamesTransformed(get(allRules)[get(selectedElemIndex)])) > 30) $$render(consequent_1); else $$render(alternate, false);
6273
+ if (get(allRules)[get(selectedElemIndex)]?.length > 1) $$render(consequent_2);
6164
6274
  });
6165
6275
  }
6166
6276
 
6167
- var div_5 = sibling(div_4, 2);
6168
- var node_4 = sibling(child(div_5), 2);
6169
-
6170
- each(node_4, 17, () => get(allTypes)[get(selectedElemIndex)] || [], index, ($$anchor, type, typeIndex) => {
6171
- var fragment_2 = comment();
6172
- var node_5 = first_child(fragment_2);
6277
+ var node_5 = sibling(node_2, 2);
6173
6278
 
6174
- {
6175
- var consequent_2 = ($$anchor) => {
6176
- var span_2 = root_8();
6177
-
6178
- span_2.__click = () => {
6179
- set(selectedTypeIndex, typeIndex, true);
6180
- };
6279
+ {
6280
+ var consequent_4 = ($$anchor) => {
6281
+ var div_4 = root_8();
6282
+ var node_6 = sibling(child(div_4), 2);
6181
6283
 
6182
- let classes_2;
6183
- var text_3 = child(span_2);
6284
+ each(node_6, 17, () => get(allTypes)[get(selectedElemIndex)] || [], index, ($$anchor, type, typeIndex) => {
6285
+ var fragment_2 = comment();
6286
+ var node_7 = first_child(fragment_2);
6184
6287
 
6185
- template_effect(
6186
- ($0, $1) => {
6187
- classes_2 = set_class(span_2, 1, '', null, classes_2, $0);
6188
- set_text(text_3, $1);
6189
- },
6190
- [
6191
- () => ({
6192
- selected: get(selectedTypeIndex) === typeIndex
6193
- }),
6194
- () => get(type) === "stroke" ? "SVG paint" : capitalizeFirstLetter(get(type))
6195
- ]
6196
- );
6288
+ {
6289
+ var consequent_3 = ($$anchor) => {
6290
+ var span_2 = root_10();
6291
+
6292
+ span_2.__click = () => {
6293
+ set(selectedTypeIndex, typeIndex, true);
6294
+ };
6295
+
6296
+ let classes_2;
6297
+ var text_3 = child(span_2);
6298
+
6299
+ template_effect(
6300
+ ($0, $1) => {
6301
+ classes_2 = set_class(span_2, 1, '', null, classes_2, $0);
6302
+ set_text(text_3, $1);
6303
+ },
6304
+ [
6305
+ () => ({
6306
+ selected: get(selectedTypeIndex) === typeIndex
6307
+ }),
6308
+ () => get(type) === "stroke" ? "SVG paint" : capitalizeFirstLetter(get(type))
6309
+ ]
6310
+ );
6311
+
6312
+ append($$anchor, span_2);
6313
+ };
6197
6314
 
6198
- append($$anchor, span_2);
6199
- };
6315
+ if_block(node_7, ($$render) => {
6316
+ if (get(type) !== "custom" || get(currentRule) === "inline" && get(type) === "custom" && get(hasDisplayedCustom)) $$render(consequent_3);
6317
+ });
6318
+ }
6200
6319
 
6201
- if_block(node_5, ($$render) => {
6202
- if (get(type) !== "custom" || get(currentRule) === "inline" && get(type) === "custom" && get(hasDisplayedCustom)) $$render(consequent_2);
6320
+ append($$anchor, fragment_2);
6203
6321
  });
6204
- }
6322
+ append($$anchor, div_4);
6323
+ };
6205
6324
 
6206
- append($$anchor, fragment_2);
6207
- });
6325
+ if_block(node_5, ($$render) => {
6326
+ if ((get(allTypes)[get(selectedElemIndex)] || []).filter((t) => t !== "custom" || get(currentRule) === "inline" && get(hasDisplayedCustom)).length > 1) $$render(consequent_4);
6327
+ });
6328
+ }
6208
6329
 
6209
- var node_6 = sibling(div_5, 2);
6330
+ var node_8 = sibling(node_5, 2);
6210
6331
 
6211
6332
  {
6212
- var consequent_11 = ($$anchor) => {
6213
- var div_6 = root_9();
6214
- var node_7 = child(div_6);
6333
+ var consequent_12 = ($$anchor) => {
6334
+ var div_5 = root_11();
6335
+ var node_9 = child(div_5);
6215
6336
 
6216
- each(node_7, 17, () => get(propsByType), index, ($$anchor, choices, $$index_6) => {
6217
- var div_7 = root_10();
6337
+ each(node_9, 17, () => get(propsByType), index, ($$anchor, choices, $$index_6) => {
6338
+ var div_6 = root_12();
6218
6339
  const selectedName = user_derived(() => get(choices).props[get(choices).selected]);
6340
+ var div_7 = child(div_6);
6219
6341
  var div_8 = child(div_7);
6220
- var node_8 = child(div_8);
6342
+ var node_10 = child(div_8);
6221
6343
 
6222
6344
  {
6223
- var consequent_4 = ($$anchor) => {
6224
- var select_1 = root_11();
6225
-
6226
- select_1.__change = [on_change_1, choices];
6227
-
6228
- each(select_1, 21, () => get(choices).props, index, ($$anchor, propName, i) => {
6229
- var option_1 = root_12();
6345
+ var consequent_5 = ($$anchor) => {
6346
+ var fragment_3 = root_13();
6347
+ var div_9 = first_child(fragment_3);
6230
6348
 
6231
- option_1.value = option_1.__value = i;
6349
+ each(div_9, 21, () => get(choices).props, index, ($$anchor, propName, i) => {
6350
+ var button_1 = root_14();
6351
+ let classes_3;
6232
6352
 
6233
- var node_9 = child(option_1);
6353
+ button_1.__click = async () => {
6354
+ (get(choices).selected = i);
6355
+ await tick();
6356
+ };
6234
6357
 
6235
- {
6236
- var consequent_3 = ($$anchor) => {
6237
- var text_4 = text();
6358
+ var node_11 = child(button_1);
6238
6359
 
6239
- template_effect(($0) => set_text(text_4, `${$0 ?? ''} color`), [
6240
- () => capitalizeFirstLetter(get(propName))
6241
- ]);
6360
+ html(node_11, () => propertyIcons[get(propName)]);
6242
6361
 
6243
- append($$anchor, text_4);
6244
- };
6362
+ template_effect(
6363
+ ($0, $1) => {
6364
+ classes_3 = set_class(button_1, 1, 'icon-btn', null, classes_3, $0);
6365
+ set_attribute(button_1, 'title', $1);
6366
+ },
6367
+ [
6368
+ () => ({ selected: i === get(choices).selected }),
6369
+ () => get(choices).type === "color" ? `${capitalizeFirstLetter(get(propName))} color` : pascalCaseToSentence(get(propName))
6370
+ ]
6371
+ );
6245
6372
 
6246
- var alternate_1 = ($$anchor) => {
6247
- var text_5 = text();
6373
+ append($$anchor, button_1);
6374
+ });
6248
6375
 
6249
- template_effect(($0) => set_text(text_5, $0), [
6250
- () => pascalCaseToSentence(get(propName))
6251
- ]);
6376
+ var span_3 = sibling(div_9, 2);
6377
+ var text_4 = child(span_3);
6252
6378
 
6253
- append($$anchor, text_5);
6254
- };
6379
+ template_effect(($0) => set_text(text_4, $0), [
6380
+ () => get(choices).type === "color" ? `${capitalizeFirstLetter(get(selectedName))} color` : pascalCaseToSentence(get(selectedName))
6381
+ ]);
6255
6382
 
6256
- if_block(node_9, ($$render) => {
6257
- if (get(choices).type === "color") $$render(consequent_3); else $$render(alternate_1, false);
6258
- });
6259
- }
6260
- template_effect(() => set_selected(option_1, i === get(choices).selected));
6261
- append($$anchor, option_1);
6262
- });
6263
- append($$anchor, select_1);
6383
+ append($$anchor, fragment_3);
6264
6384
  };
6265
6385
 
6266
- var alternate_2 = ($$anchor) => {
6267
- var span_3 = root_15();
6268
- var text_6 = child(span_3);
6386
+ var alternate_1 = ($$anchor) => {
6387
+ var span_4 = root_15();
6388
+ var text_5 = child(span_4);
6269
6389
 
6270
- template_effect(($0) => set_text(text_6, $0), [
6390
+ template_effect(($0) => set_text(text_5, $0), [
6271
6391
  () => pascalCaseToSentence(get(selectedName))
6272
6392
  ]);
6273
6393
 
6274
- append($$anchor, span_3);
6394
+ append($$anchor, span_4);
6275
6395
  };
6276
6396
 
6277
- if_block(node_8, ($$render) => {
6278
- if (get(choices).props.length > 1) $$render(consequent_4); else $$render(alternate_2, false);
6397
+ if_block(node_10, ($$render) => {
6398
+ if (get(choices).props.length > 1) $$render(consequent_5); else $$render(alternate_1, false);
6279
6399
  });
6280
6400
  }
6281
6401
 
6282
- var span_4 = sibling(node_8, 2);
6402
+ var button_2 = sibling(div_8, 2);
6283
6403
 
6284
- span_4.__click = [on_click, deleteProp, selectedName];
6404
+ button_2.__click = [on_click, deleteProp, selectedName];
6285
6405
 
6286
- var node_10 = sibling(div_8, 2);
6406
+ var node_12 = sibling(div_7, 2);
6287
6407
 
6288
6408
  {
6289
- var consequent_5 = ($$anchor) => {
6290
- var fragment_5 = root_16();
6291
- var input = first_child(fragment_5);
6409
+ var consequent_6 = ($$anchor) => {
6410
+ var fragment_4 = root_16();
6411
+ var input = first_child(fragment_4);
6292
6412
 
6293
6413
  input.__change = [
6294
- on_change_2,
6414
+ on_change_1,
6295
6415
  updateProp,
6296
6416
  selectedName,
6297
6417
  allCurrentPropDefs
6298
6418
  ];
6299
6419
 
6300
6420
  var span_5 = sibling(input, 2);
6301
- var text_7 = child(span_5);
6421
+ var text_6 = child(span_5);
6302
6422
 
6303
6423
  template_effect(() => {
6304
6424
  set_attribute(input, 'min', get(allCurrentPropDefs)[get(selectedName)].min);
6305
6425
  set_attribute(input, 'max', get(allCurrentPropDefs)[get(selectedName)].max);
6306
6426
  set_attribute(input, 'step', get(allCurrentPropDefs)[get(selectedName)].step || 1);
6307
6427
  set_value(input, get(allCurrentPropDefs)[get(selectedName)].value);
6308
- set_text(text_7, get(allCurrentPropDefs)[get(selectedName)].displayed);
6428
+ set_text(text_6, get(allCurrentPropDefs)[get(selectedName)].displayed);
6309
6429
  });
6310
6430
 
6311
- append($$anchor, fragment_5);
6431
+ append($$anchor, fragment_4);
6312
6432
  };
6313
6433
 
6314
- var alternate_3 = ($$anchor, $$elseif) => {
6434
+ var alternate_2 = ($$anchor, $$elseif) => {
6315
6435
  {
6316
- var consequent_7 = ($$anchor) => {
6317
- var select_2 = root_18();
6436
+ var consequent_8 = ($$anchor) => {
6437
+ var select_1 = root_18();
6318
6438
  const choices = user_derived(() => get(allCurrentPropDefs)[get(selectedName)].choices());
6319
6439
 
6320
- select_2.__change = [on_change_3, updateProp, selectedName];
6440
+ select_1.__change = [on_change_2, updateProp, selectedName];
6321
6441
 
6322
- var node_11 = child(select_2);
6442
+ var node_13 = child(select_1);
6323
6443
 
6324
6444
  {
6325
- var consequent_6 = ($$anchor) => {
6326
- var option_2 = root_19();
6445
+ var consequent_7 = ($$anchor) => {
6446
+ var option_1 = root_19();
6327
6447
 
6328
- append($$anchor, option_2);
6448
+ append($$anchor, option_1);
6329
6449
  };
6330
6450
 
6331
- if_block(node_11, ($$render) => {
6332
- if (!get(choices).includes(get(allCurrentPropDefs)[get(selectedName)].value)) $$render(consequent_6);
6451
+ if_block(node_13, ($$render) => {
6452
+ if (!get(choices).includes(get(allCurrentPropDefs)[get(selectedName)].value)) $$render(consequent_7);
6333
6453
  });
6334
6454
  }
6335
6455
 
6336
- var node_12 = sibling(node_11);
6456
+ var node_14 = sibling(node_13);
6337
6457
 
6338
- each(node_12, 17, () => get(choices), index, ($$anchor, choice) => {
6339
- var option_3 = root_20();
6340
- var text_8 = child(option_3);
6458
+ each(node_14, 17, () => get(choices), index, ($$anchor, choice) => {
6459
+ var option_2 = root_20();
6460
+ var text_7 = child(option_2);
6341
6461
 
6342
6462
  template_effect(() => {
6343
- set_selected(option_3, get(choice) == get(allCurrentPropDefs)[get(selectedName)].value || null);
6344
- set_text(text_8, get(choice));
6463
+ set_selected(option_2, get(choice) == get(allCurrentPropDefs)[get(selectedName)].value || null);
6464
+ set_text(text_7, get(choice));
6345
6465
  });
6346
6466
 
6347
- append($$anchor, option_3);
6467
+ append($$anchor, option_2);
6348
6468
  });
6349
- append($$anchor, select_2);
6469
+ append($$anchor, select_1);
6350
6470
  };
6351
6471
 
6352
- var alternate_4 = ($$anchor, $$elseif) => {
6472
+ var alternate_3 = ($$anchor, $$elseif) => {
6353
6473
  {
6354
- var consequent_8 = ($$anchor) => {
6474
+ var consequent_9 = ($$anchor) => {
6355
6475
  ColorPicker($$anchor, {
6356
6476
  get value() {
6357
6477
  return get(allCurrentPropDefs)[get(selectedName)].value;
@@ -6363,7 +6483,7 @@ function InlineStyleEditor$1($$anchor, $$props) {
6363
6483
  if_block(
6364
6484
  $$anchor,
6365
6485
  ($$render) => {
6366
- if (get(choices).type == "color") $$render(consequent_8);
6486
+ if (get(choices).type == "color") $$render(consequent_9);
6367
6487
  },
6368
6488
  $$elseif
6369
6489
  );
@@ -6373,29 +6493,29 @@ function InlineStyleEditor$1($$anchor, $$props) {
6373
6493
  if_block(
6374
6494
  $$anchor,
6375
6495
  ($$render) => {
6376
- if (get(choices).type == "select") $$render(consequent_7); else $$render(alternate_4, false);
6496
+ if (get(choices).type == "select") $$render(consequent_8); else $$render(alternate_3, false);
6377
6497
  },
6378
6498
  $$elseif
6379
6499
  );
6380
6500
  }
6381
6501
  };
6382
6502
 
6383
- if_block(node_10, ($$render) => {
6384
- if (get(choices).type === "slider") $$render(consequent_5); else $$render(alternate_3, false);
6503
+ if_block(node_12, ($$render) => {
6504
+ if (get(choices).type === "slider") $$render(consequent_6); else $$render(alternate_2, false);
6385
6505
  });
6386
6506
  }
6387
- template_effect(() => set_class(div_7, 1, `prop-section ${get(choices).type ?? ''}`));
6388
- append($$anchor, div_7);
6507
+ template_effect(() => set_class(div_6, 1, `prop-section ${get(choices).type ?? ''}`));
6508
+ append($$anchor, div_6);
6389
6509
  });
6390
6510
 
6391
- var node_13 = sibling(node_7, 2);
6511
+ var node_15 = sibling(node_9, 2);
6392
6512
 
6393
6513
  {
6394
- var consequent_9 = ($$anchor) => {
6395
- var div_9 = root_23();
6396
- let classes_3;
6514
+ var consequent_10 = ($$anchor) => {
6515
+ var div_10 = root_23();
6516
+ let classes_4;
6397
6517
 
6398
- div_9.__click = [
6518
+ div_10.__click = [
6399
6519
  bringToFront,
6400
6520
  bringableToFront,
6401
6521
  selectedElemIndex,
@@ -6404,39 +6524,39 @@ function InlineStyleEditor$1($$anchor, $$props) {
6404
6524
  currentRule
6405
6525
  ];
6406
6526
 
6407
- template_effect(($0) => classes_3 = set_class(div_9, 1, 'btn', null, classes_3, $0), [
6527
+ template_effect(($0) => classes_4 = set_class(div_10, 1, 'btn', null, classes_4, $0), [
6408
6528
  () => ({
6409
6529
  active: get(bringableToFront)[get(selectedElemIndex)] === true
6410
6530
  })
6411
6531
  ]);
6412
6532
 
6413
- append($$anchor, div_9);
6533
+ append($$anchor, div_10);
6414
6534
  };
6415
6535
 
6416
- if_block(node_13, ($$render) => {
6417
- if (get(currentRule) === "inline" && get(bringableToFront)[get(selectedElemIndex)] !== null) $$render(consequent_9);
6536
+ if_block(node_15, ($$render) => {
6537
+ if (get(currentRule) === "inline" && get(bringableToFront)[get(selectedElemIndex)] !== null) $$render(consequent_10);
6418
6538
  });
6419
6539
  }
6420
6540
 
6421
- var node_14 = sibling(node_13, 2);
6541
+ var node_16 = sibling(node_15, 2);
6422
6542
 
6423
6543
  {
6424
- var consequent_10 = ($$anchor) => {
6425
- var div_10 = root_24();
6544
+ var consequent_11 = ($$anchor) => {
6545
+ var div_11 = root_24();
6426
6546
 
6427
- div_10.__click = [deleteElem, currentElement, close];
6428
- append($$anchor, div_10);
6547
+ div_11.__click = [deleteElem, currentElement, close];
6548
+ append($$anchor, div_11);
6429
6549
  };
6430
6550
 
6431
- if_block(node_14, ($$render) => {
6432
- if (get(currentRule) === "inline" && inlineDeletable(get(currentElement))) $$render(consequent_10);
6551
+ if_block(node_16, ($$render) => {
6552
+ if (get(currentRule) === "inline" && inlineDeletable(get(currentElement))) $$render(consequent_11);
6433
6553
  });
6434
6554
  }
6435
- append($$anchor, div_6);
6555
+ append($$anchor, div_5);
6436
6556
  };
6437
6557
 
6438
- if_block(node_6, ($$render) => {
6439
- if (get(allTypes)[get(selectedElemIndex)]) $$render(consequent_11);
6558
+ if_block(node_8, ($$render) => {
6559
+ if (get(allTypes)[get(selectedElemIndex)]) $$render(consequent_12);
6440
6560
  });
6441
6561
  }
6442
6562
  bind_this(div_1, ($$value) => set(self, $$value), () => get(self));
@@ -6461,3 +6581,4 @@ class InlineStyleEditor {
6461
6581
  }
6462
6582
 
6463
6583
  export { InlineStyleEditor as default };
6584
+ //# sourceMappingURL=inline-style-editor.mjs.map