ember-native 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE.md +9 -0
- package/README.md +16 -0
- package/addon-main.cjs +4 -0
- package/declarations/components/InspectorSupport.d.ts +32 -0
- package/declarations/components/InspectorSupport.d.ts.map +1 -0
- package/declarations/components/ListView.d.ts +31 -0
- package/declarations/components/ListView.d.ts.map +1 -0
- package/declarations/components/RadListView.d.ts +41 -0
- package/declarations/components/RadListView.d.ts.map +1 -0
- package/declarations/components/index.d.ts +4 -0
- package/declarations/components/index.d.ts.map +1 -0
- package/declarations/dom/element-registry.d.ts +16 -0
- package/declarations/dom/element-registry.d.ts.map +1 -0
- package/declarations/dom/native/FrameElement.d.ts +16 -0
- package/declarations/dom/native/FrameElement.d.ts.map +1 -0
- package/declarations/dom/native/NativeElementNode.d.ts +41 -0
- package/declarations/dom/native/NativeElementNode.d.ts.map +1 -0
- package/declarations/dom/native/PageElement.d.ts +6 -0
- package/declarations/dom/native/PageElement.d.ts.map +1 -0
- package/declarations/dom/native-elements-tag-name-map.d.ts +10 -0
- package/declarations/dom/native-elements-tag-name-map.d.ts.map +1 -0
- package/declarations/dom/nodes/CommentNode.d.ts +7 -0
- package/declarations/dom/nodes/CommentNode.d.ts.map +1 -0
- package/declarations/dom/nodes/DocumentNode.d.ts +47 -0
- package/declarations/dom/nodes/DocumentNode.d.ts.map +1 -0
- package/declarations/dom/nodes/ElementNode.d.ts +18 -0
- package/declarations/dom/nodes/ElementNode.d.ts.map +1 -0
- package/declarations/dom/nodes/PropertyNode.d.ts +13 -0
- package/declarations/dom/nodes/PropertyNode.d.ts.map +1 -0
- package/declarations/dom/nodes/TextNode.d.ts +10 -0
- package/declarations/dom/nodes/TextNode.d.ts.map +1 -0
- package/declarations/dom/nodes/ViewNode.d.ts +49 -0
- package/declarations/dom/nodes/ViewNode.d.ts.map +1 -0
- package/declarations/dom/setup-registry.d.ts +5 -0
- package/declarations/dom/setup-registry.d.ts.map +1 -0
- package/declarations/index.d.ts +4 -0
- package/declarations/index.d.ts.map +1 -0
- package/declarations/instance-initializers/history.d.ts +8 -0
- package/declarations/instance-initializers/history.d.ts.map +1 -0
- package/declarations/services/history.d.ts +9 -0
- package/declarations/services/history.d.ts.map +1 -0
- package/declarations/services/native-router.d.ts +12 -0
- package/declarations/services/native-router.d.ts.map +1 -0
- package/declarations/setup-inspector-support.d.ts +2 -0
- package/declarations/setup-inspector-support.d.ts.map +1 -0
- package/declarations/setup.d.ts +2 -0
- package/declarations/setup.d.ts.map +1 -0
- package/declarations/types/glint.d.ts +47 -0
- package/declarations/types/glint.d.ts.map +1 -0
- package/declarations/types/globals.d.ts +32 -0
- package/declarations/types/globals.d.ts.map +1 -0
- package/dist/_app_/components/ember-native/InspectorSupport.js +1 -0
- package/dist/_app_/components/ember-native/ListView.js +1 -0
- package/dist/_app_/components/ember-native/RadListView.js +1 -0
- package/dist/_app_/components/ember-native/index.js +1 -0
- package/dist/_app_/instance-initializers/ember-native/history.js +1 -0
- package/dist/_app_/services/ember-native/history.js +1 -0
- package/dist/_app_/services/ember-native/native-router.js +1 -0
- package/dist/_rollupPluginBabelHelpers-DZQzmiRH.js +41 -0
- package/dist/_rollupPluginBabelHelpers-DZQzmiRH.js.map +1 -0
- package/dist/components/InspectorSupport.js +75 -0
- package/dist/components/InspectorSupport.js.map +1 -0
- package/dist/components/ListView.js +69 -0
- package/dist/components/ListView.js.map +1 -0
- package/dist/components/RadListView.js +104 -0
- package/dist/components/RadListView.js.map +1 -0
- package/dist/components/index.js +4 -0
- package/dist/components/index.js.map +1 -0
- package/dist/dom/element-registry.js +65 -0
- package/dist/dom/element-registry.js.map +1 -0
- package/dist/dom/native/FrameElement.js +89 -0
- package/dist/dom/native/FrameElement.js.map +1 -0
- package/dist/dom/native/NativeElementNode.js +380 -0
- package/dist/dom/native/NativeElementNode.js.map +1 -0
- package/dist/dom/native/PageElement.js +11 -0
- package/dist/dom/native/PageElement.js.map +1 -0
- package/dist/dom/native-elements-tag-name-map.js +2 -0
- package/dist/dom/native-elements-tag-name-map.js.map +1 -0
- package/dist/dom/nodes/CommentNode.js +15 -0
- package/dist/dom/nodes/CommentNode.js.map +1 -0
- package/dist/dom/nodes/DocumentNode.js +198 -0
- package/dist/dom/nodes/DocumentNode.js.map +1 -0
- package/dist/dom/nodes/ElementNode.js +267 -0
- package/dist/dom/nodes/ElementNode.js.map +1 -0
- package/dist/dom/nodes/PropertyNode.js +39 -0
- package/dist/dom/nodes/PropertyNode.js.map +1 -0
- package/dist/dom/nodes/TextNode.js +35 -0
- package/dist/dom/nodes/TextNode.js.map +1 -0
- package/dist/dom/nodes/ViewNode.js +211 -0
- package/dist/dom/nodes/ViewNode.js.map +1 -0
- package/dist/dom/setup-registry.js +66 -0
- package/dist/dom/setup-registry.js.map +1 -0
- package/dist/index.js +6 -0
- package/dist/index.js.map +1 -0
- package/dist/instance-initializers/history.js +11 -0
- package/dist/instance-initializers/history.js.map +1 -0
- package/dist/services/history.js +58 -0
- package/dist/services/history.js.map +1 -0
- package/dist/services/native-router.js +34 -0
- package/dist/services/native-router.js.map +1 -0
- package/dist/setup-inspector-support.js +158 -0
- package/dist/setup-inspector-support.js.map +1 -0
- package/dist/setup.js +46 -0
- package/dist/setup.js.map +1 -0
- package/dist/types/glint.js +4 -0
- package/dist/types/glint.js.map +1 -0
- package/dist/types/globals.js +2 -0
- package/dist/types/globals.js.map +1 -0
- package/dist/utils/content-tag-loader.js +9 -0
- package/dist/utils/ember-native.js +9 -0
- package/dist/utils/eslint/ember-native.js +9 -0
- package/dist/utils/fix-glimmer-content-owner.js +13 -0
- package/dist/utils/glimmer-env.js +3 -0
- package/dist/utils/webpack.config.js +72 -0
- package/package.json +174 -0
- package/types/ember.d.ts +1 -0
|
@@ -0,0 +1,211 @@
|
|
|
1
|
+
import { _ as _defineProperty } from '../../_rollupPluginBabelHelpers-DZQzmiRH.js';
|
|
2
|
+
import { normalizeElementName, getViewMeta } from '../element-registry.js';
|
|
3
|
+
|
|
4
|
+
function* elementIterator(el) {
|
|
5
|
+
yield el;
|
|
6
|
+
for (const child of el.childNodes) {
|
|
7
|
+
yield* elementIterator(child);
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
class ViewNode {
|
|
11
|
+
getElementById(id) {
|
|
12
|
+
for (const el of elementIterator(this)) {
|
|
13
|
+
if (el.nodeType === 1 && el.id === id) return el;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
getElementByClass(klass) {
|
|
17
|
+
for (const el of elementIterator(this)) {
|
|
18
|
+
if (el.nodeType === 1 && el.classList.contains(klass)) return el;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
getElementByTagName(tagName) {
|
|
22
|
+
for (const el of elementIterator(this)) {
|
|
23
|
+
if (el.nodeType === 1 && el.tagName === tagName) return el;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
querySelector(selector) {
|
|
27
|
+
if (selector.startsWith('.')) {
|
|
28
|
+
return this.getElementByClass(selector.slice(1));
|
|
29
|
+
}
|
|
30
|
+
if (selector.startsWith('#')) {
|
|
31
|
+
return this.getElementById(selector.slice(1));
|
|
32
|
+
}
|
|
33
|
+
return this.getElementByTagName(selector);
|
|
34
|
+
}
|
|
35
|
+
contains(_otherElement) {
|
|
36
|
+
return false;
|
|
37
|
+
}
|
|
38
|
+
constructor() {
|
|
39
|
+
_defineProperty(this, "attributes", void 0);
|
|
40
|
+
_defineProperty(this, "args", void 0);
|
|
41
|
+
_defineProperty(this, "template", void 0);
|
|
42
|
+
_defineProperty(this, "nodeType", void 0);
|
|
43
|
+
_defineProperty(this, "_tagName", void 0);
|
|
44
|
+
_defineProperty(this, "childNodes", void 0);
|
|
45
|
+
_defineProperty(this, "prevSibling", void 0);
|
|
46
|
+
_defineProperty(this, "nextSibling", void 0);
|
|
47
|
+
_defineProperty(this, "_ownerDocument", void 0);
|
|
48
|
+
_defineProperty(this, "_meta", void 0);
|
|
49
|
+
this.nodeType = null;
|
|
50
|
+
this._tagName = null;
|
|
51
|
+
this.parentNode = null;
|
|
52
|
+
this.childNodes = [];
|
|
53
|
+
this.prevSibling = null;
|
|
54
|
+
this.nextSibling = null;
|
|
55
|
+
this._ownerDocument = null;
|
|
56
|
+
this._meta = null;
|
|
57
|
+
this.attributes = [];
|
|
58
|
+
}
|
|
59
|
+
hasAttribute() {
|
|
60
|
+
return false;
|
|
61
|
+
}
|
|
62
|
+
removeAttribute() {
|
|
63
|
+
return false;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
/* istanbul ignore next */
|
|
67
|
+
toString() {
|
|
68
|
+
return `${this.constructor.name}(${this.tagName})`;
|
|
69
|
+
}
|
|
70
|
+
set tagName(name) {
|
|
71
|
+
this._tagName = normalizeElementName(name);
|
|
72
|
+
}
|
|
73
|
+
get tagName() {
|
|
74
|
+
return this._tagName;
|
|
75
|
+
}
|
|
76
|
+
get firstChild() {
|
|
77
|
+
return this.childNodes.length ? this.childNodes[0] : null;
|
|
78
|
+
}
|
|
79
|
+
get lastChild() {
|
|
80
|
+
return this.childNodes.length ? this.childNodes[this.childNodes.length - 1] : null;
|
|
81
|
+
}
|
|
82
|
+
get meta() {
|
|
83
|
+
if (this._meta) {
|
|
84
|
+
return this._meta;
|
|
85
|
+
}
|
|
86
|
+
return this._meta = getViewMeta(this.tagName);
|
|
87
|
+
}
|
|
88
|
+
get isConnected() {
|
|
89
|
+
return Boolean(this.ownerDocument);
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
/* istanbul ignore next */
|
|
93
|
+
get ownerDocument() {
|
|
94
|
+
let el = this;
|
|
95
|
+
while (el != null && el.nodeType !== 9) {
|
|
96
|
+
el = el.parentNode || el._ownerDocument;
|
|
97
|
+
}
|
|
98
|
+
if (el?.nodeType === 9) {
|
|
99
|
+
return el;
|
|
100
|
+
}
|
|
101
|
+
return null;
|
|
102
|
+
}
|
|
103
|
+
getAttribute(key) {
|
|
104
|
+
return this[key];
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
/* istanbul ignore next */
|
|
108
|
+
setAttribute(key, value) {
|
|
109
|
+
this.attributes.push({
|
|
110
|
+
nodeName: key,
|
|
111
|
+
nodeValue: value
|
|
112
|
+
});
|
|
113
|
+
this[key] = value;
|
|
114
|
+
}
|
|
115
|
+
onInsertedChild(_childNode, _index) {}
|
|
116
|
+
onRemovedChild(_childNode) {}
|
|
117
|
+
insertBefore(childNode, referenceNode) {
|
|
118
|
+
if (!childNode) {
|
|
119
|
+
throw new Error(`Can't insert child.`);
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
// in some rare cases insertBefore is called with a null referenceNode
|
|
123
|
+
// this makes sure that it get's appended as the last child
|
|
124
|
+
if (!referenceNode) {
|
|
125
|
+
return this.appendChild(childNode);
|
|
126
|
+
}
|
|
127
|
+
if (referenceNode.parentNode !== this) {
|
|
128
|
+
throw new Error(`Can't insert child, because the reference node has a different parent.`);
|
|
129
|
+
}
|
|
130
|
+
if (childNode.parentNode && childNode.parentNode !== this) {
|
|
131
|
+
throw new Error(`Can't insert child, because it already has a different parent.`);
|
|
132
|
+
}
|
|
133
|
+
if (childNode.parentNode === this) ;
|
|
134
|
+
const index = this.childNodes.indexOf(referenceNode);
|
|
135
|
+
childNode.nextSibling = referenceNode;
|
|
136
|
+
childNode.prevSibling = this.childNodes[index - 1];
|
|
137
|
+
this.childNodes[index - 1].nextSibling = childNode;
|
|
138
|
+
referenceNode.prevSibling = childNode;
|
|
139
|
+
this.childNodes.splice(index, 0, childNode);
|
|
140
|
+
childNode.parentNode = this;
|
|
141
|
+
this.onInsertedChild(childNode, index);
|
|
142
|
+
}
|
|
143
|
+
appendChild(childNode) {
|
|
144
|
+
if (!childNode) {
|
|
145
|
+
throw new Error(`Can't append null child.`);
|
|
146
|
+
}
|
|
147
|
+
if (childNode.parentNode && childNode.parentNode !== this) {
|
|
148
|
+
throw new Error(`Can't append child, because it already has a different parent.`);
|
|
149
|
+
}
|
|
150
|
+
if (childNode.parentNode === this) ;
|
|
151
|
+
if (this.lastChild) {
|
|
152
|
+
childNode.prevSibling = this.lastChild;
|
|
153
|
+
this.lastChild.nextSibling = childNode;
|
|
154
|
+
}
|
|
155
|
+
this.childNodes.push(childNode);
|
|
156
|
+
childNode.parentNode = this;
|
|
157
|
+
this.onInsertedChild(childNode, this.childNodes.length - 1);
|
|
158
|
+
}
|
|
159
|
+
removeChild(childNode) {
|
|
160
|
+
if (!childNode) {
|
|
161
|
+
throw new Error(`Can't remove child.`);
|
|
162
|
+
}
|
|
163
|
+
if (!childNode.parentNode) {
|
|
164
|
+
throw new Error(`Can't remove child, because it has no parent.`);
|
|
165
|
+
}
|
|
166
|
+
if (childNode.parentNode !== this) {
|
|
167
|
+
throw new Error(`Can't remove child, because it has a different parent.`);
|
|
168
|
+
}
|
|
169
|
+
childNode.parentNode = null;
|
|
170
|
+
if (childNode.prevSibling) {
|
|
171
|
+
childNode.prevSibling.nextSibling = childNode.nextSibling;
|
|
172
|
+
}
|
|
173
|
+
if (childNode.nextSibling) {
|
|
174
|
+
childNode.nextSibling.prevSibling = childNode.prevSibling;
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
// reset the prevSibling and nextSibling. If not, a keep-alived component will
|
|
178
|
+
// still have a filled nextSibling attribute so vue will not
|
|
179
|
+
// insert the node again to the parent. See #220
|
|
180
|
+
// childNode.prevSibling = null;
|
|
181
|
+
// childNode.nextSibling = null;
|
|
182
|
+
|
|
183
|
+
this.childNodes = this.childNodes.filter(node => node !== childNode);
|
|
184
|
+
this.onRemovedChild(childNode);
|
|
185
|
+
}
|
|
186
|
+
clear(node) {
|
|
187
|
+
while (node.childNodes.length) {
|
|
188
|
+
this.clear(node.firstChild);
|
|
189
|
+
}
|
|
190
|
+
node.parentNode.removeChild(node);
|
|
191
|
+
}
|
|
192
|
+
removeChildren() {
|
|
193
|
+
while (this.childNodes.length) {
|
|
194
|
+
this.clear(this.firstChild);
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
firstElement() {
|
|
198
|
+
for (const child of this.childNodes) {
|
|
199
|
+
if (child.nodeType == 1) {
|
|
200
|
+
return child;
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
return null;
|
|
204
|
+
}
|
|
205
|
+
getBoundingClientRect() {
|
|
206
|
+
return null;
|
|
207
|
+
}
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
export { ViewNode as default };
|
|
211
|
+
//# sourceMappingURL=ViewNode.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ViewNode.js","sources":["../../../src/dom/nodes/ViewNode.ts"],"sourcesContent":["import { getViewMeta, normalizeElementName } from '../element-registry.ts';\nimport DocumentNode from './DocumentNode.ts';\n\nfunction* elementIterator(el: any): Generator<any, void, unknown> {\n yield el;\n for (const child of el.childNodes) {\n yield* elementIterator(child);\n }\n}\n\nexport type EventListener = (args: any) => void;\n\nexport default class ViewNode {\n attributes: any;\n args: any;\n template: any;\n\n nodeType: any;\n _tagName: any;\n declare parentNode: ViewNode | null;\n childNodes: ViewNode[];\n prevSibling: ViewNode | null;\n nextSibling: ViewNode | null;\n _ownerDocument: any;\n _meta: any;\n\n getElementById(id: string) {\n for (const el of elementIterator(this)) {\n if (el.nodeType === 1 && el.id === id) return el;\n }\n }\n\n getElementByClass(klass: string) {\n for (const el of elementIterator(this)) {\n if (el.nodeType === 1 && el.classList.contains(klass)) return el;\n }\n }\n\n getElementByTagName(tagName: string) {\n for (const el of elementIterator(this)) {\n if (el.nodeType === 1 && el.tagName === tagName) return el;\n }\n }\n\n querySelector(selector: string) {\n if (selector.startsWith('.')) {\n return this.getElementByClass(selector.slice(1));\n }\n\n if (selector.startsWith('#')) {\n return this.getElementById(selector.slice(1));\n }\n\n return this.getElementByTagName(selector);\n }\n\n contains(_otherElement: ViewNode) {\n return false;\n }\n\n constructor() {\n this.nodeType = null;\n this._tagName = null;\n this.parentNode = null;\n this.childNodes = [];\n this.prevSibling = null;\n this.nextSibling = null;\n\n this._ownerDocument = null;\n this._meta = null;\n this.attributes = [];\n }\n\n hasAttribute() {\n return false;\n }\n\n removeAttribute() {\n return false;\n }\n\n /* istanbul ignore next */\n toString() {\n return `${this.constructor.name}(${this.tagName})`;\n }\n\n set tagName(name) {\n this._tagName = normalizeElementName(name);\n }\n\n get tagName() {\n return this._tagName;\n }\n\n get firstChild(): ViewNode | null | undefined {\n return this.childNodes.length ? this.childNodes[0] : null;\n }\n\n get lastChild(): ViewNode | null | undefined {\n return this.childNodes.length\n ? this.childNodes[this.childNodes.length - 1]\n : null;\n }\n\n get meta() {\n if (this._meta) {\n return this._meta;\n }\n\n return (this._meta = getViewMeta(this.tagName));\n }\n\n get isConnected(): boolean {\n return Boolean(this.ownerDocument);\n }\n\n /* istanbul ignore next */\n get ownerDocument(): DocumentNode | null {\n let el = this;\n while (el != null && el.nodeType !== 9) {\n el = el.parentNode || el._ownerDocument;\n }\n\n if (el?.nodeType === 9) {\n return el as unknown as DocumentNode;\n }\n\n return null;\n }\n\n getAttribute(key: string) {\n return this[key as keyof this];\n }\n\n /* istanbul ignore next */\n setAttribute(key: string, value: any) {\n this.attributes.push({\n nodeName: key,\n nodeValue: value,\n });\n\n this[key as keyof this] = value;\n }\n\n onInsertedChild(_childNode: ViewNode, _index: number) {}\n\n onRemovedChild(_childNode: ViewNode) {}\n\n insertBefore(childNode: ViewNode, referenceNode: ViewNode) {\n if (!childNode) {\n throw new Error(`Can't insert child.`);\n }\n\n // in some rare cases insertBefore is called with a null referenceNode\n // this makes sure that it get's appended as the last child\n if (!referenceNode) {\n return this.appendChild(childNode);\n }\n\n if (referenceNode.parentNode !== this) {\n throw new Error(\n `Can't insert child, because the reference node has a different parent.`,\n );\n }\n\n if (childNode.parentNode && childNode.parentNode !== this) {\n throw new Error(\n `Can't insert child, because it already has a different parent.`,\n );\n }\n\n if (childNode.parentNode === this) {\n // we don't need to throw an error here, because it is a valid case\n // for example when switching the order of elements in the tree\n // fixes #127 - see for more details\n // fixes #240\n // throw new Error(`Can't insert child, because it is already a child.`)\n }\n\n const index = this.childNodes.indexOf(referenceNode);\n\n childNode.nextSibling = referenceNode;\n childNode.prevSibling = this.childNodes[index - 1]!;\n this.childNodes[index - 1]!.nextSibling = childNode;\n referenceNode.prevSibling = childNode;\n this.childNodes.splice(index, 0, childNode);\n childNode.parentNode = this;\n\n this.onInsertedChild(childNode, index);\n }\n\n appendChild(childNode: ViewNode) {\n if (!childNode) {\n throw new Error(`Can't append null child.`);\n }\n\n if (childNode.parentNode && childNode.parentNode !== this) {\n throw new Error(\n `Can't append child, because it already has a different parent.`,\n );\n }\n\n if (childNode.parentNode === this) {\n // we don't need to throw an error here, because it is a valid case\n // for example when switching the order of elements in the tree\n // fixes #127 - see for more details\n // fixes #240\n // throw new Error(`Can't append child, because it is already a child.`)\n }\n\n if (this.lastChild) {\n childNode.prevSibling = this.lastChild;\n this.lastChild.nextSibling = childNode;\n }\n\n this.childNodes.push(childNode);\n childNode.parentNode = this;\n\n this.onInsertedChild(childNode, this.childNodes.length - 1);\n }\n\n removeChild(childNode: ViewNode) {\n if (!childNode) {\n throw new Error(`Can't remove child.`);\n }\n\n if (!childNode.parentNode) {\n throw new Error(`Can't remove child, because it has no parent.`);\n }\n\n if (childNode.parentNode !== this) {\n throw new Error(`Can't remove child, because it has a different parent.`);\n }\n\n childNode.parentNode = null;\n\n if (childNode.prevSibling) {\n childNode.prevSibling.nextSibling = childNode.nextSibling;\n }\n\n if (childNode.nextSibling) {\n childNode.nextSibling.prevSibling = childNode.prevSibling;\n }\n\n // reset the prevSibling and nextSibling. If not, a keep-alived component will\n // still have a filled nextSibling attribute so vue will not\n // insert the node again to the parent. See #220\n // childNode.prevSibling = null;\n // childNode.nextSibling = null;\n\n this.childNodes = this.childNodes.filter((node) => node !== childNode);\n this.onRemovedChild(childNode);\n }\n\n clear(node: any) {\n while (node.childNodes.length) {\n this.clear(node.firstChild);\n }\n node.parentNode.removeChild(node);\n }\n\n removeChildren() {\n while (this.childNodes.length) {\n this.clear(this.firstChild);\n }\n }\n\n firstElement() {\n for (const child of this.childNodes) {\n if (child.nodeType == 1) {\n return child;\n }\n }\n return null;\n }\n\n getBoundingClientRect(): {\n left: number;\n top: number;\n bottom: number;\n width: number;\n height: number;\n } | null {\n return null;\n }\n}\n"],"names":["elementIterator","el","child","childNodes","ViewNode","getElementById","id","nodeType","getElementByClass","klass","classList","contains","getElementByTagName","tagName","querySelector","selector","startsWith","slice","_otherElement","constructor","_defineProperty","_tagName","parentNode","prevSibling","nextSibling","_ownerDocument","_meta","attributes","hasAttribute","removeAttribute","toString","name","normalizeElementName","firstChild","length","lastChild","meta","getViewMeta","isConnected","Boolean","ownerDocument","getAttribute","key","setAttribute","value","push","nodeName","nodeValue","onInsertedChild","_childNode","_index","onRemovedChild","insertBefore","childNode","referenceNode","Error","appendChild","index","indexOf","splice","removeChild","filter","node","clear","removeChildren","firstElement","getBoundingClientRect"],"mappings":"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"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { Frame, FormattedString, AbsoluteLayout, ActionBar, ActionItem, ActivityIndicator, Placeholder, Button, DatePicker, DockLayout, FlexboxLayout, GridLayout, HtmlView, Image, Label, ListPicker, NavigationButton, Span, StackLayout, ScrollView, Switch, TabView, TabViewItem, TextField, TextView, WebView, WrapLayout, ContentView, ListView } from '@nativescript/core';
|
|
2
|
+
import { registerElement } from './element-registry.js';
|
|
3
|
+
import FrameElement from './native/FrameElement.js';
|
|
4
|
+
import NativeElementNode from './native/NativeElementNode.js';
|
|
5
|
+
import PageElement from './native/PageElement.js';
|
|
6
|
+
|
|
7
|
+
// Largely taken from the Vue implimentation
|
|
8
|
+
function registerNativeElement(elementName, resolver, meta = null) {
|
|
9
|
+
registerElement(elementName, () => new NativeElementNode(elementName, resolver(), meta));
|
|
10
|
+
}
|
|
11
|
+
function registerElements() {
|
|
12
|
+
registerElement('head', () => null, {
|
|
13
|
+
insertChild() {}
|
|
14
|
+
});
|
|
15
|
+
registerElement('style', () => new NativeElementNode('style', null));
|
|
16
|
+
registerElement('div', () => Frame, {
|
|
17
|
+
insertChild(parentNode, childNode, _atIndex) {
|
|
18
|
+
//dont bother
|
|
19
|
+
parentNode.appendChild(childNode);
|
|
20
|
+
}
|
|
21
|
+
});
|
|
22
|
+
// Completed
|
|
23
|
+
registerNativeElement('AbsoluteLayout', () => AbsoluteLayout);
|
|
24
|
+
registerNativeElement('ActionBar', () => ActionBar);
|
|
25
|
+
registerNativeElement('ActionItem', () => ActionItem);
|
|
26
|
+
registerNativeElement('ActivityIndicator', () => ActivityIndicator);
|
|
27
|
+
registerNativeElement('Comment', () => Placeholder);
|
|
28
|
+
registerNativeElement('Button', () => Button);
|
|
29
|
+
registerNativeElement('DatePicker', () => DatePicker);
|
|
30
|
+
registerNativeElement('DockLayout', () => DockLayout);
|
|
31
|
+
registerNativeElement('FlexboxLayout', () => FlexboxLayout);
|
|
32
|
+
registerNativeElement('FormattedString', () => FormattedString, {
|
|
33
|
+
insertChild(parentNode, childNode, atIndex) {
|
|
34
|
+
const parent = parentNode.nativeView;
|
|
35
|
+
const child = childNode.nativeView;
|
|
36
|
+
parent.spans.splice(atIndex, 0, child);
|
|
37
|
+
}
|
|
38
|
+
});
|
|
39
|
+
registerNativeElement('GridLayout', () => GridLayout);
|
|
40
|
+
registerNativeElement('HtmlView', () => HtmlView);
|
|
41
|
+
registerNativeElement('Image', () => Image);
|
|
42
|
+
registerNativeElement('Label', () => Label);
|
|
43
|
+
registerNativeElement('ListPicker', () => ListPicker);
|
|
44
|
+
registerNativeElement('NavigationButton', () => NavigationButton);
|
|
45
|
+
// registerNativeElement('Page', () => require('@nativescript/core/ui/page').Page);
|
|
46
|
+
registerNativeElement('Span', () => Span);
|
|
47
|
+
registerNativeElement('StackLayout', () => StackLayout);
|
|
48
|
+
registerNativeElement('ScrollView', () => ScrollView);
|
|
49
|
+
registerNativeElement('Switch', () => Switch);
|
|
50
|
+
registerNativeElement('TabView', () => TabView);
|
|
51
|
+
registerNativeElement('TabViewItem', () => TabViewItem);
|
|
52
|
+
registerNativeElement('TextField', () => TextField);
|
|
53
|
+
registerNativeElement('TextView', () => TextView);
|
|
54
|
+
registerNativeElement('WebView', () => WebView);
|
|
55
|
+
registerNativeElement('WrapLayout', () => WrapLayout);
|
|
56
|
+
registerNativeElement('ContentView', () => ContentView);
|
|
57
|
+
registerNativeElement('ListView', () => ListView);
|
|
58
|
+
|
|
59
|
+
// Not Complete
|
|
60
|
+
registerElement('Frame', () => new FrameElement());
|
|
61
|
+
registerElement('Page', () => new PageElement());
|
|
62
|
+
registerElement('Fragment', () => new NativeElementNode('fragment', null));
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
export { registerElements, registerNativeElement };
|
|
66
|
+
//# sourceMappingURL=setup-registry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setup-registry.js","sources":["../../src/dom/setup-registry.ts"],"sourcesContent":["// Largely taken from the Vue implimentation\nimport {\n View,\n AbsoluteLayout,\n ActionBar,\n ActionItem,\n NavigationButton,\n ActivityIndicator,\n Placeholder,\n Button,\n DatePicker,\n FlexboxLayout,\n DockLayout,\n FormattedString,\n Span,\n GridLayout,\n HtmlView,\n Label,\n ListPicker,\n StackLayout,\n ScrollView,\n Switch,\n TabView,\n TabViewItem,\n TextField,\n TextView,\n WebView,\n WrapLayout,\n ContentView,\n ListView,\n Image,\n Frame,\n} from '@nativescript/core';\n\nimport { registerElement } from './element-registry.ts';\nimport FrameElement from './native/FrameElement.ts';\nimport NativeElementNode, {\n type ComponentMeta,\n} from './native/NativeElementNode.ts';\nimport PageElement from './native/PageElement.ts';\n\nexport function registerNativeElement(\n elementName: string,\n resolver: () => typeof View,\n meta: ComponentMeta | null = null,\n) {\n registerElement(\n elementName,\n () => new NativeElementNode(elementName, resolver(), meta),\n );\n}\n\nexport function registerElements() {\n registerElement('head', () => null as any, {\n insertChild() {},\n });\n registerElement('style', () => new NativeElementNode('style', null));\n registerElement('div', () => Frame as any, {\n insertChild(parentNode: any, childNode: any, _atIndex: any) {\n //dont bother\n parentNode.appendChild(childNode);\n },\n });\n // Completed\n registerNativeElement('AbsoluteLayout', () => AbsoluteLayout);\n registerNativeElement('ActionBar', () => ActionBar);\n registerNativeElement('ActionItem', () => ActionItem as any);\n registerNativeElement('ActivityIndicator', () => ActivityIndicator);\n\n registerNativeElement('Comment', () => Placeholder);\n registerNativeElement('Button', () => Button);\n registerNativeElement('DatePicker', () => DatePicker);\n registerNativeElement('DockLayout', () => DockLayout);\n registerNativeElement('FlexboxLayout', () => FlexboxLayout);\n registerNativeElement('FormattedString', () => FormattedString as any, {\n insertChild(\n parentNode: NativeElementNode<FormattedString>,\n childNode: NativeElementNode<Span>,\n atIndex,\n ) {\n const parent = parentNode.nativeView;\n const child = childNode.nativeView;\n parent.spans.splice(atIndex, 0, child);\n },\n });\n registerNativeElement('GridLayout', () => GridLayout);\n registerNativeElement('HtmlView', () => HtmlView);\n registerNativeElement('Image', () => Image);\n registerNativeElement('Label', () => Label);\n registerNativeElement('ListPicker', () => ListPicker);\n registerNativeElement('NavigationButton', () => NavigationButton as any);\n // registerNativeElement('Page', () => require('@nativescript/core/ui/page').Page);\n registerNativeElement('Span', () => Span as any);\n registerNativeElement('StackLayout', () => StackLayout);\n registerNativeElement('ScrollView', () => ScrollView);\n registerNativeElement('Switch', () => Switch);\n registerNativeElement('TabView', () => TabView);\n registerNativeElement('TabViewItem', () => TabViewItem as any);\n registerNativeElement('TextField', () => TextField);\n registerNativeElement('TextView', () => TextView);\n registerNativeElement('WebView', () => WebView);\n registerNativeElement('WrapLayout', () => WrapLayout);\n registerNativeElement('ContentView', () => ContentView);\n registerNativeElement('ListView', () => ListView);\n\n // Not Complete\n registerElement('Frame', () => new FrameElement());\n registerElement('Page', () => new PageElement());\n registerElement('Fragment', () => new NativeElementNode('fragment', null));\n}\n"],"names":["registerNativeElement","elementName","resolver","meta","registerElement","NativeElementNode","registerElements","insertChild","Frame","parentNode","childNode","_atIndex","appendChild","AbsoluteLayout","ActionBar","ActionItem","ActivityIndicator","Placeholder","Button","DatePicker","DockLayout","FlexboxLayout","FormattedString","atIndex","parent","nativeView","child","spans","splice","GridLayout","HtmlView","Image","Label","ListPicker","NavigationButton","Span","StackLayout","ScrollView","Switch","TabView","TabViewItem","TextField","TextView","WebView","WrapLayout","ContentView","ListView","FrameElement","PageElement"],"mappings":"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"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export { setup } from './setup.js';
|
|
2
|
+
export { setupInspectorSupport } from './setup-inspector-support.js';
|
|
3
|
+
export { default as ListView } from './components/ListView.js';
|
|
4
|
+
export { default as RadListView } from './components/RadListView.js';
|
|
5
|
+
export { default as InspectorSupport } from './components/InspectorSupport.js';
|
|
6
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
const Initializer = {
|
|
2
|
+
name: 'game-events',
|
|
3
|
+
after: [],
|
|
4
|
+
initialize(application) {
|
|
5
|
+
const history = application.lookup('service:ember-native/history');
|
|
6
|
+
history.setup();
|
|
7
|
+
}
|
|
8
|
+
};
|
|
9
|
+
|
|
10
|
+
export { Initializer as default };
|
|
11
|
+
//# sourceMappingURL=history.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"history.js","sources":["../../src/instance-initializers/history.ts"],"sourcesContent":["import ApplicationInstance from '@ember/application/instance';\nimport type HistoryService from '../services/history.ts';\n\nconst Initializer = {\n name: 'game-events',\n after: [],\n\n initialize(application: ApplicationInstance) {\n const history = application.lookup(\n 'service:ember-native/history',\n ) as HistoryService;\n history.setup();\n },\n};\nexport default Initializer;\n"],"names":["Initializer","name","after","initialize","application","history","lookup","setup"],"mappings":"AAGA,MAAMA,WAAW,GAAG;AAClBC,EAAAA,IAAI,EAAE,aAAa;AACnBC,EAAAA,KAAK,EAAE,EAAE;EAETC,UAAUA,CAACC,WAAgC,EAAE;AAC3C,IAAA,MAAMC,OAAO,GAAGD,WAAW,CAACE,MAAM,CAChC,8BACF,CAAmB;IACnBD,OAAO,CAACE,KAAK,EAAE;AACjB;AACF;;;;"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { a as _applyDecoratedDescriptor, b as _initializerDefineProperty, _ as _defineProperty } from '../_rollupPluginBabelHelpers-DZQzmiRH.js';
|
|
2
|
+
import Service, { service } from '@ember/service';
|
|
3
|
+
import { Application } from '@nativescript/core';
|
|
4
|
+
import { tracked } from '@glimmer/tracking';
|
|
5
|
+
|
|
6
|
+
var _class, _descriptor, _descriptor2;
|
|
7
|
+
let HistoryService = (_class = class HistoryService extends Service {
|
|
8
|
+
constructor(...args) {
|
|
9
|
+
super(...args);
|
|
10
|
+
_initializerDefineProperty(this, "router", _descriptor, this);
|
|
11
|
+
_initializerDefineProperty(this, "stack", _descriptor2, this);
|
|
12
|
+
_defineProperty(this, "back", () => {
|
|
13
|
+
const h = this.stack.pop();
|
|
14
|
+
if (h) {
|
|
15
|
+
this.stack = [...this.stack];
|
|
16
|
+
let transition;
|
|
17
|
+
if (h.params.model) {
|
|
18
|
+
transition = this.router.transitionTo(h.name, h.params.model, {
|
|
19
|
+
queryParams: h.queryParams
|
|
20
|
+
});
|
|
21
|
+
} else {
|
|
22
|
+
transition = this.router.transitionTo(h.name, {
|
|
23
|
+
queryParams: h.queryParams
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
transition.data['isBack'] = true;
|
|
27
|
+
return true;
|
|
28
|
+
}
|
|
29
|
+
return false;
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
setup() {
|
|
33
|
+
Application.android?.on('activityBackPressed', args => {
|
|
34
|
+
args.cancel = this.back();
|
|
35
|
+
});
|
|
36
|
+
this.router.on('routeDidChange', transition => {
|
|
37
|
+
if (transition.from && !transition.data['isBack']) {
|
|
38
|
+
this.stack.push(transition.from);
|
|
39
|
+
this.stack = [...this.stack];
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
}, _descriptor = _applyDecoratedDescriptor(_class.prototype, "router", [service], {
|
|
44
|
+
configurable: true,
|
|
45
|
+
enumerable: true,
|
|
46
|
+
writable: true,
|
|
47
|
+
initializer: null
|
|
48
|
+
}), _descriptor2 = _applyDecoratedDescriptor(_class.prototype, "stack", [tracked], {
|
|
49
|
+
configurable: true,
|
|
50
|
+
enumerable: true,
|
|
51
|
+
writable: true,
|
|
52
|
+
initializer: function () {
|
|
53
|
+
return [];
|
|
54
|
+
}
|
|
55
|
+
}), _class);
|
|
56
|
+
|
|
57
|
+
export { HistoryService as default };
|
|
58
|
+
//# sourceMappingURL=history.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"history.js","sources":["../../src/services/history.ts"],"sourcesContent":["import Service, { service } from '@ember/service';\nimport Router from '@ember/routing/router';\nimport { Application } from '@nativescript/core';\nimport { tracked } from '@glimmer/tracking';\n\nexport default class HistoryService extends Service {\n @service router!: Router;\n @tracked stack: any[] = [];\n\n setup() {\n Application.android?.on('activityBackPressed', (args) => {\n args.cancel = this.back();\n });\n this.router.on('routeDidChange', (transition) => {\n if (transition.from && !transition.data['isBack']) {\n this.stack.push(transition.from);\n this.stack = [...this.stack];\n }\n });\n }\n\n back = () => {\n const h = this.stack.pop();\n if (h) {\n this.stack = [...this.stack];\n let transition;\n if (h.params.model) {\n transition = this.router.transitionTo(h.name, h.params.model, {\n queryParams: h.queryParams,\n });\n } else {\n transition = this.router.transitionTo(h.name, {\n queryParams: h.queryParams,\n });\n }\n transition.data['isBack'] = true;\n return true;\n }\n return false;\n };\n}\n"],"names":["HistoryService","_class","Service","constructor","args","_initializerDefineProperty","_descriptor","_descriptor2","_defineProperty","back","h","stack","pop","transition","params","model","router","transitionTo","name","queryParams","data","setup","Application","android","on","cancel","from","push","_applyDecoratedDescriptor","prototype","service","tracked"],"mappings":";;;;;;AAKqBA,IAAAA,cAAc,IAAAC,MAAA,GAApB,MAAMD,cAAc,SAASE,OAAO,CAAC;AAAAC,EAAAA,WAAAA,CAAA,GAAAC,IAAA,EAAA;AAAA,IAAA,KAAA,CAAA,GAAAA,IAAA,CAAA;AAAAC,IAAAA,0BAAA,iBAAAC,WAAA,EAAA,IAAA,CAAA;AAAAD,IAAAA,0BAAA,gBAAAE,YAAA,EAAA,IAAA,CAAA;AAAAC,IAAAA,eAAA,eAgB3CC,MAAM;MACX,MAAMC,CAAC,GAAG,IAAI,CAACC,KAAK,CAACC,GAAG,EAAE;AAC1B,MAAA,IAAIF,CAAC,EAAE;QACL,IAAI,CAACC,KAAK,GAAG,CAAC,GAAG,IAAI,CAACA,KAAK,CAAC;AAC5B,QAAA,IAAIE,UAAU;AACd,QAAA,IAAIH,CAAC,CAACI,MAAM,CAACC,KAAK,EAAE;AAClBF,UAAAA,UAAU,GAAG,IAAI,CAACG,MAAM,CAACC,YAAY,CAACP,CAAC,CAACQ,IAAI,EAAER,CAAC,CAACI,MAAM,CAACC,KAAK,EAAE;YAC5DI,WAAW,EAAET,CAAC,CAACS;AACjB,WAAC,CAAC;AACJ,SAAC,MAAM;UACLN,UAAU,GAAG,IAAI,CAACG,MAAM,CAACC,YAAY,CAACP,CAAC,CAACQ,IAAI,EAAE;YAC5CC,WAAW,EAAET,CAAC,CAACS;AACjB,WAAC,CAAC;AACJ;AACAN,QAAAA,UAAU,CAACO,IAAI,CAAC,QAAQ,CAAC,GAAG,IAAI;AAChC,QAAA,OAAO,IAAI;AACb;AACA,MAAA,OAAO,KAAK;KACb,CAAA;AAAA;AA9BDC,EAAAA,KAAKA,GAAG;IACNC,WAAW,CAACC,OAAO,EAAEC,EAAE,CAAC,qBAAqB,EAAGpB,IAAI,IAAK;AACvDA,MAAAA,IAAI,CAACqB,MAAM,GAAG,IAAI,CAAChB,IAAI,EAAE;AAC3B,KAAC,CAAC;IACF,IAAI,CAACO,MAAM,CAACQ,EAAE,CAAC,gBAAgB,EAAGX,UAAU,IAAK;MAC/C,IAAIA,UAAU,CAACa,IAAI,IAAI,CAACb,UAAU,CAACO,IAAI,CAAC,QAAQ,CAAC,EAAE;QACjD,IAAI,CAACT,KAAK,CAACgB,IAAI,CAACd,UAAU,CAACa,IAAI,CAAC;QAChC,IAAI,CAACf,KAAK,GAAG,CAAC,GAAG,IAAI,CAACA,KAAK,CAAC;AAC9B;AACF,KAAC,CAAC;AACJ;AAqBF,CAAA,EAAAL,WAAA,GAAAsB,yBAAA,CAAA3B,MAAA,CAAA4B,SAAA,EAAA,QAAA,EAAA,CAlCGC,OAAAA,CAAAA,EAAAA;EAAAA,YAAAA,EAAAA,IAAAA;EAAAA,UAAAA,EAAAA,IAAAA;EAAAA,QAAAA,EAAAA,IAAAA;EAAAA,WAAAA,EAAAA;AAAAA,CAAAA,CAAAA,EAAAA,YAAAA,GAAAA,yBAAAA,CAAAA,MAAAA,CAAAA,SAAAA,YACAC,OAAAA,CAAAA,EAAAA;EAAAA,YAAAA,EAAAA,IAAAA;EAAAA,UAAAA,EAAAA,IAAAA;EAAAA,QAAAA,EAAAA,IAAAA;AAAAA,EAAAA,WAAAA,cAAAA;AAAAA,IAAAA,OAAuB,EAAE;AAAA;AAAA,CAAA,CAAA,EAAA9B,MAAA;;;;"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { a as _applyDecoratedDescriptor, b as _initializerDefineProperty } from '../_rollupPluginBabelHelpers-DZQzmiRH.js';
|
|
2
|
+
import Service, { service } from '@ember/service';
|
|
3
|
+
import { setNextTransition } from '../dom/native/FrameElement.js';
|
|
4
|
+
|
|
5
|
+
var _class, _descriptor;
|
|
6
|
+
let NativeRouter = (_class = class NativeRouter extends Service {
|
|
7
|
+
constructor(...args) {
|
|
8
|
+
super(...args);
|
|
9
|
+
_initializerDefineProperty(this, "router", _descriptor, this);
|
|
10
|
+
}
|
|
11
|
+
transitionTo(name, model, queryParams, transition) {
|
|
12
|
+
setNextTransition(transition?.transition, transition?.animated);
|
|
13
|
+
let t;
|
|
14
|
+
if (model) {
|
|
15
|
+
t = this.router.transitionTo(name, model, {
|
|
16
|
+
queryParams
|
|
17
|
+
});
|
|
18
|
+
} else {
|
|
19
|
+
t = this.router.transitionTo(name, {
|
|
20
|
+
queryParams
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
t.data['transition'] = transition;
|
|
24
|
+
return t;
|
|
25
|
+
}
|
|
26
|
+
}, _descriptor = _applyDecoratedDescriptor(_class.prototype, "router", [service], {
|
|
27
|
+
configurable: true,
|
|
28
|
+
enumerable: true,
|
|
29
|
+
writable: true,
|
|
30
|
+
initializer: null
|
|
31
|
+
}), _class);
|
|
32
|
+
|
|
33
|
+
export { NativeRouter as default };
|
|
34
|
+
//# sourceMappingURL=native-router.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"native-router.js","sources":["../../src/services/native-router.ts"],"sourcesContent":["import Service, { service } from '@ember/service';\nimport Router from '@ember/routing/router';\nimport { setNextTransition } from '../dom/native/FrameElement.ts';\nimport type { NavigationTransition } from '@nativescript/core';\nimport type { Transition } from 'router_js';\n\nexport default class NativeRouter extends Service {\n @service router!: Router;\n\n transitionTo(\n name: string,\n model: any,\n queryParams?: Record<string, any>,\n transition?: { transition: NavigationTransition; animated: boolean },\n ) {\n setNextTransition(transition?.transition, transition?.animated);\n let t: Transition;\n if (model) {\n t = this.router.transitionTo(name, model, { queryParams });\n } else {\n t = this.router.transitionTo(name, { queryParams });\n }\n t.data['transition'] = transition;\n return t;\n }\n}\n"],"names":["NativeRouter","_class","Service","constructor","args","_initializerDefineProperty","_descriptor","transitionTo","name","model","queryParams","transition","setNextTransition","animated","t","router","data","_applyDecoratedDescriptor","prototype","service"],"mappings":";;;;;AAMqBA,IAAAA,YAAY,IAAAC,MAAA,GAAlB,MAAMD,YAAY,SAASE,OAAO,CAAC;AAAAC,EAAAA,WAAAA,CAAA,GAAAC,IAAA,EAAA;AAAA,IAAA,KAAA,CAAA,GAAAA,IAAA,CAAA;AAAAC,IAAAA,0BAAA,iBAAAC,WAAA,EAAA,IAAA,CAAA;AAAA;EAGhDC,YAAYA,CACVC,IAAY,EACZC,KAAU,EACVC,WAAiC,EACjCC,UAAoE,EACpE;IACAC,iBAAiB,CAACD,UAAU,EAAEA,UAAU,EAAEA,UAAU,EAAEE,QAAQ,CAAC;AAC/D,IAAA,IAAIC,CAAa;AACjB,IAAA,IAAIL,KAAK,EAAE;MACTK,CAAC,GAAG,IAAI,CAACC,MAAM,CAACR,YAAY,CAACC,IAAI,EAAEC,KAAK,EAAE;AAAEC,QAAAA;AAAY,OAAC,CAAC;AAC5D,KAAC,MAAM;MACLI,CAAC,GAAG,IAAI,CAACC,MAAM,CAACR,YAAY,CAACC,IAAI,EAAE;AAAEE,QAAAA;AAAY,OAAC,CAAC;AACrD;AACAI,IAAAA,CAAC,CAACE,IAAI,CAAC,YAAY,CAAC,GAAGL,UAAU;AACjC,IAAA,OAAOG,CAAC;AACV;AACF,CAAA,EAAAR,WAAA,GAAAW,yBAAA,CAAAhB,MAAA,CAAAiB,SAAA,EAAA,QAAA,EAAA,CAlBGC,OAAAA,CAAAA,EAAAA;EAAAA,YAAAA,EAAAA,IAAAA;EAAAA,UAAAA,EAAAA,IAAAA;EAAAA,QAAAA,EAAAA,IAAAA;EAAAA,WAAAA,EAAAA;AAAAA,CAAAA,CAAAA,EAAAA,MAAAA;;;;"}
|
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
import { _ as _defineProperty } from './_rollupPluginBabelHelpers-DZQzmiRH.js';
|
|
2
|
+
import { DOMDomainDebugger } from '@nativescript/core/debugger/webinspector-dom';
|
|
3
|
+
import * as inspectorCommands from '@nativescript/core/debugger/InspectorBackendCommands';
|
|
4
|
+
import { RSVP } from '@ember/-internals/runtime';
|
|
5
|
+
import Ember from 'ember';
|
|
6
|
+
import * as tracking from '@glimmer/tracking';
|
|
7
|
+
import * as runtime from '@glimmer/runtime';
|
|
8
|
+
import * as validator from '@glimmer/validator';
|
|
9
|
+
import * as reference from '@glimmer/reference';
|
|
10
|
+
import * as runloop from '@ember/runloop';
|
|
11
|
+
|
|
12
|
+
function setupInspectorSupport(config) {
|
|
13
|
+
window.define('@glimmer/tracking', () => tracking);
|
|
14
|
+
window.define('@glimmer/runtime', () => runtime);
|
|
15
|
+
window.define('@glimmer/validator', () => validator);
|
|
16
|
+
window.define('@glimmer/reference', () => reference);
|
|
17
|
+
window.define('@ember/runloop', () => runloop);
|
|
18
|
+
window.define('rsvp', () => RSVP);
|
|
19
|
+
window.define('ember', () => ({
|
|
20
|
+
default: Ember
|
|
21
|
+
}));
|
|
22
|
+
window.define('doc-app/config/environment', () => ({
|
|
23
|
+
default: config
|
|
24
|
+
}));
|
|
25
|
+
console.debug = console.log;
|
|
26
|
+
const globalMessaging = {};
|
|
27
|
+
class Event {
|
|
28
|
+
constructor(type, target) {
|
|
29
|
+
_defineProperty(this, "target", void 0);
|
|
30
|
+
_defineProperty(this, "type", void 0);
|
|
31
|
+
this.type = type;
|
|
32
|
+
this.target = target;
|
|
33
|
+
}
|
|
34
|
+
preventDefault() {}
|
|
35
|
+
stopPropagation() {}
|
|
36
|
+
}
|
|
37
|
+
globalThis.postMessage = (msg, origin, ports) => {
|
|
38
|
+
globalMessaging['message']?.forEach(listener => listener({
|
|
39
|
+
data: msg,
|
|
40
|
+
origin,
|
|
41
|
+
ports
|
|
42
|
+
}));
|
|
43
|
+
};
|
|
44
|
+
globalThis.triggerEvent = (type, element, _data) => {
|
|
45
|
+
const e = new Event(type, element);
|
|
46
|
+
globalMessaging[type]?.forEach(cb => {
|
|
47
|
+
cb(e);
|
|
48
|
+
});
|
|
49
|
+
};
|
|
50
|
+
globalThis.addEventListener = (type, cb) => {
|
|
51
|
+
globalMessaging[type] = globalMessaging[type] || [];
|
|
52
|
+
globalMessaging[type].push(cb);
|
|
53
|
+
};
|
|
54
|
+
globalThis.removeEventListener = (type, cb) => {
|
|
55
|
+
if (type === 'message') {
|
|
56
|
+
const i = globalMessaging[type]?.indexOf(cb) || -1;
|
|
57
|
+
if (i >= 0) {
|
|
58
|
+
globalMessaging[type].splice(i, 1);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
};
|
|
62
|
+
if (document.documentElement && document.documentElement.dataset) {
|
|
63
|
+
// let EmberDebug know that content script has executed
|
|
64
|
+
document.documentElement.dataset['emberExtension'] = '1';
|
|
65
|
+
}
|
|
66
|
+
class Port {
|
|
67
|
+
constructor(channel, otherPort) {
|
|
68
|
+
_defineProperty(this, "msgId", void 0);
|
|
69
|
+
_defineProperty(this, "listeners", void 0);
|
|
70
|
+
_defineProperty(this, "otherPort", void 0);
|
|
71
|
+
_defineProperty(this, "channel", void 0);
|
|
72
|
+
this.channel = channel;
|
|
73
|
+
this.otherPort = otherPort;
|
|
74
|
+
this.msgId = 20000;
|
|
75
|
+
this.listeners = [];
|
|
76
|
+
}
|
|
77
|
+
trigger(msg) {
|
|
78
|
+
this.listeners.forEach(listener => listener({
|
|
79
|
+
data: msg
|
|
80
|
+
}));
|
|
81
|
+
}
|
|
82
|
+
get channelPort() {
|
|
83
|
+
return this.channel[this.otherPort];
|
|
84
|
+
}
|
|
85
|
+
start() {}
|
|
86
|
+
addEventListener(_type, cb) {
|
|
87
|
+
this.listeners.push(cb);
|
|
88
|
+
}
|
|
89
|
+
postMessage(msg) {
|
|
90
|
+
this.channelPort.trigger(msg);
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
class MessageChannel {
|
|
94
|
+
constructor() {
|
|
95
|
+
_defineProperty(this, "port1", new Port(this, 'port2'));
|
|
96
|
+
_defineProperty(this, "port2", new Port(this, 'port1'));
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
globalThis.MessageChannel = MessageChannel;
|
|
100
|
+
globalThis.scrollX = 0;
|
|
101
|
+
globalThis.scrollY = 0;
|
|
102
|
+
Object.defineProperty(globalThis, 'innerWidth', {
|
|
103
|
+
get() {
|
|
104
|
+
return document.body?.nativeView?.getActualSize().width || 0;
|
|
105
|
+
}
|
|
106
|
+
});
|
|
107
|
+
DOMDomainDebugger.prototype.resolveNode = params => {
|
|
108
|
+
const n = document.nodeMap.get(params.nodeId);
|
|
109
|
+
return {
|
|
110
|
+
object: {
|
|
111
|
+
type: 'object',
|
|
112
|
+
className: n.constructor.name,
|
|
113
|
+
value: n,
|
|
114
|
+
objectId: 'dont know'
|
|
115
|
+
}
|
|
116
|
+
};
|
|
117
|
+
};
|
|
118
|
+
let _EmberDomain = class EmberDomain {
|
|
119
|
+
constructor() {
|
|
120
|
+
_defineProperty(this, "port", void 0);
|
|
121
|
+
_defineProperty(this, "msgId", void 0);
|
|
122
|
+
this.msgId = 0;
|
|
123
|
+
globalThis.addEventListener('message', msg => {
|
|
124
|
+
if (msg.data === 'debugger-client') {
|
|
125
|
+
this.port = msg.ports[0];
|
|
126
|
+
this.port.addEventListener('message', msg => {
|
|
127
|
+
__inspectorSendEvent(JSON.stringify({
|
|
128
|
+
id: this.msgId++,
|
|
129
|
+
method: 'Ember.toExtension',
|
|
130
|
+
params: msg
|
|
131
|
+
}));
|
|
132
|
+
});
|
|
133
|
+
}
|
|
134
|
+
});
|
|
135
|
+
}
|
|
136
|
+
fromExtension(msg) {
|
|
137
|
+
try {
|
|
138
|
+
if (msg.type) {
|
|
139
|
+
this.port?.postMessage(msg);
|
|
140
|
+
}
|
|
141
|
+
} catch (e) {
|
|
142
|
+
console.error(e);
|
|
143
|
+
}
|
|
144
|
+
if (msg.type === 'inject-code' && !globalThis.emberDebugInjected) {
|
|
145
|
+
globalThis.emberDebugInjected = true;
|
|
146
|
+
try {
|
|
147
|
+
eval(msg.value);
|
|
148
|
+
} catch (e) {
|
|
149
|
+
console.error(e);
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
};
|
|
154
|
+
_EmberDomain = __decorate([inspectorCommands.DomainDispatcher('Ember'), __metadata('design:paramtypes', [])], _EmberDomain);
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
export { setupInspectorSupport };
|
|
158
|
+
//# sourceMappingURL=setup-inspector-support.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setup-inspector-support.js","sources":["../src/setup-inspector-support.ts"],"sourcesContent":["import { DOMDomainDebugger } from '@nativescript/core/debugger/webinspector-dom';\nimport * as inspectorCommands from '@nativescript/core/debugger/InspectorBackendCommands';\nimport { RSVP } from '@ember/-internals/runtime';\nimport Ember from 'ember';\nimport * as tracking from '@glimmer/tracking';\nimport * as runtime from '@glimmer/runtime';\nimport * as validator from '@glimmer/validator';\nimport * as reference from '@glimmer/reference';\nimport * as runloop from '@ember/runloop';\n\nexport function setupInspectorSupport(config: any) {\n window.define('@glimmer/tracking', () => tracking);\n window.define('@glimmer/runtime', () => runtime);\n window.define('@glimmer/validator', () => validator);\n window.define('@glimmer/reference', () => reference);\n window.define('@ember/runloop', () => runloop);\n\n window.define('rsvp', () => RSVP);\n window.define('ember', () => ({ default: Ember }));\n window.define('doc-app/config/environment', () => ({\n default: config,\n }));\n\n console.debug = console.log;\n\n const globalMessaging: Record<string, ((args: any) => void)[]> = {};\n\n class Event {\n target: any;\n type: any;\n\n constructor(type: string, target: Element) {\n this.type = type;\n this.target = target;\n }\n\n preventDefault() {}\n stopPropagation() {}\n }\n\n globalThis.postMessage = (msg, origin, ports?: Transferable[]) => {\n globalMessaging['message']?.forEach((listener) =>\n listener({\n data: msg,\n origin,\n ports,\n }),\n );\n };\n\n globalThis.triggerEvent = (type: string, element: Element, _data: any) => {\n const e = new Event(type, element);\n globalMessaging[type]?.forEach((cb) => {\n cb(e);\n });\n };\n\n globalThis.addEventListener = (type: any, cb: any) => {\n globalMessaging[type] = globalMessaging[type] || [];\n globalMessaging[type]!.push(cb);\n };\n\n globalThis.removeEventListener = (type: any, cb: any) => {\n if (type === 'message') {\n const i = globalMessaging[type]?.indexOf(cb) || -1;\n if (i >= 0) {\n globalMessaging[type]!.splice(i, 1);\n }\n }\n };\n\n if (document.documentElement && document.documentElement.dataset) {\n // let EmberDebug know that content script has executed\n document.documentElement.dataset['emberExtension'] = '1';\n }\n\n class Port {\n private msgId: number;\n listeners: any[];\n private otherPort: keyof MessageChannel;\n private channel: MessageChannel;\n constructor(channel: MessageChannel, otherPort: keyof MessageChannel) {\n this.channel = channel;\n this.otherPort = otherPort;\n this.msgId = 20000;\n this.listeners = [];\n }\n\n trigger(msg: any) {\n this.listeners.forEach((listener) => listener({ data: msg }));\n }\n\n get channelPort() {\n return this.channel[this.otherPort];\n }\n\n start() {}\n addEventListener(_type: string, cb: (args: any) => void) {\n this.listeners.push(cb);\n }\n postMessage(msg: any) {\n this.channelPort.trigger(msg);\n }\n }\n\n class MessageChannel {\n port1 = new Port(this, 'port2');\n port2 = new Port(this, 'port1');\n }\n\n (globalThis as any).MessageChannel = MessageChannel;\n\n globalThis.scrollX = 0;\n globalThis.scrollY = 0;\n Object.defineProperty(globalThis as any, 'innerWidth', {\n get() {\n return (document.body as any)?.nativeView?.getActualSize().width || 0;\n },\n });\n\n DOMDomainDebugger.prototype.resolveNode = (params) => {\n const n = document.nodeMap.get(params.nodeId);\n\n return {\n object: {\n type: 'object',\n className: n.constructor.name,\n value: n,\n objectId: 'dont know',\n },\n };\n };\n\n let _EmberDomain = class EmberDomain {\n port!: MessagePort;\n private msgId: number;\n constructor() {\n this.msgId = 0;\n globalThis.addEventListener('message', (msg) => {\n if (msg.data === 'debugger-client') {\n this.port = msg.ports[0]!;\n this.port.addEventListener('message', (msg) => {\n __inspectorSendEvent(\n JSON.stringify({\n id: this.msgId++,\n method: 'Ember.toExtension',\n params: msg,\n }),\n );\n });\n }\n });\n }\n fromExtension(msg: any) {\n try {\n if (msg.type) {\n this.port?.postMessage(msg);\n }\n } catch (e) {\n console.error(e);\n }\n\n if (msg.type === 'inject-code' && !globalThis.emberDebugInjected) {\n globalThis.emberDebugInjected = true;\n try {\n eval(msg.value);\n } catch (e) {\n console.error(e);\n }\n }\n }\n };\n\n _EmberDomain = __decorate(\n [\n inspectorCommands.DomainDispatcher('Ember'),\n __metadata('design:paramtypes', []),\n ],\n _EmberDomain,\n );\n}\n"],"names":["setupInspectorSupport","config","window","define","tracking","runtime","validator","reference","runloop","RSVP","default","Ember","console","debug","log","globalMessaging","Event","constructor","type","target","_defineProperty","preventDefault","stopPropagation","globalThis","postMessage","msg","origin","ports","forEach","listener","data","triggerEvent","element","_data","e","cb","addEventListener","push","removeEventListener","i","indexOf","splice","document","documentElement","dataset","Port","channel","otherPort","msgId","listeners","trigger","channelPort","start","_type","MessageChannel","scrollX","scrollY","Object","defineProperty","get","body","nativeView","getActualSize","width","DOMDomainDebugger","prototype","resolveNode","params","n","nodeMap","nodeId","object","className","name","value","objectId","_EmberDomain","EmberDomain","port","__inspectorSendEvent","JSON","stringify","id","method","fromExtension","error","emberDebugInjected","eval","__decorate","inspectorCommands","DomainDispatcher","__metadata"],"mappings":"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"}
|