@cooperco/nuxt-layer-base 1.0.1 → 1.0.2

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 (50) hide show
  1. package/README.md +70 -0
  2. package/package.json +6 -5
  3. package/.env +0 -10
  4. package/.nuxt/app.config.mjs +0 -21
  5. package/.nuxt/components.d.ts +0 -126
  6. package/.nuxt/dev/index.mjs +0 -3013
  7. package/.nuxt/dev/index.mjs.map +0 -1
  8. package/.nuxt/dist/server/client.manifest.mjs +0 -1
  9. package/.nuxt/dist/server/server.mjs +0 -1
  10. package/.nuxt/eslint-typegen.d.ts +0 -9474
  11. package/.nuxt/eslint.config.d.mts +0 -9
  12. package/.nuxt/eslint.config.mjs +0 -53
  13. package/.nuxt/i18n-route-resources.mjs +0 -3
  14. package/.nuxt/imports.d.ts +0 -34
  15. package/.nuxt/manifest/latest.json +0 -1
  16. package/.nuxt/manifest/meta/11e69554-8b10-4927-b475-a1b7f6b2bbac.json +0 -1
  17. package/.nuxt/manifest/meta/dev.json +0 -1
  18. package/.nuxt/nitro.json +0 -17
  19. package/.nuxt/nuxt.d.ts +0 -20
  20. package/.nuxt/nuxt.json +0 -9
  21. package/.nuxt/nuxt.node.d.ts +0 -13
  22. package/.nuxt/nuxt.shared.d.ts +0 -5
  23. package/.nuxt/schema/nuxt.schema.d.ts +0 -17
  24. package/.nuxt/schema/nuxt.schema.json +0 -3
  25. package/.nuxt/tsconfig.app.json +0 -226
  26. package/.nuxt/tsconfig.app.tsbuildinfo +0 -1
  27. package/.nuxt/tsconfig.json +0 -228
  28. package/.nuxt/tsconfig.node.json +0 -131
  29. package/.nuxt/tsconfig.node.tsbuildinfo +0 -1
  30. package/.nuxt/tsconfig.server.json +0 -162
  31. package/.nuxt/tsconfig.server.tsbuildinfo +0 -1
  32. package/.nuxt/tsconfig.shared.json +0 -182
  33. package/.nuxt/tsconfig.shared.tsbuildinfo +0 -1
  34. package/.nuxt/types/app.config.d.ts +0 -35
  35. package/.nuxt/types/build.d.ts +0 -25
  36. package/.nuxt/types/builder-env.d.ts +0 -1
  37. package/.nuxt/types/i18n-plugin.d.ts +0 -123
  38. package/.nuxt/types/imports.d.ts +0 -387
  39. package/.nuxt/types/middleware.d.ts +0 -11
  40. package/.nuxt/types/modules.d.ts +0 -87
  41. package/.nuxt/types/nitro-config.d.ts +0 -14
  42. package/.nuxt/types/nitro-imports.d.ts +0 -162
  43. package/.nuxt/types/nitro-nuxt.d.ts +0 -59
  44. package/.nuxt/types/nitro-routes.d.ts +0 -20
  45. package/.nuxt/types/nitro.d.ts +0 -3
  46. package/.nuxt/types/plugins.d.ts +0 -41
  47. package/.nuxt/types/runtime-config.d.ts +0 -102
  48. package/.nuxt/types/vue-shim.d.ts +0 -0
  49. package/Users//devin//AppData//Local//JetBrains//WebStorm2025.2//terminal//history//nuxt-layers-history +0 -736
  50. package/Users//devin//AppData//Local//JetBrains//WebStorm2025.2//terminal//history//nuxt-layers-history1 +0 -0
package/README.md CHANGED
@@ -215,3 +215,73 @@ Run it:
215
215
  Notes:
216
216
  - If LOGGLY_ENABLED is not true or LOGGLY_TOKEN is missing, the server proxy will skip sending and respond with { ok: false, skipped: true }.
217
217
  - The token is server‑only; it is never exposed to the client. The browser only talks to /api/loggly on your dev server.
