@qwik.dev/devtools 0.0.5 → 0.1.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 (132) hide show
  1. package/dist/plugin/index.cjs +40 -1
  2. package/dist/plugin/index.mjs +40 -1
  3. package/dist/ui/components/DevtoolsButton/DevtoolsButton.qwik.cjs +21 -0
  4. package/dist/ui/components/DevtoolsButton/DevtoolsButton.qwik.mjs +21 -0
  5. package/dist/ui/components/DevtoolsContainer/DevtoolsContainer.qwik.cjs +12 -0
  6. package/dist/ui/components/DevtoolsContainer/DevtoolsContainer.qwik.mjs +12 -0
  7. package/dist/ui/components/DevtoolsPanel/DevtoolsPanel.qwik.cjs +34 -0
  8. package/dist/ui/components/DevtoolsPanel/DevtoolsPanel.qwik.mjs +34 -0
  9. package/dist/ui/components/Tab/Tab.qwik.cjs +17 -0
  10. package/dist/ui/components/Tab/Tab.qwik.mjs +17 -0
  11. package/dist/ui/components/TabContent/TabContent.qwik.cjs +21 -0
  12. package/dist/ui/components/TabContent/TabContent.qwik.mjs +21 -0
  13. package/dist/ui/components/TabTitle/TabTitle.qwik.cjs +11 -0
  14. package/dist/ui/components/TabTitle/TabTitle.qwik.mjs +11 -0
  15. package/dist/ui/devtools.qwik.cjs +209 -0
  16. package/dist/ui/devtools.qwik.mjs +209 -0
  17. package/dist/ui/features/Assets/Assets.qwik.cjs +60 -0
  18. package/dist/ui/features/Assets/Assets.qwik.mjs +60 -0
  19. package/dist/ui/features/Overview/Overview.qwik.cjs +165 -0
  20. package/dist/ui/features/Overview/Overview.qwik.mjs +165 -0
  21. package/dist/ui/features/Packages/Packages.qwik.cjs +95 -0
  22. package/dist/ui/features/Packages/Packages.qwik.mjs +95 -0
  23. package/dist/ui/features/Packages/components/InstallButton/InstallButton.qwik.cjs +36 -0
  24. package/dist/ui/features/Packages/components/InstallButton/InstallButton.qwik.mjs +36 -0
  25. package/dist/ui/features/Routes/Routes.qwik.cjs +65 -0
  26. package/dist/ui/features/Routes/Routes.qwik.mjs +65 -0
  27. package/dist/ui/global.css.qwik.cjs +3 -0
  28. package/dist/ui/global.css.qwik.mjs +4 -0
  29. package/dist/ui/hooks/useDebouncer.qwik.cjs +13 -0
  30. package/dist/ui/hooks/useDebouncer.qwik.mjs +13 -0
  31. package/dist/{component → ui}/lib-types/kit/src/types.d.ts +4 -0
  32. package/dist/ui/lib-types/ui/src/components/DevtoolsButton/DevtoolsButton.d.ts +6 -0
  33. package/dist/ui/lib-types/ui/src/components/DevtoolsContainer/DevtoolsContainer.d.ts +1 -0
  34. package/dist/ui/lib-types/ui/src/components/DevtoolsPanel/DevtoolsPanel.d.ts +6 -0
  35. package/dist/ui/lib-types/ui/src/components/Tab/Tab.d.ts +8 -0
  36. package/dist/ui/lib-types/ui/src/components/TabContent/TabContent.d.ts +1 -0
  37. package/dist/ui/lib-types/ui/src/components/TabTitle/TabTitle.d.ts +5 -0
  38. package/dist/ui/lib-types/ui/src/features/Assets/Assets.d.ts +6 -0
  39. package/dist/ui/lib-types/ui/src/features/Components/Components.d.ts +1 -0
  40. package/dist/ui/lib-types/ui/src/features/Overview/Overview.d.ts +6 -0
  41. package/dist/ui/lib-types/ui/src/features/Packages/Packages.d.ts +1 -0
  42. package/dist/ui/lib-types/ui/src/features/Packages/components/InstallButton/InstallButton.d.ts +6 -0
  43. package/dist/ui/lib-types/ui/src/features/Packages/types.d.ts +5 -0
  44. package/dist/ui/lib-types/ui/src/features/Routes/Routes.d.ts +6 -0
  45. package/dist/ui/lib-types/ui/src/hooks/useDebouncer.d.ts +2 -0
  46. package/dist/ui/lib-types/ui/src/index.d.ts +1 -0
  47. package/dist/ui/lib-types/ui/src/types/state.d.ts +10 -0
  48. package/package.json +13 -14
  49. package/LICENSE +0 -21
  50. package/dist/component/devtools.css.qwik.cjs +0 -3
  51. package/dist/component/devtools.css.qwik.mjs +0 -4
  52. package/dist/component/devtools.qwik.cjs +0 -537
  53. package/dist/component/devtools.qwik.mjs +0 -537
  54. package/dist/component/lib-types/devtools/src/index.d.ts +0 -1
  55. /package/dist/{component → ui}/_virtual/_commonjsHelpers.qwik.cjs +0 -0
  56. /package/dist/{component → ui}/_virtual/_commonjsHelpers.qwik.mjs +0 -0
  57. /package/dist/{component → ui}/index.qwik.cjs +0 -0
  58. /package/dist/{component → ui}/index.qwik.mjs +0 -0
  59. /package/dist/{component → ui}/lib-types/kit/src/client.d.ts +0 -0
  60. /package/dist/{component → ui}/lib-types/kit/src/constants.d.ts +0 -0
  61. /package/dist/{component → ui}/lib-types/kit/src/context.d.ts +0 -0
  62. /package/dist/{component → ui}/lib-types/kit/src/globals.d.ts +0 -0
  63. /package/dist/{component → ui}/lib-types/kit/src/index.d.ts +0 -0
  64. /package/dist/{component → ui}/lib-types/kit/src/server.d.ts +0 -0
  65. /package/dist/{component → ui}/lib-types/kit/src/shared.d.ts +0 -0
  66. /package/dist/{component/lib-types/devtools → ui/lib-types/ui}/src/devtools.d.ts +0 -0
  67. /package/dist/{component/lib-types/devtools → ui/lib-types/ui}/src/entry.dev.d.ts +0 -0
  68. /package/dist/{component/lib-types/devtools → ui/lib-types/ui}/src/entry.ssr.d.ts +0 -0
  69. /package/dist/{component/lib-types/devtools → ui/lib-types/ui}/src/root.d.ts +0 -0
  70. /package/dist/{component/lib-types/devtools → ui/lib-types/ui}/src/utils/location.d.ts +0 -0
  71. /package/dist/{component → ui}/node_modules/.pnpm/@qwikest_icons@0.0.13_@builder.io_qwik@1.11.0_vite@5.4.10_@types_node@20.14.11__/node_modules/@qwikest/icons/lib/hi.qwik.qwik.cjs +0 -0
  72. /package/dist/{component → ui}/node_modules/.pnpm/@qwikest_icons@0.0.13_@builder.io_qwik@1.11.0_vite@5.4.10_@types_node@20.14.11__/node_modules/@qwikest/icons/lib/hi.qwik.qwik.mjs +0 -0
  73. /package/dist/{component → ui}/node_modules/.pnpm/@qwikest_icons@0.0.13_@builder.io_qwik@1.11.0_vite@5.4.10_@types_node@20.14.11__/node_modules/@qwikest/icons/lib/lu.qwik.qwik.cjs +0 -0
  74. /package/dist/{component → ui}/node_modules/.pnpm/@qwikest_icons@0.0.13_@builder.io_qwik@1.11.0_vite@5.4.10_@types_node@20.14.11__/node_modules/@qwikest/icons/lib/lu.qwik.qwik.mjs +0 -0
  75. /package/dist/{component → ui}/node_modules/.pnpm/balanced-match@1.0.2/node_modules/balanced-match/index.qwik.cjs +0 -0
  76. /package/dist/{component → ui}/node_modules/.pnpm/balanced-match@1.0.2/node_modules/balanced-match/index.qwik.mjs +0 -0
  77. /package/dist/{component → ui}/node_modules/.pnpm/birpc@0.2.19/node_modules/birpc/dist/index.qwik.cjs +0 -0
  78. /package/dist/{component → ui}/node_modules/.pnpm/birpc@0.2.19/node_modules/birpc/dist/index.qwik.mjs +0 -0
  79. /package/dist/{component → ui}/node_modules/.pnpm/brace-expansion@2.0.1/node_modules/brace-expansion/index.qwik.cjs +0 -0
  80. /package/dist/{component → ui}/node_modules/.pnpm/brace-expansion@2.0.1/node_modules/brace-expansion/index.qwik.mjs +0 -0
  81. /package/dist/{component → ui}/node_modules/.pnpm/copy-anything@3.0.5/node_modules/copy-anything/dist/index.qwik.cjs +0 -0
  82. /package/dist/{component → ui}/node_modules/.pnpm/copy-anything@3.0.5/node_modules/copy-anything/dist/index.qwik.mjs +0 -0
  83. /package/dist/{component → ui}/node_modules/.pnpm/dree@5.1.5/node_modules/dree/bundled/lib/esm/index.esm.qwik.cjs +0 -0
  84. /package/dist/{component → ui}/node_modules/.pnpm/dree@5.1.5/node_modules/dree/bundled/lib/esm/index.esm.qwik.mjs +0 -0
  85. /package/dist/{component → ui}/node_modules/.pnpm/is-what@4.1.16/node_modules/is-what/dist/index.qwik.cjs +0 -0
  86. /package/dist/{component → ui}/node_modules/.pnpm/is-what@4.1.16/node_modules/is-what/dist/index.qwik.mjs +0 -0
  87. /package/dist/{component → ui}/node_modules/.pnpm/minimatch@10.0.1/node_modules/minimatch/dist/esm/assert-valid-pattern.qwik.cjs +0 -0
  88. /package/dist/{component → ui}/node_modules/.pnpm/minimatch@10.0.1/node_modules/minimatch/dist/esm/assert-valid-pattern.qwik.mjs +0 -0
  89. /package/dist/{component → ui}/node_modules/.pnpm/minimatch@10.0.1/node_modules/minimatch/dist/esm/ast.qwik.cjs +0 -0
  90. /package/dist/{component → ui}/node_modules/.pnpm/minimatch@10.0.1/node_modules/minimatch/dist/esm/ast.qwik.mjs +0 -0
  91. /package/dist/{component → ui}/node_modules/.pnpm/minimatch@10.0.1/node_modules/minimatch/dist/esm/brace-expressions.qwik.cjs +0 -0
  92. /package/dist/{component → ui}/node_modules/.pnpm/minimatch@10.0.1/node_modules/minimatch/dist/esm/brace-expressions.qwik.mjs +0 -0
  93. /package/dist/{component → ui}/node_modules/.pnpm/minimatch@10.0.1/node_modules/minimatch/dist/esm/escape.qwik.cjs +0 -0
  94. /package/dist/{component → ui}/node_modules/.pnpm/minimatch@10.0.1/node_modules/minimatch/dist/esm/escape.qwik.mjs +0 -0
  95. /package/dist/{component → ui}/node_modules/.pnpm/minimatch@10.0.1/node_modules/minimatch/dist/esm/index.qwik.cjs +0 -0
  96. /package/dist/{component → ui}/node_modules/.pnpm/minimatch@10.0.1/node_modules/minimatch/dist/esm/index.qwik.mjs +0 -0
  97. /package/dist/{component → ui}/node_modules/.pnpm/minimatch@10.0.1/node_modules/minimatch/dist/esm/unescape.qwik.cjs +0 -0
  98. /package/dist/{component → ui}/node_modules/.pnpm/minimatch@10.0.1/node_modules/minimatch/dist/esm/unescape.qwik.mjs +0 -0
  99. /package/dist/{component → ui}/node_modules/.pnpm/superjson@2.2.2/node_modules/superjson/dist/accessDeep.qwik.cjs +0 -0
  100. /package/dist/{component → ui}/node_modules/.pnpm/superjson@2.2.2/node_modules/superjson/dist/accessDeep.qwik.mjs +0 -0
  101. /package/dist/{component → ui}/node_modules/.pnpm/superjson@2.2.2/node_modules/superjson/dist/class-registry.qwik.cjs +0 -0
  102. /package/dist/{component → ui}/node_modules/.pnpm/superjson@2.2.2/node_modules/superjson/dist/class-registry.qwik.mjs +0 -0
  103. /package/dist/{component → ui}/node_modules/.pnpm/superjson@2.2.2/node_modules/superjson/dist/custom-transformer-registry.qwik.cjs +0 -0
  104. /package/dist/{component → ui}/node_modules/.pnpm/superjson@2.2.2/node_modules/superjson/dist/custom-transformer-registry.qwik.mjs +0 -0
  105. /package/dist/{component → ui}/node_modules/.pnpm/superjson@2.2.2/node_modules/superjson/dist/double-indexed-kv.qwik.cjs +0 -0
  106. /package/dist/{component → ui}/node_modules/.pnpm/superjson@2.2.2/node_modules/superjson/dist/double-indexed-kv.qwik.mjs +0 -0
  107. /package/dist/{component → ui}/node_modules/.pnpm/superjson@2.2.2/node_modules/superjson/dist/index.qwik.cjs +0 -0
  108. /package/dist/{component → ui}/node_modules/.pnpm/superjson@2.2.2/node_modules/superjson/dist/index.qwik.mjs +0 -0
  109. /package/dist/{component → ui}/node_modules/.pnpm/superjson@2.2.2/node_modules/superjson/dist/is.qwik.cjs +0 -0
  110. /package/dist/{component → ui}/node_modules/.pnpm/superjson@2.2.2/node_modules/superjson/dist/is.qwik.mjs +0 -0
  111. /package/dist/{component → ui}/node_modules/.pnpm/superjson@2.2.2/node_modules/superjson/dist/pathstringifier.qwik.cjs +0 -0
  112. /package/dist/{component → ui}/node_modules/.pnpm/superjson@2.2.2/node_modules/superjson/dist/pathstringifier.qwik.mjs +0 -0
  113. /package/dist/{component → ui}/node_modules/.pnpm/superjson@2.2.2/node_modules/superjson/dist/plainer.qwik.cjs +0 -0
  114. /package/dist/{component → ui}/node_modules/.pnpm/superjson@2.2.2/node_modules/superjson/dist/plainer.qwik.mjs +0 -0
  115. /package/dist/{component → ui}/node_modules/.pnpm/superjson@2.2.2/node_modules/superjson/dist/registry.qwik.cjs +0 -0
  116. /package/dist/{component → ui}/node_modules/.pnpm/superjson@2.2.2/node_modules/superjson/dist/registry.qwik.mjs +0 -0
  117. /package/dist/{component → ui}/node_modules/.pnpm/superjson@2.2.2/node_modules/superjson/dist/transformer.qwik.cjs +0 -0
  118. /package/dist/{component → ui}/node_modules/.pnpm/superjson@2.2.2/node_modules/superjson/dist/transformer.qwik.mjs +0 -0
  119. /package/dist/{component → ui}/node_modules/.pnpm/superjson@2.2.2/node_modules/superjson/dist/util.qwik.cjs +0 -0
  120. /package/dist/{component → ui}/node_modules/.pnpm/superjson@2.2.2/node_modules/superjson/dist/util.qwik.mjs +0 -0
  121. /package/dist/{component → ui}/node_modules/.pnpm/vite-hot-client@0.2.4_vite@5.4.10_@types_node@20.14.11_/node_modules/vite-hot-client/dist/index.qwik.cjs +0 -0
  122. /package/dist/{component → ui}/node_modules/.pnpm/vite-hot-client@0.2.4_vite@5.4.10_@types_node@20.14.11_/node_modules/vite-hot-client/dist/index.qwik.mjs +0 -0
  123. /package/dist/{component → ui}/packages/kit/src/client.qwik.cjs +0 -0
  124. /package/dist/{component → ui}/packages/kit/src/client.qwik.mjs +0 -0
  125. /package/dist/{component → ui}/packages/kit/src/constants.qwik.cjs +0 -0
  126. /package/dist/{component → ui}/packages/kit/src/constants.qwik.mjs +0 -0
  127. /package/dist/{component → ui}/packages/kit/src/context.qwik.cjs +0 -0
  128. /package/dist/{component → ui}/packages/kit/src/context.qwik.mjs +0 -0
  129. /package/dist/{component → ui}/packages/kit/src/globals.qwik.cjs +0 -0
  130. /package/dist/{component → ui}/packages/kit/src/globals.qwik.mjs +0 -0
  131. /package/dist/{component → ui}/packages/kit/src/shared.qwik.cjs +0 -0
  132. /package/dist/{component → ui}/packages/kit/src/shared.qwik.mjs +0 -0
