ember-velcro 1.1.0 → 2.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md
CHANGED
@@ -94,17 +94,22 @@ Installation
|
|
94
94
|
```
|
95
95
|
npm install ember-velcro
|
96
96
|
# or
|
97
|
-
yarn
|
97
|
+
yarn add ember-velcro
|
98
98
|
# or
|
99
99
|
pnpm install ember-velcro
|
100
100
|
# or
|
101
101
|
ember install ember-velcro
|
102
102
|
```
|
103
103
|
|
104
|
-
|
104
|
+
Comparison to similar projects
|
105
105
|
------------------------------------------------------------------------------
|
106
106
|
|
107
|
-
|
107
|
+
Similar projects include:
|
108
|
+
|
109
|
+
* [ember-popperjs](https://github.com/NullVoxPopuli/ember-popperjs)
|
110
|
+
* [ember-popper-modifier](https://github.com/adopted-ember-addons/ember-popper-modifier)
|
111
|
+
|
112
|
+
The above projects both use [Popper](https://popper.js.org/). In contrast, Ember Velcro uses Floating UI. Floating UI is the successor to Popper - see their [migration guide](https://floating-ui.com/docs/migration) for a complete comparison.
|
108
113
|
|
109
114
|
License
|
110
115
|
------------------------------------------------------------------------------
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../node_modules/.pnpm/@babel+runtime@7.19.4/node_modules/@babel/runtime/helpers/esm/initializerDefineProperty.js","../../../../node_modules/.pnpm/@babel+runtime@7.19.4/node_modules/@babel/runtime/helpers/esm/defineProperty.js","../../../../node_modules/.pnpm/@babel+runtime@7.19.4/node_modules/@babel/runtime/helpers/esm/applyDecoratedDescriptor.js","../../../src/components/velcro/index.hbs.js","../../../src/components/velcro/index.ts"],"sourcesContent":["export default function _initializerDefineProperty(target, property, descriptor, context) {\n if (!descriptor) return;\n Object.defineProperty(target, property, {\n enumerable: descriptor.enumerable,\n configurable: descriptor.configurable,\n writable: descriptor.writable,\n value: descriptor.initializer ? descriptor.initializer.call(context) : void 0\n });\n}","export default function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}","export default function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) {\n var desc = {};\n Object.keys(descriptor).forEach(function (key) {\n desc[key] = descriptor[key];\n });\n desc.enumerable = !!desc.enumerable;\n desc.configurable = !!desc.configurable;\n if ('value' in desc || desc.initializer) {\n desc.writable = true;\n }\n desc = decorators.slice().reverse().reduce(function (desc, decorator) {\n return decorator(target, property, desc) || desc;\n }, desc);\n if (context && desc.initializer !== void 0) {\n desc.value = desc.initializer ? desc.initializer.call(context) : void 0;\n desc.initializer = undefined;\n }\n if (desc.initializer === void 0) {\n Object.defineProperty(target, property, desc);\n desc = null;\n }\n return desc;\n}","import { hbs } from 'ember-cli-htmlbars';\nexport default hbs(\"{{yield (hash\\n hook=this.velcroHook\\n loop=(if this.hook (modifier this.velcroLoop\\n this.hook\\n flipOptions=@flipOptions\\n hideOptions=@hideOptions\\n middleware=@middleware\\n offsetOptions=@offsetOptions\\n placement=@placement\\n shiftOptions=@shiftOptions\\n strategy=@strategy\\n setVelcroData=this.setVelcroData\\n ))\\n data=this.velcroData\\n)}}\\n\\n\")","import Component from '@glimmer/component';\nimport { tracked } from '@glimmer/tracking';\n\nimport { modifier } from 'ember-modifier';\n\nimport VelcroModifier from '../../modifiers/velcro';\n\nimport type { Signature as ModifierSignature } from '../../modifiers/velcro';\nimport type { MiddlewareArguments } from '@floating-ui/dom';\nimport type { ModifierLike } from '@glint/template';\n\ntype ModifierArgs = ModifierSignature['Args']['Named'];\n\ninterface Signature {\n Args: {\n middleware?: ModifierArgs['middleware'];\n placement?: ModifierArgs['placement'];\n strategy?: ModifierArgs['strategy'];\n flipOptions?: ModifierArgs['flipOptions'];\n hideOptions?: ModifierArgs['hideOptions'];\n shiftOptions?: ModifierArgs['shiftOptions'];\n offsetOptions?: ModifierArgs['offsetOptions'];\n };\n Blocks: {\n default: [\n velcro: {\n hook: ModifierLike<HookSignature>;\n loop: ModifierLike<{\n Element: HTMLElement;\n }>;\n data: MiddlewareArguments;\n }\n ];\n };\n}\n\ninterface HookSignature {\n Element: HTMLElement | SVGElement;\n}\n\nexport default class VelcroComponent extends Component<Signature> {\n @tracked hook?: HTMLElement | SVGElement = undefined;\n\n // set by VelcroModifier\n @tracked velcroData?: MiddlewareArguments = undefined;\n\n setVelcroData = (data: MiddlewareArguments) => (this.velcroData = data);\n\n velcroHook = modifier<HookSignature>(\n (element) => {\n this.hook = element;\n },\n { eager: false }\n );\n\n velcroLoop = VelcroModifier;\n}\n"],"names":["_initializerDefineProperty","target","property","descriptor","context","Object","defineProperty","enumerable","configurable","writable","value","initializer","call","_defineProperty","obj","key","_applyDecoratedDescriptor","decorators","desc","keys","forEach","slice","reverse","reduce","decorator","undefined","hbs","VelcroComponent","Component","data","velcroData","modifier","element","hook","eager","VelcroModifier","tracked"],"mappings":";;;;;;;AAAe,SAASA,
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../node_modules/.pnpm/@babel+runtime@7.19.4/node_modules/@babel/runtime/helpers/esm/initializerDefineProperty.js","../../../../node_modules/.pnpm/@babel+runtime@7.19.4/node_modules/@babel/runtime/helpers/esm/defineProperty.js","../../../../node_modules/.pnpm/@babel+runtime@7.19.4/node_modules/@babel/runtime/helpers/esm/applyDecoratedDescriptor.js","../../../src/components/velcro/index.hbs.js","../../../src/components/velcro/index.ts"],"sourcesContent":["export default function _initializerDefineProperty(target, property, descriptor, context) {\n if (!descriptor) return;\n Object.defineProperty(target, property, {\n enumerable: descriptor.enumerable,\n configurable: descriptor.configurable,\n writable: descriptor.writable,\n value: descriptor.initializer ? descriptor.initializer.call(context) : void 0\n });\n}","export default function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}","export default function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) {\n var desc = {};\n Object.keys(descriptor).forEach(function (key) {\n desc[key] = descriptor[key];\n });\n desc.enumerable = !!desc.enumerable;\n desc.configurable = !!desc.configurable;\n if ('value' in desc || desc.initializer) {\n desc.writable = true;\n }\n desc = decorators.slice().reverse().reduce(function (desc, decorator) {\n return decorator(target, property, desc) || desc;\n }, desc);\n if (context && desc.initializer !== void 0) {\n desc.value = desc.initializer ? desc.initializer.call(context) : void 0;\n desc.initializer = undefined;\n }\n if (desc.initializer === void 0) {\n Object.defineProperty(target, property, desc);\n desc = null;\n }\n return desc;\n}","import { hbs } from 'ember-cli-htmlbars';\nexport default hbs(\"{{yield (hash\\n hook=this.velcroHook\\n loop=(if this.hook (modifier this.velcroLoop\\n this.hook\\n flipOptions=@flipOptions\\n hideOptions=@hideOptions\\n middleware=@middleware\\n offsetOptions=@offsetOptions\\n placement=@placement\\n shiftOptions=@shiftOptions\\n strategy=@strategy\\n setVelcroData=this.setVelcroData\\n ))\\n data=this.velcroData\\n)}}\\n\\n\")","import Component from '@glimmer/component';\nimport { tracked } from '@glimmer/tracking';\n\nimport { modifier } from 'ember-modifier';\n\nimport VelcroModifier from '../../modifiers/velcro';\n\nimport type { Signature as ModifierSignature } from '../../modifiers/velcro';\nimport type { MiddlewareArguments } from '@floating-ui/dom';\nimport type { ModifierLike } from '@glint/template';\n\ntype ModifierArgs = ModifierSignature['Args']['Named'];\n\ninterface Signature {\n Args: {\n middleware?: ModifierArgs['middleware'];\n placement?: ModifierArgs['placement'];\n strategy?: ModifierArgs['strategy'];\n flipOptions?: ModifierArgs['flipOptions'];\n hideOptions?: ModifierArgs['hideOptions'];\n shiftOptions?: ModifierArgs['shiftOptions'];\n offsetOptions?: ModifierArgs['offsetOptions'];\n };\n Blocks: {\n default: [\n velcro: {\n hook: ModifierLike<HookSignature>;\n loop: ModifierLike<{\n Element: HTMLElement;\n }>;\n data: MiddlewareArguments;\n }\n ];\n };\n}\n\ninterface HookSignature {\n Element: HTMLElement | SVGElement;\n}\n\nexport default class VelcroComponent extends Component<Signature> {\n @tracked hook?: HTMLElement | SVGElement = undefined;\n\n // set by VelcroModifier\n @tracked velcroData?: MiddlewareArguments = undefined;\n\n setVelcroData = (data: MiddlewareArguments) => (this.velcroData = data);\n\n velcroHook = modifier<HookSignature>(\n (element) => {\n this.hook = element;\n },\n { eager: false }\n );\n\n velcroLoop = VelcroModifier;\n}\n"],"names":["_initializerDefineProperty","target","property","descriptor","context","Object","defineProperty","enumerable","configurable","writable","value","initializer","call","_defineProperty","obj","key","_applyDecoratedDescriptor","decorators","desc","keys","forEach","slice","reverse","reduce","decorator","undefined","hbs","VelcroComponent","_class","Component","constructor","args","_descriptor","_descriptor2","data","velcroData","modifier","element","hook","eager","VelcroModifier","prototype","tracked","setComponentTemplate","TEMPLATE"],"mappings":"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"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"velcro.js","sources":["../../src/middleware/velcro-data.ts","../../src/modifiers/velcro.ts"],"sourcesContent":["import type { Middleware } from '@floating-ui/dom';\n\nexport function velcroData(): Middleware {\n return {\n name: 'metadata',\n fn: (data) => {\n // https://floating-ui.com/docs/middleware#always-return-an-object\n return {\n data,\n };\n },\n };\n}\n","import { assert } from '@ember/debug';\nimport { registerDestructor } from '@ember/destroyable';\n\nimport { autoUpdate, computePosition, flip, hide, offset, shift } from '@floating-ui/dom';\nimport Modifier from 'ember-modifier';\n\nimport { velcroData } from '../middleware/velcro-data';\n\nimport type { Middleware, Placement, Strategy } from '@floating-ui/dom';\n\n/**\n * TODO: figure out how to get the real types out of @floating-ui/dom\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\ntype TODO = any;\n\nexport interface Signature {\n Element: HTMLElement;\n Args: {\n Positional: [referenceElement: string | HTMLElement | SVGElement];\n Named: {\n strategy?: Strategy;\n offsetOptions?: TODO;\n placement?: Placement;\n flipOptions?: TODO;\n shiftOptions?: TODO;\n hideOptions?: TODO;\n middleware?: Middleware[];\n setVelcroData?: Middleware['fn'];\n };\n };\n}\n\nexport default class VelcroModifier extends Modifier<Signature> {\n modify(\n floatingElement: Signature['Element'],\n [_referenceElement]: Signature['Args']['Positional'],\n {\n strategy = 'fixed',\n offsetOptions = 0,\n placement = 'bottom',\n flipOptions,\n shiftOptions,\n middleware = [],\n setVelcroData,\n }: Signature['Args']['Named']\n ) {\n const referenceElement: null | HTMLElement | SVGElement =\n typeof _referenceElement === 'string'\n ? document.querySelector(_referenceElement)\n : _referenceElement;\n\n assert(\n 'no reference element defined',\n referenceElement instanceof HTMLElement || referenceElement instanceof SVGElement\n );\n\n assert(\n 'no floating element defined',\n floatingElement instanceof HTMLElement || _referenceElement instanceof SVGElement\n );\n\n assert(\n 'reference and floating elements cannot be the same element',\n floatingElement !== _referenceElement\n );\n\n assert('@middleware must be an array of one or more objects', Array.isArray(middleware));\n\n Object.assign(floatingElement.style, {\n position: strategy,\n top: '0',\n left: '0',\n });\n\n let update = async () => {\n let { x, y, middlewareData } = await computePosition(referenceElement, floatingElement, {\n middleware: [\n offset(offsetOptions),\n flip(flipOptions),\n shift(shiftOptions),\n ...middleware,\n hide({ strategy: 'referenceHidden' }),\n hide({ strategy: 'escaped' }),\n velcroData(),\n ],\n placement,\n strategy,\n });\n\n Object.assign(floatingElement.style, {\n strategy,\n transform: `translate3d(${Math.round(x)}px, ${Math.round(y)}px, 0)`,\n visibility: middlewareData.hide?.referenceHidden ? 'hidden' : 'visible',\n });\n\n setVelcroData?.(middlewareData.metadata);\n };\n\n let cleanup = autoUpdate(referenceElement, floatingElement, update);\n\n registerDestructor(this, cleanup);\n }\n}\n"],"names":["velcroData","name","fn","data","VelcroModifier","Modifier","modify","floatingElement","_referenceElement","strategy","offsetOptions","placement","flipOptions","shiftOptions","middleware","setVelcroData","referenceElement","document","querySelector","assert","HTMLElement","SVGElement","Array","isArray","Object","assign","style","position","top","left","update","x","y","middlewareData","computePosition","offset","flip","shift","hide","transform","Math","round","visibility","referenceHidden","metadata","cleanup","autoUpdate","registerDestructor"],"mappings":";;;;;AAEO,SAASA,
|
1
|
+
{"version":3,"file":"velcro.js","sources":["../../src/middleware/velcro-data.ts","../../src/modifiers/velcro.ts"],"sourcesContent":["import type { Middleware } from '@floating-ui/dom';\n\nexport function velcroData(): Middleware {\n return {\n name: 'metadata',\n fn: (data) => {\n // https://floating-ui.com/docs/middleware#always-return-an-object\n return {\n data,\n };\n },\n };\n}\n","import { assert } from '@ember/debug';\nimport { registerDestructor } from '@ember/destroyable';\n\nimport { autoUpdate, computePosition, flip, hide, offset, shift } from '@floating-ui/dom';\nimport Modifier from 'ember-modifier';\n\nimport { velcroData } from '../middleware/velcro-data';\n\nimport type { Middleware, Placement, Strategy } from '@floating-ui/dom';\n\n/**\n * TODO: figure out how to get the real types out of @floating-ui/dom\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\ntype TODO = any;\n\nexport interface Signature {\n Element: HTMLElement;\n Args: {\n Positional: [referenceElement: string | HTMLElement | SVGElement];\n Named: {\n strategy?: Strategy;\n offsetOptions?: TODO;\n placement?: Placement;\n flipOptions?: TODO;\n shiftOptions?: TODO;\n hideOptions?: TODO;\n middleware?: Middleware[];\n setVelcroData?: Middleware['fn'];\n };\n };\n}\n\nexport default class VelcroModifier extends Modifier<Signature> {\n modify(\n floatingElement: Signature['Element'],\n [_referenceElement]: Signature['Args']['Positional'],\n {\n strategy = 'fixed',\n offsetOptions = 0,\n placement = 'bottom',\n flipOptions,\n shiftOptions,\n middleware = [],\n setVelcroData,\n }: Signature['Args']['Named']\n ) {\n const referenceElement: null | HTMLElement | SVGElement =\n typeof _referenceElement === 'string'\n ? document.querySelector(_referenceElement)\n : _referenceElement;\n\n assert(\n 'no reference element defined',\n referenceElement instanceof HTMLElement || referenceElement instanceof SVGElement\n );\n\n assert(\n 'no floating element defined',\n floatingElement instanceof HTMLElement || _referenceElement instanceof SVGElement\n );\n\n assert(\n 'reference and floating elements cannot be the same element',\n floatingElement !== _referenceElement\n );\n\n assert('@middleware must be an array of one or more objects', Array.isArray(middleware));\n\n Object.assign(floatingElement.style, {\n position: strategy,\n top: '0',\n left: '0',\n });\n\n let update = async () => {\n let { x, y, middlewareData } = await computePosition(referenceElement, floatingElement, {\n middleware: [\n offset(offsetOptions),\n flip(flipOptions),\n shift(shiftOptions),\n ...middleware,\n hide({ strategy: 'referenceHidden' }),\n hide({ strategy: 'escaped' }),\n velcroData(),\n ],\n placement,\n strategy,\n });\n\n Object.assign(floatingElement.style, {\n strategy,\n transform: `translate3d(${Math.round(x)}px, ${Math.round(y)}px, 0)`,\n visibility: middlewareData.hide?.referenceHidden ? 'hidden' : 'visible',\n });\n\n setVelcroData?.(middlewareData.metadata);\n };\n\n let cleanup = autoUpdate(referenceElement, floatingElement, update);\n\n registerDestructor(this, cleanup);\n }\n}\n"],"names":["velcroData","name","fn","data","VelcroModifier","Modifier","modify","floatingElement","_referenceElement","strategy","offsetOptions","placement","flipOptions","shiftOptions","middleware","setVelcroData","referenceElement","document","querySelector","assert","HTMLElement","SVGElement","Array","isArray","Object","assign","style","position","top","left","update","x","y","middlewareData","computePosition","offset","flip","shift","hide","transform","Math","round","visibility","referenceHidden","metadata","cleanup","autoUpdate","registerDestructor"],"mappings":";;;;;AAEO,SAASA,UAAUA,GAAe;EACvC,OAAO;AACLC,IAAAA,IAAI,EAAE,UAAU;IAChBC,EAAE,EAAGC,IAAI,IAAK;AACZ;MACA,OAAO;AACLA,QAAAA,IAAAA;OACD,CAAA;AACH,KAAA;GACD,CAAA;AACH;;ACqBe,MAAMC,cAAc,SAASC,QAAQ,CAAY;AAC9DC,EAAAA,MAAMA,CACJC,eAAqC,EACrC,CAACC,iBAAiB,CAAkC,EACpD;AACEC,IAAAA,QAAQ,GAAG,OAAO;AAClBC,IAAAA,aAAa,GAAG,CAAC;AACjBC,IAAAA,SAAS,GAAG,QAAQ;IACpBC,WAAW;IACXC,YAAY;AACZC,IAAAA,UAAU,GAAG,EAAE;AACfC,IAAAA,aAAAA;AAC0B,GAAC,EAC7B;AACA,IAAA,MAAMC,gBAAiD,GACrD,OAAOR,iBAAiB,KAAK,QAAQ,GACjCS,QAAQ,CAACC,aAAa,CAACV,iBAAiB,CAAC,GACzCA,iBAAiB,CAAA;IAEvBW,MAAM,CACJ,8BAA8B,EAC9BH,gBAAgB,YAAYI,WAAW,IAAIJ,gBAAgB,YAAYK,UAAU,CAClF,CAAA;IAEDF,MAAM,CACJ,6BAA6B,EAC7BZ,eAAe,YAAYa,WAAW,IAAIZ,iBAAiB,YAAYa,UAAU,CAClF,CAAA;AAEDF,IAAAA,MAAM,CACJ,4DAA4D,EAC5DZ,eAAe,KAAKC,iBAAiB,CACtC,CAAA;IAEDW,MAAM,CAAC,qDAAqD,EAAEG,KAAK,CAACC,OAAO,CAACT,UAAU,CAAC,CAAC,CAAA;AAExFU,IAAAA,MAAM,CAACC,MAAM,CAAClB,eAAe,CAACmB,KAAK,EAAE;AACnCC,MAAAA,QAAQ,EAAElB,QAAQ;AAClBmB,MAAAA,GAAG,EAAE,GAAG;AACRC,MAAAA,IAAI,EAAE,GAAA;AACR,KAAC,CAAC,CAAA;AAEF,IAAA,IAAIC,MAAM,GAAG,YAAY;MACvB,IAAI;QAAEC,CAAC;QAAEC,CAAC;AAAEC,QAAAA,cAAAA;AAAe,OAAC,GAAG,MAAMC,eAAe,CAAClB,gBAAgB,EAAET,eAAe,EAAE;QACtFO,UAAU,EAAE,CACVqB,MAAM,CAACzB,aAAa,CAAC,EACrB0B,IAAI,CAACxB,WAAW,CAAC,EACjByB,KAAK,CAACxB,YAAY,CAAC,EACnB,GAAGC,UAAU,EACbwB,IAAI,CAAC;AAAE7B,UAAAA,QAAQ,EAAE,iBAAA;SAAmB,CAAC,EACrC6B,IAAI,CAAC;AAAE7B,UAAAA,QAAQ,EAAE,SAAA;AAAU,SAAC,CAAC,EAC7BT,UAAU,EAAE,CACb;QACDW,SAAS;AACTF,QAAAA,QAAAA;AACF,OAAC,CAAC,CAAA;AAEFe,MAAAA,MAAM,CAACC,MAAM,CAAClB,eAAe,CAACmB,KAAK,EAAE;QACnCjB,QAAQ;AACR8B,QAAAA,SAAS,EAAG,CAAA,YAAA,EAAcC,IAAI,CAACC,KAAK,CAACV,CAAC,CAAE,CAAA,IAAA,EAAMS,IAAI,CAACC,KAAK,CAACT,CAAC,CAAE,CAAO,MAAA,CAAA;QACnEU,UAAU,EAAET,cAAc,CAACK,IAAI,EAAEK,eAAe,GAAG,QAAQ,GAAG,SAAA;AAChE,OAAC,CAAC,CAAA;AAEF5B,MAAAA,aAAa,GAAGkB,cAAc,CAACW,QAAQ,CAAC,CAAA;KACzC,CAAA;IAED,IAAIC,OAAO,GAAGC,UAAU,CAAC9B,gBAAgB,EAAET,eAAe,EAAEuB,MAAM,CAAC,CAAA;AAEnEiB,IAAAA,kBAAkB,CAAC,IAAI,EAAEF,OAAO,CAAC,CAAA;AACnC,GAAA;AACF;;;;"}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "ember-velcro",
|
3
|
-
"version": "
|
3
|
+
"version": "2.0.1",
|
4
4
|
"description": "Ember Velcro sticks one element to another with Floating UI.",
|
5
5
|
"keywords": [
|
6
6
|
"ember-addon"
|
@@ -51,10 +51,6 @@
|
|
51
51
|
"test": "echo 'A v2 addon does not have tests, run tests in test-app'",
|
52
52
|
"prepack": "rollup --config ./rollup.config.js"
|
53
53
|
},
|
54
|
-
"peerDependencies": {
|
55
|
-
"@glint/environment-ember-loose": "^0.9.4",
|
56
|
-
"@glint/template": "^0.9.5"
|
57
|
-
},
|
58
54
|
"dependencies": {
|
59
55
|
"@embroider/addon-shim": "^1.0.0",
|
60
56
|
"@floating-ui/dom": "^1.0.1",
|
@@ -62,7 +58,7 @@
|
|
62
58
|
"ember-modifier": "^3.2.7"
|
63
59
|
},
|
64
60
|
"devDependencies": {
|
65
|
-
"@babel/core": "^7.
|
61
|
+
"@babel/core": "^7.21.0",
|
66
62
|
"@babel/plugin-proposal-class-properties": "^7.18.6",
|
67
63
|
"@babel/plugin-proposal-decorators": "^7.19.3",
|
68
64
|
"@babel/preset-typescript": "^7.18.6",
|
@@ -70,8 +66,8 @@
|
|
70
66
|
"@embroider/addon-dev": "^2.0.0",
|
71
67
|
"@glimmer/component": "^1.1.2",
|
72
68
|
"@glimmer/tracking": "^1.1.2",
|
73
|
-
"@glint/environment-ember-loose": "^0.
|
74
|
-
"@glint/template": "^0.
|
69
|
+
"@glint/environment-ember-loose": "^1.0.2",
|
70
|
+
"@glint/template": "^1.0.2",
|
75
71
|
"@nullvoxpopuli/eslint-configs": "^2.2.58",
|
76
72
|
"@rollup/plugin-babel": "^5.3.1",
|
77
73
|
"@semantic-release/changelog": "^6.0.0",
|
@@ -82,7 +78,7 @@
|
|
82
78
|
"broccoli-asset-rev": "^3.0.0",
|
83
79
|
"concurrently": "^7.4.0",
|
84
80
|
"ember-cli-htmlbars": "^6.1.0",
|
85
|
-
"ember-source": "~4.
|
81
|
+
"ember-source": "~4.12.0",
|
86
82
|
"ember-template-lint": "^4.10.1",
|
87
83
|
"eslint": "^7.0.0",
|
88
84
|
"eslint-config-prettier": "^8.5.0",
|