@bagaar/velvet-thunder 0.1.1 → 0.2.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.
Files changed (53) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/declarations/components/velvet-select/option.d.ts +2 -1
  3. package/dist/components/velvet-alert.js.map +1 -1
  4. package/dist/components/velvet-avatar.js.map +1 -1
  5. package/dist/components/velvet-button.js.map +1 -1
  6. package/dist/components/velvet-checkbox-group.js.map +1 -1
  7. package/dist/components/velvet-checkbox.js.map +1 -1
  8. package/dist/components/velvet-disclosure.js.map +1 -1
  9. package/dist/components/velvet-dropdown/content.js +1 -1
  10. package/dist/components/velvet-dropdown/content.js.map +1 -1
  11. package/dist/components/velvet-dropdown.js.map +1 -1
  12. package/dist/components/velvet-icon/chevron-down.js.map +1 -1
  13. package/dist/components/velvet-icon/circle-check-solid.js +1 -1
  14. package/dist/components/velvet-icon/circle-check-solid.js.map +1 -1
  15. package/dist/components/velvet-icon/circle-exclamation-solid.js.map +1 -1
  16. package/dist/components/velvet-icon/circle-info-solid.js +1 -1
  17. package/dist/components/velvet-icon/circle-info-solid.js.map +1 -1
  18. package/dist/components/velvet-icon/user.js.map +1 -1
  19. package/dist/components/velvet-icon/x-mark.js.map +1 -1
  20. package/dist/components/velvet-icon-button.js.map +1 -1
  21. package/dist/components/velvet-icon-link.js.map +1 -1
  22. package/dist/components/velvet-input.js.map +1 -1
  23. package/dist/components/velvet-link.js.map +1 -1
  24. package/dist/components/velvet-progress.js.map +1 -1
  25. package/dist/components/velvet-radio-group.js.map +1 -1
  26. package/dist/components/velvet-radio.js.map +1 -1
  27. package/dist/components/velvet-select/option.js.map +1 -1
  28. package/dist/components/velvet-select.js.map +1 -1
  29. package/dist/components/velvet-spinner.js.map +1 -1
  30. package/dist/components/velvet-switch.js.map +1 -1
  31. package/dist/components/velvet-tag.js.map +1 -1
  32. package/dist/components/velvet-textarea.js.map +1 -1
  33. package/dist/components/velvet-tooltip/content.js.map +1 -1
  34. package/dist/components/velvet-tooltip.js.map +1 -1
  35. package/package.json +24 -20
  36. package/tailwind/components/alert.cjs +15 -6
  37. package/tailwind/components/avatar.cjs +30 -9
  38. package/tailwind/components/button.cjs +34 -13
  39. package/tailwind/components/checkbox.cjs +30 -12
  40. package/tailwind/components/disclosure.cjs +2 -2
  41. package/tailwind/components/icon-button.cjs +26 -12
  42. package/tailwind/components/icon-link.cjs +23 -10
  43. package/tailwind/components/input.cjs +25 -8
  44. package/tailwind/components/link.cjs +30 -10
  45. package/tailwind/components/progress.cjs +12 -6
  46. package/tailwind/components/radio.cjs +29 -12
  47. package/tailwind/components/select.cjs +28 -10
  48. package/tailwind/components/spinner.cjs +18 -8
  49. package/tailwind/components/switch.cjs +49 -18
  50. package/tailwind/components/tag.cjs +23 -8
  51. package/tailwind/components/textarea.cjs +28 -7
  52. package/tailwind/components/tooltip.cjs +3 -2
  53. package/tailwind/utilities/outline.cjs +6 -2
