ember-native 1.3.0 → 2.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/declarations/components/InspectorSupport.d.ts +0 -1
- package/declarations/components/ListView.d.ts +0 -1
- package/declarations/components/RadListView.d.ts +1 -1
- package/declarations/components/index.d.ts +0 -1
- package/declarations/dom/element-registry.d.ts +0 -1
- package/declarations/dom/native/FrameElement.d.ts +0 -1
- package/declarations/dom/native/NativeElementNode.d.ts +8 -1
- package/declarations/dom/native/PageElement.d.ts +0 -1
- package/declarations/dom/native-elements-tag-name-map.d.ts +31 -6
- package/declarations/dom/nodes/CommentNode.d.ts +0 -1
- package/declarations/dom/nodes/DocumentNode.d.ts +6 -3
- package/declarations/dom/nodes/ElementNode.d.ts +6 -2
- package/declarations/dom/nodes/PropertyNode.d.ts +2 -4
- package/declarations/dom/nodes/TextNode.d.ts +0 -1
- package/declarations/dom/nodes/ViewNode.d.ts +1 -1
- package/declarations/dom/setup-registry.d.ts +0 -1
- package/declarations/index.d.ts +1 -2
- package/declarations/instance-initializers/history.d.ts +0 -1
- package/declarations/instance-initializers/webpack-hot-reload.d.ts +0 -1
- package/declarations/services/history.d.ts +3 -1
- package/declarations/services/native-router.d.ts +0 -1
- package/declarations/services/webpack-hot-reload.d.ts +0 -1
- package/declarations/setup-inspector-support.d.ts +0 -1
- package/declarations/setup.d.ts +0 -1
- package/declarations/types/glint.d.ts +22 -2
- package/declarations/types/globals.d.ts +28 -31
- package/dist/{_rollupPluginBabelHelpers-DZQzmiRH.js → _rollupPluginBabelHelpers-apNPIsxw.js} +6 -6
- package/dist/_rollupPluginBabelHelpers-apNPIsxw.js.map +1 -0
- package/dist/components/InspectorSupport.js +1 -5
- package/dist/components/InspectorSupport.js.map +1 -1
- package/dist/components/ListView.js +4 -3
- package/dist/components/ListView.js.map +1 -1
- package/dist/components/RadListView.js +17 -3
- package/dist/components/RadListView.js.map +1 -1
- package/dist/dom/native/FrameElement.js +1 -1
- package/dist/dom/native/FrameElement.js.map +1 -1
- package/dist/dom/native/NativeElementNode.js +18 -3
- package/dist/dom/native/NativeElementNode.js.map +1 -1
- package/dist/dom/nodes/CommentNode.js +1 -1
- package/dist/dom/nodes/CommentNode.js.map +1 -1
- package/dist/dom/nodes/DocumentNode.js +18 -6
- package/dist/dom/nodes/DocumentNode.js.map +1 -1
- package/dist/dom/nodes/ElementNode.js +22 -6
- package/dist/dom/nodes/ElementNode.js.map +1 -1
- package/dist/dom/nodes/PropertyNode.js +7 -10
- package/dist/dom/nodes/PropertyNode.js.map +1 -1
- package/dist/dom/nodes/TextNode.js +1 -1
- package/dist/dom/nodes/TextNode.js.map +1 -1
- package/dist/dom/nodes/ViewNode.js +9 -2
- package/dist/dom/nodes/ViewNode.js.map +1 -1
- package/dist/dom/setup-registry.js +1 -2
- package/dist/dom/setup-registry.js.map +1 -1
- package/dist/services/history.js +9 -6
- package/dist/services/history.js.map +1 -1
- package/dist/services/native-router.js +1 -1
- package/dist/services/webpack-hot-reload.js +1 -1
- package/dist/setup-inspector-support.js +1 -1
- package/dist/setup-inspector-support.js.map +1 -1
- package/dist/setup.js +38 -0
- package/dist/setup.js.map +1 -1
- package/dist/utils/babel-plugin.js +14 -20
- package/dist/utils/babel-plugin.ts +0 -2
- package/dist/utils/content-tag-loader.js +1 -1
- package/dist/utils/ember-native.js +2 -0
- package/dist/utils/eslint/ember-native.js +2 -0
- package/dist/utils/tsconfig.json +3 -2
- package/dist/utils/webpack.config.js +0 -1
- package/package.json +46 -44
- package/declarations/components/InspectorSupport.d.ts.map +0 -1
- package/declarations/components/ListView.d.ts.map +0 -1
- package/declarations/components/RadListView.d.ts.map +0 -1
- package/declarations/components/index.d.ts.map +0 -1
- package/declarations/dom/element-registry.d.ts.map +0 -1
- package/declarations/dom/native/FrameElement.d.ts.map +0 -1
- package/declarations/dom/native/NativeElementNode.d.ts.map +0 -1
- package/declarations/dom/native/PageElement.d.ts.map +0 -1
- package/declarations/dom/native-elements-tag-name-map.d.ts.map +0 -1
- package/declarations/dom/nodes/CommentNode.d.ts.map +0 -1
- package/declarations/dom/nodes/DocumentNode.d.ts.map +0 -1
- package/declarations/dom/nodes/ElementNode.d.ts.map +0 -1
- package/declarations/dom/nodes/PropertyNode.d.ts.map +0 -1
- package/declarations/dom/nodes/TextNode.d.ts.map +0 -1
- package/declarations/dom/nodes/ViewNode.d.ts.map +0 -1
- package/declarations/dom/setup-registry.d.ts.map +0 -1
- package/declarations/index.d.ts.map +0 -1
- package/declarations/instance-initializers/history.d.ts.map +0 -1
- package/declarations/instance-initializers/webpack-hot-reload.d.ts.map +0 -1
- package/declarations/services/history.d.ts.map +0 -1
- package/declarations/services/native-router.d.ts.map +0 -1
- package/declarations/services/webpack-hot-reload.d.ts.map +0 -1
- package/declarations/setup-inspector-support.d.ts.map +0 -1
- package/declarations/setup.d.ts.map +0 -1
- package/declarations/types/glint.d.ts.map +0 -1
- package/declarations/types/globals.d.ts.map +0 -1
- package/dist/_rollupPluginBabelHelpers-DZQzmiRH.js.map +0 -1
- package/dist/utils/fix-glimmer-content-owner.js +0 -13
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { _ as _defineProperty } from '../../_rollupPluginBabelHelpers-
|
|
1
|
+
import { _ as _defineProperty } from '../../_rollupPluginBabelHelpers-apNPIsxw.js';
|
|
2
2
|
import { TextBase } from '@nativescript/core';
|
|
3
3
|
import ViewNode from './ViewNode.js';
|
|
4
4
|
import NativeElementNode from '../native/NativeElementNode.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TextNode.js","sources":["../../../src/dom/nodes/TextNode.ts"],"sourcesContent":["import { TextBase } from '@nativescript/core';\nimport ViewNode from './ViewNode.ts';\nimport NativeElementNode from '../native/NativeElementNode.ts';\n\nexport default class TextNode extends ViewNode {\n text: any;\n private _parentNode: ViewNode | null = null;\n constructor(text: string) {\n super();\n\n this.nodeType = 3;\n this.text = text;\n\n this._meta = {\n skipAddToDom: true,\n };\n }\n\n // @ts-expect-error override parent\n set parentNode(node: ViewNode | null) {\n this._parentNode = node;\n this.setText(this.text);\n }\n\n get parentNode() {\n return this._parentNode;\n }\n\n setText(text: string) {\n this.text = text;\n if (\n this.parentNode instanceof NativeElementNode &&\n this.parentNode?.nativeView instanceof TextBase\n ) {\n this.parentNode.updateText();\n }\n }\n}\n"],"names":["TextNode","ViewNode","constructor","text","_defineProperty","nodeType","_meta","skipAddToDom","parentNode","node","_parentNode","setText","NativeElementNode","nativeView","TextBase","updateText"],"mappings":";;;;;AAIe,MAAMA,QAAQ,SAASC,QAAQ,CAAC;EAG7CC,WAAWA,CAACC,IAAY,EAAE;AACxB,IAAA,KAAK,EAAE;IAAAC,eAAA,CAAA,IAAA,EAAA,MAAA,EAAA,
|
|
1
|
+
{"version":3,"file":"TextNode.js","sources":["../../../src/dom/nodes/TextNode.ts"],"sourcesContent":["import { TextBase } from '@nativescript/core';\nimport ViewNode from './ViewNode.ts';\nimport NativeElementNode from '../native/NativeElementNode.ts';\n\nexport default class TextNode extends ViewNode {\n text: any;\n private _parentNode: ViewNode | null = null;\n constructor(text: string) {\n super();\n\n this.nodeType = 3;\n this.text = text;\n\n this._meta = {\n skipAddToDom: true,\n };\n }\n\n // @ts-expect-error override parent\n set parentNode(node: ViewNode | null) {\n this._parentNode = node;\n this.setText(this.text);\n }\n\n get parentNode() {\n return this._parentNode;\n }\n\n setText(text: string) {\n this.text = text;\n if (\n this.parentNode instanceof NativeElementNode &&\n this.parentNode?.nativeView instanceof TextBase\n ) {\n this.parentNode.updateText();\n }\n }\n}\n"],"names":["TextNode","ViewNode","constructor","text","_defineProperty","nodeType","_meta","skipAddToDom","parentNode","node","_parentNode","setText","NativeElementNode","nativeView","TextBase","updateText"],"mappings":";;;;;AAIe,MAAMA,QAAQ,SAASC,QAAQ,CAAC;EAG7CC,WAAWA,CAACC,IAAY,EAAE;AACxB,IAAA,KAAK,EAAE;IAAAC,eAAA,CAAA,IAAA,EAAA,MAAA,EAAA,MAAA,CAAA;AAAAA,IAAAA,eAAA,sBAF8B,IAAI,CAAA;IAIzC,IAAI,CAACC,QAAQ,GAAG,CAAC;IACjB,IAAI,CAACF,IAAI,GAAGA,IAAI;IAEhB,IAAI,CAACG,KAAK,GAAG;AACXC,MAAAA,YAAY,EAAE;KACf;AACH;;AAEA;EACA,IAAIC,UAAUA,CAACC,IAAqB,EAAE;IACpC,IAAI,CAACC,WAAW,GAAGD,IAAI;AACvB,IAAA,IAAI,CAACE,OAAO,CAAC,IAAI,CAACR,IAAI,CAAC;AACzB;EAEA,IAAIK,UAAUA,GAAG;IACf,OAAO,IAAI,CAACE,WAAW;AACzB;EAEAC,OAAOA,CAACR,IAAY,EAAE;IACpB,IAAI,CAACA,IAAI,GAAGA,IAAI;AAChB,IAAA,IACE,IAAI,CAACK,UAAU,YAAYI,iBAAiB,IAC5C,IAAI,CAACJ,UAAU,EAAEK,UAAU,YAAYC,QAAQ,EAC/C;AACA,MAAA,IAAI,CAACN,UAAU,CAACO,UAAU,EAAE;AAC9B;AACF;AACF;;;;"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { _ as _defineProperty } from '../../_rollupPluginBabelHelpers-
|
|
1
|
+
import { _ as _defineProperty } from '../../_rollupPluginBabelHelpers-apNPIsxw.js';
|
|
2
2
|
import { normalizeElementName, getViewMeta } from '../element-registry.js';
|
|
3
3
|
|
|
4
4
|
function* elementIterator(el) {
|
|
@@ -8,6 +8,13 @@ function* elementIterator(el) {
|
|
|
8
8
|
}
|
|
9
9
|
}
|
|
10
10
|
class ViewNode {
|
|
11
|
+
get textContent() {
|
|
12
|
+
const contents = [];
|
|
13
|
+
for (const el of elementIterator(this)) {
|
|
14
|
+
contents.push(el.text || el.html);
|
|
15
|
+
}
|
|
16
|
+
return contents.filter(c => !!c).join(' ');
|
|
17
|
+
}
|
|
11
18
|
getElementById(id) {
|
|
12
19
|
for (const el of elementIterator(this)) {
|
|
13
20
|
if (el.nodeType === 1 && el.id === id) return el;
|
|
@@ -158,7 +165,7 @@ class ViewNode {
|
|
|
158
165
|
}
|
|
159
166
|
removeChild(childNode) {
|
|
160
167
|
if (!childNode) {
|
|
161
|
-
throw new Error(`Can't remove child.`);
|
|
168
|
+
throw new Error(`Can't remove <null> child.`);
|
|
162
169
|
}
|
|
163
170
|
if (!childNode.parentNode) {
|
|
164
171
|
throw new Error(`Can't remove child, because it has no parent.`);
|
|
@@ -1 +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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"}
|
|
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 get textContent() {\n const contents = [];\n for (const el of elementIterator(this)) {\n contents.push(el.text || el.html);\n }\n return contents.filter((c) => !!c).join(' ');\n }\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 <null> 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","textContent","contents","push","text","html","filter","c","join","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","nodeName","nodeValue","onInsertedChild","_childNode","_index","onRemovedChild","insertBefore","childNode","referenceNode","Error","appendChild","index","indexOf","splice","removeChild","node","clear","removeChildren","firstElement","getBoundingClientRect"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Frame,
|
|
1
|
+
import { Frame, AbsoluteLayout, ActionBar, ActionItem, ActivityIndicator, Placeholder, Button, DatePicker, DockLayout, FlexboxLayout, FormattedString, GridLayout, HtmlView, Image, Label, ListPicker, NavigationButton, Span, StackLayout, ScrollView, Switch, TabView, TabViewItem, TextField, TextView, WebView, WrapLayout, ContentView, ListView } from '@nativescript/core';
|
|
2
2
|
import { registerElement } from './element-registry.js';
|
|
3
3
|
import FrameElement from './native/FrameElement.js';
|
|
4
4
|
import NativeElementNode from './native/NativeElementNode.js';
|
|
@@ -42,7 +42,6 @@ function registerElements() {
|
|
|
42
42
|
registerNativeElement('Label', () => Label);
|
|
43
43
|
registerNativeElement('ListPicker', () => ListPicker);
|
|
44
44
|
registerNativeElement('NavigationButton', () => NavigationButton);
|
|
45
|
-
// registerNativeElement('Page', () => require('@nativescript/core/ui/page').Page);
|
|
46
45
|
registerNativeElement('Span', () => Span);
|
|
47
46
|
registerNativeElement('StackLayout', () => StackLayout);
|
|
48
47
|
registerNativeElement('ScrollView', () => ScrollView);
|
|
@@ -1 +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
|
|
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('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/services/history.js
CHANGED
|
@@ -1,15 +1,19 @@
|
|
|
1
|
-
import { a as _applyDecoratedDescriptor, b as _initializerDefineProperty, _ as _defineProperty } from '../_rollupPluginBabelHelpers-
|
|
1
|
+
import { a as _applyDecoratedDescriptor, b as _initializerDefineProperty, _ as _defineProperty } from '../_rollupPluginBabelHelpers-apNPIsxw.js';
|
|
2
2
|
import Service, { service } from '@ember/service';
|
|
3
3
|
import { Application } from '@nativescript/core';
|
|
4
4
|
import { tracked } from '@glimmer/tracking';
|
|
5
|
+
import { registerDestructor } from '@ember/destroyable';
|
|
5
6
|
|
|
6
7
|
var _dec, _class, _descriptor, _descriptor2, _descriptor3;
|
|
7
8
|
let HistoryService = (_dec = service('ember-native/native-router'), _class = class HistoryService extends Service {
|
|
8
|
-
constructor(...
|
|
9
|
-
super(...
|
|
9
|
+
constructor(..._args) {
|
|
10
|
+
super(..._args);
|
|
10
11
|
_initializerDefineProperty(this, "router", _descriptor, this);
|
|
11
12
|
_initializerDefineProperty(this, "nativeRouter", _descriptor2, this);
|
|
12
13
|
_initializerDefineProperty(this, "stack", _descriptor3, this);
|
|
14
|
+
_defineProperty(this, "activityBackPressed", args => {
|
|
15
|
+
args.cancel = this.back();
|
|
16
|
+
});
|
|
13
17
|
_defineProperty(this, "back", () => {
|
|
14
18
|
const h = this.stack.pop();
|
|
15
19
|
if (h && h.from) {
|
|
@@ -25,9 +29,8 @@ let HistoryService = (_dec = service('ember-native/native-router'), _class = cla
|
|
|
25
29
|
});
|
|
26
30
|
}
|
|
27
31
|
setup() {
|
|
28
|
-
Application.android?.on('activityBackPressed',
|
|
29
|
-
|
|
30
|
-
});
|
|
32
|
+
Application.android?.on('activityBackPressed', this.activityBackPressed);
|
|
33
|
+
registerDestructor(this, () => Application.android?.off('activityBackPressed', this.activityBackPressed));
|
|
31
34
|
this.router.on('routeDidChange', transition => {
|
|
32
35
|
if (transition.from && !transition.data['isBack']) {
|
|
33
36
|
this.stack.push(transition);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"history.js","sources":["../../src/services/history.ts"],"sourcesContent":["import Service, { service } from '@ember/service';\nimport { Application } from '@nativescript/core';\nimport { tracked } from '@glimmer/tracking';\nimport type NativeRouter from './native-router.ts';\nimport type Router from '@ember/routing/router';\nimport type { Transition } from 'router_js';\n\nexport default class HistoryService extends Service {\n @service router!: Router;\n @service('ember-native/native-router') nativeRouter!: NativeRouter;\n @tracked stack: Transition[] = [];\n\n setup() {\n Application.android?.on('activityBackPressed', (
|
|
1
|
+
{"version":3,"file":"history.js","sources":["../../src/services/history.ts"],"sourcesContent":["import Service, { service } from '@ember/service';\nimport { Application } from '@nativescript/core';\nimport { tracked } from '@glimmer/tracking';\nimport type NativeRouter from './native-router.ts';\nimport type Router from '@ember/routing/router';\nimport type { Transition } from 'router_js';\nimport { registerDestructor } from '@ember/destroyable';\n\nexport default class HistoryService extends Service {\n @service router!: Router;\n @service('ember-native/native-router') nativeRouter!: NativeRouter;\n @tracked stack: Transition[] = [];\n\n setup() {\n Application.android?.on('activityBackPressed', this.activityBackPressed);\n registerDestructor(this, () =>\n Application.android?.off('activityBackPressed', this.activityBackPressed),\n );\n this.router.on('routeDidChange', (transition) => {\n if (transition.from && !transition.data['isBack']) {\n this.stack.push(transition);\n this.stack = [...this.stack];\n }\n });\n }\n\n activityBackPressed = (args: { cancel: boolean }) => {\n args.cancel = this.back();\n };\n\n back = () => {\n const h = this.stack.pop();\n if (h && h.from) {\n const from = h.from;\n this.stack = [...this.stack];\n const transition = this.nativeRouter.transitionTo(\n from.name,\n from.params?.['model'],\n {\n queryParams: from.queryParams,\n },\n h.data['transition'] as any,\n );\n transition.data['isBack'] = true;\n return true;\n }\n return false;\n };\n}\n"],"names":["HistoryService","_dec","service","_class","Service","constructor","_args","_initializerDefineProperty","_descriptor","_descriptor2","_descriptor3","_defineProperty","args","cancel","back","h","stack","pop","from","transition","nativeRouter","transitionTo","name","params","queryParams","data","setup","Application","android","on","activityBackPressed","registerDestructor","off","router","push","_applyDecoratedDescriptor","prototype","tracked"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { a as _applyDecoratedDescriptor, b as _initializerDefineProperty } from '../_rollupPluginBabelHelpers-
|
|
1
|
+
import { a as _applyDecoratedDescriptor, b as _initializerDefineProperty } from '../_rollupPluginBabelHelpers-apNPIsxw.js';
|
|
2
2
|
import Service, { service } from '@ember/service';
|
|
3
3
|
import { setNextTransition } from '../dom/native/FrameElement.js';
|
|
4
4
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { a as _applyDecoratedDescriptor, b as _initializerDefineProperty } from '../_rollupPluginBabelHelpers-
|
|
1
|
+
import { a as _applyDecoratedDescriptor, b as _initializerDefineProperty } from '../_rollupPluginBabelHelpers-apNPIsxw.js';
|
|
2
2
|
import Service, { service } from '@ember/service';
|
|
3
3
|
import { getOwner } from '@ember/owner';
|
|
4
4
|
import Router from '@ember/routing/route';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { _ as _defineProperty } from './_rollupPluginBabelHelpers-
|
|
1
|
+
import { _ as _defineProperty } from './_rollupPluginBabelHelpers-apNPIsxw.js';
|
|
2
2
|
import { DOMDomainDebugger } from '@nativescript/core/debugger/webinspector-dom';
|
|
3
3
|
import * as inspectorCommands from '@nativescript/core/debugger/InspectorBackendCommands';
|
|
4
4
|
import { RSVP } from '@ember/-internals/runtime';
|
|
@@ -1 +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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"}
|
|
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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"}
|
package/dist/setup.js
CHANGED
|
@@ -1,16 +1,20 @@
|
|
|
1
|
+
import { _ as _defineProperty } from './_rollupPluginBabelHelpers-apNPIsxw.js';
|
|
1
2
|
import * as loader from 'loader.js';
|
|
2
3
|
import { registerElements } from './dom/setup-registry.js';
|
|
3
4
|
import { SimpleDynamicAttribute } from '@glimmer/runtime';
|
|
4
5
|
import ElementNode from './dom/nodes/ElementNode.js';
|
|
5
6
|
import { _backburner } from '@ember/runloop';
|
|
7
|
+
import DocumentNode from './dom/nodes/DocumentNode.js';
|
|
6
8
|
|
|
7
9
|
function setup() {
|
|
8
10
|
globalThis.requireModule = loader.require;
|
|
9
11
|
globalThis.requirejs = loader.require;
|
|
10
12
|
globalThis.define = loader.define;
|
|
13
|
+
globalThis.document = new DocumentNode();
|
|
11
14
|
globalThis.Element = ElementNode;
|
|
12
15
|
globalThis.Node = ElementNode;
|
|
13
16
|
globalThis.HTMLElement = ElementNode;
|
|
17
|
+
globalThis.NodeList = Array;
|
|
14
18
|
function handleBackburnerErrors() {
|
|
15
19
|
const next = _backburner['_platform'].next;
|
|
16
20
|
_backburner['_platform'].next = function (...args) {
|
|
@@ -39,6 +43,40 @@ function setup() {
|
|
|
39
43
|
element.setAttribute(name, normalizedValue);
|
|
40
44
|
}
|
|
41
45
|
};
|
|
46
|
+
class Window {}
|
|
47
|
+
class MouseEvent {
|
|
48
|
+
constructor(type, eventOpts) {
|
|
49
|
+
_defineProperty(this, "type", void 0);
|
|
50
|
+
_defineProperty(this, "eventOpts", void 0);
|
|
51
|
+
if (type === 'click') {
|
|
52
|
+
type = 'tap';
|
|
53
|
+
}
|
|
54
|
+
this.type = type;
|
|
55
|
+
this.eventOpts = eventOpts;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
const g = globalThis;
|
|
59
|
+
g.Window = Window;
|
|
60
|
+
g.MouseEvent = MouseEvent;
|
|
61
|
+
g.window = globalThis;
|
|
62
|
+
g.window.location = {
|
|
63
|
+
href: '',
|
|
64
|
+
host: '',
|
|
65
|
+
hostname: '',
|
|
66
|
+
pathname: '',
|
|
67
|
+
search: '',
|
|
68
|
+
origin: '',
|
|
69
|
+
protocol: 'none'
|
|
70
|
+
};
|
|
71
|
+
const document = new DocumentNode();
|
|
72
|
+
document.location = globalThis.window.location;
|
|
73
|
+
g.__emberNative = {
|
|
74
|
+
installGlobal() {
|
|
75
|
+
globalThis.window = globalThis;
|
|
76
|
+
globalThis.document = document;
|
|
77
|
+
}
|
|
78
|
+
};
|
|
79
|
+
g.__emberNative.installGlobal();
|
|
42
80
|
registerElements();
|
|
43
81
|
}
|
|
44
82
|
|
package/dist/setup.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup.js","sources":["../src/setup.ts"],"sourcesContent":["import * as loader from 'loader.js';\nimport { registerElements } from './dom/setup-registry.ts';\nimport { SimpleDynamicAttribute } from '@glimmer/runtime';\nimport ElementNode from './dom/nodes/ElementNode.ts';\nimport { _backburner } from '@ember/runloop';\n\nexport function setup() {\n globalThis.requireModule = loader.require;\n globalThis.requirejs = loader.require;\n globalThis.define = loader.define;\n\n globalThis.Element = ElementNode as any;\n globalThis.Node = ElementNode as any;\n globalThis.HTMLElement = ElementNode as any;\n\n function handleBackburnerErrors() {\n const next = _backburner['_platform'].next;\n _backburner['_platform'].next = function (...args: any) {\n const p = next.call(this, ...args);\n p.catch(console.error);\n return p;\n };\n }\n handleBackburnerErrors();\n\n SimpleDynamicAttribute.prototype.set = function (dom, value, _env) {\n const { name, namespace } = this.attribute;\n dom.__setAttribute(name, value as any, namespace);\n };\n\n SimpleDynamicAttribute.prototype.update = function (value, _env) {\n const normalizedValue = value;\n const { element: element, name: name } = this.attribute;\n if (null === normalizedValue) {\n element.removeAttribute(name);\n } else {\n element.setAttribute(name, normalizedValue as string);\n }\n };\n\n registerElements();\n}\n"],"names":["setup","globalThis","requireModule","loader","require","requirejs","define","Element","ElementNode","Node","HTMLElement","handleBackburnerErrors","next","_backburner","args","p","call","catch","console","error","SimpleDynamicAttribute","prototype","set","dom","value","_env","name","namespace","attribute","__setAttribute","update","normalizedValue","element","removeAttribute","setAttribute","registerElements"],"mappings":"
|
|
1
|
+
{"version":3,"file":"setup.js","sources":["../src/setup.ts"],"sourcesContent":["import * as loader from 'loader.js';\nimport { registerElements } from './dom/setup-registry.ts';\nimport { SimpleDynamicAttribute } from '@glimmer/runtime';\nimport ElementNode from './dom/nodes/ElementNode.ts';\nimport { _backburner } from '@ember/runloop';\nimport DocumentNode from './dom/nodes/DocumentNode.ts';\n\nexport function setup() {\n globalThis.requireModule = loader.require;\n globalThis.requirejs = loader.require;\n globalThis.define = loader.define;\n\n globalThis.document = new DocumentNode() as unknown as Document;\n globalThis.Element = ElementNode as any;\n globalThis.Node = ElementNode as any;\n globalThis.HTMLElement = ElementNode as any;\n globalThis.NodeList = Array as any;\n\n function handleBackburnerErrors() {\n const next = _backburner['_platform'].next;\n _backburner['_platform'].next = function (...args: any) {\n const p = next.call(this, ...args);\n p.catch(console.error);\n return p;\n };\n }\n handleBackburnerErrors();\n\n SimpleDynamicAttribute.prototype.set = function (dom, value, _env) {\n const { name, namespace } = this.attribute;\n dom.__setAttribute(name, value as any, namespace);\n };\n\n SimpleDynamicAttribute.prototype.update = function (value, _env) {\n const normalizedValue = value;\n const { element: element, name: name } = this.attribute;\n if (null === normalizedValue) {\n element.removeAttribute(name);\n } else {\n element.setAttribute(name, normalizedValue as string);\n }\n };\n\n class Window {}\n\n class MouseEvent {\n type: any;\n eventOpts: any;\n constructor(type: string, eventOpts: any) {\n if (type === 'click') {\n type = 'tap';\n }\n this.type = type;\n this.eventOpts = eventOpts;\n }\n }\n\n const g = globalThis as any;\n g.Window = Window;\n g.MouseEvent = MouseEvent;\n g.window = globalThis;\n g.window.location = {\n href: '',\n host: '',\n hostname: '',\n pathname: '',\n search: '',\n origin: '',\n protocol: 'none',\n } as any;\n const document = new DocumentNode() as unknown as Document;\n (document as unknown as any).location = globalThis.window.location;\n\n g.__emberNative = {\n installGlobal() {\n (globalThis as any).window = globalThis;\n (globalThis as any).document = document;\n },\n };\n g.__emberNative.installGlobal();\n\n registerElements();\n}\n"],"names":["setup","globalThis","requireModule","loader","require","requirejs","define","document","DocumentNode","Element","ElementNode","Node","HTMLElement","NodeList","Array","handleBackburnerErrors","next","_backburner","args","p","call","catch","console","error","SimpleDynamicAttribute","prototype","set","dom","value","_env","name","namespace","attribute","__setAttribute","update","normalizedValue","element","removeAttribute","setAttribute","Window","MouseEvent","constructor","type","eventOpts","_defineProperty","g","window","location","href","host","hostname","pathname","search","origin","protocol","__emberNative","installGlobal","registerElements"],"mappings":"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"}
|
|
@@ -1,10 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
exports.default = hotReplaceAst;
|
|
5
|
-
const core_1 = require("@babel/core");
|
|
6
|
-
const glimmer = require("@glimmer/syntax");
|
|
7
|
-
const babel_import_util_1 = require("babel-import-util");
|
|
1
|
+
import { parse } from '@babel/core';
|
|
2
|
+
import * as glimmer from '@glimmer/syntax';
|
|
3
|
+
import { ImportUtil } from 'babel-import-util';
|
|
8
4
|
class HotAstProcessor {
|
|
9
5
|
constructor() {
|
|
10
6
|
this.options = {
|
|
@@ -144,19 +140,19 @@ class HotAstProcessor {
|
|
|
144
140
|
return visitor;
|
|
145
141
|
}
|
|
146
142
|
}
|
|
147
|
-
|
|
148
|
-
function hotReplaceAst(babel) {
|
|
143
|
+
export const hotAstProcessor = new HotAstProcessor();
|
|
144
|
+
export default function hotReplaceAst(babel) {
|
|
149
145
|
const t = babel.types;
|
|
150
146
|
return {
|
|
151
147
|
name: 'a-hot-reload-imports',
|
|
152
148
|
pre(file) {
|
|
153
|
-
|
|
154
|
-
|
|
149
|
+
hotAstProcessor.reset();
|
|
150
|
+
hotAstProcessor.meta.babelProgram = file.ast.program;
|
|
155
151
|
},
|
|
156
152
|
visitor: {
|
|
157
153
|
Program(path, state) {
|
|
158
154
|
var _a;
|
|
159
|
-
if (!
|
|
155
|
+
if (!hotAstProcessor.meta.importVar) {
|
|
160
156
|
return;
|
|
161
157
|
}
|
|
162
158
|
if (process.env['EMBER_HMR_ENABLED'] !== 'true') {
|
|
@@ -165,20 +161,20 @@ function hotReplaceAst(babel) {
|
|
|
165
161
|
if ((_a = state.filename) === null || _a === void 0 ? void 0 : _a.includes('node_modules')) {
|
|
166
162
|
return;
|
|
167
163
|
}
|
|
168
|
-
const util = new
|
|
164
|
+
const util = new ImportUtil(babel, path);
|
|
169
165
|
const tracked = util.import(path, '@glimmer/tracking', 'tracked');
|
|
170
166
|
const klass = t.classExpression(path.scope.generateUidIdentifier('Imports'), null, t.classBody([]));
|
|
171
|
-
const bindings = [...
|
|
167
|
+
const bindings = [...hotAstProcessor.meta.importBindings].sort();
|
|
172
168
|
for (const local of bindings) {
|
|
173
169
|
klass.body.body.push(t.classProperty(t.identifier(local), t.identifier(local), null, [
|
|
174
170
|
t.decorator(tracked),
|
|
175
171
|
]));
|
|
176
172
|
}
|
|
177
173
|
const newExp = t.newExpression(klass, []);
|
|
178
|
-
const assign = t.assignmentExpression('=', t.identifier(
|
|
174
|
+
const assign = t.assignmentExpression('=', t.identifier(hotAstProcessor.meta.importVar), newExp);
|
|
179
175
|
const varDeclaration = path.node.body.findIndex((e) => e.type === 'VariableDeclaration' &&
|
|
180
176
|
e.declarations[0].id.name ===
|
|
181
|
-
|
|
177
|
+
hotAstProcessor.meta.importVar) + 1;
|
|
182
178
|
const lastImportIndex = [...path.node.body].findLastIndex((e) => e.type === 'ImportDeclaration') + 1;
|
|
183
179
|
path.node.body.splice(Math.max(varDeclaration, lastImportIndex), 0, assign);
|
|
184
180
|
const findImport = function findImport(specifier) {
|
|
@@ -186,9 +182,7 @@ function hotReplaceAst(babel) {
|
|
|
186
182
|
b.specifiers.some((s) => s.local.name === specifier));
|
|
187
183
|
};
|
|
188
184
|
const ifHotStatements = [];
|
|
189
|
-
console.log('bindings', bindings);
|
|
190
185
|
for (const imp of bindings) {
|
|
191
|
-
console.log('imp', imp);
|
|
192
186
|
const importDeclaration = findImport(imp);
|
|
193
187
|
if (!importDeclaration) {
|
|
194
188
|
console.log('could not find import for ', imp);
|
|
@@ -196,9 +190,9 @@ function hotReplaceAst(babel) {
|
|
|
196
190
|
}
|
|
197
191
|
const source = importDeclaration.source.value;
|
|
198
192
|
// const timestamp = Date.now();
|
|
199
|
-
const ast =
|
|
193
|
+
const ast = parse(`
|
|
200
194
|
import.meta.webpackHot.accept('${source}', function () {
|
|
201
|
-
${
|
|
195
|
+
${hotAstProcessor.meta.importVar}.${imp} = ${imp};
|
|
202
196
|
});
|
|
203
197
|
`);
|
|
204
198
|
const accept = ast.program.body;
|
|
@@ -260,9 +260,7 @@ export default function hotReplaceAst(babel: typeof Babel) {
|
|
|
260
260
|
};
|
|
261
261
|
|
|
262
262
|
const ifHotStatements = [];
|
|
263
|
-
console.log('bindings', bindings);
|
|
264
263
|
for (const imp of bindings) {
|
|
265
|
-
console.log('imp', imp);
|
|
266
264
|
const importDeclaration = findImport(
|
|
267
265
|
imp,
|
|
268
266
|
) as BabelTypesNamespace.ImportDeclaration;
|
package/dist/utils/tsconfig.json
CHANGED
|
@@ -4,8 +4,9 @@
|
|
|
4
4
|
"emitDeclarationOnly": false,
|
|
5
5
|
"outDir": "../dist/utils",
|
|
6
6
|
"target": "ES6",
|
|
7
|
-
"module": "
|
|
8
|
-
"
|
|
7
|
+
"module": "es2020",
|
|
8
|
+
"lib": ["es2023", "dom"],
|
|
9
|
+
"moduleResolution": "bundler",
|
|
9
10
|
"noEmitOnError": false
|
|
10
11
|
},
|
|
11
12
|
"include": [
|