@timus-networks/theme 1.0.184 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (225) hide show
  1. package/components/TimusIcons.vue +54 -0
  2. package/generate-icon.js +22 -0
  3. package/module.ts +84 -0
  4. package/package.json +17 -18
  5. package/pages/icons.vue +46 -0
  6. package/plugins/sample-plugin.ts +5 -0
  7. package/public/isax/fonts/iconsax.svg +927 -0
  8. package/public/isax/fonts/iconsax.ttf +0 -0
  9. package/public/isax/fonts/iconsax.woff +0 -0
  10. package/public/isax/icons.json +899 -0
  11. package/public/isax/selection.json +1 -0
  12. package/public/isax/style.css +1 -0
  13. package/public/isax/style.scss +5435 -0
  14. package/public/isax/variables.scss +900 -0
  15. package/README.md +0 -119
  16. package/components-js/ThemeAlert.vue +0 -78
  17. package/components-js/ThemeAvatar.vue +0 -55
  18. package/components-js/ThemeBadge.vue +0 -106
  19. package/components-js/ThemeBreadcrumb.vue +0 -44
  20. package/components-js/ThemeButtons.vue +0 -148
  21. package/components-js/ThemeCascader.vue +0 -390
  22. package/components-js/ThemeCheckbox.d.ts +0 -2
  23. package/components-js/ThemeCheckbox.vue +0 -197
  24. package/components-js/ThemeCollapse.vue +0 -73
  25. package/components-js/ThemeDialog.vue +0 -49
  26. package/components-js/ThemeForm.d.ts +0 -2
  27. package/components-js/ThemeForm.vue +0 -134
  28. package/components-js/ThemeInformation.vue +0 -127
  29. package/components-js/ThemeInputNumbers.vue +0 -74
  30. package/components-js/ThemeInputs.vue +0 -316
  31. package/components-js/ThemeLink.vue +0 -110
  32. package/components-js/ThemeLogo.vue +0 -57
  33. package/components-js/ThemeMessage.vue +0 -55
  34. package/components-js/ThemeMessageBox.vue +0 -47
  35. package/components-js/ThemePopover.vue +0 -557
  36. package/components-js/ThemeRadio.d.ts +0 -2
  37. package/components-js/ThemeRadio.vue +0 -164
  38. package/components-js/ThemeSelect.vue +0 -237
  39. package/components-js/ThemeSidebar.d.ts +0 -2
  40. package/components-js/ThemeSidebar.vue +0 -275
  41. package/components-js/ThemeTable.vue +0 -305
  42. package/components-js/ThemeTag.vue +0 -145
  43. package/components-js/ThemeToggle.vue +0 -123
  44. package/components-js/ThemeTooltip.vue +0 -191
  45. package/components-js/ThemeTypo.vue +0 -65
  46. package/components-js/ThemeUpload.vue +0 -92
  47. package/components-js/TimusSamples.vue +0 -54
  48. package/components-js/exporter.js +0 -19
  49. package/components-js/interfaces.js +0 -1
  50. package/components-js/utils.d.ts +0 -6
  51. package/components-js/utils.js +0 -17
  52. package/components-ts/ThemeAlert.vue +0 -78
  53. package/components-ts/ThemeAvatar.vue +0 -55
  54. package/components-ts/ThemeBadge.vue +0 -106
  55. package/components-ts/ThemeBreadcrumb.vue +0 -44
  56. package/components-ts/ThemeButtons.vue +0 -148
  57. package/components-ts/ThemeCascader.vue +0 -390
  58. package/components-ts/ThemeCheckbox.vue +0 -202
  59. package/components-ts/ThemeCollapse.vue +0 -73
  60. package/components-ts/ThemeDialog.vue +0 -49
  61. package/components-ts/ThemeForm.vue +0 -137
  62. package/components-ts/ThemeInformation.vue +0 -127
  63. package/components-ts/ThemeInputNumbers.vue +0 -74
  64. package/components-ts/ThemeInputs.vue +0 -316
  65. package/components-ts/ThemeLink.vue +0 -110
  66. package/components-ts/ThemeLogo.vue +0 -57
  67. package/components-ts/ThemeMessage.vue +0 -55
  68. package/components-ts/ThemeMessageBox.vue +0 -47
  69. package/components-ts/ThemePopover.vue +0 -557
  70. package/components-ts/ThemeRadio.vue +0 -169
  71. package/components-ts/ThemeSelect.vue +0 -237
  72. package/components-ts/ThemeSidebar.vue +0 -277
  73. package/components-ts/ThemeTable.vue +0 -305
  74. package/components-ts/ThemeTag.vue +0 -145
  75. package/components-ts/ThemeToggle.vue +0 -123
  76. package/components-ts/ThemeTooltip.vue +0 -191
  77. package/components-ts/ThemeTypo.vue +0 -65
  78. package/components-ts/ThemeUpload.vue +0 -92
  79. package/components-ts/TimusSamples.vue +0 -54
  80. package/components-ts/exporter.js +0 -19
  81. package/components-ts/interfaces.ts +0 -11
  82. package/components-ts/utils.ts +0 -20
  83. package/convert-js.js +0 -112
  84. package/convert-sass.js +0 -26
  85. package/fonts/poppins-font-face/files/Poppins-Black.eot +0 -0
  86. package/fonts/poppins-font-face/files/Poppins-Black.svg +0 -3099
  87. package/fonts/poppins-font-face/files/Poppins-Black.ttf +0 -0
  88. package/fonts/poppins-font-face/files/Poppins-Black.woff +0 -0
  89. package/fonts/poppins-font-face/files/Poppins-Black.woff2 +0 -0
  90. package/fonts/poppins-font-face/files/Poppins-BlackItalic.ttf +0 -0
  91. package/fonts/poppins-font-face/files/Poppins-Bold.eot +0 -0
  92. package/fonts/poppins-font-face/files/Poppins-Bold.svg +0 -3131
  93. package/fonts/poppins-font-face/files/Poppins-Bold.ttf +0 -0
  94. package/fonts/poppins-font-face/files/Poppins-Bold.woff +0 -0
  95. package/fonts/poppins-font-face/files/Poppins-Bold.woff2 +0 -0
  96. package/fonts/poppins-font-face/files/Poppins-BoldItalic.ttf +0 -0
  97. package/fonts/poppins-font-face/files/Poppins-ExtraBold.eot +0 -0
  98. package/fonts/poppins-font-face/files/Poppins-ExtraBold.svg +0 -3120
  99. package/fonts/poppins-font-face/files/Poppins-ExtraBold.ttf +0 -0
  100. package/fonts/poppins-font-face/files/Poppins-ExtraBold.woff +0 -0
  101. package/fonts/poppins-font-face/files/Poppins-ExtraBold.woff2 +0 -0
  102. package/fonts/poppins-font-face/files/Poppins-ExtraBoldItalic.ttf +0 -0
  103. package/fonts/poppins-font-face/files/Poppins-ExtraLight.eot +0 -0
  104. package/fonts/poppins-font-face/files/Poppins-ExtraLight.svg +0 -3245
  105. package/fonts/poppins-font-face/files/Poppins-ExtraLight.ttf +0 -0
  106. package/fonts/poppins-font-face/files/Poppins-ExtraLight.woff +0 -0
  107. package/fonts/poppins-font-face/files/Poppins-ExtraLight.woff2 +0 -0
  108. package/fonts/poppins-font-face/files/Poppins-ExtraLightItalic.ttf +0 -0
  109. package/fonts/poppins-font-face/files/Poppins-Italic.eot +0 -0
  110. package/fonts/poppins-font-face/files/Poppins-Italic.svg +0 -3414
  111. package/fonts/poppins-font-face/files/Poppins-Italic.ttf +0 -0
  112. package/fonts/poppins-font-face/files/Poppins-Italic.woff +0 -0
  113. package/fonts/poppins-font-face/files/Poppins-Italic.woff2 +0 -0
  114. package/fonts/poppins-font-face/files/Poppins-Light.eot +0 -0
  115. package/fonts/poppins-font-face/files/Poppins-Light.svg +0 -3244
  116. package/fonts/poppins-font-face/files/Poppins-Light.ttf +0 -0
  117. package/fonts/poppins-font-face/files/Poppins-Light.woff +0 -0
  118. package/fonts/poppins-font-face/files/Poppins-Light.woff2 +0 -0
  119. package/fonts/poppins-font-face/files/Poppins-LightItalic.ttf +0 -0
  120. package/fonts/poppins-font-face/files/Poppins-Medium.eot +0 -0
  121. package/fonts/poppins-font-face/files/Poppins-Medium.svg +0 -3190
  122. package/fonts/poppins-font-face/files/Poppins-Medium.ttf +0 -0
  123. package/fonts/poppins-font-face/files/Poppins-Medium.woff +0 -0
  124. package/fonts/poppins-font-face/files/Poppins-Medium.woff2 +0 -0
  125. package/fonts/poppins-font-face/files/Poppins-MediumItalic.ttf +0 -0
  126. package/fonts/poppins-font-face/files/Poppins-Regular.eot +0 -0
  127. package/fonts/poppins-font-face/files/Poppins-Regular.svg +0 -3213
  128. package/fonts/poppins-font-face/files/Poppins-Regular.ttf +0 -0
  129. package/fonts/poppins-font-face/files/Poppins-Regular.woff +0 -0
  130. package/fonts/poppins-font-face/files/Poppins-Regular.woff2 +0 -0
  131. package/fonts/poppins-font-face/files/Poppins-SemiBold.eot +0 -0
  132. package/fonts/poppins-font-face/files/Poppins-SemiBold.svg +0 -3174
  133. package/fonts/poppins-font-face/files/Poppins-SemiBold.ttf +0 -0
  134. package/fonts/poppins-font-face/files/Poppins-SemiBold.woff +0 -0
  135. package/fonts/poppins-font-face/files/Poppins-SemiBold.woff2 +0 -0
  136. package/fonts/poppins-font-face/files/Poppins-SemiBoldItalic.ttf +0 -0
  137. package/fonts/poppins-font-face/files/Poppins-Thin.eot +0 -0
  138. package/fonts/poppins-font-face/files/Poppins-Thin.svg +0 -3266
  139. package/fonts/poppins-font-face/files/Poppins-Thin.ttf +0 -0
  140. package/fonts/poppins-font-face/files/Poppins-Thin.woff +0 -0
  141. package/fonts/poppins-font-face/files/Poppins-Thin.woff2 +0 -0
  142. package/fonts/poppins-font-face/files/Poppins-ThinItalic.ttf +0 -0
  143. package/fonts/poppins-font-face/stylesheet.css +0 -81
  144. package/images/applications/apple.png +0 -0
  145. package/images/applications/apple_icloud.png +0 -0
  146. package/images/applications/apple_itunes.png +0 -0
  147. package/images/applications/apple_store.png +0 -0
  148. package/images/applications/bloomberg.png +0 -0
  149. package/images/applications/chrome.png +0 -0
  150. package/images/applications/csgo.png +0 -0
  151. package/images/applications/dns.png +0 -0
  152. package/images/applications/dropbox.png +0 -0
  153. package/images/applications/evil.png +0 -0
  154. package/images/applications/facebook-messenger.png +0 -0
  155. package/images/applications/facebook.png +0 -0
  156. package/images/applications/ftp.png +0 -0
  157. package/images/applications/gmail.png +0 -0
  158. package/images/applications/google.png +0 -0
  159. package/images/applications/google_maps.png +0 -0
  160. package/images/applications/instagram.png +0 -0
  161. package/images/applications/linkedin.svg +0 -5
  162. package/images/applications/messenger.png +0 -0
  163. package/images/applications/mysql.png +0 -0
  164. package/images/applications/netflix.png +0 -0
  165. package/images/applications/nintendo.png +0 -0
  166. package/images/applications/sap.png +0 -0
  167. package/images/applications/skype.png +0 -0
  168. package/images/applications/slack.png +0 -0
  169. package/images/applications/smtp.png +0 -0
  170. package/images/applications/snapchat.png +0 -0
  171. package/images/applications/spotify.png +0 -0
  172. package/images/applications/ssh.png +0 -0
  173. package/images/applications/teamspeak.png +0 -0
  174. package/images/applications/tiktok.png +0 -0
  175. package/images/applications/twitch.png +0 -0
  176. package/images/applications/twitter.png +0 -0
  177. package/images/applications/ubuntuone.png +0 -0
  178. package/images/applications/utorrent.png +0 -0
  179. package/images/applications/website.png +0 -0
  180. package/images/applications/whatsapp.png +0 -0
  181. package/images/applications/windows-update.png +0 -0
  182. package/images/applications/youtube.png +0 -0
  183. package/images/backgrounds/login-icon.png +0 -0
  184. package/images/backgrounds/login.jpg +0 -0
  185. package/images/backgrounds/login.png +0 -0
  186. package/images/cards/amex.svg +0 -20
  187. package/images/cards/default.svg +0 -18
  188. package/images/cards/dina.svg +0 -12
  189. package/images/cards/diners.svg +0 -30
  190. package/images/cards/discover.svg +0 -28
  191. package/images/cards/eftpos.svg +0 -21
  192. package/images/cards/jcb.svg +0 -41
  193. package/images/cards/mastercard.svg +0 -5
  194. package/images/cards/unionpay.svg +0 -6
  195. package/images/cards/visa.svg +0 -3
  196. package/images/devices/os-android.png +0 -0
  197. package/images/devices/os-android.svg +0 -6
  198. package/images/devices/os-apple.svg +0 -4
  199. package/images/devices/os-default.svg +0 -5
  200. package/images/devices/os-ios.png +0 -0
  201. package/images/devices/os-ios.svg +0 -4
  202. package/images/devices/os-linux-debian.png +0 -0
  203. package/images/devices/os-linux-ubuntu.png +0 -0
  204. package/images/devices/os-linux.svg +0 -3
  205. package/images/devices/os-osx.png +0 -0
  206. package/images/devices/os-unknown.png +0 -0
  207. package/images/devices/os-windows.png +0 -0
  208. package/images/devices/os-windows.svg +0 -3
  209. package/images/devices/type-laptop-ubuntu.png +0 -0
  210. package/images/devices/type-laptop.png +0 -0
  211. package/images/devices/type-printer.png +0 -0
  212. package/images/devices/type-switch-cisco.png +0 -0
  213. package/images/logos/timus-favicon.png +0 -0
  214. package/images/logos/timus-icon.svg +0 -17
  215. package/images/logos/timus-logo-manager.svg +0 -29
  216. package/images/logos/timus-logo-partner.svg +0 -35
  217. package/images/logos/timus-logo.svg +0 -22
  218. package/index.d.ts +0 -5
  219. package/loader.js +0 -50
  220. package/module.js +0 -77
  221. package/output/main.css +0 -1
  222. package/plugins/html-to-string.js +0 -36
  223. package/plugins/js-components-installer.js +0 -22
  224. package/plugins/theme-provider.js +0 -72
  225. package/plugins/ts-components-installer.js +0 -22
