@kubed.io/cdn 0.0.3 → 0.0.4

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 (59) hide show
  1. package/README.md +33 -5
  2. package/dist/chunks/define-XzEniRJH.js +10 -0
  3. package/dist/chunks/define-XzEniRJH.js.map +1 -0
  4. package/dist/chunks/element-ChNBLJ5X.js +632 -0
  5. package/dist/chunks/element-ChNBLJ5X.js.map +1 -0
  6. package/dist/chunks/kd-Bbw0GeQ5.js +1149 -0
  7. package/dist/chunks/kd-Bbw0GeQ5.js.map +1 -0
  8. package/dist/chunks/scene-CUr0fSXC.js +240 -0
  9. package/dist/chunks/scene-CUr0fSXC.js.map +1 -0
  10. package/dist/k8s/elements/events.d.ts +54 -0
  11. package/dist/k8s/elements/object.d.ts +47 -0
  12. package/dist/k8s/elements/ref.d.ts +45 -0
  13. package/dist/k8s/events.d.ts +63 -0
  14. package/dist/k8s/icons.d.ts +18 -0
  15. package/dist/k8s/index.d.ts +13 -0
  16. package/dist/k8s/links.d.ts +72 -0
  17. package/dist/k8s/map.d.ts +114 -0
  18. package/dist/k8s.js +909 -0
  19. package/dist/k8s.js.map +1 -0
  20. package/dist/kd/cell.d.ts +45 -0
  21. package/dist/kd/element.d.ts +32 -0
  22. package/dist/kd/elements/bar.d.ts +33 -0
  23. package/dist/kd/elements/data.d.ts +27 -0
  24. package/dist/kd/elements/groups.d.ts +32 -0
  25. package/dist/kd/elements/link.d.ts +67 -0
  26. package/dist/kd/elements/mask.d.ts +22 -0
  27. package/dist/kd/elements/meter.d.ts +37 -0
  28. package/dist/kd/elements/pill.d.ts +15 -0
  29. package/dist/kd/elements/sheet.d.ts +28 -0
  30. package/dist/kd/elements/steps.d.ts +30 -0
  31. package/dist/kd/elements/table.d.ts +38 -0
  32. package/dist/kd/elements/tabs.d.ts +27 -0
  33. package/dist/kd/elements/tile.d.ts +19 -0
  34. package/dist/kd/helpers.d.ts +12 -0
  35. package/dist/kd/index.d.ts +30 -0
  36. package/dist/kd/parts.d.ts +15 -0
  37. package/dist/kd/scene.d.ts +178 -0
  38. package/dist/kd/theme.d.ts +2 -0
  39. package/dist/kd/yaml.d.ts +17 -0
  40. package/dist/kd.js +5 -64
  41. package/dist/n8n/config.d.ts +57 -0
  42. package/dist/n8n/fetch.d.ts +35 -0
  43. package/dist/n8n/history.d.ts +8 -0
  44. package/dist/n8n/index.d.ts +8 -0
  45. package/dist/n8n/metadata.d.ts +10 -0
  46. package/dist/n8n/mount.d.ts +29 -0
  47. package/dist/n8n/state.d.ts +44 -0
  48. package/dist/n8n/stream.d.ts +17 -0
  49. package/dist/n8n/styles.d.ts +1 -0
  50. package/dist/n8n.js +384 -0
  51. package/dist/n8n.js.map +1 -0
  52. package/dist/openapi/describe.d.ts +20 -0
  53. package/dist/openapi/index.d.ts +6 -0
  54. package/dist/openapi/model.d.ts +154 -0
  55. package/dist/openapi/schema.d.ts +52 -0
  56. package/dist/openapi.js +504 -0
  57. package/dist/openapi.js.map +1 -0
  58. package/package.json +18 -2
  59. package/dist/kd.js.map +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kubed.io/cdn",
3
- "version": "0.0.3",
3
+ "version": "0.0.4",
4
4
  "description": "A theme layer and web components for Grafana panels, loaded by URL from jsDelivr.",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -18,13 +18,26 @@