@@ -1 +1 @@
1
- {"version":3,"file":"content.js","sources":["../../../src/components/velvet-tooltip/content.gts"],"sourcesContent":["import { template as template_bbcb52c2cfa24b778399f85486b9fd3c } from \"@ember/template-compiler\";\nimport type { TOC } from '@ember/component/template-only';\nimport type { ModifierLike } from '@glint/template';\nimport type { ContentSignature } from '../velvet-dropdown.gts';\nexport interface VelvetTooltipContentSignature {\n Args: {\n isShown: boolean;\n modifier: ModifierLike<ContentSignature>;\n };\n Blocks: {\n default: [];\n };\n Element: HTMLDivElement;\n}\nconst VelvetTooltipContent: TOC<VelvetTooltipContentSignature> = template_bbcb52c2cfa24b778399f85486b9fd3c(`\n {{#if @isShown}}\n <div class=\"velvet-tooltip-content\" {{@modifier}} ...attributes>\n {{yield}}\n </div>\n {{/if}}\n`, {\n eval () {\n return eval(arguments[0]);\n }\n});\nexport default VelvetTooltipContent;\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3ZlbHZldC10aHVuZGVyL3ZlbHZldC10aHVuZGVyL3ZlbHZldC10aHVuZGVyL3NyYy9jb21wb25lbnRzL3ZlbHZldC10b29sdGlwL2NvbnRlbnQuZ3RzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgVE9DIH0gZnJvbSAnQGVtYmVyL2NvbXBvbmVudC90ZW1wbGF0ZS1vbmx5JztcbmltcG9ydCB0eXBlIHsgTW9kaWZpZXJMaWtlIH0gZnJvbSAnQGdsaW50L3RlbXBsYXRlJztcbmltcG9ydCB0eXBlIHsgQ29udGVudFNpZ25hdHVyZSB9IGZyb20gJy4uL3ZlbHZldC1kcm9wZG93bi5ndHMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFZlbHZldFRvb2x0aXBDb250ZW50U2lnbmF0dXJlIHtcbiAgQXJnczoge1xuICAgIGlzU2hvd246IGJvb2xlYW47XG4gICAgbW9kaWZpZXI6IE1vZGlmaWVyTGlrZTxDb250ZW50U2lnbmF0dXJlPjtcbiAgfTtcbiAgQmxvY2tzOiB7XG4gICAgZGVmYXVsdDogW107XG4gIH07XG4gIEVsZW1lbnQ6IEhUTUxEaXZFbGVtZW50O1xufVxuXG5jb25zdCBWZWx2ZXRUb29sdGlwQ29udGVudDogVE9DPFZlbHZldFRvb2x0aXBDb250ZW50U2lnbmF0dXJlPiA9IDx0ZW1wbGF0ZT5cbiAge3sjaWYgQGlzU2hvd259fVxuICAgIDxkaXYgY2xhc3M9XCJ2ZWx2ZXQtdG9vbHRpcC1jb250ZW50XCIge3tAbW9kaWZpZXJ9fSAuLi5hdHRyaWJ1dGVzPlxuICAgICAge3t5aWVsZH19XG4gICAgPC9kaXY-XG4gIHt7L2lmfX1cbjwvdGVtcGxhdGU-O1xuXG5leHBvcnQgZGVmYXVsdCBWZWx2ZXRUb29sdGlwQ29udGVudDtcbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsY0FBYyxHQUFHLFFBQVEsaUNBQWlDO0FBQzFELGNBQWMsWUFBWSxRQUFRLGtCQUFrQjtBQUNwRCxjQUFjLGdCQUFnQixRQUFRLHlCQUF5QjtBQUUvRCxpQkFBaUI7SUFDZjtRQUNFLFNBQVMsT0FBTztRQUNoQixVQUFVLGFBQWE7O0lBRXpCO1FBQ0U7O0lBRUYsU0FBUzs7QUFHWCxNQUFNLHNCQUFzQixJQUFJLGlDQUFpQywwQ0FBVSxDQUFBOzs7Ozs7QUFNM0UsQ0FBQSxFQUFBO0lBQUE7UUFBQSxPQUFBLEtBQUEsU0FBQSxDQUFBLEVBQVc7SUFBRDtBQUFBO0FBRVYsZUFBZSxxQkFBcUIifQ"],"names":["VelvetTooltipContent","setComponentTemplate","precompileTemplate","strictMode","templateOnly"],"mappings":";;;;AAeA,MAAMA,oBAA0B,GAAAC,oBAAA,CAAiCC,kBAAA,CAAA,wIAAA,EAMjE;EAAAC,UAAA,EAAA;AAAU,CAAA,CAAA,EAAAC,YAAA,EAAA;;;;"}
1
+ {"version":3,"file":"content.js","sources":["../../../src/components/velvet-tooltip/content.gts"],"sourcesContent":["import { template as template_b0b2eb95de5a4f239c4aaaa25e870309 } from \"@ember/template-compiler\";\nimport type { TOC } from '@ember/component/template-only';\nimport type { ModifierLike } from '@glint/template';\nimport type { ContentSignature } from '../velvet-dropdown.gts';\nexport interface VelvetTooltipContentSignature {\n Args: {\n isShown: boolean;\n modifier: ModifierLike<ContentSignature>;\n };\n Blocks: {\n default: [];\n };\n Element: HTMLDivElement;\n}\nconst VelvetTooltipContent: TOC<VelvetTooltipContentSignature> = template_b0b2eb95de5a4f239c4aaaa25e870309(`\n {{#if @isShown}}\n <div class=\"velvet-tooltip-content\" {{@modifier}} ...attributes>\n {{yield}}\n </div>\n {{/if}}\n`, {\n eval () {\n return eval(arguments[0]);\n }\n});\nexport default VelvetTooltipContent;\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3ZlbHZldC10aHVuZGVyL3ZlbHZldC10aHVuZGVyL3ZlbHZldC10aHVuZGVyL3NyYy9jb21wb25lbnRzL3ZlbHZldC10b29sdGlwL2NvbnRlbnQuZ3RzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgVE9DIH0gZnJvbSAnQGVtYmVyL2NvbXBvbmVudC90ZW1wbGF0ZS1vbmx5JztcbmltcG9ydCB0eXBlIHsgTW9kaWZpZXJMaWtlIH0gZnJvbSAnQGdsaW50L3RlbXBsYXRlJztcbmltcG9ydCB0eXBlIHsgQ29udGVudFNpZ25hdHVyZSB9IGZyb20gJy4uL3ZlbHZldC1kcm9wZG93bi5ndHMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFZlbHZldFRvb2x0aXBDb250ZW50U2lnbmF0dXJlIHtcbiAgQXJnczoge1xuICAgIGlzU2hvd246IGJvb2xlYW47XG4gICAgbW9kaWZpZXI6IE1vZGlmaWVyTGlrZTxDb250ZW50U2lnbmF0dXJlPjtcbiAgfTtcbiAgQmxvY2tzOiB7XG4gICAgZGVmYXVsdDogW107XG4gIH07XG4gIEVsZW1lbnQ6IEhUTUxEaXZFbGVtZW50O1xufVxuXG5jb25zdCBWZWx2ZXRUb29sdGlwQ29udGVudDogVE9DPFZlbHZldFRvb2x0aXBDb250ZW50U2lnbmF0dXJlPiA9IDx0ZW1wbGF0ZT5cbiAge3sjaWYgQGlzU2hvd259fVxuICAgIDxkaXYgY2xhc3M9XCJ2ZWx2ZXQtdG9vbHRpcC1jb250ZW50XCIge3tAbW9kaWZpZXJ9fSAuLi5hdHRyaWJ1dGVzPlxuICAgICAge3t5aWVsZH19XG4gICAgPC9kaXY-XG4gIHt7L2lmfX1cbjwvdGVtcGxhdGU-O1xuXG5leHBvcnQgZGVmYXVsdCBWZWx2ZXRUb29sdGlwQ29udGVudDtcbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsY0FBYyxHQUFHLFFBQVEsaUNBQWlDO0FBQzFELGNBQWMsWUFBWSxRQUFRLGtCQUFrQjtBQUNwRCxjQUFjLGdCQUFnQixRQUFRLHlCQUF5QjtBQUUvRCxpQkFBaUI7SUFDZjtRQUNFLFNBQVMsT0FBTztRQUNoQixVQUFVLGFBQWE7O0lBRXpCO1FBQ0U7O0lBRUYsU0FBUzs7QUFHWCxNQUFNLHNCQUFzQixJQUFJLGlDQUFpQywwQ0FBVSxDQUFBOzs7Ozs7QUFNM0UsQ0FBQSxFQUFBO0lBQUE7UUFBQSxPQUFBLEtBQUEsU0FBQSxDQUFBLEVBQVc7SUFBRDtBQUFBO0FBRVYsZUFBZSxxQkFBcUIifQ"],"names":["VelvetTooltipContent","setComponentTemplate","precompileTemplate","strictMode","templateOnly"],"mappings":";;;;AAeA,MAAMA,oBAA0B,GAAAC,oBAAA,CAAiCC,kBAAA,CAAA,wIAAA,EAMjE;EAAAC,UAAA,EAAA;AAAU,CAAA,CAAA,EAAAC,YAAA,EAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"velvet-tooltip.js","sources":["../../src/components/velvet-tooltip.gts"],"sourcesContent":["import { template as template_082ae802d4fc458d8cb912fa288154f6 } from \"@ember/template-compiler\";\nimport { assert } from '@ember/debug';\nimport { hash } from '@ember/helper';\nimport { waitForPromise } from '@ember/test-waiters';\nimport { autoUpdate, computePosition, flip, offset, type Placement, type Strategy } from '@floating-ui/dom';\nimport Component from '@glimmer/component';\nimport { tracked } from '@glimmer/tracking';\nimport type { ModifierLike, WithBoundArgs } from '@glint/template';\nimport { modifier } from 'ember-modifier';\nimport VelvetTooltipContent from './velvet-tooltip/content.gts';\nexport interface VelvetTooltipSignature {\n Args: {\n /// Offset of the content in pixels relative to the trigger.\n /// @default [4]\n offset?: number;\n /// Placement of the content relative to the trigger.\n /// @default [\"top\"]\n placement?: Placement;\n /// Delay in milliseconds before showing the tooltip.\n /// @default [400]\n showDelay?: number;\n /// CSS position of the content.\n /// @default [\"absolute\"]\n strategy?: Strategy;\n };\n Blocks: {\n /// The content of the tooltip.\n default: [{\n Content: WithBoundArgs<typeof VelvetTooltipContent, 'isShown' | 'modifier'>;\n isShown: boolean;\n hide: () => void;\n show: () => void;\n toggle: () => void;\n content: ModifierLike<ContentSignature>;\n trigger: ModifierLike<TriggerSignature>;\n }];\n };\n Element: HTMLDivElement;\n}\nexport interface ContentSignature {\n Element: HTMLElement;\n}\nexport interface TriggerSignature {\n Element: HTMLElement;\n}\nexport default class VelvetTooltip extends Component<VelvetTooltipSignature> {\n @tracked\n isShown = false;\n showTimeout: number | undefined = undefined;\n triggerElement: HTMLElement | null = null;\n get offset(): number {\n const { offset } = this.args;\n return typeof offset === 'number' ? offset : 4;\n }\n get placement(): Placement {\n return this.args.placement || 'top';\n }\n get showDelay(): number {\n const { showDelay } = this.args;\n return typeof showDelay === 'number' ? showDelay : 400;\n }\n get strategy(): Strategy {\n return this.args.strategy || 'absolute';\n }\n content = modifier<ContentSignature>((contentElement)=>{\n const { placement, strategy, triggerElement } = this;\n assert('[VelvetTooltip] Trigger element must be present.', triggerElement);\n // https://floating-ui.com/docs/computeposition#initial-layout:\n Object.assign(contentElement.style, {\n left: 0,\n position: strategy,\n top: 0\n });\n const updateFloating = async ()=>{\n const { x, y } = await computePosition(triggerElement, contentElement, {\n middleware: [\n flip(),\n offset(this.offset)\n ],\n placement,\n strategy\n });\n Object.assign(contentElement.style, {\n left: `${x}px`,\n top: `${y}px`\n });\n };\n const cleanupFloating = autoUpdate(triggerElement, contentElement, updateFloating);\n return cleanupFloating;\n });\n trigger = modifier<TriggerSignature>((triggerElement)=>{\n this.triggerElement = triggerElement;\n triggerElement.addEventListener('mouseenter', this.show);\n triggerElement.addEventListener('mouseleave', this.hide);\n return ()=>{\n triggerElement.removeEventListener('mouseenter', this.show);\n triggerElement.removeEventListener('mouseleave', this.hide);\n };\n });\n hide = ()=>{\n clearTimeout(this.showTimeout);\n this.isShown = false;\n };\n show = ()=>{\n clearTimeout(this.showTimeout);\n return waitForPromise(new Promise<void>((resolve)=>{\n this.showTimeout = setTimeout(()=>{\n this.isShown = true;\n resolve();\n }, this.showDelay);\n }));\n };\n toggle = ()=>{\n if (this.isShown) {\n this.hide();\n } else {\n this.show();\n }\n };\n static{\n template_082ae802d4fc458d8cb912fa288154f6(`\n <div class=\"velvet-tooltip\" ...attributes>\n {{yield\n (hash\n Content=(component\n VelvetTooltipContent\n isShown=this.isShown\n modifier=this.content\n )\n isShown=this.isShown\n hide=this.hide\n show=this.show\n toggle=this.toggle\n content=this.content\n trigger=this.trigger\n )\n }}\n </div>\n `, {\n component: this,\n eval () {\n return eval(arguments[0]);\n }\n });\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3ZlbHZldC10aHVuZGVyL3ZlbHZldC10aHVuZGVyL3ZlbHZldC10aHVuZGVyL3NyYy9jb21wb25lbnRzL3ZlbHZldC10b29sdGlwLmd0cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBhc3NlcnQgfSBmcm9tICdAZW1iZXIvZGVidWcnO1xuaW1wb3J0IHsgaGFzaCB9IGZyb20gJ0BlbWJlci9oZWxwZXInO1xuaW1wb3J0IHsgd2FpdEZvclByb21pc2UgfSBmcm9tICdAZW1iZXIvdGVzdC13YWl0ZXJzJztcbmltcG9ydCB7XG4gIGF1dG9VcGRhdGUsXG4gIGNvbXB1dGVQb3NpdGlvbixcbiAgZmxpcCxcbiAgb2Zmc2V0LFxuICB0eXBlIFBsYWNlbWVudCxcbiAgdHlwZSBTdHJhdGVneSxcbn0gZnJvbSAnQGZsb2F0aW5nLXVpL2RvbSc7XG5pbXBvcnQgQ29tcG9uZW50IGZyb20gJ0BnbGltbWVyL2NvbXBvbmVudCc7XG5pbXBvcnQgeyB0cmFja2VkIH0gZnJvbSAnQGdsaW1tZXIvdHJhY2tpbmcnO1xuaW1wb3J0IHR5cGUgeyBNb2RpZmllckxpa2UsIFdpdGhCb3VuZEFyZ3MgfSBmcm9tICdAZ2xpbnQvdGVtcGxhdGUnO1xuaW1wb3J0IHsgbW9kaWZpZXIgfSBmcm9tICdlbWJlci1tb2RpZmllcic7XG5pbXBvcnQgVmVsdmV0VG9vbHRpcENvbnRlbnQgZnJvbSAnLi92ZWx2ZXQtdG9vbHRpcC9jb250ZW50Lmd0cyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVmVsdmV0VG9vbHRpcFNpZ25hdHVyZSB7XG4gIEFyZ3M6IHtcbiAgICAvLy8gT2Zmc2V0IG9mIHRoZSBjb250ZW50IGluIHBpeGVscyByZWxhdGl2ZSB0byB0aGUgdHJpZ2dlci5cbiAgICAvLy8gQGRlZmF1bHQgWzRdXG4gICAgb2Zmc2V0PzogbnVtYmVyO1xuXG4gICAgLy8vIFBsYWNlbWVudCBvZiB0aGUgY29udGVudCByZWxhdGl2ZSB0byB0aGUgdHJpZ2dlci5cbiAgICAvLy8gQGRlZmF1bHQgW1widG9wXCJdXG4gICAgcGxhY2VtZW50PzogUGxhY2VtZW50O1xuXG4gICAgLy8vIERlbGF5IGluIG1pbGxpc2Vjb25kcyBiZWZvcmUgc2hvd2luZyB0aGUgdG9vbHRpcC5cbiAgICAvLy8gQGRlZmF1bHQgWzQwMF1cbiAgICBzaG93RGVsYXk_OiBudW1iZXI7XG5cbiAgICAvLy8gQ1NTIHBvc2l0aW9uIG9mIHRoZSBjb250ZW50LlxuICAgIC8vLyBAZGVmYXVsdCBbXCJhYnNvbHV0ZVwiXVxuICAgIHN0cmF0ZWd5PzogU3RyYXRlZ3k7XG4gIH07XG4gIEJsb2Nrczoge1xuICAgIC8vLyBUaGUgY29udGVudCBvZiB0aGUgdG9vbHRpcC5cbiAgICBkZWZhdWx0OiBbXG4gICAgICB7XG4gICAgICAgIENvbnRlbnQ6IFdpdGhCb3VuZEFyZ3M8XG4gICAgICAgICAgdHlwZW9mIFZlbHZldFRvb2x0aXBDb250ZW50LFxuICAgICAgICAgICdpc1Nob3duJyB8ICdtb2RpZmllcidcbiAgICAgICAgPjtcbiAgICAgICAgaXNTaG93bjogYm9vbGVhbjtcbiAgICAgICAgaGlkZTogKCkgPT4gdm9pZDtcbiAgICAgICAgc2hvdzogKCkgPT4gdm9pZDtcbiAgICAgICAgdG9nZ2xlOiAoKSA9PiB2b2lkO1xuICAgICAgICBjb250ZW50OiBNb2RpZmllckxpa2U8Q29udGVudFNpZ25hdHVyZT47XG4gICAgICAgIHRyaWdnZXI6IE1vZGlmaWVyTGlrZTxUcmlnZ2VyU2lnbmF0dXJlPjtcbiAgICAgIH0sXG4gICAgXTtcbiAgfTtcbiAgRWxlbWVudDogSFRNTERpdkVsZW1lbnQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29udGVudFNpZ25hdHVyZSB7XG4gIEVsZW1lbnQ6IEhUTUxFbGVtZW50O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRyaWdnZXJTaWduYXR1cmUge1xuICBFbGVtZW50OiBIVE1MRWxlbWVudDtcbn1cblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgVmVsdmV0VG9vbHRpcCBleHRlbmRzIENvbXBvbmVudDxWZWx2ZXRUb29sdGlwU2lnbmF0dXJlPiB7XG4gIEB0cmFja2VkIGlzU2hvd24gPSBmYWxzZTtcblxuICBzaG93VGltZW91dDogbnVtYmVyIHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkO1xuICB0cmlnZ2VyRWxlbWVudDogSFRNTEVsZW1lbnQgfCBudWxsID0gbnVsbDtcblxuICBnZXQgb2Zmc2V0KCk6IG51bWJlciB7XG4gICAgY29uc3QgeyBvZmZzZXQgfSA9IHRoaXMuYXJncztcblxuICAgIHJldHVybiB0eXBlb2Ygb2Zmc2V0ID09PSAnbnVtYmVyJyA_IG9mZnNldCA6IDQ7XG4gIH1cblxuICBnZXQgcGxhY2VtZW50KCk6IFBsYWNlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuYXJncy5wbGFjZW1lbnQgfHwgJ3RvcCc7XG4gIH1cblxuICBnZXQgc2hvd0RlbGF5KCk6IG51bWJlciB7XG4gICAgY29uc3QgeyBzaG93RGVsYXkgfSA9IHRoaXMuYXJncztcblxuICAgIHJldHVybiB0eXBlb2Ygc2hvd0RlbGF5ID09PSAnbnVtYmVyJyA_IHNob3dEZWxheSA6IDQwMDtcbiAgfVxuXG4gIGdldCBzdHJhdGVneSgpOiBTdHJhdGVneSB7XG4gICAgcmV0dXJuIHRoaXMuYXJncy5zdHJhdGVneSB8fCAnYWJzb2x1dGUnO1xuICB9XG5cbiAgY29udGVudCA9IG1vZGlmaWVyPENvbnRlbnRTaWduYXR1cmU-KChjb250ZW50RWxlbWVudCkgPT4ge1xuICAgIGNvbnN0IHsgcGxhY2VtZW50LCBzdHJhdGVneSwgdHJpZ2dlckVsZW1lbnQgfSA9IHRoaXM7XG5cbiAgICBhc3NlcnQoJ1tWZWx2ZXRUb29sdGlwXSBUcmlnZ2VyIGVsZW1lbnQgbXVzdCBiZSBwcmVzZW50LicsIHRyaWdnZXJFbGVtZW50KTtcblxuICAgIC8vIGh0dHBzOi8vZmxvYXRpbmctdWkuY29tL2RvY3MvY29tcHV0ZXBvc2l0aW9uI2luaXRpYWwtbGF5b3V0OlxuICAgIE9iamVjdC5hc3NpZ24oY29udGVudEVsZW1lbnQuc3R5bGUsIHtcbiAgICAgIGxlZnQ6IDAsXG4gICAgICBwb3NpdGlvbjogc3RyYXRlZ3ksXG4gICAgICB0b3A6IDAsXG4gICAgfSk7XG5cbiAgICBjb25zdCB1cGRhdGVGbG9hdGluZyA9IGFzeW5jICgpID0-IHtcbiAgICAgIGNvbnN0IHsgeCwgeSB9ID0gYXdhaXQgY29tcHV0ZVBvc2l0aW9uKHRyaWdnZXJFbGVtZW50LCBjb250ZW50RWxlbWVudCwge1xuICAgICAgICBtaWRkbGV3YXJlOiBbZmxpcCgpLCBvZmZzZXQodGhpcy5vZmZzZXQpXSxcbiAgICAgICAgcGxhY2VtZW50LFxuICAgICAgICBzdHJhdGVneSxcbiAgICAgIH0pO1xuXG4gICAgICBPYmplY3QuYXNzaWduKGNvbnRlbnRFbGVtZW50LnN0eWxlLCB7IGxlZnQ6IGAke3h9cHhgLCB0b3A6IGAke3l9cHhgIH0pO1xuICAgIH07XG5cbiAgICBjb25zdCBjbGVhbnVwRmxvYXRpbmcgPSBhdXRvVXBkYXRlKFxuICAgICAgdHJpZ2dlckVsZW1lbnQsXG4gICAgICBjb250ZW50RWxlbWVudCxcbiAgICAgIHVwZGF0ZUZsb2F0aW5nLFxuICAgICk7XG5cbiAgICByZXR1cm4gY2xlYW51cEZsb2F0aW5nO1xuICB9KTtcblxuICB0cmlnZ2VyID0gbW9kaWZpZXI8VHJpZ2dlclNpZ25hdHVyZT4oKHRyaWdnZXJFbGVtZW50KSA9PiB7XG4gICAgdGhpcy50cmlnZ2VyRWxlbWVudCA9IHRyaWdnZXJFbGVtZW50O1xuXG4gICAgdHJpZ2dlckVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignbW91c2VlbnRlcicsIHRoaXMuc2hvdyk7XG4gICAgdHJpZ2dlckVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignbW91c2VsZWF2ZScsIHRoaXMuaGlkZSk7XG5cbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgdHJpZ2dlckVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignbW91c2VlbnRlcicsIHRoaXMuc2hvdyk7XG4gICAgICB0cmlnZ2VyRWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdtb3VzZWxlYXZlJywgdGhpcy5oaWRlKTtcbiAgICB9O1xuICB9KTtcblxuICBoaWRlID0gKCkgPT4ge1xuICAgIGNsZWFyVGltZW91dCh0aGlzLnNob3dUaW1lb3V0KTtcblxuICAgIHRoaXMuaXNTaG93biA9IGZhbHNlO1xuICB9O1xuXG4gIHNob3cgPSAoKSA9PiB7XG4gICAgY2xlYXJUaW1lb3V0KHRoaXMuc2hvd1RpbWVvdXQpO1xuXG4gICAgcmV0dXJuIHdhaXRGb3JQcm9taXNlKFxuICAgICAgbmV3IFByb21pc2U8dm9pZD4oKHJlc29sdmUpID0-IHtcbiAgICAgICAgdGhpcy5zaG93VGltZW91dCA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgIHRoaXMuaXNTaG93biA9IHRydWU7XG5cbiAgICAgICAgICByZXNvbHZlKCk7XG4gICAgICAgIH0sIHRoaXMuc2hvd0RlbGF5KTtcbiAgICAgIH0pLFxuICAgICk7XG4gIH07XG5cbiAgdG9nZ2xlID0gKCkgPT4ge1xuICAgIGlmICh0aGlzLmlzU2hvd24pIHtcbiAgICAgIHRoaXMuaGlkZSgpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnNob3coKTtcbiAgICB9XG4gIH07XG5cbiAgPHRlbXBsYXRlPlxuICAgIDxkaXYgY2xhc3M9XCJ2ZWx2ZXQtdG9vbHRpcFwiIC4uLmF0dHJpYnV0ZXM-XG4gICAgICB7e3lpZWxkXG4gICAgICAgIChoYXNoXG4gICAgICAgICAgQ29udGVudD0oY29tcG9uZW50XG4gICAgICAgICAgICBWZWx2ZXRUb29sdGlwQ29udGVudFxuICAgICAgICAgICAgaXNTaG93bj10aGlzLmlzU2hvd25cbiAgICAgICAgICAgIG1vZGlmaWVyPXRoaXMuY29udGVudFxuICAgICAgICAgIClcbiAgICAgICAgICBpc1Nob3duPXRoaXMuaXNTaG93blxuICAgICAgICAgIGhpZGU9dGhpcy5oaWRlXG4gICAgICAgICAgc2hvdz10aGlzLnNob3dcbiAgICAgICAgICB0b2dnbGU9dGhpcy50b2dnbGVcbiAgICAgICAgICBjb250ZW50PXRoaXMuY29udGVudFxuICAgICAgICAgIHRyaWdnZXI9dGhpcy50cmlnZ2VyXG4gICAgICAgIClcbiAgICAgIH19XG4gICAgPC9kaXY-XG4gIDwvdGVtcGxhdGU-XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLFNBQVMsTUFBTSxRQUFRLGVBQWU7QUFDdEMsU0FBUyxJQUFJLFFBQVEsZ0JBQWdCO0FBQ3JDLFNBQVMsY0FBYyxRQUFRLHNCQUFzQjtBQUNyRCxTQUNFLFVBQVUsRUFDVixlQUFlLEVBQ2YsSUFBSSxFQUNKLE1BQU0sRUFDTixLQUFLLFNBQVMsRUFDZCxLQUFLLFFBQVEsUUFDUixtQkFBbUI7QUFDMUIsT0FBTyxlQUFlLHFCQUFxQjtBQUMzQyxTQUFTLE9BQU8sUUFBUSxvQkFBb0I7QUFDNUMsY0FBYyxZQUFZLEVBQUUsYUFBYSxRQUFRLGtCQUFrQjtBQUNuRSxTQUFTLFFBQVEsUUFBUSxpQkFBaUI7QUFDMUMsT0FBTywwQkFBMEIsK0JBQStCO0FBRWhFLGlCQUFpQjtJQUNmO1FBQ0UsNERBQTREO1FBQzVELGdCQUFnQjtRQUNoQixTQUFTLE1BQU07UUFFZixxREFBcUQ7UUFDckQsb0JBQW9CO1FBQ3BCLFlBQVk7UUFFWixxREFBcUQ7UUFDckQsa0JBQWtCO1FBQ2xCLFlBQVksTUFBTTtRQUVsQixnQ0FBZ0M7UUFDaEMseUJBQXlCO1FBQ3pCLFdBQVc7O0lBRWI7UUFDRSwrQkFBK0I7UUFDL0I7Z0JBRUksU0FBUyxxQkFDQSxzQkFDUCxZQUFZO2dCQUVkLFNBQVMsT0FBTztnQkFDaEIsWUFBWSxJQUFJO2dCQUNoQixZQUFZLElBQUk7Z0JBQ2hCLGNBQWMsSUFBSTtnQkFDbEIsU0FBUyxhQUFhO2dCQUN0QixTQUFTLGFBQWE7OztJQUk1QixTQUFTOztBQUdYLGlCQUFpQjtJQUNmLFNBQVM7O0FBR1gsaUJBQWlCO0lBQ2YsU0FBUzs7QUFHWCxlQUFlLE1BQU0sc0JBQXNCLFVBQVU7SUFDbkQsQ0FBQztJQUFRLFVBQVUsTUFBTTtJQUV6QixhQUFhLE1BQU0sR0FBRyxTQUFTLEdBQUcsVUFBVTtJQUM1QyxnQkFBZ0IsY0FBYyxJQUFJLEdBQUcsS0FBSztJQUUxQyxJQUFJLFVBQVUsTUFBTSxDQUFDO1FBQ25CLE1BQU0sRUFBRSxNQUFNLEVBQUUsR0FBRyxJQUFJLENBQUMsSUFBSTtRQUU1QixPQUFPLE9BQU8sV0FBVyxXQUFXLFNBQVM7SUFDL0M7SUFFQSxJQUFJLGFBQWEsVUFBVTtRQUN6QixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxJQUFJO0lBQ2hDO0lBRUEsSUFBSSxhQUFhLE1BQU0sQ0FBQztRQUN0QixNQUFNLEVBQUUsU0FBUyxFQUFFLEdBQUcsSUFBSSxDQUFDLElBQUk7UUFFL0IsT0FBTyxPQUFPLGNBQWMsV0FBVyxZQUFZO0lBQ3JEO0lBRUEsSUFBSSxZQUFZLFNBQVM7UUFDdkIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsSUFBSTtJQUMvQjtJQUVBLFVBQVUsU0FBUyxrQkFBa0IsQ0FBQztRQUNwQyxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxjQUFjLEVBQUUsR0FBRyxJQUFJO1FBRXBELE9BQU8sb0RBQW9EO1FBRTNELCtEQUErRDtRQUMvRCxPQUFPLE1BQU0sQ0FBQyxlQUFlLEtBQUssRUFBRTtZQUNsQyxNQUFNO1lBQ04sVUFBVTtZQUNWLEtBQUs7UUFDUDtRQUVBLE1BQU0saUJBQWlCO1lBQ3JCLE1BQU0sRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEdBQUcsTUFBTSxnQkFBZ0IsZ0JBQWdCLGdCQUFnQjtnQkFDckUsWUFBWTtvQkFBQztvQkFBUSxPQUFPLElBQUksQ0FBQyxNQUFNO2lCQUFFO2dCQUN6QztnQkFDQTtZQUNGO1lBRUEsT0FBTyxNQUFNLENBQUMsZUFBZSxLQUFLLEVBQUU7Z0JBQUUsTUFBTSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUM7Z0JBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFBQztRQUN0RTtRQUVBLE1BQU0sa0JBQWtCLFdBQ3RCLGdCQUNBLGdCQUNBO1FBR0YsT0FBTztJQUNULEdBQUc7SUFFSCxVQUFVLFNBQVMsa0JBQWtCLENBQUM7UUFDcEMsSUFBSSxDQUFDLGNBQWMsR0FBRztRQUV0QixlQUFlLGdCQUFnQixDQUFDLGNBQWMsSUFBSSxDQUFDLElBQUk7UUFDdkQsZUFBZSxnQkFBZ0IsQ0FBQyxjQUFjLElBQUksQ0FBQyxJQUFJO1FBRXZELE9BQU87WUFDTCxlQUFlLG1CQUFtQixDQUFDLGNBQWMsSUFBSSxDQUFDLElBQUk7WUFDMUQsZUFBZSxtQkFBbUIsQ0FBQyxjQUFjLElBQUksQ0FBQyxJQUFJO1FBQzVEO0lBQ0YsR0FBRztJQUVILE9BQU87UUFDTCxhQUFhLElBQUksQ0FBQyxXQUFXO1FBRTdCLElBQUksQ0FBQyxPQUFPLEdBQUc7SUFDakIsRUFBRTtJQUVGLE9BQU87UUFDTCxhQUFhLElBQUksQ0FBQyxXQUFXO1FBRTdCLE9BQU8sZUFDTCxJQUFJLFFBQVEsSUFBSSxFQUFFLENBQUM7WUFDakIsSUFBSSxDQUFDLFdBQVcsR0FBRyxXQUFXO2dCQUM1QixJQUFJLENBQUMsT0FBTyxHQUFHO2dCQUVmO1lBQ0YsR0FBRyxJQUFJLENBQUMsU0FBUztRQUNuQjtJQUVKLEVBQUU7SUFFRixTQUFTO1FBQ1AsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ2hCLElBQUksQ0FBQyxJQUFJO1FBQ1gsT0FBTztZQUNMLElBQUksQ0FBQyxJQUFJO1FBQ1g7SUFDRixFQUFFO0lBRUYsTUFBQTtRQUFBLDBDQUFVLENBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQWtCVixDQUFBLEVBQUE7WUFBQSxXQUFBLElBQVc7WUFBWDtnQkFBQSxPQUFBLEtBQUEsU0FBQSxDQUFBLEVBQVc7WUFBRDtRQUFBO0lBQUEsQ0FsQkE7QUFtQloifQ"],"names":["VelvetTooltip","Component","g","this","prototype","tracked","i","void 0","showTimeout","undefined","triggerElement","offset","args","placement","showDelay","strategy","content","modifier","contentElement","assert","Object","assign","style","left","position","top","updateFloating","x","y","computePosition","middleware","flip","cleanupFloating","autoUpdate","trigger","addEventListener","show","hide","removeEventListener","clearTimeout","isShown","waitForPromise","Promise","resolve","setTimeout","toggle","setComponentTemplate","precompileTemplate","strictMode","scope","hash","VelvetTooltipContent"],"mappings":"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"}
1
+ {"version":3,"file":"velvet-tooltip.js","sources":["../../src/components/velvet-tooltip.gts"],"sourcesContent":["import { template as template_8549a242c2984ccd804560a9651dc1d1 } from \"@ember/template-compiler\";\nimport { assert } from '@ember/debug';\nimport { hash } from '@ember/helper';\nimport { waitForPromise } from '@ember/test-waiters';\nimport { autoUpdate, computePosition, flip, offset, type Placement, type Strategy } from '@floating-ui/dom';\nimport Component from '@glimmer/component';\nimport { tracked } from '@glimmer/tracking';\nimport type { ModifierLike, WithBoundArgs } from '@glint/template';\nimport { modifier } from 'ember-modifier';\nimport VelvetTooltipContent from './velvet-tooltip/content.gts';\nexport interface VelvetTooltipSignature {\n Args: {\n /// Offset of the content in pixels relative to the trigger.\n /// @default [4]\n offset?: number;\n /// Placement of the content relative to the trigger.\n /// @default [\"top\"]\n placement?: Placement;\n /// Delay in milliseconds before showing the tooltip.\n /// @default [400]\n showDelay?: number;\n /// CSS position of the content.\n /// @default [\"absolute\"]\n strategy?: Strategy;\n };\n Blocks: {\n /// The content of the tooltip.\n default: [{\n Content: WithBoundArgs<typeof VelvetTooltipContent, 'isShown' | 'modifier'>;\n isShown: boolean;\n hide: () => void;\n show: () => void;\n toggle: () => void;\n content: ModifierLike<ContentSignature>;\n trigger: ModifierLike<TriggerSignature>;\n }];\n };\n Element: HTMLDivElement;\n}\nexport interface ContentSignature {\n Element: HTMLElement;\n}\nexport interface TriggerSignature {\n Element: HTMLElement;\n}\nexport default class VelvetTooltip extends Component<VelvetTooltipSignature> {\n @tracked\n isShown = false;\n showTimeout: number | undefined = undefined;\n triggerElement: HTMLElement | null = null;\n get offset(): number {\n const { offset } = this.args;\n return typeof offset === 'number' ? offset : 4;\n }\n get placement(): Placement {\n return this.args.placement || 'top';\n }\n get showDelay(): number {\n const { showDelay } = this.args;\n return typeof showDelay === 'number' ? showDelay : 400;\n }\n get strategy(): Strategy {\n return this.args.strategy || 'absolute';\n }\n content = modifier<ContentSignature>((contentElement)=>{\n const { placement, strategy, triggerElement } = this;\n assert('[VelvetTooltip] Trigger element must be present.', triggerElement);\n // https://floating-ui.com/docs/computeposition#initial-layout:\n Object.assign(contentElement.style, {\n left: 0,\n position: strategy,\n top: 0\n });\n const updateFloating = async ()=>{\n const { x, y } = await computePosition(triggerElement, contentElement, {\n middleware: [\n flip(),\n offset(this.offset)\n ],\n placement,\n strategy\n });\n Object.assign(contentElement.style, {\n left: `${x}px`,\n top: `${y}px`\n });\n };\n const cleanupFloating = autoUpdate(triggerElement, contentElement, updateFloating);\n return cleanupFloating;\n });\n trigger = modifier<TriggerSignature>((triggerElement)=>{\n this.triggerElement = triggerElement;\n triggerElement.addEventListener('mouseenter', this.show);\n triggerElement.addEventListener('mouseleave', this.hide);\n return ()=>{\n triggerElement.removeEventListener('mouseenter', this.show);\n triggerElement.removeEventListener('mouseleave', this.hide);\n };\n });\n hide = ()=>{\n clearTimeout(this.showTimeout);\n this.isShown = false;\n };\n show = ()=>{\n clearTimeout(this.showTimeout);\n return waitForPromise(new Promise<void>((resolve)=>{\n this.showTimeout = setTimeout(()=>{\n this.isShown = true;\n resolve();\n }, this.showDelay);\n }));\n };\n toggle = ()=>{\n if (this.isShown) {\n this.hide();\n } else {\n this.show();\n }\n };\n static{\n template_8549a242c2984ccd804560a9651dc1d1(`\n <div class=\"velvet-tooltip\" ...attributes>\n {{yield\n (hash\n Content=(component\n VelvetTooltipContent isShown=this.isShown modifier=this.content\n )\n isShown=this.isShown\n hide=this.hide\n show=this.show\n toggle=this.toggle\n content=this.content\n trigger=this.trigger\n )\n }}\n </div>\n `, {\n component: this,\n eval () {\n return eval(arguments[0]);\n }\n });\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3ZlbHZldC10aHVuZGVyL3ZlbHZldC10aHVuZGVyL3ZlbHZldC10aHVuZGVyL3NyYy9jb21wb25lbnRzL3ZlbHZldC10b29sdGlwLmd0cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBhc3NlcnQgfSBmcm9tICdAZW1iZXIvZGVidWcnO1xuaW1wb3J0IHsgaGFzaCB9IGZyb20gJ0BlbWJlci9oZWxwZXInO1xuaW1wb3J0IHsgd2FpdEZvclByb21pc2UgfSBmcm9tICdAZW1iZXIvdGVzdC13YWl0ZXJzJztcbmltcG9ydCB7XG4gIGF1dG9VcGRhdGUsXG4gIGNvbXB1dGVQb3NpdGlvbixcbiAgZmxpcCxcbiAgb2Zmc2V0LFxuICB0eXBlIFBsYWNlbWVudCxcbiAgdHlwZSBTdHJhdGVneSxcbn0gZnJvbSAnQGZsb2F0aW5nLXVpL2RvbSc7XG5pbXBvcnQgQ29tcG9uZW50IGZyb20gJ0BnbGltbWVyL2NvbXBvbmVudCc7XG5pbXBvcnQgeyB0cmFja2VkIH0gZnJvbSAnQGdsaW1tZXIvdHJhY2tpbmcnO1xuaW1wb3J0IHR5cGUgeyBNb2RpZmllckxpa2UsIFdpdGhCb3VuZEFyZ3MgfSBmcm9tICdAZ2xpbnQvdGVtcGxhdGUnO1xuaW1wb3J0IHsgbW9kaWZpZXIgfSBmcm9tICdlbWJlci1tb2RpZmllcic7XG5pbXBvcnQgVmVsdmV0VG9vbHRpcENvbnRlbnQgZnJvbSAnLi92ZWx2ZXQtdG9vbHRpcC9jb250ZW50Lmd0cyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVmVsdmV0VG9vbHRpcFNpZ25hdHVyZSB7XG4gIEFyZ3M6IHtcbiAgICAvLy8gT2Zmc2V0IG9mIHRoZSBjb250ZW50IGluIHBpeGVscyByZWxhdGl2ZSB0byB0aGUgdHJpZ2dlci5cbiAgICAvLy8gQGRlZmF1bHQgWzRdXG4gICAgb2Zmc2V0PzogbnVtYmVyO1xuXG4gICAgLy8vIFBsYWNlbWVudCBvZiB0aGUgY29udGVudCByZWxhdGl2ZSB0byB0aGUgdHJpZ2dlci5cbiAgICAvLy8gQGRlZmF1bHQgW1widG9wXCJdXG4gICAgcGxhY2VtZW50PzogUGxhY2VtZW50O1xuXG4gICAgLy8vIERlbGF5IGluIG1pbGxpc2Vjb25kcyBiZWZvcmUgc2hvd2luZyB0aGUgdG9vbHRpcC5cbiAgICAvLy8gQGRlZmF1bHQgWzQwMF1cbiAgICBzaG93RGVsYXk_OiBudW1iZXI7XG5cbiAgICAvLy8gQ1NTIHBvc2l0aW9uIG9mIHRoZSBjb250ZW50LlxuICAgIC8vLyBAZGVmYXVsdCBbXCJhYnNvbHV0ZVwiXVxuICAgIHN0cmF0ZWd5PzogU3RyYXRlZ3k7XG4gIH07XG4gIEJsb2Nrczoge1xuICAgIC8vLyBUaGUgY29udGVudCBvZiB0aGUgdG9vbHRpcC5cbiAgICBkZWZhdWx0OiBbXG4gICAgICB7XG4gICAgICAgIENvbnRlbnQ6IFdpdGhCb3VuZEFyZ3M8XG4gICAgICAgICAgdHlwZW9mIFZlbHZldFRvb2x0aXBDb250ZW50LFxuICAgICAgICAgICdpc1Nob3duJyB8ICdtb2RpZmllcidcbiAgICAgICAgPjtcbiAgICAgICAgaXNTaG93bjogYm9vbGVhbjtcbiAgICAgICAgaGlkZTogKCkgPT4gdm9pZDtcbiAgICAgICAgc2hvdzogKCkgPT4gdm9pZDtcbiAgICAgICAgdG9nZ2xlOiAoKSA9PiB2b2lkO1xuICAgICAgICBjb250ZW50OiBNb2RpZmllckxpa2U8Q29udGVudFNpZ25hdHVyZT47XG4gICAgICAgIHRyaWdnZXI6IE1vZGlmaWVyTGlrZTxUcmlnZ2VyU2lnbmF0dXJlPjtcbiAgICAgIH0sXG4gICAgXTtcbiAgfTtcbiAgRWxlbWVudDogSFRNTERpdkVsZW1lbnQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29udGVudFNpZ25hdHVyZSB7XG4gIEVsZW1lbnQ6IEhUTUxFbGVtZW50O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRyaWdnZXJTaWduYXR1cmUge1xuICBFbGVtZW50OiBIVE1MRWxlbWVudDtcbn1cblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgVmVsdmV0VG9vbHRpcCBleHRlbmRzIENvbXBvbmVudDxWZWx2ZXRUb29sdGlwU2lnbmF0dXJlPiB7XG4gIEB0cmFja2VkIGlzU2hvd24gPSBmYWxzZTtcblxuICBzaG93VGltZW91dDogbnVtYmVyIHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkO1xuICB0cmlnZ2VyRWxlbWVudDogSFRNTEVsZW1lbnQgfCBudWxsID0gbnVsbDtcblxuICBnZXQgb2Zmc2V0KCk6IG51bWJlciB7XG4gICAgY29uc3QgeyBvZmZzZXQgfSA9IHRoaXMuYXJncztcblxuICAgIHJldHVybiB0eXBlb2Ygb2Zmc2V0ID09PSAnbnVtYmVyJyA_IG9mZnNldCA6IDQ7XG4gIH1cblxuICBnZXQgcGxhY2VtZW50KCk6IFBsYWNlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuYXJncy5wbGFjZW1lbnQgfHwgJ3RvcCc7XG4gIH1cblxuICBnZXQgc2hvd0RlbGF5KCk6IG51bWJlciB7XG4gICAgY29uc3QgeyBzaG93RGVsYXkgfSA9IHRoaXMuYXJncztcblxuICAgIHJldHVybiB0eXBlb2Ygc2hvd0RlbGF5ID09PSAnbnVtYmVyJyA_IHNob3dEZWxheSA6IDQwMDtcbiAgfVxuXG4gIGdldCBzdHJhdGVneSgpOiBTdHJhdGVneSB7XG4gICAgcmV0dXJuIHRoaXMuYXJncy5zdHJhdGVneSB8fCAnYWJzb2x1dGUnO1xuICB9XG5cbiAgY29udGVudCA9IG1vZGlmaWVyPENvbnRlbnRTaWduYXR1cmU-KChjb250ZW50RWxlbWVudCkgPT4ge1xuICAgIGNvbnN0IHsgcGxhY2VtZW50LCBzdHJhdGVneSwgdHJpZ2dlckVsZW1lbnQgfSA9IHRoaXM7XG5cbiAgICBhc3NlcnQoJ1tWZWx2ZXRUb29sdGlwXSBUcmlnZ2VyIGVsZW1lbnQgbXVzdCBiZSBwcmVzZW50LicsIHRyaWdnZXJFbGVtZW50KTtcblxuICAgIC8vIGh0dHBzOi8vZmxvYXRpbmctdWkuY29tL2RvY3MvY29tcHV0ZXBvc2l0aW9uI2luaXRpYWwtbGF5b3V0OlxuICAgIE9iamVjdC5hc3NpZ24oY29udGVudEVsZW1lbnQuc3R5bGUsIHtcbiAgICAgIGxlZnQ6IDAsXG4gICAgICBwb3NpdGlvbjogc3RyYXRlZ3ksXG4gICAgICB0b3A6IDAsXG4gICAgfSk7XG5cbiAgICBjb25zdCB1cGRhdGVGbG9hdGluZyA9IGFzeW5jICgpID0-IHtcbiAgICAgIGNvbnN0IHsgeCwgeSB9ID0gYXdhaXQgY29tcHV0ZVBvc2l0aW9uKHRyaWdnZXJFbGVtZW50LCBjb250ZW50RWxlbWVudCwge1xuICAgICAgICBtaWRkbGV3YXJlOiBbZmxpcCgpLCBvZmZzZXQodGhpcy5vZmZzZXQpXSxcbiAgICAgICAgcGxhY2VtZW50LFxuICAgICAgICBzdHJhdGVneSxcbiAgICAgIH0pO1xuXG4gICAgICBPYmplY3QuYXNzaWduKGNvbnRlbnRFbGVtZW50LnN0eWxlLCB7IGxlZnQ6IGAke3h9cHhgLCB0b3A6IGAke3l9cHhgIH0pO1xuICAgIH07XG5cbiAgICBjb25zdCBjbGVhbnVwRmxvYXRpbmcgPSBhdXRvVXBkYXRlKFxuICAgICAgdHJpZ2dlckVsZW1lbnQsXG4gICAgICBjb250ZW50RWxlbWVudCxcbiAgICAgIHVwZGF0ZUZsb2F0aW5nLFxuICAgICk7XG5cbiAgICByZXR1cm4gY2xlYW51cEZsb2F0aW5nO1xuICB9KTtcblxuICB0cmlnZ2VyID0gbW9kaWZpZXI8VHJpZ2dlclNpZ25hdHVyZT4oKHRyaWdnZXJFbGVtZW50KSA9PiB7XG4gICAgdGhpcy50cmlnZ2VyRWxlbWVudCA9IHRyaWdnZXJFbGVtZW50O1xuXG4gICAgdHJpZ2dlckVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignbW91c2VlbnRlcicsIHRoaXMuc2hvdyk7XG4gICAgdHJpZ2dlckVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignbW91c2VsZWF2ZScsIHRoaXMuaGlkZSk7XG5cbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgdHJpZ2dlckVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignbW91c2VlbnRlcicsIHRoaXMuc2hvdyk7XG4gICAgICB0cmlnZ2VyRWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdtb3VzZWxlYXZlJywgdGhpcy5oaWRlKTtcbiAgICB9O1xuICB9KTtcblxuICBoaWRlID0gKCkgPT4ge1xuICAgIGNsZWFyVGltZW91dCh0aGlzLnNob3dUaW1lb3V0KTtcblxuICAgIHRoaXMuaXNTaG93biA9IGZhbHNlO1xuICB9O1xuXG4gIHNob3cgPSAoKSA9PiB7XG4gICAgY2xlYXJUaW1lb3V0KHRoaXMuc2hvd1RpbWVvdXQpO1xuXG4gICAgcmV0dXJuIHdhaXRGb3JQcm9taXNlKFxuICAgICAgbmV3IFByb21pc2U8dm9pZD4oKHJlc29sdmUpID0-IHtcbiAgICAgICAgdGhpcy5zaG93VGltZW91dCA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgIHRoaXMuaXNTaG93biA9IHRydWU7XG5cbiAgICAgICAgICByZXNvbHZlKCk7XG4gICAgICAgIH0sIHRoaXMuc2hvd0RlbGF5KTtcbiAgICAgIH0pLFxuICAgICk7XG4gIH07XG5cbiAgdG9nZ2xlID0gKCkgPT4ge1xuICAgIGlmICh0aGlzLmlzU2hvd24pIHtcbiAgICAgIHRoaXMuaGlkZSgpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnNob3coKTtcbiAgICB9XG4gIH07XG5cbiAgPHRlbXBsYXRlPlxuICAgIDxkaXYgY2xhc3M9XCJ2ZWx2ZXQtdG9vbHRpcFwiIC4uLmF0dHJpYnV0ZXM-XG4gICAgICB7e3lpZWxkXG4gICAgICAgIChoYXNoXG4gICAgICAgICAgQ29udGVudD0oY29tcG9uZW50XG4gICAgICAgICAgICBWZWx2ZXRUb29sdGlwQ29udGVudCBpc1Nob3duPXRoaXMuaXNTaG93biBtb2RpZmllcj10aGlzLmNvbnRlbnRcbiAgICAgICAgICApXG4gICAgICAgICAgaXNTaG93bj10aGlzLmlzU2hvd25cbiAgICAgICAgICBoaWRlPXRoaXMuaGlkZVxuICAgICAgICAgIHNob3c9dGhpcy5zaG93XG4gICAgICAgICAgdG9nZ2xlPXRoaXMudG9nZ2xlXG4gICAgICAgICAgY29udGVudD10aGlzLmNvbnRlbnRcbiAgICAgICAgICB0cmlnZ2VyPXRoaXMudHJpZ2dlclxuICAgICAgICApXG4gICAgICB9fVxuICAgIDwvZGl2PlxuICA8L3RlbXBsYXRlPlxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxTQUFTLE1BQU0sUUFBUSxlQUFlO0FBQ3RDLFNBQVMsSUFBSSxRQUFRLGdCQUFnQjtBQUNyQyxTQUFTLGNBQWMsUUFBUSxzQkFBc0I7QUFDckQsU0FDRSxVQUFVLEVBQ1YsZUFBZSxFQUNmLElBQUksRUFDSixNQUFNLEVBQ04sS0FBSyxTQUFTLEVBQ2QsS0FBSyxRQUFRLFFBQ1IsbUJBQW1CO0FBQzFCLE9BQU8sZUFBZSxxQkFBcUI7QUFDM0MsU0FBUyxPQUFPLFFBQVEsb0JBQW9CO0FBQzVDLGNBQWMsWUFBWSxFQUFFLGFBQWEsUUFBUSxrQkFBa0I7QUFDbkUsU0FBUyxRQUFRLFFBQVEsaUJBQWlCO0FBQzFDLE9BQU8sMEJBQTBCLCtCQUErQjtBQUVoRSxpQkFBaUI7SUFDZjtRQUNFLDREQUE0RDtRQUM1RCxnQkFBZ0I7UUFDaEIsU0FBUyxNQUFNO1FBRWYscURBQXFEO1FBQ3JELG9CQUFvQjtRQUNwQixZQUFZO1FBRVoscURBQXFEO1FBQ3JELGtCQUFrQjtRQUNsQixZQUFZLE1BQU07UUFFbEIsZ0NBQWdDO1FBQ2hDLHlCQUF5QjtRQUN6QixXQUFXOztJQUViO1FB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"],"names":["VelvetTooltip","Component","g","this","prototype","tracked","i","void 0","showTimeout","undefined","triggerElement","offset","args","placement","showDelay","strategy","content","modifier","contentElement","assert","Object","assign","style","left","position","top","updateFloating","x","y","computePosition","middleware","flip","cleanupFloating","autoUpdate","trigger","addEventListener","show","hide","removeEventListener","clearTimeout","isShown","waitForPromise","Promise","resolve","setTimeout","toggle","setComponentTemplate","precompileTemplate","strictMode","scope","hash","VelvetTooltipContent"],"mappings":"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"}
package/package.json CHANGED
@@ -1,11 +1,14 @@
1
1
  {
2
2
  "name": "@bagaar/velvet-thunder",
3
- "version": "0.1.1",
3
+ "version": "0.2.1",
4
4
  "description": "Velvet Thunder is a semi-headless UI library built for Ember.",
5
5
  "keywords": [
6
6
  "ember-addon"
7
7
  ],
8
- "repository": "https://github.com/bagaar/velvet-thunder",
8
+ "repository": {
9
+ "directory": "velvet-thunder",
10
+ "url": "https://github.com/bagaar/velvet-thunder"
11
+ },
9
12
  "license": "MIT",
10
13
  "author": "Bagaar",
11
14
  "exports": {
@@ -49,6 +52,8 @@
49
52
  "build:types": "glint --declaration && node fix-bad-declaration-output.mjs",
50
53
  "lint": "concurrently 'npm:lint:*(!fix)' --names 'lint:'",
51
54
  "lint:fix": "concurrently 'npm:lint:*:fix' --names 'fix:'",
55
+ "lint:format": "prettier . --cache --check",
56
+ "lint:format:fix": "prettier . --cache --write",
52
57
  "lint:hbs": "ember-template-lint . --no-error-on-unmatched-pattern",
53
58
  "lint:hbs:fix": "ember-template-lint . --fix --no-error-on-unmatched-pattern",
54
59
  "lint:js": "eslint . --cache",
@@ -63,47 +68,46 @@
63
68
  },
64
69
  "dependencies": {
65
70
  "@ember/test-waiters": "^3.1.0",
66
- "@embroider/addon-shim": "^1.8.7",
71
+ "@embroider/addon-shim": "^1.10.2",
67
72
  "@embroider/util": "^1.12.1",
68
73
  "@floating-ui/dom": "^1.5.3",
69
74
  "@formkit/auto-animate": "^0.8.1",
70
- "@glimmer/component": "^1.1.2",
71
- "@glimmer/tracking": "^1.1.2",
75
+ "@glimmer/component": "^1.1.2 || ^2.0.0",
76
+ "@glimmer/tracking": ">=1.1.2",
72
77
  "decorator-transforms": "^1.0.1",
73
78
  "ember-modifier": "^4.1.0",
74
79
  "ember-truth-helpers": "^5.0.0"
75
80
  },
76
81
  "devDependencies": {
77
- "@babel/core": "^7.23.6",
78
- "@babel/plugin-transform-typescript": "^7.23.6",
79
- "@babel/runtime": "^7.17.0",
82
+ "@babel/core": "^7.29.0",
83
+ "@babel/plugin-transform-typescript": "^7.28.6",
84
+ "@babel/runtime": "^7.29.2",
80
85
  "@ember/test-helpers": "^3.0.0",
81
86
  "@embroider/addon-dev": "^4.1.0",
82
87
  "@glint/core": "^1.2.1",
83
88
  "@glint/environment-ember-loose": "^1.2.1",
84
89
  "@glint/environment-ember-template-imports": "^1.2.1",
85
90
  "@glint/template": "1.5.0",
86
- "@release-it/conventional-changelog": "^10.0.0",
91
+ "@release-it/conventional-changelog": "^11.0.0",
87
92
  "@rollup/plugin-babel": "^6.0.4",
88
93
  "@tsconfig/ember": "^3.0.2",
89
- "@typescript-eslint/eslint-plugin": "^6.14.0",
90
- "@typescript-eslint/parser": "^6.14.0",
94
+ "@typescript-eslint/eslint-plugin": "^7.0.0",
95
+ "@typescript-eslint/parser": "^7.0.0",
91
96
  "babel-plugin-ember-template-compilation": "^2.2.1",
92
- "concurrently": "^8.2.2",
97
+ "concurrently": "^10.0.0",
93
98
  "ember-link": "^3.1.0",
94
99
  "ember-source": "~5.7.0",
95
- "ember-template-lint": "^6.0.0",
96
- "eslint-config-prettier": "^9.1.0",
97
- "eslint-plugin-ember": "^11.12.0",
100
+ "ember-template-lint": "^7.0.0",
101
+ "ember-eslint-parser": "^0.13.0",
102
+ "eslint-plugin-ember": "^12.0.0",
98
103
  "eslint-plugin-n": "^17.0.0",
99
- "eslint-plugin-prettier": "^5.0.1",
100
104
  "eslint": "^8.56.0",
101
105
  "fix-bad-declaration-output": "^1.1.3",
102
- "prettier-plugin-ember-template-tag": "^2.0.1",
103
- "prettier": "^3.1.1",
104
- "release-it": "^19.0.0",
106
+ "prettier-plugin-ember-template-tag": "^2.1.4",
107
+ "prettier": "^3.8.2",
108
+ "release-it": "^20.0.0",
105
109
  "rollup-plugin-copy": "^3.5.0",
106
- "rollup": "^4.9.1",
110
+ "rollup": "^4.60.1",
107
111
  "typescript": "^5.3.3"
108
112
  },
109
113
  "peerDependencies": {
@@ -1,23 +1,32 @@
1
1
  'use strict';
2
2
 
3
- module.exports = () => ({
3
+ module.exports = ({ theme }) => ({
4
4
  '.velvet-alert': {
5
- '@apply p-4 rounded-lg': {},
5
+ padding: theme('spacing.4'),
6
+ 'border-radius': theme('borderRadius.lg'),
6
7
 
7
8
  '&-header': {
8
- '@apply flex items-center mb-2 space-x-2': {},
9
+ display: 'flex',
10
+ 'align-items': 'center',
11
+ 'margin-bottom': theme('spacing.2'),
12
+ 'column-gap': theme('spacing.2'),
9
13
  },
10
14
 
11
15
  '&-icon': {
12
- '@apply shrink-0 size-4': {},
16
+ 'flex-shrink': '0',
17
+ width: theme('spacing.4'),
18
+ height: theme('spacing.4'),
13
19
  },
14
20
 
15
21
  '&-title': {
16
- '@apply font-medium w-full': {},
22
+ 'font-weight': theme('fontWeight.medium'),
23
+ width: '100%',
17
24
  },
18
25
 
19
26
  '&-content': {
20
- '@apply pr-11 text-sm': {},
27
+ 'padding-right': theme('spacing.11'),
28
+ 'font-size': theme('fontSize.sm'),
29
+ 'line-height': theme('lineHeight.5'),
21
30
  },
22
31
  },
23
32
  });
@@ -1,32 +1,53 @@
1
1
  'use strict';
2
2
 
3
- module.exports = () => ({
3
+ module.exports = ({ theme }) => ({
4
4
  '.velvet-avatar': {
5
- '@apply flex font-medium items-center justify-center': {},
6
- '@apply overflow-hidden shrink-0 text-white uppercase': {},
5
+ display: 'flex',
6
+ 'font-weight': theme('fontWeight.medium'),
7
+ 'align-items': 'center',
8
+ 'justify-content': 'center',
9
+ overflow: 'hidden',
10
+ 'flex-shrink': '0',
11
+ color: theme('colors.white'),
12
+ 'text-transform': 'uppercase',
7
13
 
8
14
  '&-image': {
9
- '@apply object-cover size-full': {},
15
+ 'object-fit': 'cover',
16
+ width: '100%',
17
+ height: '100%',
10
18
  },
11
19
 
12
20
  '&-sm': {
13
- '@apply rounded size-7 text-xs': {},
21
+ 'border-radius': theme('borderRadius.DEFAULT'),
22
+ width: theme('spacing.7'),
23
+ height: theme('spacing.7'),
24
+ 'font-size': theme('fontSize.xs'),
25
+ 'line-height': theme('lineHeight.4'),
14
26
  },
15
27
 
16
28
  '&-md': {
17
- '@apply rounded-md size-9 text-sm': {},
29
+ 'border-radius': theme('borderRadius.md'),
30
+ width: theme('spacing.9'),
31
+ height: theme('spacing.9'),
32
+ 'font-size': theme('fontSize.sm'),
33
+ 'line-height': theme('lineHeight.5'),
18
34
  },
19
35
 
20
36
  '&-lg': {
21
- '@apply rounded-lg size-11 text-base': {},
37
+ 'border-radius': theme('borderRadius.lg'),
38
+ width: theme('spacing.11'),
39
+ height: theme('spacing.11'),
40
+ 'font-size': theme('fontSize.base'),
41
+ 'line-height': theme('lineHeight.6'),
22
42
  },
23
43
 
24
44
  '&-round': {
25
- '@apply rounded-full': {},
45
+ 'border-radius': theme('borderRadius.full'),
26
46
  },
27
47
 
28
48
  '&-icon': {
29
- '@apply size-4': {},
49
+ width: theme('spacing.4'),
50
+ height: theme('spacing.4'),
30
51
  },
31
52
  },
32
53
  });
@@ -1,45 +1,66 @@
1
1
  'use strict';
2
2
 
3
- module.exports = () => ({
3
+ module.exports = ({ theme }) => ({
4
4
  '.velvet-button': {
5
- '@apply border border-transparent font-medium': {},
6
- '@apply flex items-center justify-center': {},
7
- '@apply rounded-md text-sm transition': {},
5
+ 'border-width': '1px',
6
+ 'border-color': 'transparent',
7
+ 'font-weight': theme('fontWeight.medium'),
8
+ display: 'flex',
9
+ 'align-items': 'center',
10
+ 'justify-content': 'center',
11
+ 'border-radius': theme('borderRadius.md'),
12
+ 'font-size': theme('fontSize.sm'),
13
+ 'line-height': theme('lineHeight.5'),
14
+ 'transition-property': theme('transitionProperty.DEFAULT'),
15
+ 'transition-timing-function': theme('transitionTimingFunction.DEFAULT'),
16
+ 'transition-duration': theme('transitionDuration.DEFAULT'),
8
17
 
9
18
  '&:focus-visible': {
10
- '@apply velvet-outline': {},
19
+ 'outline-style': 'solid',
20
+ 'outline-width': '2px',
21
+ 'outline-offset': '1px',
11
22
  },
12
23
 
13
24
  '&:disabled': {
14
- '@apply cursor-not-allowed': {},
25
+ cursor: 'not-allowed',
15
26
  },
16
27
 
17
28
  '&-xs': {
18
- '@apply h-7 px-2': {},
29
+ height: theme('spacing.7'),
30
+ 'padding-left': theme('spacing.2'),
31
+ 'padding-right': theme('spacing.2'),
19
32
  },
20
33
 
21
34
  '&-sm': {
22
- '@apply h-8 px-3': {},
35
+ height: theme('spacing.8'),
36
+ 'padding-left': theme('spacing.3'),
37
+ 'padding-right': theme('spacing.3'),
23
38
  },
24
39
 
25
40
  '&-md': {
26
- '@apply h-9 px-4': {},
41
+ height: theme('spacing.9'),
42
+ 'padding-left': theme('spacing.4'),
43
+ 'padding-right': theme('spacing.4'),
27
44
  },
28
45
 
29
46
  '&-lg': {
30
- '@apply h-10 px-6': {},
47
+ height: theme('spacing.10'),
48
+ 'padding-left': theme('spacing.6'),
49
+ 'padding-right': theme('spacing.6'),
31
50
  },
32
51
 
33
52
  '&-pill': {
34
- '@apply rounded-full': {},
53
+ 'border-radius': theme('borderRadius.full'),
35
54
  },
36
55
 
37
56
  '&-disclosure-icon': {
38
- '@apply ml-2 size-4': {},
57
+ 'margin-left': theme('spacing.2'),
58
+ width: theme('spacing.4'),
59
+ height: theme('spacing.4'),
39
60
  },
40
61
 
41
62
  '.velvet-spinner': {
42
- '@apply mr-2': {},
63
+ 'margin-right': theme('spacing.2'),
43
64
  },
44
65
  },
45
66
  });
@@ -1,46 +1,64 @@
1
1
  'use strict';
2
2
 
3
- module.exports = () => ({
3
+ module.exports = ({ theme }) => ({
4
4
  '.velvet-checkbox': {
5
- '@apply flex items-center w-fit': {},
5
+ display: 'flex',
6
+ 'align-items': 'center',
7
+ width: 'fit-content',
6
8
 
7
9
  '&-sm': {
8
- '@apply text-xs': {},
10
+ 'font-size': theme('fontSize.xs'),
11
+ 'line-height': theme('lineHeight.4'),
9
12
 
10
13
  '.velvet-checkbox-input': {
11
- '@apply mr-2 size-4': {},
14
+ 'margin-right': theme('spacing.2'),
15
+ width: theme('spacing.4'),
16
+ height: theme('spacing.4'),
12
17
  },
13
18
  },
14
19
 
15
20
  '&-md': {
16
- '@apply text-sm': {},
21
+ 'font-size': theme('fontSize.sm'),
22
+ 'line-height': theme('lineHeight.5'),
17
23
 
18
24
  '.velvet-checkbox-input': {
19
- '@apply mr-3 size-5': {},
25
+ 'margin-right': theme('spacing.3'),
26
+ width: theme('spacing.5'),
27
+ height: theme('spacing.5'),
20
28
  },
21
29
  },
22
30
 
23
31
  '&-lg': {
24
- '@apply text-base': {},
32
+ 'font-size': theme('fontSize.base'),
33
+ 'line-height': theme('lineHeight.6'),
25
34
 
26
35
  '.velvet-checkbox-input': {
27
- '@apply mr-4 size-6': {},
36
+ 'margin-right': theme('spacing.4'),
37
+ width: theme('spacing.6'),
38
+ height: theme('spacing.6'),
28
39
  },
29
40
  },
30
41
 
31
42
  '&-disabled': {
32
- '@apply cursor-not-allowed': {},
43
+ cursor: 'not-allowed',
33
44
  },
34
45
 
35
46
  '&-input': {
36
- '@apply border-2 rounded transition': {},
47
+ 'border-width': '2px',
48
+ 'border-radius': theme('borderRadius.DEFAULT'),
49
+ 'transition-property': theme('transitionProperty.DEFAULT'),
50
+ 'transition-timing-function': theme('transitionTimingFunction.DEFAULT'),
51
+ 'transition-duration': theme('transitionDuration.DEFAULT'),
37
52
 
38
53
  '&:focus': {
39
- '@apply ring-0 ring-offset-0 velvet-outline': {},
54
+ 'box-shadow': 'none',
55
+ 'outline-style': 'solid',
56
+ 'outline-width': '2px',
57
+ 'outline-offset': '1px',
40
58
  },
41
59
 
42
60
  '&:disabled': {
43
- '@apply cursor-not-allowed': {},
61
+ cursor: 'not-allowed',
44
62
  },
45
63
  },
46
64
  },
@@ -2,10 +2,10 @@
2
2
 
3
3
  module.exports = () => ({
4
4
  '.velvet-disclosure': {
5
- '@apply overflow-hidden': {},
5
+ overflow: 'hidden',
6
6
 
7
7
  '&:focus-within': {
8
- '@apply overflow-visible': {},
8
+ overflow: 'visible',
9
9
  },
10
10
  },
11
11
  });
@@ -1,41 +1,55 @@
1
1
  'use strict';
2
2
 
3
- module.exports = () => ({
3
+ module.exports = ({ theme }) => ({
4
4
  '.velvet-icon-button': {
5
- '@apply border border-transparent': {},
6
- '@apply flex items-center justify-center shrink-0': {},
7
- '@apply rounded-md transition': {},
5
+ 'border-width': '1px',
6
+ 'border-color': 'transparent',
7
+ display: 'flex',
8
+ 'align-items': 'center',
9
+ 'justify-content': 'center',
10
+ 'flex-shrink': '0',
11
+ 'border-radius': theme('borderRadius.md'),
12
+ 'transition-property': theme('transitionProperty.DEFAULT'),
13
+ 'transition-timing-function': theme('transitionTimingFunction.DEFAULT'),
14
+ 'transition-duration': theme('transitionDuration.DEFAULT'),
8
15
 
9
16
  '&:focus-visible': {
10
- '@apply velvet-outline': {},
17
+ 'outline-style': 'solid',
18
+ 'outline-width': '2px',
19
+ 'outline-offset': '1px',
11
20
  },
12
21
 
13
22
  '&:disabled': {
14
- '@apply cursor-not-allowed': {},
23
+ cursor: 'not-allowed',
15
24
  },
16
25
 
17
26
  '&-xs': {
18
- '@apply size-7': {},
27
+ width: theme('spacing.7'),
28
+ height: theme('spacing.7'),
19
29
  },
20
30
 
21
31
  '&-sm': {
22
- '@apply size-8': {},
32
+ width: theme('spacing.8'),
33
+ height: theme('spacing.8'),
23
34
  },
24
35
 
25
36
  '&-md': {
26
- '@apply size-9': {},
37
+ width: theme('spacing.9'),
38
+ height: theme('spacing.9'),
27
39
  },
28
40
 
29
41
  '&-lg': {
30
- '@apply size-10': {},
42
+ width: theme('spacing.10'),
43
+ height: theme('spacing.10'),
31
44
  },
32
45
 
33
46
  '&-round': {
34
- '@apply rounded-full': {},
47
+ 'border-radius': theme('borderRadius.full'),
35
48
  },
36
49
 
37
50
  '&-disclosure-icon': {
38
- '@apply size-4': {},
51
+ width: theme('spacing.4'),
52
+ height: theme('spacing.4'),
39
53
  },
40
54
  },
41
55
  });
@@ -1,33 +1,46 @@
1
1
  'use strict';
2
2
 
3
- module.exports = () => ({
3
+ module.exports = ({ theme }) => ({
4
4
  '.velvet-icon-link': {
5
- '@apply border border-transparent': {},
6
- '@apply flex items-center justify-center shrink-0': {},
7
- '@apply rounded-md transition': {},
5
+ 'border-width': '1px',
6
+ 'border-color': 'transparent',
7
+ display: 'flex',
8
+ 'align-items': 'center',
9
+ 'justify-content': 'center',
10
+ 'flex-shrink': '0',
11
+ 'border-radius': theme('borderRadius.md'),
12
+ 'transition-property': theme('transitionProperty.DEFAULT'),
13
+ 'transition-timing-function': theme('transitionTimingFunction.DEFAULT'),
14
+ 'transition-duration': theme('transitionDuration.DEFAULT'),
8
15
 
9
16
  '&:focus-visible': {
10
- '@apply velvet-outline': {},
17
+ 'outline-style': 'solid',
18
+ 'outline-width': '2px',
19
+ 'outline-offset': '1px',
11
20
  },
12
21
 
13
22
  '&-xs': {
14
- '@apply size-7': {},
23
+ width: theme('spacing.7'),
24
+ height: theme('spacing.7'),
15
25
  },
16
26
 
17
27
  '&-sm': {
18
- '@apply size-8': {},
28
+ width: theme('spacing.8'),
29
+ height: theme('spacing.8'),
19
30
  },
20
31
 
21
32
  '&-md': {
22
- '@apply size-9': {},
33
+ width: theme('spacing.9'),
34
+ height: theme('spacing.9'),
23
35
  },
24
36
 
25
37
  '&-lg': {
26
- '@apply size-10': {},
38
+ width: theme('spacing.10'),
39
+ height: theme('spacing.10'),
27
40
  },
28
41
 
29
42
  '&-round': {
30
- '@apply rounded-full': {},
43
+ 'border-radius': theme('borderRadius.full'),
31
44
  },
32
45
  },
33
46
  });