From 5f1879f3ef217088cce9b8e5c1290197a07a7412 Mon Sep 17 00:00:00 2001 From: tommytrg Date: Mon, 26 Aug 2024 18:35:22 +0200 Subject: [PATCH] f --- package.json | 1 + pnpm-lock.yaml | 51 + .../IconRounded/WIconRounded.spec.ts | 63 + .../IconRounded/WIconRounded.stories.ts | 31 + src/components/IconRounded/WIconRounded.vue | 13 + .../__snapshots__/WIconRounded.spec.ts.snap | 27 + src/components/IconText/WIconText.spec.ts | 87 + src/components/IconText/WIconText.stories.ts | 111 + src/components/IconText/WIconText.ts | 6 + src/components/IconText/WIconText.vue | 65 + .../__snapshots__/WIconText.spec.ts.snap | 71 + src/components/Link/WLink.stories.ts | 6 +- .../SocialsBar/IconExternalLink.vue | 33 + src/components/SocialsBar/WSocialsBar.spec.ts | 12 + .../SocialsBar/WSocialsBar.stories.ts | 24 + src/components/SocialsBar/WSocialsBar.ts | 6 + src/components/SocialsBar/WSocialsBar.vue | 53 + .../__snapshots__/SocialsBar.spec.ts.snap | 14220 ++++++++++++++++ .../__snapshots__/WSocialsBar.spec.ts.snap | 125 + src/components/icons/IconDiscord.vue | 11 + src/components/icons/IconEmail.vue | 11 + src/components/icons/IconGate.vue | 16 + src/components/icons/IconGithub.vue | 11 + src/components/icons/IconTelegram.vue | 11 + src/components/icons/IconTwitter.vue | 15 + .../pagination/WPagination.stories.ts | 28 + src/components/pagination/WPagination.vue | 122 + src/index.ts | 16 +- 28 files changed, 15242 insertions(+), 4 deletions(-) create mode 100644 src/components/IconRounded/WIconRounded.spec.ts create mode 100644 src/components/IconRounded/WIconRounded.stories.ts create mode 100644 src/components/IconRounded/WIconRounded.vue create mode 100644 src/components/IconRounded/__snapshots__/WIconRounded.spec.ts.snap create mode 100644 src/components/IconText/WIconText.spec.ts create mode 100644 src/components/IconText/WIconText.stories.ts create mode 100644 src/components/IconText/WIconText.ts create mode 100644 src/components/IconText/WIconText.vue create mode 100644 src/components/IconText/__snapshots__/WIconText.spec.ts.snap create mode 100644 src/components/SocialsBar/IconExternalLink.vue create mode 100644 src/components/SocialsBar/WSocialsBar.spec.ts create mode 100644 src/components/SocialsBar/WSocialsBar.stories.ts create mode 100644 src/components/SocialsBar/WSocialsBar.ts create mode 100644 src/components/SocialsBar/WSocialsBar.vue create mode 100644 src/components/SocialsBar/__snapshots__/SocialsBar.spec.ts.snap create mode 100644 src/components/SocialsBar/__snapshots__/WSocialsBar.spec.ts.snap create mode 100644 src/components/icons/IconDiscord.vue create mode 100644 src/components/icons/IconEmail.vue create mode 100644 src/components/icons/IconGate.vue create mode 100644 src/components/icons/IconGithub.vue create mode 100644 src/components/icons/IconTelegram.vue create mode 100644 src/components/icons/IconTwitter.vue create mode 100644 src/components/pagination/WPagination.stories.ts create mode 100644 src/components/pagination/WPagination.vue diff --git a/package.json b/package.json index 3d615c7..6b57c70 100644 --- a/package.json +++ b/package.json @@ -30,6 +30,7 @@ "build-storybook": "storybook build" }, "dependencies": { + "@vueuse/core": "^11.0.3", "gsap": "^3.12.5", "postcss-cli": "^11.0.0", "sass": "^1.77.8", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 016f765..48eb976 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -8,6 +8,9 @@ importers: .: dependencies: + '@vueuse/core': + specifier: ^11.0.3 + version: 11.0.3(vue@3.4.38(typescript@5.4.5)) gsap: specifier: ^3.12.5 version: 3.12.5 @@ -1362,6 +1365,9 @@ packages: '@types/uuid@9.0.8': resolution: {integrity: sha512-jg+97EGIcY9AGHJJRaaPVgetKDsrTgbRjQ5Msgjh/DQKEFl0DtyRr/VCOyD1T2R1MNeWPK/u7JoGhlDZnKBAfA==} + '@types/web-bluetooth@0.0.20': + resolution: {integrity: sha512-g9gZnnXVq7gM7v3tJCWV/qw7w+KeOlSHAhgF9RytFyifW6AF61hdT2ucrYhPq9hLs5JIryeupHV3qGk95dH9ow==} + '@typescript-eslint/eslint-plugin@7.18.0': resolution: {integrity: sha512-94EQTWZ40mzBc42ATNIBimBEDltSJ9RQHCC8vc/PDbxi4k8dVwUAv4o98dk50M1zB+JGFxp43FP7f8+FP8R6Sw==} engines: {node: ^18.18.0 || >=20.0.0} @@ -1559,6 +1565,15 @@ packages: '@vue/tsconfig@0.5.1': resolution: {integrity: sha512-VcZK7MvpjuTPx2w6blwnwZAu5/LgBUtejFOi3pPGQFXQN5Ela03FUtd2Qtg4yWGGissVL0dr6Ro1LfOFh+PCuQ==} + '@vueuse/core@11.0.3': + resolution: {integrity: sha512-RENlh64+SYA9XMExmmH1a3TPqeIuJBNNB/63GT35MZI+zpru3oMRUA6cEFr9HmGqEgUisurwGwnIieF6qu3aXw==} + + '@vueuse/metadata@11.0.3': + resolution: {integrity: sha512-+FtbO4SD5WpsOcQTcC0hAhNlOid6QNLzqedtquTtQ+CRNBoAt9GuV07c6KNHK1wCmlq8DFPwgiLF2rXwgSHX5Q==} + + '@vueuse/shared@11.0.3': + resolution: {integrity: sha512-0rY2m6HS5t27n/Vp5cTDsKTlNnimCqsbh/fmT2LgE+aaU42EMfXo8+bNX91W9I7DDmxfuACXMmrd7d79JxkqWA==} + '@yarnpkg/fslib@2.10.3': resolution: {integrity: sha512-41H+Ga78xT9sHvWLlFOZLIhtU6mTGZ20pZ29EiZa97vnxdohJD2AF42rCoAoWfqUz486xY6fhjMH+DYEM9r14A==} engines: {node: '>=12 <14 || 14.2 - 14.9 || >14.10.0'} @@ -3882,6 +3897,17 @@ packages: vue-component-type-helpers@2.0.29: resolution: {integrity: sha512-58i+ZhUAUpwQ+9h5Hck0D+jr1qbYl4voRt5KffBx8qzELViQ4XdT/Tuo+mzq8u63teAG8K0lLaOiL5ofqW38rg==} + vue-demi@0.14.10: + resolution: {integrity: sha512-nMZBOwuzabUO0nLgIcc6rycZEebF6eeUfaiQx9+WSk8e29IbLvPU9feI6tqW4kTo3hvoYAJkMh8n8D0fuISphg==} + engines: {node: '>=12'} + hasBin: true + peerDependencies: + '@vue/composition-api': ^1.0.0-rc.1 + vue: ^3.0.0-0 || ^2.6.0 + peerDependenciesMeta: + '@vue/composition-api': + optional: true + vue-docgen-api@4.79.2: resolution: {integrity: sha512-n9ENAcs+40awPZMsas7STqjkZiVlIjxIKgiJr5rSohDP0/JCrD9VtlzNojafsA1MChm/hz2h3PDtUedx3lbgfA==} peerDependencies: @@ -5505,6 +5531,8 @@ snapshots: '@types/uuid@9.0.8': {} + '@types/web-bluetooth@0.0.20': {} + '@typescript-eslint/eslint-plugin@7.18.0(@typescript-eslint/parser@7.18.0(eslint@8.57.0)(typescript@5.4.5))(eslint@8.57.0)(typescript@5.4.5)': dependencies: '@eslint-community/regexpp': 4.11.0 @@ -5807,6 +5835,25 @@ snapshots: '@vue/tsconfig@0.5.1': {} + '@vueuse/core@11.0.3(vue@3.4.38(typescript@5.4.5))': + dependencies: + '@types/web-bluetooth': 0.0.20 + '@vueuse/metadata': 11.0.3 + '@vueuse/shared': 11.0.3(vue@3.4.38(typescript@5.4.5)) + vue-demi: 0.14.10(vue@3.4.38(typescript@5.4.5)) + transitivePeerDependencies: + - '@vue/composition-api' + - vue + + '@vueuse/metadata@11.0.3': {} + + '@vueuse/shared@11.0.3(vue@3.4.38(typescript@5.4.5))': + dependencies: + vue-demi: 0.14.10(vue@3.4.38(typescript@5.4.5)) + transitivePeerDependencies: + - '@vue/composition-api' + - vue + '@yarnpkg/fslib@2.10.3': dependencies: '@yarnpkg/libzip': 2.3.0 @@ -8219,6 +8266,10 @@ snapshots: vue-component-type-helpers@2.0.29: {} + vue-demi@0.14.10(vue@3.4.38(typescript@5.4.5)): + dependencies: + vue: 3.4.38(typescript@5.4.5) + vue-docgen-api@4.79.2(vue@3.4.38(typescript@5.4.5)): dependencies: '@babel/parser': 7.25.3 diff --git a/src/components/IconRounded/WIconRounded.spec.ts b/src/components/IconRounded/WIconRounded.spec.ts new file mode 100644 index 0000000..f2e9dfe --- /dev/null +++ b/src/components/IconRounded/WIconRounded.spec.ts @@ -0,0 +1,63 @@ +import { describe, it, expect } from 'vitest' + +import { mount } from '@vue/test-utils' +import WIconRounded from './WIconRounded.vue' + +describe('WIconRounded', () => { + it('renders properly', () => { + const wrapper = mount(WIconRounded, { + slots: { + default: ` + + + + + + + + ` + } + }) + + expect(wrapper.element).toMatchSnapshot() + }) + + it('renders the slot', () => { + const wrapper = mount(WIconRounded, { + slots: { + default: ` + + + + + + + + ` + } + }) + + expect(wrapper.html().replaceAll(' ', '').replaceAll('\n', '')).toContain( + ` + + + + + ` + .replaceAll(' ', '') + .replaceAll('\n', '') + ) + }) +}) diff --git a/src/components/IconRounded/WIconRounded.stories.ts b/src/components/IconRounded/WIconRounded.stories.ts new file mode 100644 index 0000000..9df03a0 --- /dev/null +++ b/src/components/IconRounded/WIconRounded.stories.ts @@ -0,0 +1,31 @@ +import type { Meta, StoryObj } from '@storybook/vue3' +import WIconRounded from './WIconRounded.vue' + +const meta = { + title: 'Example/WIconRounded', + component: WIconRounded, + tags: ['autodocs'] +} satisfies Meta + +export default meta +type Story = StoryObj + +export const Default: Story = { + render: () => ({ + components: { WIconRounded }, + template: ` + + + + + + ` + }), + args: {} +} diff --git a/src/components/IconRounded/WIconRounded.vue b/src/components/IconRounded/WIconRounded.vue new file mode 100644 index 0000000..7c95536 --- /dev/null +++ b/src/components/IconRounded/WIconRounded.vue @@ -0,0 +1,13 @@ + + + diff --git a/src/components/IconRounded/__snapshots__/WIconRounded.spec.ts.snap b/src/components/IconRounded/__snapshots__/WIconRounded.spec.ts.snap new file mode 100644 index 0000000..65b940d --- /dev/null +++ b/src/components/IconRounded/__snapshots__/WIconRounded.spec.ts.snap @@ -0,0 +1,27 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`WIconRounded > renders properly 1`] = ` +
+ + + + + + + + + +
+`; diff --git a/src/components/IconText/WIconText.spec.ts b/src/components/IconText/WIconText.spec.ts new file mode 100644 index 0000000..a8804d5 --- /dev/null +++ b/src/components/IconText/WIconText.spec.ts @@ -0,0 +1,87 @@ +import { describe, it, expect } from 'vitest' + +import { mount } from '@vue/test-utils' +import WIconText from './WIconText.vue' +import WIconRounded from '../IconRounded/WIconRounded.vue' + +describe.only('WIconText', () => { + it('renders properly NOT ROUNDED BOTTOM', () => { + const wrapper = mount(WIconText, { + props: { + link: '#', + position: 'bottom', + text: 'Text', + bold: false, + rounded: false + }, + slots: { + default: ` + + + + ` + } + }) + + expect(wrapper.element).toMatchSnapshot() + }) + + it('renders properly ROUNDED RIGHT', () => { + const wrapper = mount(WIconText, { + props: { + link: '#', + position: 'right', + text: 'Text', + bold: true, + rounded: true + }, + slots: { + default: ` + + + + ` + } + }) + + expect(wrapper.element).toMatchSnapshot() + }) + + it('renders a WIconRounded component when prop ROUNDED is TRUE', () => { + const wrapper = mount(WIconText, { + props: { + rounded: true, + link: '#', + position: 'bottom', + text: 'Text' + }, + slots: { + default: ` + + + + ` + } + }) + + expect(wrapper.findComponent(WIconRounded)).toBeTruthy() + }) +}) diff --git a/src/components/IconText/WIconText.stories.ts b/src/components/IconText/WIconText.stories.ts new file mode 100644 index 0000000..34688cb --- /dev/null +++ b/src/components/IconText/WIconText.stories.ts @@ -0,0 +1,111 @@ +import type { Meta, StoryObj } from '@storybook/vue3' +// import { fn } from '@storybook/test'; +import WIconText from './WIconText.vue' + +// More on how to set up stories at: https://storybook.js.org/docs/writing-stories +const meta = { + title: 'Example/WIconText', + component: WIconText, + // This component will have an automatically generated docsPage entry: https://storybook.js.org/docs/writing-docs/autodocs + tags: ['autodocs'], + argTypes: { + bold: { + control: 'boolean' + }, + rounded: { + control: 'boolean', + default: false + }, + text: { control: 'text' }, + position: { control: 'select', options: ['right', 'bottom'] } + }, + args: { + // type: 'primary', + // Use `fn` to spy on the onClick arg, which will appear in the actions panel once invoked: https://storybook.js.org/docs/essentials/actions#action-args + // onClick: fn(), + } +} satisfies Meta + +export default meta +type Story = StoryObj +/* + *👇 Render functions are a framework specific feature to allow you control on how the component renders. + * See https://storybook.js.org/docs/api/csf + * to learn how to use render functions. + */ + +// export const Default: Story = { +// render: (args) => ({ +// components: { WIconText }, +// setup() { +// return { args } +// }, +// template: ` +// +// +// +// +// ` +// }), +// args: { +// link: '#', +// position: 'bottom', +// text: 'Text', +// } +// } +export const Bottom: Story = { + render: (args) => ({ + components: { WIconText }, + setup() { + return { args } + }, + template: ` + + + + + ` + }), + args: { + link: '#', + position: 'bottom', + text: 'Text' + } +} + +export const Right: Story = { + render: (args) => ({ + components: { WIconText }, + setup() { + return { args } + }, + template: ` + + + + + ` + }), + args: { + link: '#', + position: 'right', + text: 'Text', + rounded: true, + bold: true + } +} diff --git a/src/components/IconText/WIconText.ts b/src/components/IconText/WIconText.ts new file mode 100644 index 0000000..f09c341 --- /dev/null +++ b/src/components/IconText/WIconText.ts @@ -0,0 +1,6 @@ +export enum IconTextPosition { + Right = 'right', + Bottom = 'bottom' +} + +export const iconTextPositions = Object.values(IconTextPosition) diff --git a/src/components/IconText/WIconText.vue b/src/components/IconText/WIconText.vue new file mode 100644 index 0000000..81f7072 --- /dev/null +++ b/src/components/IconText/WIconText.vue @@ -0,0 +1,65 @@ + + + + + diff --git a/src/components/IconText/__snapshots__/WIconText.spec.ts.snap b/src/components/IconText/__snapshots__/WIconText.spec.ts.snap new file mode 100644 index 0000000..c7b5b5b --- /dev/null +++ b/src/components/IconText/__snapshots__/WIconText.spec.ts.snap @@ -0,0 +1,71 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`WIconText > renders properly NOT ROUNDED BOTTOM 1`] = ` + + + + + + + + +`; + +exports[`WIconText > renders properly ROUNDED RIGHT 1`] = ` + +
+ + + + + + + +
+ +
+`; diff --git a/src/components/Link/WLink.stories.ts b/src/components/Link/WLink.stories.ts index 1a09089..89f8d97 100644 --- a/src/components/Link/WLink.stories.ts +++ b/src/components/Link/WLink.stories.ts @@ -32,7 +32,7 @@ export const Default: Story = { setup() { return { args } }, - template: `Link` + template: `Link` }), args: { // type: "primary" @@ -47,7 +47,7 @@ export const Underline: Story = { setup() { return { args } }, - template: `Link` + template: `Link` }), args: { // type: "primary" @@ -63,7 +63,7 @@ export const Hover: Story = { setup() { return { args } }, - template: `Link` + template: `Link` }), args: { label: 'Link', diff --git a/src/components/SocialsBar/IconExternalLink.vue b/src/components/SocialsBar/IconExternalLink.vue new file mode 100644 index 0000000..4b8b907 --- /dev/null +++ b/src/components/SocialsBar/IconExternalLink.vue @@ -0,0 +1,33 @@ + + + + diff --git a/src/components/SocialsBar/WSocialsBar.spec.ts b/src/components/SocialsBar/WSocialsBar.spec.ts new file mode 100644 index 0000000..829bd8d --- /dev/null +++ b/src/components/SocialsBar/WSocialsBar.spec.ts @@ -0,0 +1,12 @@ +import { describe, it, expect } from 'vitest' + +import { mount } from '@vue/test-utils' +import SocialsBar from './WSocialsBar.vue' + +describe('SocialsBar', () => { + it('renders properly', () => { + const wrapper = mount(SocialsBar) + + expect(wrapper.element).toMatchSnapshot() + }) +}) diff --git a/src/components/SocialsBar/WSocialsBar.stories.ts b/src/components/SocialsBar/WSocialsBar.stories.ts new file mode 100644 index 0000000..47447e5 --- /dev/null +++ b/src/components/SocialsBar/WSocialsBar.stories.ts @@ -0,0 +1,24 @@ +import type { Meta, StoryObj } from '@storybook/vue3' +import WSocialsBar from './WSocialsBar.vue' + +const meta = { + title: 'Example/WSocialsBar', + component: WSocialsBar, + tags: ['autodocs'], + argTypes: {}, + args: {} +} satisfies Meta + +export default meta +type Story = StoryObj + +export const Default: Story = { + render: (args) => ({ + components: { WSocialsBar }, + setup() { + return { args } + }, + template: `` + }), + args: {} +} diff --git a/src/components/SocialsBar/WSocialsBar.ts b/src/components/SocialsBar/WSocialsBar.ts new file mode 100644 index 0000000..1be07ea --- /dev/null +++ b/src/components/SocialsBar/WSocialsBar.ts @@ -0,0 +1,6 @@ +export const socialsUrls: Record = { + discord: 'https://discord.gg/witnet', + github: 'https://github.com/witnet', + telegram: 'https://t.me/witnetio', + x: 'https://twitter.com/witnet_io' +} diff --git a/src/components/SocialsBar/WSocialsBar.vue b/src/components/SocialsBar/WSocialsBar.vue new file mode 100644 index 0000000..f37f15c --- /dev/null +++ b/src/components/SocialsBar/WSocialsBar.vue @@ -0,0 +1,53 @@ + + diff --git a/src/components/SocialsBar/__snapshots__/SocialsBar.spec.ts.snap b/src/components/SocialsBar/__snapshots__/SocialsBar.spec.ts.snap new file mode 100644 index 0000000..929a995 --- /dev/null +++ b/src/components/SocialsBar/__snapshots__/SocialsBar.spec.ts.snap @@ -0,0 +1,14220 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`SocialsBar > renders properly 1`] = ` +VueWrapper { + "__app": { + "_component": { + "name": "VTU_ROOT", + "render": [Function], + "setup": [Function], + }, + "_container":
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+

+ Enjoy Smart, Neutral, +

+

+ and Secure Data +

+
+
+
, + "_context": { + "app": [Circular], + "components": { + "transition": { + "name": "transition", + }, + "transition-group": { + "name": "transition-group", + }, + }, + "config": { + "compilerOptions": {}, + "errorHandler": undefined, + "globalProperties": {}, + "isNativeTag": [Function], + "optionMergeStrategies": {}, + "performance": false, + "warnHandler": undefined, + }, + "directives": {}, + "emitsCache": WeakMap {}, + "mixins": [ + { + "beforeCreate": [Function], + }, + ], + "optionsCache": WeakMap {}, + "propsCache": WeakMap {}, + "provides": {}, + "reload": [Function], + }, + "_instance": { + "a": null, + "accessCache": {}, + "appContext": { + "app": [Circular], + "components": { + "transition": { + "name": "transition", + }, + "transition-group": { + "name": "transition-group", + }, + }, + "config": { + "compilerOptions": {}, + "errorHandler": undefined, + "globalProperties": {}, + "isNativeTag": [Function], + "optionMergeStrategies": {}, + "performance": false, + "warnHandler": undefined, + }, + "directives": {}, + "emitsCache": WeakMap {}, + "mixins": [ + { + "beforeCreate": [Function], + }, + ], + "optionsCache": WeakMap {}, + "propsCache": WeakMap {}, + "provides": {}, + "reload": [Function], + }, + "asyncDep": null, + "asyncResolved": false, + "attrs": {}, + "bc": null, + "bm": null, + "bu": null, + "bum": null, + "c": null, + "components": null, + "ctx": { + "VTU_COMPONENT": {}, + }, + "da": null, + "data": {}, + "devtoolsRawSetupState": { + "VTU_COMPONENT": RefImpl { + "__v_isRef": true, + "__v_isShallow": false, + "_rawValue": {}, + "_value": {}, + "dep": undefined, + }, + }, + "directives": null, + "ec": null, + "effect": ReactiveEffect { + "_depsLength": 3, + "_dirtyLevel": 0, + "_runnings": 0, + "_shouldSchedule": false, + "_trackId": 1, + "active": true, + "allowRecurse": true, + "deps": [ + Map { + [Circular] => 1, + }, + Map { + [Circular] => 1, + }, + Map { + [Circular] => 1, + }, + ], + "fn": [Function], + "onTrack": undefined, + "onTrigger": undefined, + "scheduler": [Function], + "trigger": [Function], + }, + "emit": [Function], + "emitsOptions": null, + "emitted": null, + "exposeProxy": null, + "exposed": null, + "inheritAttrs": undefined, + "isDeactivated": false, + "isMounted": true, + "isUnmounted": false, + "m": null, + "next": null, + "parent": null, + "props": {}, + "propsDefaults": {}, + "propsOptions": [ + {}, + [], + ], + "provides": {}, + "proxy": { + "VTU_COMPONENT": {}, + }, + "refs": { + "VTU_COMPONENT": {}, + }, + "render": [Function], + "renderCache": [], + "root": [Circular], + "rtc": null, + "rtg": null, + "scope": EffectScope { + "_active": true, + "cleanups": [], + "detached": true, + "effects": [ + ReactiveEffect { + "_depsLength": 3, + "_dirtyLevel": 0, + "_runnings": 0, + "_shouldSchedule": false, + "_trackId": 1, + "active": true, + "allowRecurse": true, + "deps": [ + Map { + [Circular] => 1, + }, + Map { + [Circular] => 1, + }, + Map { + [Circular] => 1, + }, + ], + "fn": [Function], + "onTrack": undefined, + "onTrigger": undefined, + "scheduler": [Function], + "trigger": [Function], + }, + ], + "parent": undefined, + }, + "setupContext": null, + "setupState": { + "VTU_COMPONENT": {}, + }, + "slots": {}, + "sp": null, + "subTree": { + "__v_isVNode": true, + "__v_skip": true, + "anchor": null, + "appContext": null, + "children": null, + "component": { + "a": null, + "accessCache": {}, + "appContext": { + "app": [Circular], + "components": { + "transition": { + "name": "transition", + }, + "transition-group": { + "name": "transition-group", + }, + }, + "config": { + "compilerOptions": {}, + "errorHandler": undefined, + "globalProperties": {}, + "isNativeTag": [Function], + "optionMergeStrategies": {}, + "performance": false, + "warnHandler": undefined, + }, + "directives": {}, + "emitsCache": WeakMap {}, + "mixins": [ + { + "beforeCreate": [Function], + }, + ], + "optionsCache": WeakMap {}, + "propsCache": WeakMap {}, + "provides": {}, + "reload": [Function], + }, + "asyncDep": null, + "asyncResolved": false, + "attrs": {}, + "bc": null, + "bm": null, + "bu": null, + "bum": null, + "c": null, + "components": {}, + "ctx": {}, + "da": null, + "data": {}, + "devtoolsRawSetupState": { + "IconDiscord": { + "__file": "/home/tommy/development/witnet/wit-vue-ui/src/components/icons/IconDiscord.vue", + "render": [Function], + }, + "IconExternalLink": { + "__file": "/home/tommy/development/witnet/wit-vue-ui/src/components/SocialsBar/IconExternalLink.vue", + "__name": "IconExternalLink", + "props": { + "url": { + "required": true, + "type": [Function], + }, + "width": { + "default": "w-[50px]", + "type": [Function], + }, + }, + "render": [Function], + "setup": [Function], + }, + "IconGithub": { + "__file": "/home/tommy/development/witnet/wit-vue-ui/src/components/icons/IconGithub.vue", + "render": [Function], + }, + "IconTelegram": { + "__file": "/home/tommy/development/witnet/wit-vue-ui/src/components/icons/IconTelegram.vue", + "render": [Function], + }, + "IconTwitter": { + "__file": "/home/tommy/development/witnet/wit-vue-ui/src/components/icons/IconTwitter.vue", + "render": [Function], + }, + "socialsUrls": { + "discord": "https://discord.gg/witnet", + "github": "https://github.com/witnet", + "telegram": "https://t.me/witnetio", + "x": "https://twitter.com/witnet_io", + }, + }, + "directives": null, + "ec": null, + "effect": ReactiveEffect { + "_depsLength": 0, + "_dirtyLevel": 0, + "_runnings": 0, + "_shouldSchedule": false, + "_trackId": 1, + "active": true, + "allowRecurse": true, + "deps": [], + "fn": [Function], + "onTrack": undefined, + "onTrigger": undefined, + "scheduler": [Function], + "trigger": [Function], + }, + "emit": [Function], + "emitsOptions": null, + "emitted": null, + "exposeProxy": {}, + "exposed": {}, + "inheritAttrs": undefined, + "isDeactivated": false, + "isMounted": true, + "isUnmounted": false, + "m": null, + "next": null, + "parent": [Circular], + "props": {}, + "propsDefaults": {}, + "propsOptions": [ + {}, + [], + ], + "provides": {}, + "proxy": {}, + "refs": { + "socials":
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+

+ Enjoy Smart, Neutral, +

+

+ and Secure Data +

+
+
, + }, + "render": [Function], + "renderCache": [], + "root": [Circular], + "rtc": null, + "rtg": null, + "scope": EffectScope { + "_active": true, + "cleanups": [], + "detached": true, + "effects": [ + ReactiveEffect { + "_depsLength": 0, + "_dirtyLevel": 0, + "_runnings": 0, + "_shouldSchedule": false, + "_trackId": 1, + "active": true, + "allowRecurse": true, + "deps": [], + "fn": [Function], + "onTrack": undefined, + "onTrigger": undefined, + "scheduler": [Function], + "trigger": [Function], + }, + ], + "parent": undefined, + }, + "setupContext": { + "attrs": {}, + "emit": [Function], + "expose": [Function], + "slots": {}, + }, + "setupState": { + "IconDiscord": { + "__file": "/home/tommy/development/witnet/wit-vue-ui/src/components/icons/IconDiscord.vue", + "render": [Function], + }, + "IconExternalLink": { + "__file": "/home/tommy/development/witnet/wit-vue-ui/src/components/SocialsBar/IconExternalLink.vue", + "__name": "IconExternalLink", + "props": { + "url": { + "required": true, + "type": [Function], + }, + "width": { + "default": "w-[50px]", + "type": [Function], + }, + }, + "render": [Function], + "setup": [Function], + }, + "IconGithub": { + "__file": "/home/tommy/development/witnet/wit-vue-ui/src/components/icons/IconGithub.vue", + "render": [Function], + }, + "IconTelegram": { + "__file": "/home/tommy/development/witnet/wit-vue-ui/src/components/icons/IconTelegram.vue", + "render": [Function], + }, + "IconTwitter": { + "__file": "/home/tommy/development/witnet/wit-vue-ui/src/components/icons/IconTwitter.vue", + "render": [Function], + }, + "socialsUrls": { + "discord": "https://discord.gg/witnet", + "github": "https://github.com/witnet", + "telegram": "https://t.me/witnetio", + "x": "https://twitter.com/witnet_io", + }, + }, + "slots": {}, + "sp": null, + "subTree": { + "__v_isVNode": true, + "__v_skip": true, + "anchor": null, + "appContext": null, + "children": [ + { + "__v_isVNode": true, + "__v_skip": true, + "anchor": null, + "appContext": null, + "children": { + "_": 1, + "default": [Function], + }, + "component": { + "a": null, + "accessCache": {}, + "appContext": { + "app": [Circular], + "components": { + "transition": { + "name": "transition", + }, + "transition-group": { + "name": "transition-group", + }, + }, + "config": { + "compilerOptions": {}, + "errorHandler": undefined, + "globalProperties": {}, + "isNativeTag": [Function], + "optionMergeStrategies": {}, + "performance": false, + "warnHandler": undefined, + }, + "directives": {}, + "emitsCache": WeakMap {}, + "mixins": [ + { + "beforeCreate": [Function], + }, + ], + "optionsCache": WeakMap {}, + "propsCache": WeakMap {}, + "provides": {}, + "reload": [Function], + }, + "asyncDep": null, + "asyncResolved": false, + "attrs": {}, + "bc": null, + "bm": null, + "bu": null, + "bum": null, + "c": null, + "components": null, + "ctx": { + "url": "https://twitter.com/witnet_io", + "width": "w-[50px]", + }, + "da": null, + "data": {}, + "devtoolsRawSetupState": {}, + "directives": null, + "ec": null, + "effect": ReactiveEffect { + "_depsLength": 2, + "_dirtyLevel": 0, + "_runnings": 0, + "_shouldSchedule": false, + "_trackId": 1, + "active": true, + "allowRecurse": true, + "deps": [ + Map { + [Circular] => 1, + }, + Map { + [Circular] => 1, + }, + ], + "fn": [Function], + "onTrack": undefined, + "onTrigger": undefined, + "scheduler": [Function], + "trigger": [Function], + }, + "emit": [Function], + "emitsOptions": null, + "emitted": null, + "exposeProxy": null, + "exposed": {}, + "inheritAttrs": undefined, + "isDeactivated": false, + "isMounted": true, + "isUnmounted": false, + "m": null, + "next": null, + "parent": [Circular], + "props": { + "url": "https://twitter.com/witnet_io", + "width": "w-[50px]", + }, + "propsDefaults": {}, + "propsOptions": [ + { + "url": { + "0": false, + "1": true, + "required": true, + "type": [Function], + }, + "width": { + "0": false, + "1": true, + "default": "w-[50px]", + "type": [Function], + }, + }, + [ + "width", + ], + ], + "provides": {}, + "proxy": { + "url": "https://twitter.com/witnet_io", + "width": "w-[50px]", + }, + "refs": {}, + "render": [Function], + "renderCache": [], + "root": [Circular], + "rtc": null, + "rtg": null, + "scope": EffectScope { + "_active": true, + "cleanups": [], + "detached": true, + "effects": [ + ReactiveEffect { + "_depsLength": 2, + "_dirtyLevel": 0, + "_runnings": 0, + "_shouldSchedule": false, + "_trackId": 1, + "active": true, + "allowRecurse": true, + "deps": [ + Map { + [Circular] => 1, + }, + Map { + [Circular] => 1, + }, + ], + "fn": [Function], + "onTrack": undefined, + "onTrigger": undefined, + "scheduler": [Function], + "trigger": [Function], + }, + ], + "parent": undefined, + }, + "setupContext": { + "attrs": {}, + "emit": [Function], + "expose": [Function], + "slots": { + "default": [Function], + }, + }, + "setupState": {}, + "slots": { + "default": [Function], + }, + "sp": null, + "subTree": { + "__v_isVNode": true, + "__v_skip": true, + "anchor": null, + "appContext": null, + "children": [ + { + "__v_isVNode": true, + "__v_skip": true, + "anchor": , + "appContext": null, + "children": [ + { + "__v_isVNode": true, + "__v_skip": true, + "anchor": null, + "appContext": null, + "children": null, + "component": { + "a": null, + "accessCache": {}, + "appContext": { + "app": [Circular], + "components": { + "transition": { + "name": "transition", + }, + "transition-group": { + "name": "transition-group", + }, + }, + "config": { + "compilerOptions": {}, + "errorHandler": undefined, + "globalProperties": {}, + "isNativeTag": [Function], + "optionMergeStrategies": {}, + "performance": false, + "warnHandler": undefined, + }, + "directives": {}, + "emitsCache": WeakMap {}, + "mixins": [ + { + "beforeCreate": [Function], + }, + ], + "optionsCache": WeakMap {}, + "propsCache": WeakMap {}, + "provides": {}, + "reload": [Function], + }, + "asyncDep": null, + "asyncResolved": false, + "attrs": { + "class": "icon h-auto w-md", + }, + "bc": null, + "bm": null, + "bu": null, + "bum": null, + "c": null, + "components": null, + "ctx": {}, + "da": null, + "data": {}, + "directives": null, + "ec": null, + "effect": ReactiveEffect { + "_depsLength": 1, + "_dirtyLevel": 0, + "_runnings": 0, + "_shouldSchedule": false, + "_trackId": 1, + "active": true, + "allowRecurse": true, + "deps": [ + Map { + [Circular] => 1, + }, + ], + "fn": [Function], + "onTrack": undefined, + "onTrigger": undefined, + "scheduler": [Function], + "trigger": [Function], + }, + "emit": [Function], + "emitsOptions": null, + "emitted": null, + "exposeProxy": null, + "exposed": null, + "inheritAttrs": undefined, + "isDeactivated": false, + "isMounted": true, + "isUnmounted": false, + "m": null, + "next": null, + "parent": [Circular], + "props": {}, + "propsDefaults": {}, + "propsOptions": [ + {}, + [], + ], + "provides": {}, + "proxy": {}, + "refs": {}, + "render": [Function], + "renderCache": [], + "root": [Circular], + "rtc": null, + "rtg": null, + "scope": EffectScope { + "_active": true, + "cleanups": [], + "detached": true, + "effects": [ + ReactiveEffect { + "_depsLength": 1, + "_dirtyLevel": 0, + "_runnings": 0, + "_shouldSchedule": false, + "_trackId": 1, + "active": true, + "allowRecurse": true, + "deps": [ + Map { + [Circular] => 1, + }, + ], + "fn": [Function], + "onTrack": undefined, + "onTrigger": undefined, + "scheduler": [Function], + "trigger": [Function], + }, + ], + "parent": undefined, + }, + "setupContext": null, + "setupState": {}, + "slots": {}, + "sp": null, + "subTree": { + "__v_isVNode": true, + "__v_skip": true, + "anchor": null, + "appContext": null, + "ce": undefined, + "children": [ + { + "__v_isVNode": true, + "__v_skip": true, + "anchor": null, + "appContext": null, + "ce": undefined, + "children": null, + "component": null, + "ctx": null, + "dirs": null, + "dynamicChildren": null, + "dynamicProps": null, + "el":