18
18
  "types": "./dist/kd/index.d.ts",
19
19
  "default": "./dist/kd.js"
20
20
  },
21
+ "./openapi.js": {
22
+ "types": "./dist/openapi/index.d.ts",
23
+ "default": "./dist/openapi.js"
24
+ },
25
+ "./k8s.js": {
26
+ "types": "./dist/k8s/index.d.ts",
27
+ "default": "./dist/k8s.js"
28
+ },
29
+ "./n8n.js": {
30
+ "types": "./dist/n8n/index.d.ts",
31
+ "default": "./dist/n8n.js"
32
+ },
21
33
  "./kd.css": "./dist/kd.css"
22
34
  },
23
35
  "scripts": {
24
36
  "build": "vite build && tsc -p tsconfig.build.json",
25
37
  "typecheck": "tsc --noEmit",
26
38
  "test": "vitest run",
27
- "prepublishOnly": "npm run typecheck && npm test && npm run build"
39
+ "prepublishOnly": "npm run typecheck && npm test && npm run build",
40
+ "build:probe": "node scripts/probe.mjs"
28
41
  },
29
42
  "publishConfig": {
30
43
  "access": "public"
@@ -34,5 +47,8 @@
34
47
  "typescript": "^7.0.2",
35
48
  "vite": "^8.3.3",
36
49
  "vitest": "^5.0.3"
50
+ },
51
+ "dependencies": {
52
+ "lit": "3.3.3"
37
53
  }
38
54
  }