@@ -0,0 +1,2 @@
1
+ import { QRL } from "@qwik.dev/core";
2
+ export declare const useDebouncer: <A extends readonly unknown[], R>(fn: QRL<(...args: [...A]) => R>, delay: number) => QRL<(...args: A) => void>;
@@ -0,0 +1 @@
1
+ export { QwikDevtools } from "./devtools";
@@ -0,0 +1,10 @@
1
+ import { AssetInfo, NpmInfo, RoutesInfo } from "@devtools/kit";
2
+ import { NoSerialize } from "@qwik.dev/core";
3
+ export type TabName = "overview" | "packages" | "routes" | "state" | "assets";
4
+ export interface State {
5
+ isOpen: boolean;
6
+ activeTab: TabName;
7
+ npmPackages: NpmInfo;
8
+ assets: AssetInfo[];
9
+ routes: NoSerialize<RoutesInfo[]>;
10
+ }
package/package.json CHANGED
@@ -1,28 +1,25 @@
1
1
  {
2
2
  "name": "@qwik.dev/devtools",
3
- "version": "0.0.5",
3
+ "version": "0.1.0",
4
4
  "license": "MIT",
5
5
  "main": "./dist/plugin/index.mjs",
6
6
  "description": "Qwik devtools package",
7
- "qwik": "./dist/component/index.qwik.mjs",
7
+ "qwik": "./dist/ui/index.qwik.mjs",
8
8
  "exports": {
9
9
  ".": {
10
10
  "import": "./dist/plugin/index.mjs",
11
11
  "types": "./dist/plugin/index.d.ts"
12
12
  },
13
- "./component": {
14
- "import": "./dist/component/index.qwik.mjs",
15
- "require": "./dist/component/index.qwik.cjs",
16
- "types": "./dist/component/lib-types/index.d.ts"
13
+ "./ui": {
14
+ "import": "./dist/ui/index.qwik.mjs",
15
+ "require": "./dist/ui/index.qwik.cjs",
16
+ "types": "./dist/ui/lib-types/index.d.ts"
17
17
  }
18
18
  },
19
19
  "files": [
20
- "dist/**"
20
+ "dist/**",
21
+ "README.md"
21
22
  ],
22
- "scripts": {
23
- "playground": "pnpm --filter playground dev",
24
- "build": "tsx scripts/build-devtools.ts"
25
- },
26
23
  "peerDependencies": {
27
24
  "vite": "^6.0.7",
28
25
  "@qwik.dev/core": "^2.0.0-alpha.4",
@@ -37,7 +34,10 @@
37
34
  },
38
35
  "devDependencies": {
39
36
  "tsx": "^4.19.2",
40
- "@types/node": "^22.10.5"
37
+ "@types/node": "^22.10.5",
38
+ "@changesets/cli": "^2.27.11",
39
+ "@changesets/get-github-info": "^0.6.0",
40
+ "@changesets/types": "^6.0.0"
41
41
  },
42
42
  "private": false,
43
43
  "keywords": [
@@ -52,6 +52,5 @@
52
52
  "bugs": {
53
53
  "url": "https://github.com/QwikDev/devtools/issues"
54
54
  },
55
- "homepage": "https://github.com/QwikDev/devtools#readme",
56
- "packageManager": "pnpm@9.15.3+sha512.1f79bc245a66eb0b07c5d4d83131240774642caaa86ef7d0434ab47c0d16f66b04e21e0c086eb61e62c77efc4d7f7ec071afad3796af64892fae66509173893a"
55
+ "homepage": "https://github.com/QwikDev/devtools#readme"
57
56
  }
package/LICENSE DELETED
@@ -1,21 +0,0 @@
1
- MIT License
2
-
3
- Copyright (c) 2023 qwikdev
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in all
13
- copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
- SOFTWARE.
@@ -1,3 +0,0 @@
1
- "use strict";
2
- const styles = ".devtools-container {\n position: fixed;\n bottom: 0;\n right: 0;\n z-index: 9999;\n font-family:\n system-ui,\n -apple-system,\n sans-serif;\n}\n\n.devtools-toggle {\n position: fixed;\n bottom: 16px;\n right: 16px;\n width: 36px;\n height: 36px;\n background: #18181b;\n border: 1px solid rgba(255, 255, 255, 0.1);\n border-radius: 8px;\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n box-shadow:\n 0 4px 12px rgba(0, 0, 0, 0.15),\n inset 0 1px 1px rgba(255, 255, 255, 0.1);\n transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n transform-origin: center;\n overflow: hidden;\n backdrop-filter: blur(8px);\n animation: glow 2s ease-in-out infinite;\n}\n\n@keyframes glow {\n 0% {\n box-shadow:\n 0 4px 12px rgba(0, 0, 0, 0.15),\n inset 0 1px 1px rgba(255, 255, 255, 0.1);\n }\n 50% {\n box-shadow:\n 0 4px 12px rgba(0, 220, 130, 0.35),\n inset 0 1px 1px rgba(255, 255, 255, 0.1),\n 0 0 25px rgba(0, 220, 130, 0.25);\n border-color: rgba(0, 220, 130, 0.5);\n }\n 100% {\n box-shadow:\n 0 4px 12px rgba(0, 0, 0, 0.15),\n inset 0 1px 1px rgba(255, 255, 255, 0.1);\n }\n}\n\n.devtools-toggle:hover {\n transform: scale(1.05);\n box-shadow:\n 0 6px 16px rgba(0, 220, 130, 0.4),\n inset 0 1px 1px rgba(255, 255, 255, 0.15),\n 0 0 30px rgba(0, 220, 130, 0.3);\n border-color: rgba(0, 220, 130, 0.6);\n background: #1c1c1f;\n animation: none;\n}\n\n.devtools-toggle:active {\n transform: scale(0.98);\n box-shadow:\n 0 2px 8px rgba(0, 0, 0, 0.15),\n inset 0 1px 1px rgba(255, 255, 255, 0.1);\n animation: none;\n}\n\n.devtools-toggle.is-open {\n transform: rotate(90deg);\n background: #1c1c1f;\n animation: none;\n border-color: rgba(0, 220, 130, 0.5);\n box-shadow:\n 0 4px 12px rgba(0, 220, 130, 0.35),\n inset 0 1px 1px rgba(255, 255, 255, 0.1),\n 0 0 25px rgba(0, 220, 130, 0.25);\n}\n\n.devtools-toggle.is-open:hover {\n transform: rotate(90deg) scale(1.05);\n box-shadow:\n 0 6px 16px rgba(0, 220, 130, 0.4),\n inset 0 1px 1px rgba(255, 255, 255, 0.15),\n 0 0 30px rgba(0, 220, 130, 0.3);\n}\n\n.devtools-panel {\n position: fixed;\n bottom: 0;\n right: 0;\n width: 100%;\n height: 50vh;\n background: #18181b;\n border-top: 1px solid rgba(255, 255, 255, 0.1);\n color: #fff;\n box-shadow: 0 -4px 16px rgba(0, 0, 0, 0.15);\n display: flex;\n transform: translateY(100%);\n transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n backdrop-filter: blur(16px);\n}\n\n.devtools-open .devtools-panel {\n transform: translateY(0);\n}\n\n@media (min-width: 640px) {\n .devtools-panel {\n width: 60%;\n right: 0;\n }\n}\n\n.devtools-header {\n padding: 12px;\n border-bottom: 1px solid #27272a;\n}\n\n.devtools-tabs {\n display: flex;\n flex-direction: column;\n gap: 8px;\n padding: 12px;\n border-right: 1px solid #27272a;\n background: #1c1c1f;\n}\n\n.devtools-tabs button {\n padding: 4px;\n background: transparent;\n border: none;\n color: #a1a1aa;\n cursor: pointer;\n border-radius: 6px;\n transition: all 0.2s ease;\n display: flex;\n align-items: center;\n justify-content: center;\n width: 36px;\n height: 36px;\n}\n\n.devtools-tabs button:hover {\n background: #27272a;\n color: #fff;\n}\n\n.devtools-tabs button.tab-active {\n background: #3b82f6;\n color: white;\n}\n\n.devtools-content {\n padding: 16px;\n height: 100%;\n overflow-y: auto;\n flex: 1;\n}\n\n.tab-content h3 {\n margin: 0 0 16px 0;\n font-size: 18px;\n font-weight: 600;\n}\n\n.info-grid {\n display: grid;\n grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));\n gap: 16px;\n}\n\n.info-item {\n background: #27272a;\n padding: 12px;\n border-radius: 8px;\n}\n\n.info-label {\n display: block;\n color: #a1a1aa;\n font-size: 12px;\n margin-bottom: 4px;\n}\n\n.info-value {\n font-size: 14px;\n font-weight: 500;\n}\n\n/* Asset specific styles */\n.assets-grid {\n display: grid;\n grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));\n gap: 1.25rem;\n margin-top: 1.5rem;\n padding: 0.5rem;\n}\n\n.asset-card {\n background: rgba(255, 255, 255, 0.03);\n border: 1px solid rgba(255, 255, 255, 0.08);\n border-radius: 8px;\n overflow: hidden;\n transition: all 0.2s ease;\n box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);\n}\n\n.asset-card:hover {\n transform: translateY(-2px);\n box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);\n border-color: rgba(255, 255, 255, 0.15);\n}\n\n.asset-preview {\n height: 120px;\n background: rgba(0, 0, 0, 0.3);\n display: flex;\n align-items: center;\n justify-content: center;\n overflow: hidden;\n border-bottom: 1px solid rgba(255, 255, 255, 0.08);\n}\n\n.asset-preview img {\n width: 70%;\n height: 70%;\n object-fit: contain;\n padding: 0.5rem;\n}\n\n.file-preview {\n height: 120px;\n background: rgba(0, 0, 0, 0.2);\n display: flex;\n align-items: center;\n justify-content: center;\n border-bottom: 1px solid rgba(255, 255, 255, 0.08);\n}\n\n.file-ext {\n font-size: 1.5rem;\n font-weight: 600;\n color: rgba(255, 255, 255, 0.7);\n text-transform: uppercase;\n text-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);\n}\n\n.asset-info {\n padding: 0.75rem;\n background: rgba(0, 0, 0, 0.2);\n}\n\n.asset-path {\n color: #fff;\n font-size: 0.875rem;\n font-weight: 500;\n margin-bottom: 0.5rem;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.asset-meta {\n display: flex;\n justify-content: space-between;\n align-items: center;\n gap: 0.5rem;\n}\n\n.asset-size {\n color: #94a3b8;\n font-size: 0.75rem;\n}\n\n.asset-type {\n color: #94a3b8;\n font-size: 0.75rem;\n padding: 0.25rem 0.5rem;\n background: rgba(255, 255, 255, 0.1);\n border-radius: 4px;\n letter-spacing: 0.025em;\n}\n\n.tab-content.overview {\n padding: 1.5rem;\n}\n\n.metrics-grid {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));\n gap: 1.25rem;\n margin-bottom: 2rem;\n}\n\n.metric-card {\n background: rgba(255, 255, 255, 0.03);\n border: 1px solid rgba(255, 255, 255, 0.1);\n border-radius: 12px;\n padding: 1.25rem;\n display: flex;\n align-items: center;\n gap: 1.25rem;\n transition: all 0.2s ease;\n}\n\n.metric-card:hover {\n background: rgba(255, 255, 255, 0.05);\n transform: translateY(-1px);\n}\n\n.metric-icon {\n background: rgba(255, 255, 255, 0.05);\n border: 1px solid rgba(255, 255, 255, 0.1);\n border-radius: 10px;\n padding: 0.875rem;\n display: flex;\n align-items: center;\n justify-content: center;\n transition: all 0.2s ease;\n}\n\n.metric-card:hover .metric-icon {\n background: rgba(255, 255, 255, 0.08);\n}\n\n.icon {\n width: 1.5rem;\n height: 1.5rem;\n color: #10b981;\n}\n\n.metric-content {\n display: flex;\n flex-direction: column;\n gap: 0.25rem;\n}\n\n.metric-value {\n font-size: 1.75rem;\n font-weight: 600;\n color: #fff;\n line-height: 1.2;\n}\n\n.metric-label {\n color: #94a3b8;\n font-size: 0.875rem;\n font-weight: 500;\n letter-spacing: 0.01em;\n}\n\n.performance-section {\n background: rgba(255, 255, 255, 0.03);\n border: 1px solid rgba(255, 255, 255, 0.1);\n border-radius: 12px;\n padding: 1.25rem;\n}\n\n.performance-section h3 {\n margin: 0 0 1.25rem 0;\n font-size: 1rem;\n font-weight: 600;\n color: #fff;\n letter-spacing: 0.01em;\n}\n\n.performance-metrics {\n display: flex;\n flex-direction: column;\n gap: 0.75rem;\n}\n\n.perf-item {\n display: flex;\n justify-content: space-between;\n color: #94a3b8;\n font-size: 0.875rem;\n padding: 0.5rem 0;\n border-bottom: 1px solid rgba(255, 255, 255, 0.1);\n}\n\n.perf-item:last-child {\n border-bottom: none;\n}\n\n.perf-value {\n color: #fff;\n font-weight: 500;\n}\n\n.header-section {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin-bottom: 2rem;\n padding-bottom: 1.5rem;\n border-bottom: 1px solid rgba(255, 255, 255, 0.1);\n}\n\n.title-container {\n display: flex;\n align-items: center;\n gap: 0.75rem;\n}\n\n.qwik-logo {\n width: 2rem;\n height: 2rem;\n}\n\n.title-container h1 {\n font-size: 1.5rem;\n font-weight: 600;\n color: #fff;\n margin: 0;\n}\n\n.version {\n font-size: 0.875rem;\n color: #94a3b8;\n font-weight: 500;\n padding: 0.25rem 0.75rem;\n background: rgba(255, 255, 255, 0.05);\n border-radius: 9999px;\n border: 1px solid rgba(255, 255, 255, 0.1);\n}\n\n.packages-section {\n background: rgba(255, 255, 255, 0.03);\n border: 1px solid rgba(255, 255, 255, 0.1);\n border-radius: 12px;\n padding: 1.25rem;\n margin-bottom: 1.25rem;\n}\n\n.packages-section h3 {\n margin: 0 0 1.25rem 0;\n font-size: 1rem;\n font-weight: 600;\n color: #fff;\n letter-spacing: 0.01em;\n}\n\n.packages-grid {\n display: grid;\n grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));\n gap: 0.75rem;\n}\n\n.package-item {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 0.75rem 1rem;\n background: rgba(255, 255, 255, 0.05);\n border-radius: 8px;\n transition: all 0.2s ease;\n}\n\n.package-item:hover {\n background: rgba(255, 255, 255, 0.08);\n}\n\n.package-name {\n color: #fff;\n font-size: 0.875rem;\n font-weight: 500;\n}\n\n.package-version {\n color: #94a3b8;\n font-size: 0.75rem;\n font-weight: 500;\n padding: 0.25rem 0.5rem;\n background: rgba(255, 255, 255, 0.05);\n border-radius: 9999px;\n border: 1px solid rgba(255, 255, 255, 0.1);\n}\n\n.tab-content.assets {\n padding: 1.5rem;\n}\n\n.assets-stats {\n display: flex;\n gap: 1rem;\n}\n\n.stat-item {\n color: #94a3b8;\n font-size: 0.875rem;\n padding: 0.25rem 0.75rem;\n background: rgba(255, 255, 255, 0.05);\n border-radius: 9999px;\n border: 1px solid rgba(255, 255, 255, 0.1);\n}\n\n.routes-table {\n background: #18181b;\n border-radius: 8px;\n overflow: hidden;\n}\n\n.table-header {\n display: grid;\n grid-template-columns: 2fr 1fr 1fr 1fr;\n padding: 12px 16px;\n background: #27272a;\n font-weight: 500;\n border-bottom: 1px solid #3f3f46;\n}\n\n.table-row {\n display: grid;\n grid-template-columns: 2fr 1fr 1fr 1fr;\n padding: 12px 16px;\n border-bottom: 1px solid #27272a;\n align-items: center;\n}\n\n.table-row:hover {\n background: #27272a;\n}\n\n.active-route {\n background: #22c55e20;\n color: #22c55e;\n padding: 4px 8px;\n border-radius: 4px;\n}\n\n.col-route {\n font-family: monospace;\n}\n\n.custom-layout {\n color: #3b82f6;\n}\n\n.toggle-icon {\n width: 20px;\n height: 20px;\n transition: all 0.3s ease;\n filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.2));\n opacity: 0.9;\n}\n\n.devtools-toggle:hover .toggle-icon {\n transform: scale(1.1);\n filter: drop-shadow(0 3px 6px rgba(0, 0, 0, 0.3));\n opacity: 1;\n}\n";
3
- module.exports = styles;
@@ -1,4 +0,0 @@
1
- const styles = ".devtools-container {\n position: fixed;\n bottom: 0;\n right: 0;\n z-index: 9999;\n font-family:\n system-ui,\n -apple-system,\n sans-serif;\n}\n\n.devtools-toggle {\n position: fixed;\n bottom: 16px;\n right: 16px;\n width: 36px;\n height: 36px;\n background: #18181b;\n border: 1px solid rgba(255, 255, 255, 0.1);\n border-radius: 8px;\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n box-shadow:\n 0 4px 12px rgba(0, 0, 0, 0.15),\n inset 0 1px 1px rgba(255, 255, 255, 0.1);\n transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n transform-origin: center;\n overflow: hidden;\n backdrop-filter: blur(8px);\n animation: glow 2s ease-in-out infinite;\n}\n\n@keyframes glow {\n 0% {\n box-shadow:\n 0 4px 12px rgba(0, 0, 0, 0.15),\n inset 0 1px 1px rgba(255, 255, 255, 0.1);\n }\n 50% {\n box-shadow:\n 0 4px 12px rgba(0, 220, 130, 0.35),\n inset 0 1px 1px rgba(255, 255, 255, 0.1),\n 0 0 25px rgba(0, 220, 130, 0.25);\n border-color: rgba(0, 220, 130, 0.5);\n }\n 100% {\n box-shadow:\n 0 4px 12px rgba(0, 0, 0, 0.15),\n inset 0 1px 1px rgba(255, 255, 255, 0.1);\n }\n}\n\n.devtools-toggle:hover {\n transform: scale(1.05);\n box-shadow:\n 0 6px 16px rgba(0, 220, 130, 0.4),\n inset 0 1px 1px rgba(255, 255, 255, 0.15),\n 0 0 30px rgba(0, 220, 130, 0.3);\n border-color: rgba(0, 220, 130, 0.6);\n background: #1c1c1f;\n animation: none;\n}\n\n.devtools-toggle:active {\n transform: scale(0.98);\n box-shadow:\n 0 2px 8px rgba(0, 0, 0, 0.15),\n inset 0 1px 1px rgba(255, 255, 255, 0.1);\n animation: none;\n}\n\n.devtools-toggle.is-open {\n transform: rotate(90deg);\n background: #1c1c1f;\n animation: none;\n border-color: rgba(0, 220, 130, 0.5);\n box-shadow:\n 0 4px 12px rgba(0, 220, 130, 0.35),\n inset 0 1px 1px rgba(255, 255, 255, 0.1),\n 0 0 25px rgba(0, 220, 130, 0.25);\n}\n\n.devtools-toggle.is-open:hover {\n transform: rotate(90deg) scale(1.05);\n box-shadow:\n 0 6px 16px rgba(0, 220, 130, 0.4),\n inset 0 1px 1px rgba(255, 255, 255, 0.15),\n 0 0 30px rgba(0, 220, 130, 0.3);\n}\n\n.devtools-panel {\n position: fixed;\n bottom: 0;\n right: 0;\n width: 100%;\n height: 50vh;\n background: #18181b;\n border-top: 1px solid rgba(255, 255, 255, 0.1);\n color: #fff;\n box-shadow: 0 -4px 16px rgba(0, 0, 0, 0.15);\n display: flex;\n transform: translateY(100%);\n transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n backdrop-filter: blur(16px);\n}\n\n.devtools-open .devtools-panel {\n transform: translateY(0);\n}\n\n@media (min-width: 640px) {\n .devtools-panel {\n width: 60%;\n right: 0;\n }\n}\n\n.devtools-header {\n padding: 12px;\n border-bottom: 1px solid #27272a;\n}\n\n.devtools-tabs {\n display: flex;\n flex-direction: column;\n gap: 8px;\n padding: 12px;\n border-right: 1px solid #27272a;\n background: #1c1c1f;\n}\n\n.devtools-tabs button {\n padding: 4px;\n background: transparent;\n border: none;\n color: #a1a1aa;\n cursor: pointer;\n border-radius: 6px;\n transition: all 0.2s ease;\n display: flex;\n align-items: center;\n justify-content: center;\n width: 36px;\n height: 36px;\n}\n\n.devtools-tabs button:hover {\n background: #27272a;\n color: #fff;\n}\n\n.devtools-tabs button.tab-active {\n background: #3b82f6;\n color: white;\n}\n\n.devtools-content {\n padding: 16px;\n height: 100%;\n overflow-y: auto;\n flex: 1;\n}\n\n.tab-content h3 {\n margin: 0 0 16px 0;\n font-size: 18px;\n font-weight: 600;\n}\n\n.info-grid {\n display: grid;\n grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));\n gap: 16px;\n}\n\n.info-item {\n background: #27272a;\n padding: 12px;\n border-radius: 8px;\n}\n\n.info-label {\n display: block;\n color: #a1a1aa;\n font-size: 12px;\n margin-bottom: 4px;\n}\n\n.info-value {\n font-size: 14px;\n font-weight: 500;\n}\n\n/* Asset specific styles */\n.assets-grid {\n display: grid;\n grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));\n gap: 1.25rem;\n margin-top: 1.5rem;\n padding: 0.5rem;\n}\n\n.asset-card {\n background: rgba(255, 255, 255, 0.03);\n border: 1px solid rgba(255, 255, 255, 0.08);\n border-radius: 8px;\n overflow: hidden;\n transition: all 0.2s ease;\n box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);\n}\n\n.asset-card:hover {\n transform: translateY(-2px);\n box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);\n border-color: rgba(255, 255, 255, 0.15);\n}\n\n.asset-preview {\n height: 120px;\n background: rgba(0, 0, 0, 0.3);\n display: flex;\n align-items: center;\n justify-content: center;\n overflow: hidden;\n border-bottom: 1px solid rgba(255, 255, 255, 0.08);\n}\n\n.asset-preview img {\n width: 70%;\n height: 70%;\n object-fit: contain;\n padding: 0.5rem;\n}\n\n.file-preview {\n height: 120px;\n background: rgba(0, 0, 0, 0.2);\n display: flex;\n align-items: center;\n justify-content: center;\n border-bottom: 1px solid rgba(255, 255, 255, 0.08);\n}\n\n.file-ext {\n font-size: 1.5rem;\n font-weight: 600;\n color: rgba(255, 255, 255, 0.7);\n text-transform: uppercase;\n text-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);\n}\n\n.asset-info {\n padding: 0.75rem;\n background: rgba(0, 0, 0, 0.2);\n}\n\n.asset-path {\n color: #fff;\n font-size: 0.875rem;\n font-weight: 500;\n margin-bottom: 0.5rem;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.asset-meta {\n display: flex;\n justify-content: space-between;\n align-items: center;\n gap: 0.5rem;\n}\n\n.asset-size {\n color: #94a3b8;\n font-size: 0.75rem;\n}\n\n.asset-type {\n color: #94a3b8;\n font-size: 0.75rem;\n padding: 0.25rem 0.5rem;\n background: rgba(255, 255, 255, 0.1);\n border-radius: 4px;\n letter-spacing: 0.025em;\n}\n\n.tab-content.overview {\n padding: 1.5rem;\n}\n\n.metrics-grid {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));\n gap: 1.25rem;\n margin-bottom: 2rem;\n}\n\n.metric-card {\n background: rgba(255, 255, 255, 0.03);\n border: 1px solid rgba(255, 255, 255, 0.1);\n border-radius: 12px;\n padding: 1.25rem;\n display: flex;\n align-items: center;\n gap: 1.25rem;\n transition: all 0.2s ease;\n}\n\n.metric-card:hover {\n background: rgba(255, 255, 255, 0.05);\n transform: translateY(-1px);\n}\n\n.metric-icon {\n background: rgba(255, 255, 255, 0.05);\n border: 1px solid rgba(255, 255, 255, 0.1);\n border-radius: 10px;\n padding: 0.875rem;\n display: flex;\n align-items: center;\n justify-content: center;\n transition: all 0.2s ease;\n}\n\n.metric-card:hover .metric-icon {\n background: rgba(255, 255, 255, 0.08);\n}\n\n.icon {\n width: 1.5rem;\n height: 1.5rem;\n color: #10b981;\n}\n\n.metric-content {\n display: flex;\n flex-direction: column;\n gap: 0.25rem;\n}\n\n.metric-value {\n font-size: 1.75rem;\n font-weight: 600;\n color: #fff;\n line-height: 1.2;\n}\n\n.metric-label {\n color: #94a3b8;\n font-size: 0.875rem;\n font-weight: 500;\n letter-spacing: 0.01em;\n}\n\n.performance-section {\n background: rgba(255, 255, 255, 0.03);\n border: 1px solid rgba(255, 255, 255, 0.1);\n border-radius: 12px;\n padding: 1.25rem;\n}\n\n.performance-section h3 {\n margin: 0 0 1.25rem 0;\n font-size: 1rem;\n font-weight: 600;\n color: #fff;\n letter-spacing: 0.01em;\n}\n\n.performance-metrics {\n display: flex;\n flex-direction: column;\n gap: 0.75rem;\n}\n\n.perf-item {\n display: flex;\n justify-content: space-between;\n color: #94a3b8;\n font-size: 0.875rem;\n padding: 0.5rem 0;\n border-bottom: 1px solid rgba(255, 255, 255, 0.1);\n}\n\n.perf-item:last-child {\n border-bottom: none;\n}\n\n.perf-value {\n color: #fff;\n font-weight: 500;\n}\n\n.header-section {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin-bottom: 2rem;\n padding-bottom: 1.5rem;\n border-bottom: 1px solid rgba(255, 255, 255, 0.1);\n}\n\n.title-container {\n display: flex;\n align-items: center;\n gap: 0.75rem;\n}\n\n.qwik-logo {\n width: 2rem;\n height: 2rem;\n}\n\n.title-container h1 {\n font-size: 1.5rem;\n font-weight: 600;\n color: #fff;\n margin: 0;\n}\n\n.version {\n font-size: 0.875rem;\n color: #94a3b8;\n font-weight: 500;\n padding: 0.25rem 0.75rem;\n background: rgba(255, 255, 255, 0.05);\n border-radius: 9999px;\n border: 1px solid rgba(255, 255, 255, 0.1);\n}\n\n.packages-section {\n background: rgba(255, 255, 255, 0.03);\n border: 1px solid rgba(255, 255, 255, 0.1);\n border-radius: 12px;\n padding: 1.25rem;\n margin-bottom: 1.25rem;\n}\n\n.packages-section h3 {\n margin: 0 0 1.25rem 0;\n font-size: 1rem;\n font-weight: 600;\n color: #fff;\n letter-spacing: 0.01em;\n}\n\n.packages-grid {\n display: grid;\n grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));\n gap: 0.75rem;\n}\n\n.package-item {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 0.75rem 1rem;\n background: rgba(255, 255, 255, 0.05);\n border-radius: 8px;\n transition: all 0.2s ease;\n}\n\n.package-item:hover {\n background: rgba(255, 255, 255, 0.08);\n}\n\n.package-name {\n color: #fff;\n font-size: 0.875rem;\n font-weight: 500;\n}\n\n.package-version {\n color: #94a3b8;\n font-size: 0.75rem;\n font-weight: 500;\n padding: 0.25rem 0.5rem;\n background: rgba(255, 255, 255, 0.05);\n border-radius: 9999px;\n border: 1px solid rgba(255, 255, 255, 0.1);\n}\n\n.tab-content.assets {\n padding: 1.5rem;\n}\n\n.assets-stats {\n display: flex;\n gap: 1rem;\n}\n\n.stat-item {\n color: #94a3b8;\n font-size: 0.875rem;\n padding: 0.25rem 0.75rem;\n background: rgba(255, 255, 255, 0.05);\n border-radius: 9999px;\n border: 1px solid rgba(255, 255, 255, 0.1);\n}\n\n.routes-table {\n background: #18181b;\n border-radius: 8px;\n overflow: hidden;\n}\n\n.table-header {\n display: grid;\n grid-template-columns: 2fr 1fr 1fr 1fr;\n padding: 12px 16px;\n background: #27272a;\n font-weight: 500;\n border-bottom: 1px solid #3f3f46;\n}\n\n.table-row {\n display: grid;\n grid-template-columns: 2fr 1fr 1fr 1fr;\n padding: 12px 16px;\n border-bottom: 1px solid #27272a;\n align-items: center;\n}\n\n.table-row:hover {\n background: #27272a;\n}\n\n.active-route {\n background: #22c55e20;\n color: #22c55e;\n padding: 4px 8px;\n border-radius: 4px;\n}\n\n.col-route {\n font-family: monospace;\n}\n\n.custom-layout {\n color: #3b82f6;\n}\n\n.toggle-icon {\n width: 20px;\n height: 20px;\n transition: all 0.3s ease;\n filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.2));\n opacity: 0.9;\n}\n\n.devtools-toggle:hover .toggle-icon {\n transform: scale(1.1);\n filter: drop-shadow(0 3px 6px rgba(0, 0, 0, 0.3));\n opacity: 1;\n}\n";
2
- export {
3
- styles as default
4
- };