218
+
219
+
220
+ ---
221
+
222
+ ## Publishing to npm (tag-based)
223
+
224
+ This layer is published using GitHub Actions when you push a tag that matches the base-vX.Y.Z pattern.
225
+
226
+ High-level flow:
227
+ - Bump the version in layers/base/package.json (SemVer).
228
+ - Commit and push your changes to main (or ensure the commit is on main).
229
+ - Create and push a tag named base-vX.Y.Z (matching the package.json version).
230
+ - The Publish Base Layer workflow installs deps, checks if that exact version already exists on npm, and if not, publishes privately with --access restricted.
231
+
232
+ Important notes:
233
+ - Do NOT rely on npm version creating a tag for you (it will create vX.Y.Z). We use a custom tag prefix base-v.
234
+ - First-time private publish is already configured via publishConfig.access: "restricted".
235
+ - The workflow will skip if the version already exists (you'll see "Skipping; version already exists.").
236
+
237
+ ### Step-by-step
238
+
239
+ 1) Bump the version in layers/base/package.json
240
+ - Option A (recommended): use npm version without creating a tag
241
+ - Bash:
242
+ ```bash
243
+ cd layers/base
244
+ npm version patch --no-git-tag-version # or minor | major
245
+ ```
246
+ - PowerShell:
247
+ ```powershell
248
+ Set-Location layers/base
249
+ npm version patch --no-git-tag-version # or minor | major
250
+ ```
251
+ - Option B: manually edit the version field in layers/base/package.json (SemVer: MAJOR.MINOR.PATCH)
252
+
253
+ 2) Commit and push the change (from repo root or layers/base)
254
+ ```bash
255
+ git add layers/base/package.json
256
+ git commit -m "chore(base): bump version"
257
+ git push origin main
258
+ ```
259
+
260
+ 3) Create and push the tag using the new version
261
+ - Get the new version value:
262
+ - Bash:
263
+ ```bash
264
+ cd layers/base
265
+ VERSION=$(node -p "require('./package.json').version")
266
+ cd ../..
267
+ git tag "base-v$VERSION"
268
+ git push origin "base-v$VERSION"
269
+ ```
270
+ - PowerShell:
271
+ ```powershell
272
+ Set-Location layers/base
273
+ $version = node -p "require('./package.json').version"
274
+ Set-Location ../..
275
+ git tag "base-v$version"
276
+ git push origin "base-v$version"
277
+ ```
278
+
279
+ 4) GitHub Actions will publish
280
+ - Workflow: .github/workflows/publish-base.yml
281
+ - Auth: uses NPM_TOKEN (Classic Automation token) configured as a GitHub secret
282
+ - Behavior: installs, checks npm view @cooperco/nuxt-layer-base@<version>, publishes if not found
283
+
284
+ ### Troubleshooting
285
+ - Version already exists: bump the version again (patch/minor/major) and push a new tag.
286
+ - Auth errors (401/403): ensure NPM_TOKEN is set in repo secrets and org access is correct.
287
+ - Registry mismatch: this repo’s .npmrc pins @cooperco to https://registry.npmjs.org/; keep that file intact.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cooperco/nuxt-layer-base",
3
- "version": "1.0.1",
3
+ "version": "1.0.2",
4
4
  "type": "module",
5
5
  "main": "./nuxt.config.ts",
6
6
  "scripts": {
@@ -11,7 +11,8 @@
11
11
  },
12
12
  "description": "Base Nuxt layer for cooperco projects",
13
13
  "publishConfig": {
14
- "access": "public"
14
+ "access": "public",
15
+ "registry": "https://registry.npmjs.org/"
15
16
  },
16
17
  "repository": {
17
18
  "type": "git",
@@ -21,13 +22,13 @@
21
22
  "author": "cooperco",
22
23
  "license": "MIT",
23
24
  "dependencies": {
24
- "@nuxt/eslint": "^1.8.0",
25
- "@nuxtjs/i18n": "^10.0.4",
25
+ "@nuxt/eslint": "^1.9.0",
26
+ "@nuxtjs/i18n": "^10.0.6",
26
27
  "nuxt": "^4.0.3"
27
28
  },
28
29
  "devDependencies": {
29
30
  "@nuxt/test-utils": "^3.19.2",
30
- "eslint": "^9.32.0",
31
+ "eslint": "^9.33.0",
31
32
  "vue-tsc": "^3.0.5"
32
33
  }
33
34
  }
