@node-projects/web-component-designer 0.2.27 → 0.2.29
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.
- package/_esbuild.js +6 -0
- package/dist/NpmPackageHacks.json +47 -0
- package/dist/elements/controls/NumericStyleInput.js +3 -0
- package/dist/elements/controls/NumericStyleInput.js.map +1 -1
- package/dist/elements/helper/NpmPackageHacks.json +47 -21
- package/dist/elements/helper/NpmPackageLoader.d.ts +7 -1
- package/dist/elements/helper/NpmPackageLoader.js +149 -112
- package/dist/elements/helper/NpmPackageLoader.js.map +1 -1
- package/dist/elements/helper/PlacementContainerHelper.d.ts +4 -0
- package/dist/elements/helper/PlacementContainerHelper.js +38 -0
- package/dist/elements/helper/PlacementContainerHelper.js.map +1 -0
- package/dist/elements/helper/PlacementTargetHelper.d.ts +4 -0
- package/dist/elements/helper/PlacementTargetHelper.js +38 -0
- package/dist/elements/helper/PlacementTargetHelper.js.map +1 -0
- package/dist/elements/item/DesignItem.d.ts +1 -1
- package/dist/elements/services/dragDropService/DragDropService.d.ts +3 -0
- package/dist/elements/services/dragDropService/DragDropService.js +55 -35
- package/dist/elements/services/dragDropService/DragDropService.js.map +1 -1
- package/dist/elements/services/elementsService/IElementDefinition.d.ts +1 -0
- package/dist/elements/services/elementsService/WebcomponentManifestElementsService.d.ts +1 -0
- package/dist/elements/services/elementsService/WebcomponentManifestElementsService.js +8 -4
- package/dist/elements/services/elementsService/WebcomponentManifestElementsService.js.map +1 -1
- package/dist/elements/services/htmlWriterService/FormatingHtmlWriterService.js +9 -6
- package/dist/elements/services/htmlWriterService/FormatingHtmlWriterService.js.map +1 -1
- package/dist/elements/services/htmlWriterService/HtmlWriterService.js +10 -7
- package/dist/elements/services/htmlWriterService/HtmlWriterService.js.map +1 -1
- package/dist/elements/services/htmlWriterService/SimpleHtmlWriterService.js +2 -2
- package/dist/elements/services/htmlWriterService/SimpleHtmlWriterService.js.map +1 -1
- package/dist/elements/widgets/designerView/DomConverter.d.ts +2 -1
- package/dist/elements/widgets/designerView/DomConverter.js +13 -1
- package/dist/elements/widgets/designerView/DomConverter.js.map +1 -1
- package/dist/elements/widgets/designerView/tools/DrawElementTool.js +10 -4
- package/dist/elements/widgets/designerView/tools/DrawElementTool.js.map +1 -1
- package/dist/index-min.js +14 -14
- package/dist/index-min.js.map +4 -4
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { IDesignItem } from "../../item/IDesignItem.js";
|
|
2
2
|
export declare class DomConverter {
|
|
3
3
|
static normalizeAttributeValue(value: string | number, useSingleQuotes?: boolean): string;
|
|
4
|
-
static
|
|
4
|
+
static isRawTextElementName(elementName: string): elementName is "script" | "style" | "xmp" | "iframe" | "noembed" | "noframes" | "noscript" | "plaintext";
|
|
5
|
+
static normalizeContentValue(value: string, parentElementName?: string): string;
|
|
5
6
|
static IsSelfClosingElement(tag: string): tag is "area" | "base" | "br" | "col" | "embed" | "hr" | "img" | "input" | "keygen" | "link" | "meta" | "param" | "source" | "track" | "wbr";
|
|
6
7
|
static ConvertToString(designItems: IDesignItem[], beautifyOutput?: boolean, updatePositions?: boolean): string;
|
|
7
8
|
}
|
|
@@ -11,7 +11,19 @@ export class DomConverter {
|
|
|
11
11
|
}
|
|
12
12
|
return value.replaceAll('&', '&').replaceAll('<', '<').replaceAll('>', '>');
|
|
13
13
|
}
|
|
14
|
-
static
|
|
14
|
+
static isRawTextElementName(elementName) {
|
|
15
|
+
return elementName === 'script' ||
|
|
16
|
+
elementName === 'style' ||
|
|
17
|
+
elementName === 'xmp' ||
|
|
18
|
+
elementName === 'iframe' ||
|
|
19
|
+
elementName === 'noembed' ||
|
|
20
|
+
elementName === 'noframes' ||
|
|
21
|
+
elementName === 'noscript' ||
|
|
22
|
+
elementName === 'plaintext';
|
|
23
|
+
}
|
|
24
|
+
static normalizeContentValue(value, parentElementName) {
|
|
25
|
+
if (this.isRawTextElementName(parentElementName))
|
|
26
|
+
return value;
|
|
15
27
|
if (value)
|
|
16
28
|
return value.replaceAll('&', '&').replaceAll('<', '<').replaceAll(' ', ' '); // !caution! -> this is not normal space, it's nbsp
|
|
17
29
|
return value;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DomConverter.js","sourceRoot":"","sources":["../../../../src/elements/widgets/designerView/DomConverter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AACxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAEpE,MAAM,OAAO,YAAY;IAEhB,MAAM,CAAC,uBAAuB,CAAC,KAAsB,EAAE,eAAe,GAAG,KAAK;QACnF,IAAI,OAAO,KAAK,KAAK,QAAQ;YAC3B,KAAK,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;QAC3B,IAAI,KAAK,EAAE,CAAC;YACV,IAAI,eAAe;gBACjB,OAAO,KAAK,CAAC,UAAU,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;YAClH,OAAO,KAAK,CAAC,UAAU,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QAClH,CAAC;QACD,OAAO,KAAK,CAAC,UAAU,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACxF,CAAC;IAEM,MAAM,CAAC,qBAAqB,CAAC,KAAa;
|
|
1
|
+
{"version":3,"file":"DomConverter.js","sourceRoot":"","sources":["../../../../src/elements/widgets/designerView/DomConverter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AACxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAEpE,MAAM,OAAO,YAAY;IAEhB,MAAM,CAAC,uBAAuB,CAAC,KAAsB,EAAE,eAAe,GAAG,KAAK;QACnF,IAAI,OAAO,KAAK,KAAK,QAAQ;YAC3B,KAAK,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;QAC3B,IAAI,KAAK,EAAE,CAAC;YACV,IAAI,eAAe;gBACjB,OAAO,KAAK,CAAC,UAAU,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;YAClH,OAAO,KAAK,CAAC,UAAU,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QAClH,CAAC;QACD,OAAO,KAAK,CAAC,UAAU,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACxF,CAAC;IAEM,MAAM,CAAC,oBAAoB,CAAC,WAAmB;QACpD,OAAO,WAAW,KAAK,QAAQ;YAC7B,WAAW,KAAK,OAAO;YACvB,WAAW,KAAK,KAAK;YACrB,WAAW,KAAK,QAAQ;YACxB,WAAW,KAAK,SAAS;YACzB,WAAW,KAAK,UAAU;YAC1B,WAAW,KAAK,UAAU;YAC1B,WAAW,KAAK,WAAW,CAAC;IAChC,CAAC;IAEM,MAAM,CAAC,qBAAqB,CAAC,KAAa,EAAE,iBAA0B;QAC3E,IAAI,IAAI,CAAC,oBAAoB,CAAC,iBAAiB,CAAC;YAC9C,OAAO,KAAK,CAAC;QACf,IAAI,KAAK;YACP,OAAO,KAAK,CAAC,UAAU,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAE,mDAAmD;QAC/I,OAAO,KAAK,CAAC;IACf,CAAC;IAEM,MAAM,CAAC,oBAAoB,CAAC,GAAW;QAC5C,OAAO,GAAG,KAAK,MAAM;YACnB,GAAG,KAAK,MAAM;YACd,GAAG,KAAK,IAAI;YACZ,GAAG,KAAK,KAAK;YACb,GAAG,KAAK,OAAO;YACf,GAAG,KAAK,IAAI;YACZ,GAAG,KAAK,KAAK;YACb,GAAG,KAAK,OAAO;YACf,GAAG,KAAK,QAAQ;YAChB,GAAG,KAAK,MAAM;YACd,GAAG,KAAK,MAAM;YACd,GAAG,KAAK,OAAO;YACf,GAAG,KAAK,QAAQ;YAChB,GAAG,KAAK,OAAO;YACf,GAAG,KAAK,KAAK,CAAC;IAClB,CAAC;IAEM,MAAM,CAAC,eAAe,CAAC,WAA0B,EAAE,cAAwB,EAAE,kBAA0B,KAAK;QACjH,IAAI,GAAG,GAAG,cAAc,KAAK,KAAK,CAAC,CAAC,CAAC,IAAI,kBAAkB,EAAE,CAAC,CAAC,CAAC,IAAI,gBAAgB,EAAE,CAAC;QACvF,gGAAgG;QAChG,6MAA6M;QAC7M,WAAW,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,KAAK,CAAC,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,eAAe,CAAC,CAAC;QACjG,OAAO,GAAG,CAAC,SAAS,EAAE,CAAC;IACzB,CAAC;CACF"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { EventNames } from '../../../../enums/EventNames.js';
|
|
2
2
|
import { roundValue } from '../../../helper/LayoutHelper.js';
|
|
3
|
+
import { getPossiblePlacementTarget } from '../../../helper/PlacementTargetHelper.js';
|
|
3
4
|
import { OverlayLayer } from '../extensions/OverlayLayer.js';
|
|
4
5
|
export class DrawElementTool {
|
|
5
6
|
_elementDefinition;
|
|
@@ -39,12 +40,17 @@ export class DrawElementTool {
|
|
|
39
40
|
this._changeGroup = designerCanvas.rootDesignItem.openGroup("Insert Item");
|
|
40
41
|
this._createdItem = await designerCanvas.serviceContainer.forSomeServicesTillResult("instanceService", (service) => service.getElement(this._elementDefinition, designerCanvas.serviceContainer, designerCanvas.instanceServiceContainer));
|
|
41
42
|
this._createdItem.setStyle('position', 'absolute');
|
|
42
|
-
|
|
43
|
-
|
|
43
|
+
let [container] = getPossiblePlacementTarget(designerCanvas, event, [this._createdItem]);
|
|
44
|
+
if (!container)
|
|
45
|
+
container = designerCanvas.rootDesignItem;
|
|
46
|
+
const containerService = designerCanvas.serviceContainer.getLastServiceWhere('containerService', x => x.serviceForContainer(container, container.getComputedStyle(), this._createdItem));
|
|
47
|
+
containerService.enterContainer(container, [this._createdItem], 'drop');
|
|
48
|
+
const containerPos = designerCanvas.getNormalizedElementCoordinates(container.element);
|
|
49
|
+
const startPositionInContainer = { x: evPos.x - containerPos.x, y: evPos.y - containerPos.y };
|
|
50
|
+
this._createdItem.setStyle('left', roundValue(this._createdItem, startPositionInContainer.x) + 'px');
|
|
51
|
+
this._createdItem.setStyle('top', roundValue(this._createdItem, startPositionInContainer.y) + 'px');
|
|
44
52
|
this._createdItem.setStyle('width', '0');
|
|
45
53
|
this._createdItem.setStyle('height', '0');
|
|
46
|
-
designerCanvas.rootDesignItem.insertChild(this._createdItem);
|
|
47
|
-
//draw via containerService??? how to draw into a grid, a stackpanel???
|
|
48
54
|
designerCanvas.instanceServiceContainer.selectionService.clearSelectedElements();
|
|
49
55
|
}
|
|
50
56
|
async _onPointerMove(designerCanvas, event) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DrawElementTool.js","sourceRoot":"","sources":["../../../../../src/elements/widgets/designerView/tools/DrawElementTool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAE7D,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"DrawElementTool.js","sourceRoot":"","sources":["../../../../../src/elements/widgets/designerView/tools/DrawElementTool.ts"],"names":[],"mappings":"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"}
|