@dooboostore/simple-web-component 1.0.21 → 1.0.23
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/README.md +1113 -95
- package/dist/cjs/decorators/addEventListener.js +4 -0
- package/dist/cjs/decorators/addEventListener.js.map +2 -2
- package/dist/cjs/decorators/applyNode.js +174 -0
- package/dist/cjs/decorators/applyNode.js.map +7 -0
- package/dist/cjs/decorators/attribute.js +30 -10
- package/dist/cjs/decorators/attribute.js.map +3 -3
- package/dist/cjs/decorators/{changedAttribute.js → changedAttributeHost.js} +6 -6
- package/dist/cjs/decorators/changedAttributeHost.js.map +7 -0
- package/dist/cjs/decorators/classList.js +45 -15
- package/dist/cjs/decorators/classList.js.map +2 -2
- package/dist/cjs/decorators/elementDefine.js +107 -57
- package/dist/cjs/decorators/elementDefine.js.map +2 -2
- package/dist/cjs/decorators/emitCustomEvent.js +4 -3
- package/dist/cjs/decorators/emitCustomEvent.js.map +2 -2
- package/dist/cjs/decorators/index.js +2 -4
- package/dist/cjs/decorators/index.js.map +2 -2
- package/dist/cjs/decorators/lifecycles.js +29 -0
- package/dist/cjs/decorators/lifecycles.js.map +2 -2
- package/dist/cjs/decorators/query.js +5 -1
- package/dist/cjs/decorators/query.js.map +2 -2
- package/dist/cjs/decorators/queryAll.js +5 -1
- package/dist/cjs/decorators/queryAll.js.map +2 -2
- package/dist/cjs/decorators/setAttribute.js +5 -1
- package/dist/cjs/decorators/setAttribute.js.map +2 -2
- package/dist/cjs/decorators/style.js +39 -13
- package/dist/cjs/decorators/style.js.map +2 -2
- package/dist/cjs/elements/SwcAppEngine.js.map +2 -2
- package/dist/cjs/elements/SwcAppMixin.js.map +2 -2
- package/dist/cjs/elements/SwcAsync.js +2 -2
- package/dist/cjs/elements/SwcAsync.js.map +2 -2
- package/dist/cjs/elements/SwcChoose.js +2 -2
- package/dist/cjs/elements/SwcChoose.js.map +2 -2
- package/dist/cjs/elements/SwcIf.js +2 -2
- package/dist/cjs/elements/SwcIf.js.map +2 -2
- package/dist/cjs/elements/SwcLoop.js +2 -2
- package/dist/cjs/elements/SwcLoop.js.map +2 -2
- package/dist/cjs/elements/register.js +6 -5
- package/dist/cjs/elements/register.js.map +2 -2
- package/dist/cjs/index.js +6 -18
- package/dist/cjs/index.js.map +2 -2
- package/dist/cjs/types.js.map +2 -2
- package/dist/cjs/utils/TemplateUtils.js +6 -0
- package/dist/cjs/utils/TemplateUtils.js.map +2 -2
- package/dist/esm/decorators/addEventListener.js +4 -0
- package/dist/esm/decorators/addEventListener.js.map +2 -2
- package/dist/esm/decorators/applyNode.js +155 -0
- package/dist/esm/decorators/applyNode.js.map +7 -0
- package/dist/esm/decorators/attribute.js +30 -10
- package/dist/esm/decorators/attribute.js.map +3 -3
- package/dist/esm/decorators/{changedAttribute.js → changedAttributeHost.js} +3 -3
- package/dist/esm/decorators/changedAttributeHost.js.map +7 -0
- package/dist/esm/decorators/classList.js +45 -15
- package/dist/esm/decorators/classList.js.map +2 -2
- package/dist/esm/decorators/elementDefine.js +106 -56
- package/dist/esm/decorators/elementDefine.js.map +2 -2
- package/dist/esm/decorators/emitCustomEvent.js +4 -3
- package/dist/esm/decorators/emitCustomEvent.js.map +2 -2
- package/dist/esm/decorators/index.js +2 -4
- package/dist/esm/decorators/index.js.map +2 -2
- package/dist/esm/decorators/lifecycles.js +29 -0
- package/dist/esm/decorators/lifecycles.js.map +2 -2
- package/dist/esm/decorators/query.js +5 -1
- package/dist/esm/decorators/query.js.map +2 -2
- package/dist/esm/decorators/queryAll.js +5 -1
- package/dist/esm/decorators/queryAll.js.map +2 -2
- package/dist/esm/decorators/setAttribute.js +5 -1
- package/dist/esm/decorators/setAttribute.js.map +2 -2
- package/dist/esm/decorators/style.js +39 -13
- package/dist/esm/decorators/style.js.map +2 -2
- package/dist/esm/elements/SwcAppEngine.js.map +2 -2
- package/dist/esm/elements/SwcAppMixin.js.map +2 -2
- package/dist/esm/elements/SwcAsync.js +2 -2
- package/dist/esm/elements/SwcAsync.js.map +2 -2
- package/dist/esm/elements/SwcChoose.js +2 -2
- package/dist/esm/elements/SwcChoose.js.map +2 -2
- package/dist/esm/elements/SwcIf.js +2 -2
- package/dist/esm/elements/SwcIf.js.map +2 -2
- package/dist/esm/elements/SwcLoop.js +2 -2
- package/dist/esm/elements/SwcLoop.js.map +2 -2
- package/dist/esm/elements/register.js +6 -5
- package/dist/esm/elements/register.js.map +2 -2
- package/dist/esm/index.js +6 -18
- package/dist/esm/index.js.map +2 -2
- package/dist/esm/types.js.map +2 -2
- package/dist/esm/utils/TemplateUtils.js +6 -0
- package/dist/esm/utils/TemplateUtils.js.map +2 -2
- package/dist/esm-bundle/dooboostore-simple-web-component.esm.js +385 -206
- package/dist/esm-bundle/dooboostore-simple-web-component.esm.js.map +4 -4
- package/dist/types/decorators/addEventListener.d.ts +6 -0
- package/dist/types/decorators/addEventListener.d.ts.map +1 -1
- package/dist/types/decorators/applyNode.d.ts +121 -0
- package/dist/types/decorators/applyNode.d.ts.map +1 -0
- package/dist/types/decorators/attribute.d.ts +6 -0
- package/dist/types/decorators/attribute.d.ts.map +1 -1
- package/dist/types/decorators/{changedAttribute.d.ts → changedAttributeHost.d.ts} +6 -2
- package/dist/types/decorators/changedAttributeHost.d.ts.map +1 -0
- package/dist/types/decorators/classList.d.ts +32 -5
- package/dist/types/decorators/classList.d.ts.map +1 -1
- package/dist/types/decorators/elementDefine.d.ts.map +1 -1
- package/dist/types/decorators/emitCustomEvent.d.ts +14 -2
- package/dist/types/decorators/emitCustomEvent.d.ts.map +1 -1
- package/dist/types/decorators/index.d.ts +2 -4
- package/dist/types/decorators/index.d.ts.map +1 -1
- package/dist/types/decorators/lifecycles.d.ts +16 -0
- package/dist/types/decorators/lifecycles.d.ts.map +1 -1
- package/dist/types/decorators/query.d.ts +6 -3
- package/dist/types/decorators/query.d.ts.map +1 -1
- package/dist/types/decorators/queryAll.d.ts +6 -0
- package/dist/types/decorators/queryAll.d.ts.map +1 -1
- package/dist/types/decorators/setAttribute.d.ts +5 -0
- package/dist/types/decorators/setAttribute.d.ts.map +1 -1
- package/dist/types/decorators/style.d.ts +28 -3
- package/dist/types/decorators/style.d.ts.map +1 -1
- package/dist/types/elements/SwcAppEngine.d.ts.map +1 -1
- package/dist/types/elements/SwcAppMixin.d.ts.map +1 -1
- package/dist/types/elements/register.d.ts +1 -1
- package/dist/types/elements/register.d.ts.map +1 -1
- package/dist/types/index.d.ts +3 -15
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/types.d.ts +2 -1
- package/dist/types/types.d.ts.map +1 -1
- package/dist/types/utils/TemplateUtils.d.ts +5 -0
- package/dist/types/utils/TemplateUtils.d.ts.map +1 -1
- package/dist/umd-bundle/dooboostore-simple-web-component.umd.js +385 -206
- package/dist/umd-bundle/dooboostore-simple-web-component.umd.js.map +4 -4
- package/package.json +3 -3
- package/src/decorators/addEventListener.ts +9 -0
- package/src/decorators/applyNode.ts +290 -0
- package/src/decorators/attribute.ts +46 -12
- package/src/decorators/{changedAttribute.ts → changedAttributeHost.ts} +5 -1
- package/src/decorators/classList.ts +71 -16
- package/src/decorators/elementDefine.ts +130 -63
- package/src/decorators/emitCustomEvent.ts +13 -5
- package/src/decorators/index.ts +2 -4
- package/src/decorators/lifecycles.ts +43 -1
- package/src/decorators/query.ts +9 -2
- package/src/decorators/queryAll.ts +9 -0
- package/src/decorators/setAttribute.ts +8 -0
- package/src/decorators/style.ts +64 -13
- package/src/elements/SwcAppEngine.ts +1 -0
- package/src/elements/SwcAppMixin.ts +2 -1
- package/src/elements/SwcAsync.ts +2 -2
- package/src/elements/SwcChoose.ts +2 -2
- package/src/elements/SwcIf.ts +2 -2
- package/src/elements/SwcLoop.ts +2 -2
- package/src/elements/register.ts +7 -5
- package/src/index.ts +8 -17
- package/src/types.ts +2 -1
- package/src/utils/TemplateUtils.ts +9 -0
- package/dist/cjs/decorators/appendChild.js +0 -92
- package/dist/cjs/decorators/appendChild.js.map +0 -7
- package/dist/cjs/decorators/changedAttribute.js.map +0 -7
- package/dist/cjs/decorators/onConnectedInnerHtml.js +0 -48
- package/dist/cjs/decorators/onConnectedInnerHtml.js.map +0 -7
- package/dist/cjs/decorators/replaceChildren.js +0 -79
- package/dist/cjs/decorators/replaceChildren.js.map +0 -7
- package/dist/esm/decorators/appendChild.js +0 -73
- package/dist/esm/decorators/appendChild.js.map +0 -7
- package/dist/esm/decorators/changedAttribute.js.map +0 -7
- package/dist/esm/decorators/onConnectedInnerHtml.js +0 -29
- package/dist/esm/decorators/onConnectedInnerHtml.js.map +0 -7
- package/dist/esm/decorators/replaceChildren.js +0 -60
- package/dist/esm/decorators/replaceChildren.js.map +0 -7
- package/dist/types/decorators/appendChild.d.ts +0 -17
- package/dist/types/decorators/appendChild.d.ts.map +0 -1
- package/dist/types/decorators/changedAttribute.d.ts.map +0 -1
- package/dist/types/decorators/onConnectedInnerHtml.d.ts +0 -15
- package/dist/types/decorators/onConnectedInnerHtml.d.ts.map +0 -1
- package/dist/types/decorators/replaceChildren.d.ts +0 -9
- package/dist/types/decorators/replaceChildren.d.ts.map +0 -1
- package/src/decorators/appendChild.ts +0 -86
- package/src/decorators/onConnectedInnerHtml.ts +0 -42
- package/src/decorators/replaceChildren.ts +0 -64
|
@@ -1119,7 +1119,7 @@ var dooboostoreSimpleWebComponent = (() => {
|
|
|
1119
1119
|
var bundle_entry_exports = {};
|
|
1120
1120
|
__export(bundle_entry_exports, {
|
|
1121
1121
|
ADD_EVENT_LISTENER_METADATA_KEY: () => ADD_EVENT_LISTENER_METADATA_KEY,
|
|
1122
|
-
|
|
1122
|
+
APPLY_NODE_METADATA_KEY: () => APPLY_NODE_METADATA_KEY,
|
|
1123
1123
|
ATTRIBUTE_CHANGED_WILDCARD: () => ATTRIBUTE_CHANGED_WILDCARD,
|
|
1124
1124
|
ATTRIBUTE_METADATA_KEY: () => ATTRIBUTE_METADATA_KEY,
|
|
1125
1125
|
BROWSER_GLOBALS: () => BROWSER_GLOBALS,
|
|
@@ -1128,6 +1128,7 @@ var dooboostoreSimpleWebComponent = (() => {
|
|
|
1128
1128
|
ELEMENT_CONFIG_KEY: () => ELEMENT_CONFIG_KEY,
|
|
1129
1129
|
EMIT_CUSTOM_EVENT_METADATA_KEY: () => EMIT_CUSTOM_EVENT_METADATA_KEY,
|
|
1130
1130
|
HTML_TAG_ENTRIES: () => HTML_TAG_ENTRIES,
|
|
1131
|
+
INNER_HTML_METADATA_KEY: () => INNER_HTML_METADATA_KEY,
|
|
1131
1132
|
InjectSituationType: () => InjectSituationType,
|
|
1132
1133
|
ON_ADD_EVENT_LISTENER_METADATA_KEY: () => ON_ADD_EVENT_LISTENER_METADATA_KEY,
|
|
1133
1134
|
ON_AFTER_ADOPTED_METADATA_KEY: () => ON_AFTER_ADOPTED_METADATA_KEY,
|
|
@@ -1137,38 +1138,61 @@ var dooboostoreSimpleWebComponent = (() => {
|
|
|
1137
1138
|
ON_BEFORE_ADOPTED_METADATA_KEY: () => ON_BEFORE_ADOPTED_METADATA_KEY,
|
|
1138
1139
|
ON_BEFORE_CONNECTED_METADATA_KEY: () => ON_BEFORE_CONNECTED_METADATA_KEY,
|
|
1139
1140
|
ON_BEFORE_DISCONNECTED_METADATA_KEY: () => ON_BEFORE_DISCONNECTED_METADATA_KEY,
|
|
1141
|
+
ON_CONSTRUCTOR_METADATA_KEY: () => ON_CONSTRUCTOR_METADATA_KEY,
|
|
1140
1142
|
QUERY_ALL_METADATA_KEY: () => QUERY_ALL_METADATA_KEY,
|
|
1141
1143
|
QUERY_METADATA_KEY: () => QUERY_METADATA_KEY,
|
|
1142
|
-
REPLACE_CHILDREN_METADATA_KEY: () => REPLACE_CHILDREN_METADATA_KEY,
|
|
1143
1144
|
SET_ATTRIBUTE_METADATA_KEY: () => SET_ATTRIBUTE_METADATA_KEY,
|
|
1144
1145
|
STYLE_METADATA_KEY: () => STYLE_METADATA_KEY,
|
|
1145
1146
|
SWC_NOT_FOUND: () => SWC_NOT_FOUND,
|
|
1146
1147
|
SwcUtils: () => SwcUtils,
|
|
1147
1148
|
TemplateUtils: () => TemplateUtils,
|
|
1148
1149
|
addClassList: () => addClassList,
|
|
1150
|
+
addClassListHost: () => addClassListHost,
|
|
1149
1151
|
addEventListener: () => addEventListener,
|
|
1150
|
-
|
|
1152
|
+
addEventListenerHost: () => addEventListenerHost,
|
|
1153
|
+
applyAfterBeginNode: () => applyAfterBeginNode,
|
|
1154
|
+
applyAfterBeginNodeHost: () => applyAfterBeginNodeHost,
|
|
1155
|
+
applyAfterEndNode: () => applyAfterEndNode,
|
|
1156
|
+
applyAfterEndNodeHost: () => applyAfterEndNodeHost,
|
|
1157
|
+
applyBeforeBeginNode: () => applyBeforeBeginNode,
|
|
1158
|
+
applyBeforeBeginNodeHost: () => applyBeforeBeginNodeHost,
|
|
1159
|
+
applyBeforeEndNode: () => applyBeforeEndNode,
|
|
1160
|
+
applyBeforeEndNodeHost: () => applyBeforeEndNodeHost,
|
|
1161
|
+
applyInnerHtmlNode: () => applyInnerHtmlNode,
|
|
1162
|
+
applyInnerHtmlNodeHost: () => applyInnerHtmlNodeHost,
|
|
1163
|
+
applyInnerTextNode: () => applyInnerTextNode,
|
|
1164
|
+
applyInnerTextNodeHost: () => applyInnerTextNodeHost,
|
|
1165
|
+
applyNode: () => applyNode,
|
|
1166
|
+
applyNodeHost: () => applyNodeHost,
|
|
1167
|
+
applyRemoveNode: () => applyRemoveNode,
|
|
1168
|
+
applyRemoveNodeHost: () => applyRemoveNodeHost,
|
|
1169
|
+
applyReplaceChildrenNode: () => applyReplaceChildrenNode,
|
|
1170
|
+
applyReplaceChildrenNodeHost: () => applyReplaceChildrenNodeHost,
|
|
1171
|
+
applyReplaceNode: () => applyReplaceNode,
|
|
1172
|
+
applyReplaceNodeHost: () => applyReplaceNodeHost,
|
|
1151
1173
|
attribute: () => attribute,
|
|
1152
|
-
|
|
1174
|
+
attributeHost: () => attributeHost,
|
|
1175
|
+
changedAttributeHost: () => changedAttributeHost,
|
|
1176
|
+
commentNode: () => commentNode,
|
|
1153
1177
|
createElement: () => createElement,
|
|
1154
1178
|
elementDefine: () => elementDefine,
|
|
1155
1179
|
emitCustomEvent: () => emitCustomEvent,
|
|
1180
|
+
emitCustomEventHost: () => emitCustomEventHost,
|
|
1156
1181
|
ensureInit: () => ensureInit2,
|
|
1157
|
-
|
|
1182
|
+
findAllApplyNodeMetadata: () => findAllApplyNodeMetadata,
|
|
1158
1183
|
findAllAttributeChangedMetadata: () => findAllAttributeChangedMetadata,
|
|
1159
1184
|
findAllAttributeMetadata: () => findAllAttributeMetadata,
|
|
1160
1185
|
findAllClassListMetadata: () => findAllClassListMetadata,
|
|
1161
1186
|
findAllLifecycleMetadata: () => findAllLifecycleMetadata,
|
|
1162
|
-
findAllReplaceChildrenMetadata: () => findAllReplaceChildrenMetadata,
|
|
1163
1187
|
findAllSetAttributeMetadata: () => findAllSetAttributeMetadata,
|
|
1164
1188
|
findAllStyleMetadata: () => findAllStyleMetadata,
|
|
1165
1189
|
getAddEventListenerMetadata: () => getAddEventListenerMetadata,
|
|
1166
1190
|
getChangedAttributeMetadata: () => getChangedAttributeMetadata,
|
|
1167
1191
|
getElementConfig: () => getElementConfig,
|
|
1168
1192
|
getEmitCustomEventMetadataList: () => getEmitCustomEventMetadataList,
|
|
1193
|
+
getOnConnectedInnerHtmlMetadata: () => getOnConnectedInnerHtmlMetadata,
|
|
1169
1194
|
getQueryAllMetadata: () => getQueryAllMetadata,
|
|
1170
1195
|
getQueryMetadata: () => getQueryMetadata,
|
|
1171
|
-
getReplaceChildrenMetadata: () => getReplaceChildrenMetadata,
|
|
1172
1196
|
getSetAttributeMetadata: () => getSetAttributeMetadata,
|
|
1173
1197
|
htmlAElement: () => htmlAElement,
|
|
1174
1198
|
htmlArticleElement: () => htmlArticleElement,
|
|
@@ -1197,20 +1221,30 @@ var dooboostoreSimpleWebComponent = (() => {
|
|
|
1197
1221
|
onBeforeDisconnected: () => onBeforeDisconnected,
|
|
1198
1222
|
onConnected: () => onConnected,
|
|
1199
1223
|
onConnectedInnerHtml: () => onConnectedInnerHtml,
|
|
1224
|
+
onConstructor: () => onConstructor,
|
|
1200
1225
|
onDisconnected: () => onDisconnected,
|
|
1201
1226
|
query: () => query,
|
|
1202
1227
|
queryAll: () => queryAll,
|
|
1228
|
+
queryAllHost: () => queryAllHost,
|
|
1229
|
+
queryHost: () => queryHost,
|
|
1203
1230
|
removeClassList: () => removeClassList,
|
|
1231
|
+
removeClassListHost: () => removeClassListHost,
|
|
1204
1232
|
removeStyle: () => removeStyle,
|
|
1205
|
-
|
|
1233
|
+
removeStyleHost: () => removeStyleHost,
|
|
1206
1234
|
resolveTargetEls: () => resolveTargetEls,
|
|
1207
1235
|
setAttribute: () => setAttribute,
|
|
1236
|
+
setAttributeHost: () => setAttributeHost,
|
|
1208
1237
|
setClassList: () => setClassList,
|
|
1238
|
+
setClassListHost: () => setClassListHost,
|
|
1209
1239
|
setStyle: () => setStyle,
|
|
1240
|
+
setStyleHost: () => setStyleHost,
|
|
1210
1241
|
textNode: () => textNode,
|
|
1211
1242
|
toggleClassList: () => toggleClassList,
|
|
1243
|
+
toggleClassListHost: () => toggleClassListHost,
|
|
1212
1244
|
updateClassList: () => updateClassList,
|
|
1213
|
-
|
|
1245
|
+
updateClassListHost: () => updateClassListHost,
|
|
1246
|
+
updateStyle: () => updateStyle,
|
|
1247
|
+
updateStyleHost: () => updateStyleHost
|
|
1214
1248
|
});
|
|
1215
1249
|
var import_reflect_metadata2 = __toESM(require_Reflect(), 1);
|
|
1216
1250
|
|
|
@@ -5817,30 +5851,6 @@ var dooboostoreSimpleWebComponent = (() => {
|
|
|
5817
5851
|
})(Path = Expression2.Path || (Expression2.Path = {}));
|
|
5818
5852
|
})(Expression || (Expression = {}));
|
|
5819
5853
|
|
|
5820
|
-
// src/decorators/onConnectedInnerHtml.ts
|
|
5821
|
-
var INNER_HTML_METADATA_KEY = Symbol("simple-web-component:inner-html");
|
|
5822
|
-
function onConnectedInnerHtml(arg1, arg2, arg3) {
|
|
5823
|
-
const decorator = (options, target, propertyKey) => {
|
|
5824
|
-
const constructor = target.constructor;
|
|
5825
|
-
let list = ReflectUtils.getMetadata(INNER_HTML_METADATA_KEY, constructor);
|
|
5826
|
-
if (!list) {
|
|
5827
|
-
list = [];
|
|
5828
|
-
ReflectUtils.defineMetadata(INNER_HTML_METADATA_KEY, list, constructor);
|
|
5829
|
-
}
|
|
5830
|
-
list.push({ propertyKey, options });
|
|
5831
|
-
};
|
|
5832
|
-
if (arg2) {
|
|
5833
|
-
return decorator({}, arg1, arg2);
|
|
5834
|
-
}
|
|
5835
|
-
return (target, propertyKey) => {
|
|
5836
|
-
decorator(arg1 || {}, target, propertyKey);
|
|
5837
|
-
};
|
|
5838
|
-
}
|
|
5839
|
-
var getOnConnectedInnerHtmlMetadata = (target) => {
|
|
5840
|
-
const constructor = target instanceof Function ? target : target.constructor;
|
|
5841
|
-
return ReflectUtils.getMetadata(INNER_HTML_METADATA_KEY, constructor);
|
|
5842
|
-
};
|
|
5843
|
-
|
|
5844
5854
|
// src/decorators/addEventListener.ts
|
|
5845
5855
|
var ADD_EVENT_LISTENER_METADATA_KEY = Symbol("simple-web-component:add-event-listener");
|
|
5846
5856
|
function addEventListener(selectorOrTarget, type, options = {}) {
|
|
@@ -5858,8 +5868,12 @@ var dooboostoreSimpleWebComponent = (() => {
|
|
|
5858
5868
|
const constructor = target instanceof Function ? target : target.constructor;
|
|
5859
5869
|
return ReflectUtils.getMetadata(ADD_EVENT_LISTENER_METADATA_KEY, constructor);
|
|
5860
5870
|
};
|
|
5871
|
+
function addEventListenerHost(type, options) {
|
|
5872
|
+
return addEventListener(":host", type, options);
|
|
5873
|
+
}
|
|
5861
5874
|
|
|
5862
5875
|
// src/decorators/lifecycles.ts
|
|
5876
|
+
var ON_CONSTRUCTOR_METADATA_KEY = Symbol("simple-web-component:on-constructor");
|
|
5863
5877
|
var ON_BEFORE_CONNECTED_METADATA_KEY = Symbol("simple-web-component:on-before-connected");
|
|
5864
5878
|
var ON_AFTER_CONNECTED_METADATA_KEY = Symbol("simple-web-component:on-after-connected");
|
|
5865
5879
|
var ON_BEFORE_DISCONNECTED_METADATA_KEY = Symbol("simple-web-component:on-before-disconnected");
|
|
@@ -5867,6 +5881,7 @@ var dooboostoreSimpleWebComponent = (() => {
|
|
|
5867
5881
|
var ON_BEFORE_ADOPTED_METADATA_KEY = Symbol("simple-web-component:on-before-adopted");
|
|
5868
5882
|
var ON_AFTER_ADOPTED_METADATA_KEY = Symbol("simple-web-component:on-after-adopted");
|
|
5869
5883
|
var ON_ADD_EVENT_LISTENER_METADATA_KEY = Symbol("simple-web-component:on-add-event-listener");
|
|
5884
|
+
var INNER_HTML_METADATA_KEY = Symbol("simple-web-component:inner-html");
|
|
5870
5885
|
var ATTRIBUTE_CHANGED_WILDCARD = "*";
|
|
5871
5886
|
function createLifecycleDecorator(metadataKey) {
|
|
5872
5887
|
return (target, propertyKey) => {
|
|
@@ -5879,6 +5894,7 @@ var dooboostoreSimpleWebComponent = (() => {
|
|
|
5879
5894
|
list.push(propertyKey);
|
|
5880
5895
|
};
|
|
5881
5896
|
}
|
|
5897
|
+
var onConstructor = createLifecycleDecorator(ON_CONSTRUCTOR_METADATA_KEY);
|
|
5882
5898
|
var onBeforeConnected = createLifecycleDecorator(ON_BEFORE_CONNECTED_METADATA_KEY);
|
|
5883
5899
|
var onAfterConnected = createLifecycleDecorator(ON_AFTER_CONNECTED_METADATA_KEY);
|
|
5884
5900
|
var onConnected = onAfterConnected;
|
|
@@ -5889,10 +5905,31 @@ var dooboostoreSimpleWebComponent = (() => {
|
|
|
5889
5905
|
var onAfterAdopted = createLifecycleDecorator(ON_AFTER_ADOPTED_METADATA_KEY);
|
|
5890
5906
|
var onAdopted = onAfterAdopted;
|
|
5891
5907
|
var onAddEventListener = createLifecycleDecorator(ON_ADD_EVENT_LISTENER_METADATA_KEY);
|
|
5908
|
+
function onConnectedInnerHtml(arg1, arg2, arg3) {
|
|
5909
|
+
const decorator = (options, target, propertyKey) => {
|
|
5910
|
+
const constructor = target.constructor;
|
|
5911
|
+
let list = ReflectUtils.getMetadata(INNER_HTML_METADATA_KEY, constructor);
|
|
5912
|
+
if (!list) {
|
|
5913
|
+
list = [];
|
|
5914
|
+
ReflectUtils.defineMetadata(INNER_HTML_METADATA_KEY, list, constructor);
|
|
5915
|
+
}
|
|
5916
|
+
list.push({ propertyKey, options });
|
|
5917
|
+
};
|
|
5918
|
+
if (arg2) {
|
|
5919
|
+
return decorator({}, arg1, arg2);
|
|
5920
|
+
}
|
|
5921
|
+
return (target, propertyKey) => {
|
|
5922
|
+
decorator(arg1 || {}, target, propertyKey);
|
|
5923
|
+
};
|
|
5924
|
+
}
|
|
5892
5925
|
var findAllLifecycleMetadata = (target, metadataKey) => {
|
|
5893
5926
|
const results = ReflectUtils.findAllMetadataFlatten(metadataKey, target);
|
|
5894
5927
|
return results.length > 0 ? results : void 0;
|
|
5895
5928
|
};
|
|
5929
|
+
var getOnConnectedInnerHtmlMetadata = (target) => {
|
|
5930
|
+
const constructor = target instanceof Function ? target : target.constructor;
|
|
5931
|
+
return ReflectUtils.getMetadata(INNER_HTML_METADATA_KEY, constructor);
|
|
5932
|
+
};
|
|
5896
5933
|
|
|
5897
5934
|
// src/decorators/attribute.ts
|
|
5898
5935
|
var ATTRIBUTE_METADATA_KEY = Symbol("simple-web-component:attribute");
|
|
@@ -5959,6 +5996,20 @@ var dooboostoreSimpleWebComponent = (() => {
|
|
|
5959
5996
|
ReflectUtils.defineMetadata(ATTRIBUTE_METADATA_KEY, metaList, constructor);
|
|
5960
5997
|
}
|
|
5961
5998
|
metaList.push({ propertyKey, selector, options, privateKey });
|
|
5999
|
+
const applySetAttribute = (inst, targets, attrName, nv) => {
|
|
6000
|
+
targets.forEach((it) => {
|
|
6001
|
+
console.log("----->", it);
|
|
6002
|
+
if (it && typeof it.setAttribute === "function") {
|
|
6003
|
+
if (nv === null) {
|
|
6004
|
+
it.removeAttribute(attrName);
|
|
6005
|
+
} else {
|
|
6006
|
+
it.setAttribute(attrName, String(nv));
|
|
6007
|
+
}
|
|
6008
|
+
} else {
|
|
6009
|
+
inst[privateKey] = nv;
|
|
6010
|
+
}
|
|
6011
|
+
});
|
|
6012
|
+
};
|
|
5962
6013
|
Object.defineProperty(target, propertyKey, {
|
|
5963
6014
|
get() {
|
|
5964
6015
|
const attrName = options.name || String(propertyKey);
|
|
@@ -5985,19 +6036,21 @@ var dooboostoreSimpleWebComponent = (() => {
|
|
|
5985
6036
|
const attrName = options.name || String(propertyKey);
|
|
5986
6037
|
const conf = getElementConfig(this);
|
|
5987
6038
|
const currentWin = this._resolveWindow?.(conf) || (typeof window !== "undefined" ? window : void 0);
|
|
5988
|
-
|
|
5989
|
-
|
|
5990
|
-
|
|
5991
|
-
|
|
5992
|
-
if (nv === null) {
|
|
5993
|
-
it.removeAttribute(attrName);
|
|
5994
|
-
} else {
|
|
5995
|
-
it.setAttribute(attrName, String(nv));
|
|
5996
|
-
}
|
|
6039
|
+
if (this.__swc_syncing_init) {
|
|
6040
|
+
if (options.connectedInitialize === true) {
|
|
6041
|
+
const targets2 = resolveTargetEls(this, selector, options, currentWin);
|
|
6042
|
+
applySetAttribute(this, targets2, attrName, nv);
|
|
5997
6043
|
} else {
|
|
5998
6044
|
this[privateKey] = nv;
|
|
5999
6045
|
}
|
|
6000
|
-
|
|
6046
|
+
return;
|
|
6047
|
+
}
|
|
6048
|
+
if (!this.__swc_connected) {
|
|
6049
|
+
this[privateKey] = nv;
|
|
6050
|
+
return;
|
|
6051
|
+
}
|
|
6052
|
+
const targets = resolveTargetEls(this, selector, options, currentWin);
|
|
6053
|
+
applySetAttribute(this, targets, attrName, nv);
|
|
6001
6054
|
},
|
|
6002
6055
|
enumerable: true,
|
|
6003
6056
|
configurable: true
|
|
@@ -6007,10 +6060,13 @@ var dooboostoreSimpleWebComponent = (() => {
|
|
|
6007
6060
|
var findAllAttributeMetadata = (target) => {
|
|
6008
6061
|
return ReflectUtils.findAllMetadata(ATTRIBUTE_METADATA_KEY, target).flat();
|
|
6009
6062
|
};
|
|
6063
|
+
function attributeHost(attrName, options = {}) {
|
|
6064
|
+
return attribute(":host", { ...options, name: attrName });
|
|
6065
|
+
}
|
|
6010
6066
|
|
|
6011
|
-
// src/decorators/
|
|
6067
|
+
// src/decorators/changedAttributeHost.ts
|
|
6012
6068
|
var ON_ATTRIBUTE_CHANGED_METADATA_KEY = Symbol("simple-web-component:on-attribute-changed");
|
|
6013
|
-
function
|
|
6069
|
+
function changedAttributeHost(attributeName) {
|
|
6014
6070
|
return (target, propertyKey) => {
|
|
6015
6071
|
const constructor = target.constructor;
|
|
6016
6072
|
let meta = ReflectUtils.getOwnMetadata(ON_ATTRIBUTE_CHANGED_METADATA_KEY, constructor);
|
|
@@ -6114,62 +6170,12 @@ var dooboostoreSimpleWebComponent = (() => {
|
|
|
6114
6170
|
});
|
|
6115
6171
|
return result;
|
|
6116
6172
|
};
|
|
6117
|
-
|
|
6118
|
-
|
|
6119
|
-
var REPLACE_CHILDREN_METADATA_KEY = Symbol("simple-web-component:replace-children");
|
|
6120
|
-
function replaceChildren(selector) {
|
|
6121
|
-
return (target, propertyKey, descriptor) => {
|
|
6122
|
-
const constructor = target.constructor;
|
|
6123
|
-
let meta = ReflectUtils.getOwnMetadata(REPLACE_CHILDREN_METADATA_KEY, constructor);
|
|
6124
|
-
if (!meta) {
|
|
6125
|
-
meta = /* @__PURE__ */ new Map();
|
|
6126
|
-
ReflectUtils.defineMetadata(REPLACE_CHILDREN_METADATA_KEY, meta, constructor);
|
|
6127
|
-
}
|
|
6128
|
-
meta.set(propertyKey, selector);
|
|
6129
|
-
const original = descriptor.value;
|
|
6130
|
-
descriptor.value = async function(...args) {
|
|
6131
|
-
ensureInit2(this);
|
|
6132
|
-
const res = await original.apply(this, args);
|
|
6133
|
-
if (res !== void 0) {
|
|
6134
|
-
const conf = getElementConfig(this);
|
|
6135
|
-
const currentWin = this._resolveWindow?.(conf) || (typeof window !== "undefined" ? window : void 0);
|
|
6136
|
-
const currentDoc = currentWin.document;
|
|
6137
|
-
let targetEl = null;
|
|
6138
|
-
if (selector === ":host" || !selector) {
|
|
6139
|
-
targetEl = this;
|
|
6140
|
-
} else {
|
|
6141
|
-
targetEl = (this.shadowRoot || this).querySelector(selector);
|
|
6142
|
-
}
|
|
6143
|
-
if (targetEl) {
|
|
6144
|
-
if (typeof res === "string") {
|
|
6145
|
-
targetEl.textContent = res;
|
|
6146
|
-
} else {
|
|
6147
|
-
const nodes = Array.isArray(res) ? res.map((n) => typeof n === "string" ? currentDoc.createTextNode(n) : n) : [res];
|
|
6148
|
-
targetEl.replaceChildren(...nodes);
|
|
6149
|
-
}
|
|
6150
|
-
}
|
|
6151
|
-
}
|
|
6152
|
-
return res;
|
|
6153
|
-
};
|
|
6154
|
-
};
|
|
6173
|
+
function setAttributeHost(name, options) {
|
|
6174
|
+
return setAttribute(":host", name, options);
|
|
6155
6175
|
}
|
|
6156
|
-
var getReplaceChildrenMetadata = (target) => {
|
|
6157
|
-
const constructor = target instanceof Function ? target : target.constructor;
|
|
6158
|
-
return ReflectUtils.getMetadata(REPLACE_CHILDREN_METADATA_KEY, constructor);
|
|
6159
|
-
};
|
|
6160
|
-
var findAllReplaceChildrenMetadata = (target) => {
|
|
6161
|
-
const result = /* @__PURE__ */ new Map();
|
|
6162
|
-
const maps = ReflectUtils.findAllMetadata(REPLACE_CHILDREN_METADATA_KEY, target);
|
|
6163
|
-
maps.forEach((map) => {
|
|
6164
|
-
if (map instanceof Map) {
|
|
6165
|
-
map.forEach((v, k) => result.set(k, v));
|
|
6166
|
-
}
|
|
6167
|
-
});
|
|
6168
|
-
return result;
|
|
6169
|
-
};
|
|
6170
6176
|
|
|
6171
|
-
// src/decorators/
|
|
6172
|
-
var
|
|
6177
|
+
// src/decorators/applyNode.ts
|
|
6178
|
+
var APPLY_NODE_METADATA_KEY = Symbol("simple-web-component:apply-node");
|
|
6173
6179
|
var normalizeNodes = (res, doc) => {
|
|
6174
6180
|
const items = Array.isArray(res) ? res : [res];
|
|
6175
6181
|
return items.map((it) => {
|
|
@@ -6178,13 +6184,13 @@ var dooboostoreSimpleWebComponent = (() => {
|
|
|
6178
6184
|
return doc.createTextNode(it !== void 0 && it !== null ? String(it) : "");
|
|
6179
6185
|
});
|
|
6180
6186
|
};
|
|
6181
|
-
function
|
|
6187
|
+
function applyNode(selector, options = { position: "beforeEnd" }) {
|
|
6182
6188
|
return (target, propertyKey, descriptor) => {
|
|
6183
6189
|
const constructor = target.constructor;
|
|
6184
|
-
let metaList = ReflectUtils.getOwnMetadata(
|
|
6190
|
+
let metaList = ReflectUtils.getOwnMetadata(APPLY_NODE_METADATA_KEY, constructor);
|
|
6185
6191
|
if (!metaList) {
|
|
6186
6192
|
metaList = /* @__PURE__ */ new Map();
|
|
6187
|
-
ReflectUtils.defineMetadata(
|
|
6193
|
+
ReflectUtils.defineMetadata(APPLY_NODE_METADATA_KEY, metaList, constructor);
|
|
6188
6194
|
}
|
|
6189
6195
|
metaList.set(propertyKey, { propertyKey, selector, options });
|
|
6190
6196
|
const original = descriptor.value;
|
|
@@ -6195,28 +6201,70 @@ var dooboostoreSimpleWebComponent = (() => {
|
|
|
6195
6201
|
const conf = getElementConfig(this);
|
|
6196
6202
|
const currentWin = this._resolveWindow?.(conf) || (typeof window !== "undefined" ? window : void 0);
|
|
6197
6203
|
const currentDoc = currentWin.document;
|
|
6198
|
-
|
|
6199
|
-
|
|
6200
|
-
|
|
6204
|
+
const pos = options.position || "beforeEnd";
|
|
6205
|
+
const r = options.root || "auto";
|
|
6206
|
+
const getTargetRoot = () => {
|
|
6207
|
+
if (r === "shadow")
|
|
6208
|
+
return this.shadowRoot;
|
|
6209
|
+
if (r === "light")
|
|
6210
|
+
return this;
|
|
6211
|
+
if (r === "all")
|
|
6212
|
+
return this.shadowRoot || this;
|
|
6213
|
+
return this.shadowRoot || this;
|
|
6214
|
+
};
|
|
6215
|
+
if (pos === "remove") {
|
|
6216
|
+
if (res) {
|
|
6217
|
+
if (selector === ":host" || !selector) {
|
|
6218
|
+
if (r === "shadow" && this.shadowRoot) {
|
|
6219
|
+
this.shadowRoot.replaceChildren();
|
|
6220
|
+
} else {
|
|
6221
|
+
this.remove();
|
|
6222
|
+
}
|
|
6223
|
+
} else {
|
|
6224
|
+
const targetRoot = getTargetRoot();
|
|
6225
|
+
if (targetRoot) {
|
|
6226
|
+
const targets = targetRoot.querySelectorAll(selector);
|
|
6227
|
+
targets.forEach((el) => el.remove());
|
|
6228
|
+
}
|
|
6229
|
+
}
|
|
6230
|
+
}
|
|
6201
6231
|
} else {
|
|
6202
|
-
targetEl =
|
|
6203
|
-
|
|
6204
|
-
|
|
6205
|
-
|
|
6206
|
-
|
|
6207
|
-
|
|
6208
|
-
|
|
6209
|
-
} else if (Array.isArray(res) && res.every((n) => typeof n === "string")) {
|
|
6210
|
-
targetEl.insertAdjacentText(pos, res.join(""));
|
|
6232
|
+
let targetEl = null;
|
|
6233
|
+
if (selector === ":host" || !selector) {
|
|
6234
|
+
if (r === "shadow") {
|
|
6235
|
+
targetEl = this.shadowRoot;
|
|
6236
|
+
} else {
|
|
6237
|
+
targetEl = this;
|
|
6238
|
+
}
|
|
6211
6239
|
} else {
|
|
6212
|
-
|
|
6213
|
-
|
|
6214
|
-
|
|
6215
|
-
|
|
6216
|
-
|
|
6217
|
-
|
|
6218
|
-
|
|
6219
|
-
|
|
6240
|
+
const targetRoot = getTargetRoot();
|
|
6241
|
+
targetEl = targetRoot ? targetRoot.querySelector(selector) : null;
|
|
6242
|
+
}
|
|
6243
|
+
if (targetEl) {
|
|
6244
|
+
const isShadowRoot = targetEl instanceof ShadowRoot;
|
|
6245
|
+
const nodes = normalizeNodes(res, currentDoc);
|
|
6246
|
+
if (pos === "replace") {
|
|
6247
|
+
if (!isShadowRoot) {
|
|
6248
|
+
targetEl.replaceWith(...nodes);
|
|
6249
|
+
}
|
|
6250
|
+
} else if (pos === "replaceChildren") {
|
|
6251
|
+
targetEl.replaceChildren(...nodes);
|
|
6252
|
+
} else if (pos === "innerHtml") {
|
|
6253
|
+
targetEl.innerHTML = res !== void 0 && res !== null ? String(res) : "";
|
|
6254
|
+
} else if (pos === "innerText") {
|
|
6255
|
+
if (targetEl.innerText !== void 0) {
|
|
6256
|
+
targetEl.innerText = res !== void 0 && res !== null ? String(res) : "";
|
|
6257
|
+
}
|
|
6258
|
+
} else {
|
|
6259
|
+
if (pos === "beforeEnd")
|
|
6260
|
+
targetEl.append(...nodes);
|
|
6261
|
+
else if (pos === "afterBegin")
|
|
6262
|
+
targetEl.prepend(...nodes);
|
|
6263
|
+
else if (pos === "beforeBegin" && !isShadowRoot)
|
|
6264
|
+
targetEl.before(...nodes);
|
|
6265
|
+
else if (pos === "afterEnd" && !isShadowRoot)
|
|
6266
|
+
targetEl.after(...nodes);
|
|
6267
|
+
}
|
|
6220
6268
|
}
|
|
6221
6269
|
}
|
|
6222
6270
|
}
|
|
@@ -6224,9 +6272,9 @@ var dooboostoreSimpleWebComponent = (() => {
|
|
|
6224
6272
|
};
|
|
6225
6273
|
};
|
|
6226
6274
|
}
|
|
6227
|
-
var
|
|
6275
|
+
var findAllApplyNodeMetadata = (target) => {
|
|
6228
6276
|
const result = /* @__PURE__ */ new Map();
|
|
6229
|
-
const maps = ReflectUtils.findAllMetadata(
|
|
6277
|
+
const maps = ReflectUtils.findAllMetadata(APPLY_NODE_METADATA_KEY, target);
|
|
6230
6278
|
maps.forEach((map) => {
|
|
6231
6279
|
if (map instanceof Map) {
|
|
6232
6280
|
map.forEach((v, k) => result.set(k, v));
|
|
@@ -6234,6 +6282,27 @@ var dooboostoreSimpleWebComponent = (() => {
|
|
|
6234
6282
|
});
|
|
6235
6283
|
return result;
|
|
6236
6284
|
};
|
|
6285
|
+
function applyNodeHost(options = { position: "beforeEnd" }) {
|
|
6286
|
+
return applyNode(":host", options);
|
|
6287
|
+
}
|
|
6288
|
+
var applyBeforeBeginNode = (selector, options = {}) => applyNode(selector, { ...options, position: "beforeBegin" });
|
|
6289
|
+
var applyAfterBeginNode = (selector, options = {}) => applyNode(selector, { ...options, position: "afterBegin" });
|
|
6290
|
+
var applyBeforeEndNode = (selector, options = {}) => applyNode(selector, { ...options, position: "beforeEnd" });
|
|
6291
|
+
var applyAfterEndNode = (selector, options = {}) => applyNode(selector, { ...options, position: "afterEnd" });
|
|
6292
|
+
var applyReplaceNode = (selector, options = {}) => applyNode(selector, { ...options, position: "replace" });
|
|
6293
|
+
var applyReplaceChildrenNode = (selector, options = {}) => applyNode(selector, { ...options, position: "replaceChildren" });
|
|
6294
|
+
var applyInnerHtmlNode = (selector, options = {}) => applyNode(selector, { ...options, position: "innerHtml" });
|
|
6295
|
+
var applyInnerTextNode = (selector, options = {}) => applyNode(selector, { ...options, position: "innerText" });
|
|
6296
|
+
var applyRemoveNode = (selector, options = {}) => applyNode(selector, { ...options, position: "remove" });
|
|
6297
|
+
var applyBeforeBeginNodeHost = (options = {}) => applyNode(":host", { ...options, position: "beforeBegin" });
|
|
6298
|
+
var applyAfterBeginNodeHost = (options = {}) => applyNode(":host", { ...options, position: "afterBegin" });
|
|
6299
|
+
var applyBeforeEndNodeHost = (options = {}) => applyNode(":host", { ...options, position: "beforeEnd" });
|
|
6300
|
+
var applyAfterEndNodeHost = (options = {}) => applyNode(":host", { ...options, position: "afterEnd" });
|
|
6301
|
+
var applyReplaceNodeHost = (options = {}) => applyNode(":host", { ...options, position: "replace" });
|
|
6302
|
+
var applyReplaceChildrenNodeHost = (options = {}) => applyNode(":host", { ...options, position: "replaceChildren" });
|
|
6303
|
+
var applyInnerHtmlNodeHost = (options = {}) => applyNode(":host", { ...options, position: "innerHtml" });
|
|
6304
|
+
var applyInnerTextNodeHost = (options = {}) => applyNode(":host", { ...options, position: "innerText" });
|
|
6305
|
+
var applyRemoveNodeHost = (options = {}) => applyNode(":host", { ...options, position: "remove" });
|
|
6237
6306
|
|
|
6238
6307
|
// src/decorators/query.ts
|
|
6239
6308
|
var QUERY_METADATA_KEY = Symbol("simple-web-component:query");
|
|
@@ -6334,6 +6403,9 @@ var dooboostoreSimpleWebComponent = (() => {
|
|
|
6334
6403
|
const constructor = target instanceof Function ? target : target.constructor;
|
|
6335
6404
|
return ReflectUtils.getMetadata(QUERY_METADATA_KEY, constructor);
|
|
6336
6405
|
};
|
|
6406
|
+
function queryHost(options) {
|
|
6407
|
+
return query(":host", options);
|
|
6408
|
+
}
|
|
6337
6409
|
|
|
6338
6410
|
// src/decorators/queryAll.ts
|
|
6339
6411
|
var QUERY_ALL_METADATA_KEY = Symbol("simple-web-component:query-all");
|
|
@@ -6431,11 +6503,14 @@ var dooboostoreSimpleWebComponent = (() => {
|
|
|
6431
6503
|
const constructor = target instanceof Function ? target : target.constructor;
|
|
6432
6504
|
return ReflectUtils.getMetadata(QUERY_ALL_METADATA_KEY, constructor);
|
|
6433
6505
|
};
|
|
6506
|
+
function queryAllHost(options) {
|
|
6507
|
+
return queryAll(":host", options);
|
|
6508
|
+
}
|
|
6434
6509
|
|
|
6435
6510
|
// src/decorators/classList.ts
|
|
6436
6511
|
var CLASS_LIST_METADATA_KEY = Symbol("simple-web-component:class-list");
|
|
6437
6512
|
function createClassListDecorator(action) {
|
|
6438
|
-
return (selector) => {
|
|
6513
|
+
return (selector, options = {}) => {
|
|
6439
6514
|
return (target, propertyKey, descriptor) => {
|
|
6440
6515
|
const constructor = target.constructor;
|
|
6441
6516
|
let metaList = ReflectUtils.getOwnMetadata(CLASS_LIST_METADATA_KEY, constructor);
|
|
@@ -6443,19 +6518,39 @@ var dooboostoreSimpleWebComponent = (() => {
|
|
|
6443
6518
|
metaList = /* @__PURE__ */ new Map();
|
|
6444
6519
|
ReflectUtils.defineMetadata(CLASS_LIST_METADATA_KEY, metaList, constructor);
|
|
6445
6520
|
}
|
|
6446
|
-
metaList.set(propertyKey, { propertyKey, selector, action });
|
|
6521
|
+
metaList.set(propertyKey, { propertyKey, selector, action, options });
|
|
6447
6522
|
const original = descriptor.value;
|
|
6448
6523
|
descriptor.value = async function(...args) {
|
|
6449
6524
|
ensureInit2(this);
|
|
6450
6525
|
const res = await original.apply(this, args);
|
|
6451
6526
|
if (res !== void 0) {
|
|
6527
|
+
const r = options.root || "auto";
|
|
6452
6528
|
const hostSet = SwcUtils.getHostSet(this);
|
|
6453
|
-
|
|
6454
|
-
if (selector === ":host" || !selector)
|
|
6455
|
-
|
|
6456
|
-
else if (selector === ":
|
|
6457
|
-
|
|
6458
|
-
if (
|
|
6529
|
+
const targetEls = [];
|
|
6530
|
+
if (selector === ":host" || !selector) {
|
|
6531
|
+
targetEls.push(this);
|
|
6532
|
+
} else if (selector === ":parentHost") {
|
|
6533
|
+
if (hostSet.$parentHost) targetEls.push(hostSet.$parentHost);
|
|
6534
|
+
} else if (selector === ":appHost") {
|
|
6535
|
+
if (hostSet.$appHost) targetEls.push(hostSet.$appHost);
|
|
6536
|
+
} else {
|
|
6537
|
+
if (r === "shadow") {
|
|
6538
|
+
const found = this.shadowRoot?.querySelectorAll(selector);
|
|
6539
|
+
if (found) targetEls.push(...found);
|
|
6540
|
+
} else if (r === "light") {
|
|
6541
|
+
const found = this.querySelectorAll(selector);
|
|
6542
|
+
if (found) targetEls.push(...found);
|
|
6543
|
+
} else if (r === "all") {
|
|
6544
|
+
const sFound = this.shadowRoot?.querySelectorAll(selector);
|
|
6545
|
+
const lFound = this.querySelectorAll(selector);
|
|
6546
|
+
if (sFound) targetEls.push(...sFound);
|
|
6547
|
+
if (lFound) targetEls.push(...lFound);
|
|
6548
|
+
} else {
|
|
6549
|
+
const found = (this.shadowRoot || this).querySelectorAll(selector);
|
|
6550
|
+
if (found) targetEls.push(...found);
|
|
6551
|
+
}
|
|
6552
|
+
}
|
|
6553
|
+
targetEls.forEach((targetEl) => {
|
|
6459
6554
|
if (action === "set") {
|
|
6460
6555
|
let classes = "";
|
|
6461
6556
|
if (typeof res === "object" && res !== null && !Array.isArray(res)) {
|
|
@@ -6483,18 +6578,23 @@ var dooboostoreSimpleWebComponent = (() => {
|
|
|
6483
6578
|
const classes = Array.isArray(res) ? res.map(String) : [String(res)];
|
|
6484
6579
|
classes.forEach((c) => targetEl.classList.toggle(c));
|
|
6485
6580
|
}
|
|
6486
|
-
}
|
|
6581
|
+
});
|
|
6487
6582
|
}
|
|
6488
6583
|
return res;
|
|
6489
6584
|
};
|
|
6490
6585
|
};
|
|
6491
6586
|
};
|
|
6492
6587
|
}
|
|
6493
|
-
var setClassList = createClassListDecorator("set");
|
|
6494
|
-
var updateClassList = createClassListDecorator("update");
|
|
6495
|
-
var addClassList = createClassListDecorator("add");
|
|
6496
|
-
var removeClassList = createClassListDecorator("remove");
|
|
6497
|
-
var toggleClassList = createClassListDecorator("toggle");
|
|
6588
|
+
var setClassList = (selector, options = {}) => createClassListDecorator("set")(selector, options);
|
|
6589
|
+
var updateClassList = (selector, options = {}) => createClassListDecorator("update")(selector, options);
|
|
6590
|
+
var addClassList = (selector, options = {}) => createClassListDecorator("add")(selector, options);
|
|
6591
|
+
var removeClassList = (selector, options = {}) => createClassListDecorator("remove")(selector, options);
|
|
6592
|
+
var toggleClassList = (selector, options = {}) => createClassListDecorator("toggle")(selector, options);
|
|
6593
|
+
var setClassListHost = (options = {}) => createClassListDecorator("set")(":host", options);
|
|
6594
|
+
var updateClassListHost = (options = {}) => createClassListDecorator("update")(":host", options);
|
|
6595
|
+
var addClassListHost = (options = {}) => createClassListDecorator("add")(":host", options);
|
|
6596
|
+
var removeClassListHost = (options = {}) => createClassListDecorator("remove")(":host", options);
|
|
6597
|
+
var toggleClassListHost = (options = {}) => createClassListDecorator("toggle")(":host", options);
|
|
6498
6598
|
var findAllClassListMetadata = (target) => {
|
|
6499
6599
|
const result = /* @__PURE__ */ new Map();
|
|
6500
6600
|
const maps = ReflectUtils.findAllMetadata(CLASS_LIST_METADATA_KEY, target);
|
|
@@ -6509,7 +6609,7 @@ var dooboostoreSimpleWebComponent = (() => {
|
|
|
6509
6609
|
// src/decorators/style.ts
|
|
6510
6610
|
var STYLE_METADATA_KEY = Symbol("simple-web-component:style");
|
|
6511
6611
|
function createStyleDecorator(action) {
|
|
6512
|
-
return (selector) => {
|
|
6612
|
+
return (selector, options = {}) => {
|
|
6513
6613
|
return (target, propertyKey, descriptor) => {
|
|
6514
6614
|
const constructor = target.constructor;
|
|
6515
6615
|
let metaList = ReflectUtils.getOwnMetadata(STYLE_METADATA_KEY, constructor);
|
|
@@ -6517,19 +6617,39 @@ var dooboostoreSimpleWebComponent = (() => {
|
|
|
6517
6617
|
metaList = /* @__PURE__ */ new Map();
|
|
6518
6618
|
ReflectUtils.defineMetadata(STYLE_METADATA_KEY, metaList, constructor);
|
|
6519
6619
|
}
|
|
6520
|
-
metaList.set(propertyKey, { propertyKey, selector, action });
|
|
6620
|
+
metaList.set(propertyKey, { propertyKey, selector, action, options });
|
|
6521
6621
|
const original = descriptor.value;
|
|
6522
6622
|
descriptor.value = async function(...args) {
|
|
6523
6623
|
ensureInit2(this);
|
|
6524
6624
|
const res = await original.apply(this, args);
|
|
6525
6625
|
if (res !== void 0) {
|
|
6626
|
+
const r = options.root || "auto";
|
|
6526
6627
|
const hostSet = SwcUtils.getHostSet(this);
|
|
6527
|
-
|
|
6528
|
-
if (selector === ":host" || !selector)
|
|
6529
|
-
|
|
6530
|
-
else if (selector === ":
|
|
6531
|
-
|
|
6532
|
-
if (
|
|
6628
|
+
const targetEls = [];
|
|
6629
|
+
if (selector === ":host" || !selector) {
|
|
6630
|
+
targetEls.push(this);
|
|
6631
|
+
} else if (selector === ":parentHost") {
|
|
6632
|
+
if (hostSet.$parentHost) targetEls.push(hostSet.$parentHost);
|
|
6633
|
+
} else if (selector === ":appHost") {
|
|
6634
|
+
if (hostSet.$appHost) targetEls.push(hostSet.$appHost);
|
|
6635
|
+
} else {
|
|
6636
|
+
if (r === "shadow") {
|
|
6637
|
+
const found = this.shadowRoot?.querySelectorAll(selector);
|
|
6638
|
+
if (found) targetEls.push(...found);
|
|
6639
|
+
} else if (r === "light") {
|
|
6640
|
+
const found = this.querySelectorAll(selector);
|
|
6641
|
+
if (found) targetEls.push(...found);
|
|
6642
|
+
} else if (r === "all") {
|
|
6643
|
+
const sFound = this.shadowRoot?.querySelectorAll(selector);
|
|
6644
|
+
const lFound = this.querySelectorAll(selector);
|
|
6645
|
+
if (sFound) targetEls.push(...sFound);
|
|
6646
|
+
if (lFound) targetEls.push(...lFound);
|
|
6647
|
+
} else {
|
|
6648
|
+
const found = (this.shadowRoot || this).querySelectorAll(selector);
|
|
6649
|
+
if (found) targetEls.push(...found);
|
|
6650
|
+
}
|
|
6651
|
+
}
|
|
6652
|
+
targetEls.forEach((targetEl) => {
|
|
6533
6653
|
if (action === "set") {
|
|
6534
6654
|
targetEl.style.cssText = "";
|
|
6535
6655
|
if (typeof res === "object" && res !== null) {
|
|
@@ -6545,16 +6665,19 @@ var dooboostoreSimpleWebComponent = (() => {
|
|
|
6545
6665
|
const props = Array.isArray(res) ? res : [res];
|
|
6546
6666
|
props.forEach((p) => targetEl.style.removeProperty(String(p)));
|
|
6547
6667
|
}
|
|
6548
|
-
}
|
|
6668
|
+
});
|
|
6549
6669
|
}
|
|
6550
6670
|
return res;
|
|
6551
6671
|
};
|
|
6552
6672
|
};
|
|
6553
6673
|
};
|
|
6554
6674
|
}
|
|
6555
|
-
var setStyle = createStyleDecorator("set");
|
|
6556
|
-
var
|
|
6557
|
-
var
|
|
6675
|
+
var setStyle = (selector, options = {}) => createStyleDecorator("set")(selector, options);
|
|
6676
|
+
var setStyleHost = (options = {}) => createStyleDecorator("set")(":host", options);
|
|
6677
|
+
var updateStyle = (selector, options = {}) => createStyleDecorator("update")(selector, options);
|
|
6678
|
+
var updateStyleHost = (options = {}) => createStyleDecorator("update")(":host", options);
|
|
6679
|
+
var removeStyle = (selector, options = {}) => createStyleDecorator("remove")(selector, options);
|
|
6680
|
+
var removeStyleHost = (options = {}) => createStyleDecorator("remove")(":host", options);
|
|
6558
6681
|
var findAllStyleMetadata = (target) => {
|
|
6559
6682
|
const result = /* @__PURE__ */ new Map();
|
|
6560
6683
|
const maps = ReflectUtils.findAllMetadata(STYLE_METADATA_KEY, target);
|
|
@@ -6684,9 +6807,6 @@ var dooboostoreSimpleWebComponent = (() => {
|
|
|
6684
6807
|
return (targetObj, propertyKey, descriptor) => {
|
|
6685
6808
|
const constructor = targetObj.constructor;
|
|
6686
6809
|
const fullOptions = { ...options, type };
|
|
6687
|
-
if (!fullOptions.attributeName) {
|
|
6688
|
-
fullOptions.attributeName = `swc-on-${type}`;
|
|
6689
|
-
}
|
|
6690
6810
|
if (fullOptions.bubbles === void 0) fullOptions.bubbles = true;
|
|
6691
6811
|
if (fullOptions.composed === void 0) fullOptions.composed = true;
|
|
6692
6812
|
let list = ReflectUtils.getMetadata(EMIT_CUSTOM_EVENT_METADATA_KEY, constructor);
|
|
@@ -6751,6 +6871,9 @@ var dooboostoreSimpleWebComponent = (() => {
|
|
|
6751
6871
|
const constructor = target instanceof Function ? target : target.constructor;
|
|
6752
6872
|
return ReflectUtils.getMetadata(EMIT_CUSTOM_EVENT_METADATA_KEY, constructor);
|
|
6753
6873
|
};
|
|
6874
|
+
function emitCustomEventHost(type, options) {
|
|
6875
|
+
return emitCustomEvent(":host", type, options);
|
|
6876
|
+
}
|
|
6754
6877
|
|
|
6755
6878
|
// src/config/config.ts
|
|
6756
6879
|
var HTML_TAG_ENTRIES = [
|
|
@@ -6871,6 +6994,10 @@ var dooboostoreSimpleWebComponent = (() => {
|
|
|
6871
6994
|
inst.__swc_initialized = true;
|
|
6872
6995
|
const hostSet = SwcUtils.getHostSet(inst);
|
|
6873
6996
|
inst._executeSwcScript?.("swc-on-constructor", hostSet);
|
|
6997
|
+
const cMethods = findAllLifecycleMetadata(inst, ON_CONSTRUCTOR_METADATA_KEY);
|
|
6998
|
+
if (cMethods) {
|
|
6999
|
+
for (const m of cMethods) inst._invokeLifecycleMethod(m, hostSet);
|
|
7000
|
+
}
|
|
6874
7001
|
}
|
|
6875
7002
|
};
|
|
6876
7003
|
var globalDelegatedRoots = /* @__PURE__ */ new WeakSet();
|
|
@@ -6969,7 +7096,9 @@ var dooboostoreSimpleWebComponent = (() => {
|
|
|
6969
7096
|
const oldHandler = handlers.get(attrName);
|
|
6970
7097
|
if (oldHandler) el.removeEventListener(eventName, oldHandler);
|
|
6971
7098
|
const handler = async (event) => {
|
|
6972
|
-
|
|
7099
|
+
console.log("execute handler", event);
|
|
7100
|
+
const parent = SwcUtils.findNearestSwcHost(el);
|
|
7101
|
+
const hostSet = SwcUtils.getHostSet(parent || el);
|
|
6973
7102
|
const conf = getElementConfig(this);
|
|
6974
7103
|
const currentWin = this._resolveWindow(conf);
|
|
6975
7104
|
const helpers = SwcUtils.getHelperSet(currentWin);
|
|
@@ -6988,13 +7117,18 @@ var dooboostoreSimpleWebComponent = (() => {
|
|
|
6988
7117
|
};
|
|
6989
7118
|
proto.__swc_executeAttributeEvent = async function(el, attrName, script, event) {
|
|
6990
7119
|
ensureInit2(this);
|
|
6991
|
-
|
|
7120
|
+
console.log("execute handler2", event);
|
|
7121
|
+
const parent = SwcUtils.findNearestSwcHost(el);
|
|
7122
|
+
const hostSet = SwcUtils.getHostSet(parent || el);
|
|
6992
7123
|
const conf = getElementConfig(this);
|
|
6993
7124
|
const currentWin = this._resolveWindow(conf);
|
|
6994
7125
|
const currentHelpers = SwcUtils.getHelperSet(currentWin);
|
|
7126
|
+
const detail = event.detail;
|
|
6995
7127
|
const args = {
|
|
6996
7128
|
event,
|
|
6997
|
-
$
|
|
7129
|
+
$event: event,
|
|
7130
|
+
$data: detail,
|
|
7131
|
+
$detail: detail,
|
|
6998
7132
|
...hostSet,
|
|
6999
7133
|
...currentHelpers,
|
|
7000
7134
|
$el: el,
|
|
@@ -7021,12 +7155,14 @@ var dooboostoreSimpleWebComponent = (() => {
|
|
|
7021
7155
|
metadata.extends = extendsTagName;
|
|
7022
7156
|
}
|
|
7023
7157
|
const emitCustomEventList = getEmitCustomEventMetadataList(constructor) || [];
|
|
7158
|
+
const emitHostCustomEventList = emitCustomEventList.filter((meta) => meta.selector === ":host" || meta.selector === "");
|
|
7024
7159
|
const addEventListenerList = getAddEventListenerMetadata(constructor) || [];
|
|
7160
|
+
const addHostEventListenerList = addEventListenerList.filter((meta) => meta.selector === ":host" || meta.selector === "");
|
|
7025
7161
|
const attrChangeMap = findAllAttributeChangedMetadata(constructor);
|
|
7026
7162
|
const attributeList = findAllAttributeMetadata(constructor);
|
|
7027
7163
|
const swcLifecycleAttributes = ["swc-on-constructor", "swc-on-connected", "swc-on-disconnected", "swc-on-before-connected", "swc-on-after-connected", "swc-on-before-disconnected", "swc-on-after-disconnected", "swc-on-before-adopted", "swc-on-after-adopted", "swc-on-attribute-changed"];
|
|
7028
7164
|
const swcOnEvents = DOM_EVENT_NAMES.map((e) => `swc-on-${e}`);
|
|
7029
|
-
const mergedObservedAttributes = [.../* @__PURE__ */ new Set([...metadata.observedAttributes ?? [], ...attrChangeMap.keys(), ...Array.from(findAllSetAttributeMetadata(constructor).values()).map((it) => it.name), ...attributeList.map((it) => it.options.name || String(it.propertyKey)), ...
|
|
7165
|
+
const mergedObservedAttributes = [.../* @__PURE__ */ new Set([...metadata.observedAttributes ?? [], ...attrChangeMap.keys(), ...Array.from(findAllSetAttributeMetadata(constructor).values()).map((it) => it.name), ...attributeList.map((it) => it.options.name || String(it.propertyKey)), ...emitHostCustomEventList.map((it) => it.options.attributeName).filter(Boolean), ...swcLifecycleAttributes, ...swcOnEvents])];
|
|
7030
7166
|
const connectedInnerHtmlList = getOnConnectedInnerHtmlMetadata(constructor) || [];
|
|
7031
7167
|
const proto = constructor.prototype;
|
|
7032
7168
|
setupPrototype(proto);
|
|
@@ -7046,25 +7182,15 @@ var dooboostoreSimpleWebComponent = (() => {
|
|
|
7046
7182
|
}
|
|
7047
7183
|
attributeList.forEach((meta) => {
|
|
7048
7184
|
const attrName = meta.options.name || String(meta.propertyKey);
|
|
7049
|
-
if (meta.options.connectedInitialize) {
|
|
7050
|
-
|
|
7051
|
-
|
|
7052
|
-
|
|
7053
|
-
|
|
7185
|
+
if (meta.options.connectedInitialize === true) {
|
|
7186
|
+
this.__swc_syncing_init = true;
|
|
7187
|
+
try {
|
|
7188
|
+
const memoryVal = this[meta.privateKey];
|
|
7189
|
+
if (memoryVal !== void 0) {
|
|
7054
7190
|
this[meta.propertyKey] = memoryVal;
|
|
7055
|
-
} finally {
|
|
7056
|
-
this.__swc_syncing_init = false;
|
|
7057
|
-
}
|
|
7058
|
-
}
|
|
7059
|
-
} else if (meta.selector === ":host" || !meta.selector) {
|
|
7060
|
-
const domVal = this.getAttribute(attrName);
|
|
7061
|
-
if (domVal !== null) {
|
|
7062
|
-
this.__swc_syncing_init = true;
|
|
7063
|
-
try {
|
|
7064
|
-
this[meta.propertyKey] = domVal;
|
|
7065
|
-
} finally {
|
|
7066
|
-
this.__swc_syncing_init = false;
|
|
7067
7191
|
}
|
|
7192
|
+
} finally {
|
|
7193
|
+
this.__swc_syncing_init = false;
|
|
7068
7194
|
}
|
|
7069
7195
|
}
|
|
7070
7196
|
});
|
|
@@ -7087,7 +7213,62 @@ var dooboostoreSimpleWebComponent = (() => {
|
|
|
7087
7213
|
});
|
|
7088
7214
|
globalDelegatedRoots.add(root);
|
|
7089
7215
|
}
|
|
7216
|
+
const delegateListeners = [];
|
|
7217
|
+
const nonDelegateListeners = [];
|
|
7090
7218
|
addEventListenerList.forEach((meta) => {
|
|
7219
|
+
if (meta.options.delegate && meta.selector !== ":window" && meta.selector !== ":document" && meta.selector !== ":parentHost" && meta.selector !== ":appHost" && meta.selector !== ":firstHost" && meta.selector !== ":lastHost" && meta.selector !== ":firstAppHost" && meta.selector !== ":lastAppHost" && meta.selector !== ":hosts" && meta.selector !== ":appHosts" && meta.selector !== ":host" && meta.selector !== "") {
|
|
7220
|
+
delegateListeners.push(meta);
|
|
7221
|
+
} else {
|
|
7222
|
+
nonDelegateListeners.push(meta);
|
|
7223
|
+
}
|
|
7224
|
+
});
|
|
7225
|
+
const delegatesByTypeAndRoot = /* @__PURE__ */ new Map();
|
|
7226
|
+
delegateListeners.forEach((meta) => {
|
|
7227
|
+
const r = meta.options.root || "auto";
|
|
7228
|
+
const rootKey = `${meta.type}:${r}`;
|
|
7229
|
+
if (!delegatesByTypeAndRoot.has(rootKey)) {
|
|
7230
|
+
delegatesByTypeAndRoot.set(rootKey, []);
|
|
7231
|
+
}
|
|
7232
|
+
delegatesByTypeAndRoot.get(rootKey).push(meta);
|
|
7233
|
+
});
|
|
7234
|
+
delegatesByTypeAndRoot.forEach((metaList, typeRootKey) => {
|
|
7235
|
+
const [type, rStr] = typeRootKey.split(":");
|
|
7236
|
+
const r = rStr === "auto" ? "auto" : rStr;
|
|
7237
|
+
const opts = { capture: metaList[0].options.capture, once: metaList[0].options.once, passive: metaList[0].options.passive };
|
|
7238
|
+
const bindRoots = [];
|
|
7239
|
+
if (r === "auto") bindRoots.push(this.shadowRoot || this);
|
|
7240
|
+
else if (r === "light") bindRoots.push(this);
|
|
7241
|
+
else if (r === "shadow" && this.shadowRoot) bindRoots.push(this.shadowRoot);
|
|
7242
|
+
else if (r === "all") {
|
|
7243
|
+
bindRoots.push(this);
|
|
7244
|
+
if (this.shadowRoot) bindRoots.push(this.shadowRoot);
|
|
7245
|
+
}
|
|
7246
|
+
bindRoots.forEach((br) => {
|
|
7247
|
+
const sortedMetaList = [...metaList].sort((a, b) => {
|
|
7248
|
+
const aStop = a.options.stopPropagation ? 1 : 0;
|
|
7249
|
+
const bStop = b.options.stopPropagation ? 1 : 0;
|
|
7250
|
+
return bStop - aStop;
|
|
7251
|
+
});
|
|
7252
|
+
const unifiedHandler = async (event) => {
|
|
7253
|
+
for (const meta of sortedMetaList) {
|
|
7254
|
+
const { selector, options } = meta;
|
|
7255
|
+
const matchedEl = event.target.closest(selector);
|
|
7256
|
+
if (matchedEl && br.contains(matchedEl)) {
|
|
7257
|
+
if (options.stopPropagation) event.stopPropagation();
|
|
7258
|
+
if (options.stopImmediatePropagation) event.stopImmediatePropagation();
|
|
7259
|
+
if (options.preventDefault) event.preventDefault();
|
|
7260
|
+
const currentHostSet = SwcUtils.getHostSet(this);
|
|
7261
|
+
const args = { event, ...currentHostSet, $el: matchedEl, $root: br };
|
|
7262
|
+
await this[meta.propertyKey](event, currentHostSet, matchedEl, args);
|
|
7263
|
+
if (event.cancelBubble) break;
|
|
7264
|
+
}
|
|
7265
|
+
}
|
|
7266
|
+
};
|
|
7267
|
+
br.addEventListener(type, unifiedHandler, opts);
|
|
7268
|
+
this._boundListeners.push({ target: br, type, handler: unifiedHandler, options: opts });
|
|
7269
|
+
});
|
|
7270
|
+
});
|
|
7271
|
+
nonDelegateListeners.forEach((meta) => {
|
|
7091
7272
|
const { selector, type, options } = meta;
|
|
7092
7273
|
const opts = { capture: options.capture, once: options.once, passive: options.passive };
|
|
7093
7274
|
const bindTargets = [];
|
|
@@ -7112,33 +7293,7 @@ var dooboostoreSimpleWebComponent = (() => {
|
|
|
7112
7293
|
else if (selector === ":hosts") hostSet.$hosts.forEach(applyRootOption);
|
|
7113
7294
|
else if (selector === ":appHosts") hostSet.$appHosts.forEach(applyRootOption);
|
|
7114
7295
|
else if (selector === ":host" || !selector) applyRootOption(this);
|
|
7115
|
-
else
|
|
7116
|
-
const bindRoots = [];
|
|
7117
|
-
if (r === "auto") bindRoots.push(this.shadowRoot || this);
|
|
7118
|
-
else if (r === "light") bindRoots.push(this);
|
|
7119
|
-
else if (r === "shadow" && this.shadowRoot) bindRoots.push(this.shadowRoot);
|
|
7120
|
-
else if (r === "all") {
|
|
7121
|
-
bindRoots.push(this);
|
|
7122
|
-
if (this.shadowRoot) bindRoots.push(this.shadowRoot);
|
|
7123
|
-
}
|
|
7124
|
-
bindRoots.forEach((br) => {
|
|
7125
|
-
const handler = async (event) => {
|
|
7126
|
-
const matchedEl = event.target.closest(selector);
|
|
7127
|
-
if (matchedEl && br.contains(matchedEl)) {
|
|
7128
|
-
if (options.stopPropagation) event.stopPropagation();
|
|
7129
|
-
if (options.stopImmediatePropagation) event.stopImmediatePropagation();
|
|
7130
|
-
if (options.preventDefault) event.preventDefault();
|
|
7131
|
-
const currentHostSet = SwcUtils.getHostSet(this);
|
|
7132
|
-
const args = { event, ...currentHostSet, $el: matchedEl, $root: br };
|
|
7133
|
-
await this._invokeLifecycleMethod(meta.propertyKey, currentHostSet, [event, currentHostSet, matchedEl, args]);
|
|
7134
|
-
}
|
|
7135
|
-
};
|
|
7136
|
-
br.addEventListener(type, handler, opts);
|
|
7137
|
-
if (options.removeOnDisconnected === true || br !== this && br !== this.shadowRoot) {
|
|
7138
|
-
this._boundListeners.push({ target: br, type, handler, options: opts });
|
|
7139
|
-
}
|
|
7140
|
-
});
|
|
7141
|
-
} else {
|
|
7296
|
+
else {
|
|
7142
7297
|
const searchRoots = [];
|
|
7143
7298
|
if (r === "auto") searchRoots.push(this.shadowRoot || this);
|
|
7144
7299
|
else if (r === "light") searchRoots.push(this);
|
|
@@ -7158,7 +7313,7 @@ var dooboostoreSimpleWebComponent = (() => {
|
|
|
7158
7313
|
if (options.preventDefault) event.preventDefault();
|
|
7159
7314
|
const currentHostSet = SwcUtils.getHostSet(this);
|
|
7160
7315
|
const args = { event, ...currentHostSet, $el: t, $root: t };
|
|
7161
|
-
await this
|
|
7316
|
+
await this[meta.propertyKey](event, currentHostSet, args);
|
|
7162
7317
|
};
|
|
7163
7318
|
t.addEventListener(type, handler, opts);
|
|
7164
7319
|
if (options.removeOnDisconnected === true || t === currentWin || t === currentWin.document) {
|
|
@@ -7166,6 +7321,22 @@ var dooboostoreSimpleWebComponent = (() => {
|
|
|
7166
7321
|
}
|
|
7167
7322
|
});
|
|
7168
7323
|
});
|
|
7324
|
+
addHostEventListenerList.forEach((meta) => {
|
|
7325
|
+
const { type, options } = meta;
|
|
7326
|
+
const opts = { capture: options.capture, once: options.once, passive: options.passive };
|
|
7327
|
+
const handler = async (event) => {
|
|
7328
|
+
if (options.stopPropagation) event.stopPropagation();
|
|
7329
|
+
if (options.stopImmediatePropagation) event.stopImmediatePropagation();
|
|
7330
|
+
if (options.preventDefault) event.preventDefault();
|
|
7331
|
+
const currentHostSet = SwcUtils.getHostSet(this);
|
|
7332
|
+
const args = { event, ...currentHostSet, $el: this, $root: this.getRootNode() };
|
|
7333
|
+
await this[meta.propertyKey](event, currentHostSet, args);
|
|
7334
|
+
};
|
|
7335
|
+
this.addEventListener(type, handler, opts);
|
|
7336
|
+
if (options.removeOnDisconnected === true) {
|
|
7337
|
+
this._boundListeners.push({ target: this, type, handler, options: opts });
|
|
7338
|
+
}
|
|
7339
|
+
});
|
|
7169
7340
|
if (originalConnected) originalConnected.apply(this);
|
|
7170
7341
|
const aMethods = findAllLifecycleMetadata(this, ON_AFTER_CONNECTED_METADATA_KEY);
|
|
7171
7342
|
if (aMethods) {
|
|
@@ -7215,17 +7386,20 @@ var dooboostoreSimpleWebComponent = (() => {
|
|
|
7215
7386
|
const originalAttributeChanged = proto.attributeChangedCallback;
|
|
7216
7387
|
proto.attributeChangedCallback = function(name2, old, newVal) {
|
|
7217
7388
|
if (originalAttributeChanged) originalAttributeChanged.apply(this, [name2, old, newVal]);
|
|
7389
|
+
const hSet = SwcUtils.getHostSet(this);
|
|
7218
7390
|
if (name2.startsWith("swc-on-") && !swcLifecycleAttributes.includes(name2)) {
|
|
7219
7391
|
if (newVal !== null) {
|
|
7220
|
-
const
|
|
7221
|
-
const eventName = customEventMeta ? customEventMeta.type : name2.substring(7);
|
|
7392
|
+
const eventName = name2.substring(7);
|
|
7222
7393
|
this._bindAttributeEvent(this, name2, newVal, eventName);
|
|
7223
7394
|
}
|
|
7224
7395
|
}
|
|
7396
|
+
const hostCustomEventMeta = emitHostCustomEventList.find((it) => it.options.attributeName === name2);
|
|
7397
|
+
if (hostCustomEventMeta && newVal !== null) {
|
|
7398
|
+
this._bindAttributeEvent(this, name2, newVal, hostCustomEventMeta.type);
|
|
7399
|
+
}
|
|
7225
7400
|
const mKeys = attrChangeMap.get(name2);
|
|
7226
7401
|
if (mKeys && Array.isArray(mKeys)) {
|
|
7227
|
-
const
|
|
7228
|
-
for (const key of mKeys) this._invokeLifecycleMethod(key, hSet, [newVal, old, name2]);
|
|
7402
|
+
for (const key of mKeys) this[key](newVal, old, name2, hSet);
|
|
7229
7403
|
}
|
|
7230
7404
|
};
|
|
7231
7405
|
Object.defineProperty(constructor, "observedAttributes", {
|
|
@@ -8050,6 +8224,10 @@ var dooboostoreSimpleWebComponent = (() => {
|
|
|
8050
8224
|
const raw = strings.reduce((acc, str, i) => acc + str + (values[i] !== void 0 ? values[i] : ""), "");
|
|
8051
8225
|
return document.createTextNode(raw);
|
|
8052
8226
|
};
|
|
8227
|
+
TemplateUtils2.commentNode = (strings, ...values) => {
|
|
8228
|
+
const raw = strings.reduce((acc, str, i) => acc + str + (values[i] !== void 0 ? values[i] : ""), "");
|
|
8229
|
+
return document.createComment(raw);
|
|
8230
|
+
};
|
|
8053
8231
|
TemplateUtils2.createElement = (info, attrs = {}) => {
|
|
8054
8232
|
const el = document.createElement(info.tagName);
|
|
8055
8233
|
if (info.innerHtml !== void 0) el.innerHTML = info.innerHtml;
|
|
@@ -8082,6 +8260,7 @@ var dooboostoreSimpleWebComponent = (() => {
|
|
|
8082
8260
|
})(TemplateUtils || (TemplateUtils = {}));
|
|
8083
8261
|
var htmlFragment = TemplateUtils.htmlFragment;
|
|
8084
8262
|
var textNode = TemplateUtils.textNode;
|
|
8263
|
+
var commentNode = TemplateUtils.commentNode;
|
|
8085
8264
|
var createElement = TemplateUtils.createElement;
|
|
8086
8265
|
var htmlDivElement = TemplateUtils.htmlDivElement;
|
|
8087
8266
|
var htmlSpanElement = TemplateUtils.htmlSpanElement;
|