package/dist/kd.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"kd.js","names":["PROPERTIES","t","read","value","get","theme","applyTheme","element","name","runtimes","runtime","found","win","rt","r","followTheme","subscription","event","VERSION","define","existing","registry"],"sources":["../src/kd/theme.ts","../src/kd/define.ts"],"sourcesContent":["// The theme layer: Grafana's live theme as `--kd-*` custom properties.\n// The property names are this package's public API and follow semver.\n\n/** The parts of a GrafanaTheme2 the theme layer reads. Any of them may be missing. */\nexport interface ThemeLike {\n isDark?: boolean;\n [key: string]: unknown;\n}\n\ntype Read = (theme: any) => unknown;\n\nconst PROPERTIES: [string, Read][] = [\n ['--kd-bg', (t) => t.colors.background.primary],\n ['--kd-bg-2', (t) => t.colors.background.secondary],\n ['--kd-canvas', (t) => t.colors.background.canvas],\n ['--kd-text', (t) => t.colors.text.primary],\n ['--kd-text-2', (t) => t.colors.text.secondary],\n ['--kd-text-dim', (t) => t.colors.text.disabled],\n ['--kd-link', (t) => t.colors.text.link],\n ['--kd-border', (t) => t.colors.border.weak],\n ['--kd-border-strong', (t) => t.colors.border.medium],\n ['--kd-primary', (t) => t.colors.primary.main],\n ['--kd-success', (t) => t.colors.success.main],\n ['--kd-warning', (t) => t.colors.warning.main],\n ['--kd-error', (t) => t.colors.error.main],\n ['--kd-info', (t) => t.colors.info.main],\n ['--kd-font', (t) => t.typography.fontFamily],\n ['--kd-font-mono', (t) => t.typography.fontFamilyMonospace],\n ['--kd-radius', (t) => t.shape.radius.default],\n ['--kd-space', (t) => t.spacing(1)],\n];\n\n// A theme from an older or newer Grafana may lack a field; that property is\n// skipped so the rest still apply, and CSS falls back to its own default.\nfunction read(theme: ThemeLike, get: Read): string | undefined {\n try {\n const value = get(theme);\n return typeof value === 'string' || typeof value === 'number' ? String(value) : undefined;\n } catch {\n return undefined;\n }\n}\n\n/**\n * Sets the `--kd-*` properties and `data-theme` (\"dark\" or \"light\") on\n * `element` from a GrafanaTheme2. Idempotent, so it is safe in Business Text's\n * `afterRender`, which runs on every re-render.\n *\n * @param element the panel's own root, never `:root`\n * @param theme a GrafanaTheme2, e.g. `context.grafana.theme`\n */\nexport function applyTheme(element: HTMLElement | null | undefined, theme: ThemeLike | null | undefined): void {\n if (!element || !theme) return;\n for (const [name, get] of PROPERTIES) {\n const value = read(theme, get);\n if (value !== undefined) element.style.setProperty(name, value);\n }\n if (typeof theme.isDark === 'boolean') {\n element.setAttribute('data-theme', theme.isDark ? 'dark' : 'light');\n }\n}\n\n/** The parts of `@grafana/runtime` that following the theme needs. */\ninterface Runtime {\n config: { theme2: ThemeLike };\n getAppEvents(): {\n subscribe(event: unknown, handler: (event: { payload?: ThemeLike }) => void): { unsubscribe(): void };\n };\n ThemeChangedEvent: unknown;\n}\n\ntype GrafanaWindow = Window & { System?: { import?(id: string): Promise<unknown> } };\n\nconst runtimes = new WeakMap<Window, Promise<Runtime | null>>();\n\n// Grafana loads plugins through SystemJS and shares its own packages there, so\n// the page's live config and event bus are one import away. Outside Grafana\n// there is no System and this resolves to null.\nfunction runtime(win: GrafanaWindow): Promise<Runtime | null> {\n let found = runtimes.get(win);\n if (!found) {\n found = Promise.resolve()\n .then(() => win.System?.import?.('@grafana/runtime'))\n .then((r) => {\n const rt = r as Partial<Runtime> | undefined;\n return rt?.config?.theme2 && rt.getAppEvents && rt.ThemeChangedEvent ? (rt as Runtime) : null;\n })\n .catch(() => null);\n runtimes.set(win, found);\n }\n return found;\n}\n\n/**\n * Themes `element` from Grafana's live theme without being handed one, and\n * keeps it themed across a live theme switch. For code that has no\n * `context.grafana.theme`. The `<body>` theme class is never used: it goes\n * stale on a live switch.\n *\n * @returns a function that stops following; a no-op outside Grafana\n */\nexport async function followTheme(element: HTMLElement): Promise<() => void> {\n const win = element.ownerDocument?.defaultView as GrafanaWindow | null;\n const rt = win ? await runtime(win) : null;\n if (!rt) return () => {};\n applyTheme(element, rt.config.theme2);\n const subscription = rt\n .getAppEvents()\n .subscribe(rt.ThemeChangedEvent, (event) => applyTheme(element, event?.payload ?? rt.config.theme2));\n return () => subscription.unsubscribe();\n}\n","/** This build's package version. */\nexport const VERSION: string = __KD_VERSION__;\n\n/**\n * Registers a custom element unless the name is taken, and says so when it is.\n *\n * Every panel on a page shares one registry, and a definition outlives SPA\n * navigation, so the first version of a tag loaded owns it until a full page\n * reload. A second define would throw; this keeps the first and warns when the\n * two builds differ.\n *\n * @returns whether this call defined the element\n */\nexport function define(\n name: string,\n element: CustomElementConstructor,\n registry: CustomElementRegistry = customElements,\n): boolean {\n const existing = registry.get(name) as (CustomElementConstructor & { kdVersion?: string }) | undefined;\n if (existing) {\n if (existing !== element && existing.kdVersion !== VERSION) {\n console.warn(\n `@kubed.io/cdn ${VERSION}: <${name}> is already defined by ${existing.kdVersion ? `@kubed.io/cdn ${existing.kdVersion}` : 'another script'}; ` +\n 'that definition stays until the page is reloaded.',\n );\n }\n return false;\n }\n Object.defineProperty(element, 'kdVersion', { value: VERSION });\n registry.define(name, element);\n return true;\n}\n"],"mappings":"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"}