@@ -0,0 +1,54 @@
1
+ <template>
2
+ <el-input v-model="search" placeholder="Search..." clearable class="my-4" />
3
+ <div class="grid sm:grid-cols-2 md:grid-cols-4 lg:grid-cols-6 gap-4">
4
+ <template v-for="(item, index) in filter" :key="index">
5
+ <div :class="`icon flex flex-col items-center justify-center !gap-4 bg-white border border-gray-200 rounded-md h-32 text-3xl [&::before]:!font-light [&::before]:text-gray-800 isax-${item}`">
6
+ <span class="text-xs">isax-{{ item }}</span>
7
+ </div>
8
+ </template>
9
+ </div>
10
+ </template>
11
+
12
+ <script>
13
+ export default defineComponent({
14
+ name: 'TimusIcons',
15
+ props: {
16
+ icons: {
17
+ default: () => [],
18
+ type: Array,
19
+ },
20
+ },
21
+ data() {
22
+ return {
23
+ search: '',
24
+ class: 'container class',
25
+ };
26
+ },
27
+ computed: {
28
+ filter() {
29
+ return this.icons.filter((item) => item.includes(this.search));
30
+ },
31
+ },
32
+ });
33
+ </script>
34
+
35
+ <style scoped>
36
+ .icon {
37
+ color: var(--gray-500);
38
+
39
+ &::before {
40
+ transition: all 0.4s;
41
+ }
42
+
43
+ &:hover {
44
+ background-color: var(--primary-500);
45
+ color: #ffffff;
46
+ transition: all 0.4s;
47
+
48
+ &::before {
49
+ color: #ffffff;
50
+ transition: all 0.4s;
51
+ }
52
+ }
53
+ }
54
+ </style>
@@ -0,0 +1,22 @@
1
+ const fs = require('fs');
2
+ // SVG dosyasının yolunu belirtin
3
+ const svgFilePath = './public/isax/fonts/iconsax.svg';
4
+ // SVG dosyasını oku
5
+ const svgContent = fs.readFileSync(svgFilePath, 'utf-8');
6
+ // `glyph-name` özelliklerini çıkar
7
+ const glyphNames = [];
8
+ const glyphNameRegex = /glyph-name="([^"]+)"/g;
9
+ let match;
10
+
11
+ while ((match = glyphNameRegex.exec(svgContent)) !== null) {
12
+ glyphNames.push(match[1]);
13
+ }
14
+
15
+ // JSON olarak dışa aktar
16
+ const outputFilePath = './public/isax/icons.json';
17
+ let outputContent = `{ "data": ${JSON.stringify(glyphNames, null, 2)}}\n`;
18
+
19
+ // Dışa aktarma dosyasını yaz
20
+ fs.writeFileSync(outputFilePath, outputContent, 'utf-8');
21
+
22
+ console.log('icon.json dosyası, glyph adlarının listesiyle oluşturuldu.');
package/module.ts ADDED
@@ -0,0 +1,84 @@
1
+ // modules/my-module.ts
2
+ import { defineNuxtModule } from '@nuxt/kit';
3
+ import { readdirSync } from 'fs';
4
+ import { addComponent, addPlugin, createResolver } from 'nuxt/kit';
5
+ import { join, parse, resolve } from 'path';
6
+
7
+ import PackageJson from './package.json';
8
+
9
+ export default defineNuxtModule({
10
+ meta: {
11
+ name: PackageJson.name,
12
+ configKey: 'theme',
13
+ },
14
+ hooks: {
15
+ 'pages:extend': (pages) => {
16
+ const resolver = createResolver(import.meta.url);
17
+
18
+ pages.push({
19
+ name: 'icons',
20
+ path: '/icons',
21
+ mode: 'client',
22
+ file: resolver.resolve('./pages/icons.vue'),
23
+ });
24
+ },
25
+ 'nitro:config': async (nitroConfig) => {
26
+ nitroConfig.publicAssets ||= [];
27
+ nitroConfig.publicAssets.push({
28
+ dir: resolve(__dirname, './public'),
29
+ maxAge: 60 * 60 * 24 * 365, // 1 year
30
+ });
31
+ },
32
+ },
33
+ setup(options, nuxt) {
34
+ const resolver = createResolver(import.meta.url);
35
+
36
+ // Modülünüzün kurulumu burada yapılır
37
+ console.info(`'${PackageJson.name}' has been loaded with options:`, options);
38
+
39
+ options = {
40
+ ...options,
41
+ module: PackageJson.name, // bu external olarak nuxt.config içerisinde tanımlanan değer '@timus-networks/table' olarak direk json'daki
42
+ version: PackageJson.version,
43
+ client: options.client ? 'client' : 'server',
44
+ };
45
+
46
+ // Bileşenleri otomatik olarak dahil etme
47
+ const components_dir_list = ['components'];
48
+ const addComponentFromFolder = (folder: string, mode: 'client' | 'server' | 'all') => {
49
+ const path = resolve(__dirname, folder);
50
+ const files = readdirSync(path);
51
+
52
+ files.forEach((file) => {
53
+ const { name } = parse(file);
54
+
55
+ addComponent({
56
+ name: join(name),
57
+ filePath: resolve(path, file),
58
+ mode,
59
+ });
60
+ });
61
+ };
62
+
63
+ components_dir_list.forEach((folder) => {
64
+ addComponentFromFolder(folder, options.client);
65
+ });
66
+
67
+ // Örnek olarak, bir plugin ekleyelim
68
+ addPlugin(resolver.resolve('./plugins/sample-plugin.ts'));
69
+
70
+ /**
71
+ // Örnek olarak, bir page ekleyelim. Ama bunu hooks altına aldım. Orada olmasını tavsiye ediyor dokuman.
72
+ // https://nuxt.com/docs/guide/going-further/modules burada "However, we do not recommend" bunu arat
73
+ nuxt.hook('pages:extend', (pages) => {
74
+ pages.push({
75
+ name: 'icons',
76
+ path: '/icons',
77
+ file: resolver.resolve('./pages/icons.vue'),
78
+ });
79
+ });
80
+ */
81
+
82
+ nuxt.options.css.push(resolver.resolve('./public/isax/style.scss'));
83
+ },
84
+ });
package/package.json CHANGED
@@ -1,19 +1,16 @@
1
1
  {
2
2
  "name": "@timus-networks/theme",
3
- "version": "1.0.184",
4
- "description": "A comprehensive Nuxt.js module providing a tailored theme experience with integrated TailwindCSS support for applications.",
5
- "main": "module.js",
6
- "types": "index.d.ts",
7
- "typings": "./index.d.ts",
8
- "author": "Serkan Konakcı<serkan.konakci@timusnetworks.com>",
9
- "license": "MIT",
3
+ "version": "2.0.0",
4
+ "description": "Nuxt module for Iconsax icons",
5
+ "main": "module.ts",
10
6
  "scripts": {
11
7
  "test": "echo \"Error: no test specified\" && exit 1",
12
- "convert-js": "node convert-js.js",
13
- "convert-sass": "node convert-sass.js",
14
- "fix": "sh -c 'cd $(git rev-parse --show-toplevel) && git diff --name-only --diff-filter=ACMRTUXB HEAD | grep -vE \".css$|.scss$\" | xargs -I {} sh -c \"npx prettier --write \\\"{}\\\" && npx eslint --fix \\\"{}\\\"\"'",
15
- "prepack": "npm run fix",
16
- "pub": "npm run convert-js && npm run convert-sass && npm publish --access public"
8
+ "lint:prettier": "npx prettier --write --list-different \"{**/*.js,**/*.vue,**/*.scss,!(node*)**/*.js}\"",
9
+ "lint:eslint": "eslint --ext \".js,.ts,.vue,.json\" .",
10
+ "lint:stylelint": "stylelint \"**/*.{scss,sass,html,vue}\"",
11
+ "fix": "npm run lint:prettier && npm run lint:eslint -- --fix && npm run lint:stylelint -- --fix",
12
+ "prepack": "npm run fix && node generate-icon.js",
13
+ "pub": "npm publish --access restricted"
17
14
  },
18
15
  "repository": {
19
16
  "type": "git",
@@ -21,19 +18,21 @@
21
18
  },
22
19
  "keywords": [
23
20
  "nuxt",
21
+ "nuxt3",
24
22
  "module",
25
23
  "component",
26
- "vuejs",
27
- "theme",
28
- "tailwind"
24
+ "vue",
25
+ "vue3",
26
+ "icon",
27
+ "iconsax"
29
28
  ],
30
29
  "peerDependencies": {
31
- "vue": "*"
30
+ "vue": "^3.x"
32
31
  },
32
+ "author": "Serkan Konakcı<serkan.konakci@timusnetworks.com>",
33
+ "license": "MIT",
33
34
  "dependencies": {
34
35
  "@nuxtjs/tailwindcss": "*",
35
- "sass": "*",
36
- "sass-loader": "*",
37
36
  "tailwindcss": "*"
38
37
  },
39
38
  "devDependencies": {
@@ -0,0 +1,46 @@
1
+ <template>
2
+ <div class="flex flex-col gap-4">
3
+ <div class="text-gray-800 text-4xl">{{ icons?.length }} icons</div>
4
+ <p class="text-gray-500 !text-lg font-light">Iconsax icons designed to make your website or app attractive, visually consistent and simply beautiful (https://vuesax.com/).</p>
5
+ <timus-icons ref="iconsRef" :icons="icons" />
6
+ </div>
7
+ </template>
8
+
9
+ <script setup>
10
+ definePageMeta({
11
+ layout: 'modules',
12
+ validate: async (route) =>
13
+ // Check if the id is made up of digits
14
+ true || (typeof route.params.id === 'string' && /^\d+$/.test(route.params.id)),
15
+ });
16
+ useHead({
17
+ title: 'Timus Modules Manager',
18
+ meta: [{ name: 'description', content: 'My amazing site.' }],
19
+ bodyAttrs: { class: 'test' },
20
+ script: [{ innerHTML: "console.log('Hello world')" }],
21
+ });
22
+ </script>
23
+
24
+ <script>
25
+ export default {
26
+ data() {
27
+ return {
28
+ icons: [],
29
+ };
30
+ },
31
+ mounted() {
32
+ this.getIcons();
33
+ },
34
+ methods: {
35
+ async getIcons() {
36
+ try {
37
+ const response = await $fetch('/isax/icons.json');
38
+
39
+ this.icons = response.data;
40
+ } catch (error) {
41
+ console.error('Fetch Error:', error);
42
+ }
43
+ },
44
+ },
45
+ };
46
+ </script>
@@ -0,0 +1,5 @@
1
+ import { defineNuxtPlugin } from 'nuxt/app';
2
+
3
+ export default defineNuxtPlugin((nuxtApp) => {
4
+ nuxtApp.provide('sample', () => {console.log('sample plugins');}); // compositionAPI ile kullanmak için ekliyorum
5
+ });