package/.env DELETED
@@ -1,10 +0,0 @@
1
- # Example environment variables for Loggly when developing the base layer directly.
2
- # NOTE: This file is not used by consuming apps that extend the layer.
3
- # For the top-level playground app in this repo, put your env in: playground/.env
4
- # For your own app, put env in your app root (e.g. .env or .env.local).
5
-
6
- # LOGGLY_ENABLED=true
7
- # LOGGLY_TOKEN=your-loggly-customer-token
8
- # LOGGLY_TAGS=nuxt,base,app-name,env
9
- # LOG_LEVEL=info
10
- # LOGGLY_ENDPOINT=https://logs-01.loggly.com/inputs
@@ -1,21 +0,0 @@
1
-
2
- import { defuFn } from 'defu'
3
-
4
- const inlineConfig = {
5
- "nuxt": {}
6
- }
7
-
8
- /** client **/
9
- import { _replaceAppConfig } from '#app/config'
10
-
11
- // Vite - webpack is handled directly in #app/config
12
- if (import.meta.dev && !import.meta.nitro && import.meta.hot) {
13
- import.meta.hot.accept((newModule) => {
14
- _replaceAppConfig(newModule.default)
15
- })
16
- }
17
- /** client-end **/
18
-
19
-
20
-
21
- export default /*@__PURE__*/ defuFn(inlineConfig)
@@ -1,126 +0,0 @@
1
-
2
- import type { DefineComponent, SlotsType } from 'vue'
3
- type IslandComponent<T extends DefineComponent> = T & DefineComponent<{}, {refresh: () => Promise<void>}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, SlotsType<{ fallback: { error: unknown } }>>
4
- type HydrationStrategies = {
5
- hydrateOnVisible?: IntersectionObserverInit | true
6
- hydrateOnIdle?: number | true
7
- hydrateOnInteraction?: keyof HTMLElementEventMap | Array<keyof HTMLElementEventMap> | true
8
- hydrateOnMediaQuery?: string
9
- hydrateAfter?: number
10
- hydrateWhen?: boolean
11
- hydrateNever?: true
12
- }
13
- type LazyComponent<T> = (T & DefineComponent<HydrationStrategies, {}, {}, {}, {}, {}, {}, { hydrated: () => void }>)
14
- interface _GlobalComponents {
15
- 'NuxtWelcome': typeof import("../node_modules/nuxt/dist/app/components/welcome.vue")['default']
16
- 'NuxtLayout': typeof import("../node_modules/nuxt/dist/app/components/nuxt-layout")['default']
17
- 'NuxtErrorBoundary': typeof import("../node_modules/nuxt/dist/app/components/nuxt-error-boundary.vue")['default']
18
- 'ClientOnly': typeof import("../node_modules/nuxt/dist/app/components/client-only")['default']
19
- 'DevOnly': typeof import("../node_modules/nuxt/dist/app/components/dev-only")['default']
20
- 'ServerPlaceholder': typeof import("../node_modules/nuxt/dist/app/components/server-placeholder")['default']
21
- 'NuxtLink': typeof import("../node_modules/nuxt/dist/app/components/nuxt-link")['default']
22
- 'NuxtLoadingIndicator': typeof import("../node_modules/nuxt/dist/app/components/nuxt-loading-indicator")['default']
23
- 'NuxtTime': typeof import("../node_modules/nuxt/dist/app/components/nuxt-time.vue")['default']
24
- 'NuxtRouteAnnouncer': typeof import("../node_modules/nuxt/dist/app/components/nuxt-route-announcer")['default']
25
- 'NuxtImg': typeof import("../node_modules/nuxt/dist/app/components/nuxt-stubs")['NuxtImg']
26
- 'NuxtPicture': typeof import("../node_modules/nuxt/dist/app/components/nuxt-stubs")['NuxtPicture']
27
- 'NuxtLinkLocale': typeof import("../node_modules/@nuxtjs/i18n/dist/runtime/components/NuxtLinkLocale")['default']
28
- 'SwitchLocalePathLink': typeof import("../node_modules/@nuxtjs/i18n/dist/runtime/components/SwitchLocalePathLink")['default']
29
- 'NuxtPage': typeof import("../node_modules/nuxt/dist/pages/runtime/page-placeholder")['default']
30
- 'NoScript': typeof import("../node_modules/nuxt/dist/head/runtime/components")['NoScript']
31
- 'Link': typeof import("../node_modules/nuxt/dist/head/runtime/components")['Link']
32
- 'Base': typeof import("../node_modules/nuxt/dist/head/runtime/components")['Base']
33
- 'Title': typeof import("../node_modules/nuxt/dist/head/runtime/components")['Title']
34
- 'Meta': typeof import("../node_modules/nuxt/dist/head/runtime/components")['Meta']
35
- 'Style': typeof import("../node_modules/nuxt/dist/head/runtime/components")['Style']
36
- 'Head': typeof import("../node_modules/nuxt/dist/head/runtime/components")['Head']
37
- 'Html': typeof import("../node_modules/nuxt/dist/head/runtime/components")['Html']
38
- 'Body': typeof import("../node_modules/nuxt/dist/head/runtime/components")['Body']
39
- 'NuxtIsland': typeof import("../node_modules/nuxt/dist/app/components/nuxt-island")['default']
40
- 'NuxtRouteAnnouncer': typeof import("../node_modules/nuxt/dist/app/components/server-placeholder")['default']
41
- 'LazyNuxtWelcome': LazyComponent<typeof import("../node_modules/nuxt/dist/app/components/welcome.vue")['default']>
42
- 'LazyNuxtLayout': LazyComponent<typeof import("../node_modules/nuxt/dist/app/components/nuxt-layout")['default']>
43
- 'LazyNuxtErrorBoundary': LazyComponent<typeof import("../node_modules/nuxt/dist/app/components/nuxt-error-boundary.vue")['default']>
44
- 'LazyClientOnly': LazyComponent<typeof import("../node_modules/nuxt/dist/app/components/client-only")['default']>
45
- 'LazyDevOnly': LazyComponent<typeof import("../node_modules/nuxt/dist/app/components/dev-only")['default']>
46
- 'LazyServerPlaceholder': LazyComponent<typeof import("../node_modules/nuxt/dist/app/components/server-placeholder")['default']>
47
- 'LazyNuxtLink': LazyComponent<typeof import("../node_modules/nuxt/dist/app/components/nuxt-link")['default']>
48
- 'LazyNuxtLoadingIndicator': LazyComponent<typeof import("../node_modules/nuxt/dist/app/components/nuxt-loading-indicator")['default']>
49
- 'LazyNuxtTime': LazyComponent<typeof import("../node_modules/nuxt/dist/app/components/nuxt-time.vue")['default']>
50
- 'LazyNuxtRouteAnnouncer': LazyComponent<typeof import("../node_modules/nuxt/dist/app/components/nuxt-route-announcer")['default']>
51
- 'LazyNuxtImg': LazyComponent<typeof import("../node_modules/nuxt/dist/app/components/nuxt-stubs")['NuxtImg']>
52
- 'LazyNuxtPicture': LazyComponent<typeof import("../node_modules/nuxt/dist/app/components/nuxt-stubs")['NuxtPicture']>
53
- 'LazyNuxtLinkLocale': LazyComponent<typeof import("../node_modules/@nuxtjs/i18n/dist/runtime/components/NuxtLinkLocale")['default']>
54
- 'LazySwitchLocalePathLink': LazyComponent<typeof import("../node_modules/@nuxtjs/i18n/dist/runtime/components/SwitchLocalePathLink")['default']>
55
- 'LazyNuxtPage': LazyComponent<typeof import("../node_modules/nuxt/dist/pages/runtime/page-placeholder")['default']>
56
- 'LazyNoScript': LazyComponent<typeof import("../node_modules/nuxt/dist/head/runtime/components")['NoScript']>
57
- 'LazyLink': LazyComponent<typeof import("../node_modules/nuxt/dist/head/runtime/components")['Link']>
58
- 'LazyBase': LazyComponent<typeof import("../node_modules/nuxt/dist/head/runtime/components")['Base']>
59
- 'LazyTitle': LazyComponent<typeof import("../node_modules/nuxt/dist/head/runtime/components")['Title']>
60
- 'LazyMeta': LazyComponent<typeof import("../node_modules/nuxt/dist/head/runtime/components")['Meta']>
61
- 'LazyStyle': LazyComponent<typeof import("../node_modules/nuxt/dist/head/runtime/components")['Style']>
62
- 'LazyHead': LazyComponent<typeof import("../node_modules/nuxt/dist/head/runtime/components")['Head']>
63
- 'LazyHtml': LazyComponent<typeof import("../node_modules/nuxt/dist/head/runtime/components")['Html']>
64
- 'LazyBody': LazyComponent<typeof import("../node_modules/nuxt/dist/head/runtime/components")['Body']>
65
- 'LazyNuxtIsland': LazyComponent<typeof import("../node_modules/nuxt/dist/app/components/nuxt-island")['default']>
66
- 'LazyNuxtRouteAnnouncer': LazyComponent<typeof import("../node_modules/nuxt/dist/app/components/server-placeholder")['default']>
67
- }
68
-
69
- declare module 'vue' {
70
- export interface GlobalComponents extends _GlobalComponents { }
71
- }
72
-
73
- export const NuxtWelcome: typeof import("../node_modules/nuxt/dist/app/components/welcome.vue")['default']
74
- export const NuxtLayout: typeof import("../node_modules/nuxt/dist/app/components/nuxt-layout")['default']
75
- export const NuxtErrorBoundary: typeof import("../node_modules/nuxt/dist/app/components/nuxt-error-boundary.vue")['default']
76
- export const ClientOnly: typeof import("../node_modules/nuxt/dist/app/components/client-only")['default']
77
- export const DevOnly: typeof import("../node_modules/nuxt/dist/app/components/dev-only")['default']
78
- export const ServerPlaceholder: typeof import("../node_modules/nuxt/dist/app/components/server-placeholder")['default']
79
- export const NuxtLink: typeof import("../node_modules/nuxt/dist/app/components/nuxt-link")['default']
80
- export const NuxtLoadingIndicator: typeof import("../node_modules/nuxt/dist/app/components/nuxt-loading-indicator")['default']
81
- export const NuxtTime: typeof import("../node_modules/nuxt/dist/app/components/nuxt-time.vue")['default']
82
- export const NuxtRouteAnnouncer: typeof import("../node_modules/nuxt/dist/app/components/nuxt-route-announcer")['default']
83
- export const NuxtImg: typeof import("../node_modules/nuxt/dist/app/components/nuxt-stubs")['NuxtImg']
84
- export const NuxtPicture: typeof import("../node_modules/nuxt/dist/app/components/nuxt-stubs")['NuxtPicture']
85
- export const NuxtLinkLocale: typeof import("../node_modules/@nuxtjs/i18n/dist/runtime/components/NuxtLinkLocale")['default']
86
- export const SwitchLocalePathLink: typeof import("../node_modules/@nuxtjs/i18n/dist/runtime/components/SwitchLocalePathLink")['default']
87
- export const NuxtPage: typeof import("../node_modules/nuxt/dist/pages/runtime/page-placeholder")['default']
88
- export const NoScript: typeof import("../node_modules/nuxt/dist/head/runtime/components")['NoScript']
89
- export const Link: typeof import("../node_modules/nuxt/dist/head/runtime/components")['Link']
90
- export const Base: typeof import("../node_modules/nuxt/dist/head/runtime/components")['Base']
91
- export const Title: typeof import("../node_modules/nuxt/dist/head/runtime/components")['Title']
92
- export const Meta: typeof import("../node_modules/nuxt/dist/head/runtime/components")['Meta']
93
- export const Style: typeof import("../node_modules/nuxt/dist/head/runtime/components")['Style']
94
- export const Head: typeof import("../node_modules/nuxt/dist/head/runtime/components")['Head']
95
- export const Html: typeof import("../node_modules/nuxt/dist/head/runtime/components")['Html']
96
- export const Body: typeof import("../node_modules/nuxt/dist/head/runtime/components")['Body']
97
- export const NuxtIsland: typeof import("../node_modules/nuxt/dist/app/components/nuxt-island")['default']
98
- export const NuxtRouteAnnouncer: typeof import("../node_modules/nuxt/dist/app/components/server-placeholder")['default']
99
- export const LazyNuxtWelcome: LazyComponent<typeof import("../node_modules/nuxt/dist/app/components/welcome.vue")['default']>
100
- export const LazyNuxtLayout: LazyComponent<typeof import("../node_modules/nuxt/dist/app/components/nuxt-layout")['default']>
101
- export const LazyNuxtErrorBoundary: LazyComponent<typeof import("../node_modules/nuxt/dist/app/components/nuxt-error-boundary.vue")['default']>
102
- export const LazyClientOnly: LazyComponent<typeof import("../node_modules/nuxt/dist/app/components/client-only")['default']>
103
- export const LazyDevOnly: LazyComponent<typeof import("../node_modules/nuxt/dist/app/components/dev-only")['default']>
104
- export const LazyServerPlaceholder: LazyComponent<typeof import("../node_modules/nuxt/dist/app/components/server-placeholder")['default']>
105
- export const LazyNuxtLink: LazyComponent<typeof import("../node_modules/nuxt/dist/app/components/nuxt-link")['default']>
106
- export const LazyNuxtLoadingIndicator: LazyComponent<typeof import("../node_modules/nuxt/dist/app/components/nuxt-loading-indicator")['default']>
107
- export const LazyNuxtTime: LazyComponent<typeof import("../node_modules/nuxt/dist/app/components/nuxt-time.vue")['default']>
108
- export const LazyNuxtRouteAnnouncer: LazyComponent<typeof import("../node_modules/nuxt/dist/app/components/nuxt-route-announcer")['default']>
109
- export const LazyNuxtImg: LazyComponent<typeof import("../node_modules/nuxt/dist/app/components/nuxt-stubs")['NuxtImg']>
110
- export const LazyNuxtPicture: LazyComponent<typeof import("../node_modules/nuxt/dist/app/components/nuxt-stubs")['NuxtPicture']>
111
- export const LazyNuxtLinkLocale: LazyComponent<typeof import("../node_modules/@nuxtjs/i18n/dist/runtime/components/NuxtLinkLocale")['default']>
112
- export const LazySwitchLocalePathLink: LazyComponent<typeof import("../node_modules/@nuxtjs/i18n/dist/runtime/components/SwitchLocalePathLink")['default']>
113
- export const LazyNuxtPage: LazyComponent<typeof import("../node_modules/nuxt/dist/pages/runtime/page-placeholder")['default']>
114
- export const LazyNoScript: LazyComponent<typeof import("../node_modules/nuxt/dist/head/runtime/components")['NoScript']>
115
- export const LazyLink: LazyComponent<typeof import("../node_modules/nuxt/dist/head/runtime/components")['Link']>
116
- export const LazyBase: LazyComponent<typeof import("../node_modules/nuxt/dist/head/runtime/components")['Base']>
117
- export const LazyTitle: LazyComponent<typeof import("../node_modules/nuxt/dist/head/runtime/components")['Title']>
118
- export const LazyMeta: LazyComponent<typeof import("../node_modules/nuxt/dist/head/runtime/components")['Meta']>
119
- export const LazyStyle: LazyComponent<typeof import("../node_modules/nuxt/dist/head/runtime/components")['Style']>
120
- export const LazyHead: LazyComponent<typeof import("../node_modules/nuxt/dist/head/runtime/components")['Head']>
121
- export const LazyHtml: LazyComponent<typeof import("../node_modules/nuxt/dist/head/runtime/components")['Html']>
122
- export const LazyBody: LazyComponent<typeof import("../node_modules/nuxt/dist/head/runtime/components")['Body']>
123
- export const LazyNuxtIsland: LazyComponent<typeof import("../node_modules/nuxt/dist/app/components/nuxt-island")['default']>
124
- export const LazyNuxtRouteAnnouncer: LazyComponent<typeof import("../node_modules/nuxt/dist/app/components/server-placeholder")['default']>
125
-
126
- export const componentNames: string[]