@teleporthq/teleport-project-generator-next 0.43.31 → 0.43.32
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.
- package/dist/cjs/analytics/project-plugin.d.ts +0 -1
- package/dist/cjs/analytics/project-plugin.d.ts.map +1 -1
- package/dist/cjs/analytics/project-plugin.js +5 -67
- package/dist/cjs/analytics/project-plugin.js.map +1 -1
- package/dist/cjs/app-sibling-injection.d.ts +15 -0
- package/dist/cjs/app-sibling-injection.d.ts.map +1 -0
- package/dist/cjs/app-sibling-injection.js +77 -0
- package/dist/cjs/app-sibling-injection.js.map +1 -0
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +32 -30
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/nav-active-link/nav-active-link-component.d.ts +2 -0
- package/dist/cjs/nav-active-link/nav-active-link-component.d.ts.map +1 -0
- package/dist/cjs/nav-active-link/nav-active-link-component.js +19 -0
- package/dist/cjs/nav-active-link/nav-active-link-component.js.map +1 -0
- package/dist/cjs/nav-active-link/project-plugin.d.ts +6 -0
- package/dist/cjs/nav-active-link/project-plugin.d.ts.map +1 -0
- package/dist/cjs/nav-active-link/project-plugin.js +84 -0
- package/dist/cjs/nav-active-link/project-plugin.js.map +1 -0
- package/dist/cjs/tsconfig.tsbuildinfo +1 -1
- package/dist/esm/analytics/project-plugin.d.ts +0 -1
- package/dist/esm/analytics/project-plugin.d.ts.map +1 -1
- package/dist/esm/analytics/project-plugin.js +6 -68
- package/dist/esm/analytics/project-plugin.js.map +1 -1
- package/dist/esm/app-sibling-injection.d.ts +15 -0
- package/dist/esm/app-sibling-injection.d.ts.map +1 -0
- package/dist/esm/app-sibling-injection.js +73 -0
- package/dist/esm/app-sibling-injection.js.map +1 -0
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +2 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/nav-active-link/nav-active-link-component.d.ts +2 -0
- package/dist/esm/nav-active-link/nav-active-link-component.d.ts.map +1 -0
- package/dist/esm/nav-active-link/nav-active-link-component.js +16 -0
- package/dist/esm/nav-active-link/nav-active-link-component.js.map +1 -0
- package/dist/esm/nav-active-link/project-plugin.d.ts +6 -0
- package/dist/esm/nav-active-link/project-plugin.d.ts.map +1 -0
- package/dist/esm/nav-active-link/project-plugin.js +81 -0
- package/dist/esm/nav-active-link/project-plugin.js.map +1 -0
- package/dist/esm/tsconfig.tsbuildinfo +1 -1
- package/package.json +13 -13
- package/src/analytics/project-plugin.ts +6 -79
- package/src/app-sibling-injection.ts +82 -0
- package/src/index.ts +2 -0
- package/src/nav-active-link/nav-active-link-component.ts +96 -0
- package/src/nav-active-link/project-plugin.ts +36 -0
|
@@ -3,6 +3,5 @@ export declare class NextAnalyticsProjectPlugin implements ProjectPlugin {
|
|
|
3
3
|
runBefore(structure: ProjectPluginStructure): Promise<ProjectPluginStructure>;
|
|
4
4
|
runAfter(structure: ProjectPluginStructure): Promise<ProjectPluginStructure>;
|
|
5
5
|
private addEnvVariables;
|
|
6
|
-
private injectTrackerIntoApp;
|
|
7
6
|
}
|
|
8
7
|
//# sourceMappingURL=project-plugin.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project-plugin.d.ts","sourceRoot":"","sources":["../../../src/analytics/project-plugin.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"project-plugin.d.ts","sourceRoot":"","sources":["../../../src/analytics/project-plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,aAAa,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAA;AAc5F,qBAAa,0BAA2B,YAAW,aAAa;IACxD,SAAS,CAAC,SAAS,EAAE,sBAAsB,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAI7E,QAAQ,CAAC,SAAS,EAAE,sBAAsB,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAsClF,OAAO,CAAC,eAAe;CAcxB"}
|
|
@@ -40,6 +40,7 @@ exports.NextAnalyticsProjectPlugin = void 0;
|
|
|
40
40
|
var teleport_types_1 = require("@teleporthq/teleport-types");
|
|
41
41
|
var tracker_source_1 = require("./tracker-source");
|
|
42
42
|
var tracker_component_1 = require("./tracker-component");
|
|
43
|
+
var app_sibling_injection_1 = require("../app-sibling-injection");
|
|
43
44
|
var ENV_URL_KEY = 'NEXT_PUBLIC_TELEPORT_ANALYTICS_URL';
|
|
44
45
|
var ENV_PUBLIC_KEY = 'NEXT_PUBLIC_TELEPORT_ANALYTICS_KEY';
|
|
45
46
|
var TELEPORT_SECRETS_PREFIX = 'teleporthq.secrets.';
|
|
@@ -88,7 +89,10 @@ var NextAnalyticsProjectPlugin = /** @class */ (function () {
|
|
|
88
89
|
],
|
|
89
90
|
});
|
|
90
91
|
this.addEnvVariables(uidl);
|
|
91
|
-
|
|
92
|
+
(0, app_sibling_injection_1.injectSiblingIntoApp)(structure, {
|
|
93
|
+
componentName: 'AnalyticsTracker',
|
|
94
|
+
importStatement: "import AnalyticsTracker from '../components/analytics/AnalyticsTracker';\n",
|
|
95
|
+
});
|
|
92
96
|
return [2 /*return*/, structure];
|
|
93
97
|
});
|
|
94
98
|
});
|
|
@@ -106,73 +110,7 @@ var NextAnalyticsProjectPlugin = /** @class */ (function () {
|
|
|
106
110
|
uidl.globals.env[ENV_PUBLIC_KEY] = "".concat(TELEPORT_SECRETS_PREFIX).concat(ENV_PUBLIC_KEY);
|
|
107
111
|
}
|
|
108
112
|
};
|
|
109
|
-
// Same proven string-surgery as the AI-chat widget injection: import before
|
|
110
|
-
// the first import, then wrap the returned JSX in a fragment with the
|
|
111
|
-
// tracker as a sibling.
|
|
112
|
-
NextAnalyticsProjectPlugin.prototype.injectTrackerIntoApp = function (structure) {
|
|
113
|
-
var _a;
|
|
114
|
-
var files = structure.files;
|
|
115
|
-
var appFile = null;
|
|
116
|
-
for (var _i = 0, _b = Array.from(files.entries()); _i < _b.length; _i++) {
|
|
117
|
-
var _c = _b[_i], key = _c[0], record = _c[1];
|
|
118
|
-
if (key === '_app' || key.includes('_app')) {
|
|
119
|
-
var found = (_a = record.files) === null || _a === void 0 ? void 0 : _a.find(function (file) {
|
|
120
|
-
return file.name === '_app' && (file.fileType === 'js' || file.fileType === 'tsx');
|
|
121
|
-
});
|
|
122
|
-
if (found) {
|
|
123
|
-
appFile = found;
|
|
124
|
-
break;
|
|
125
|
-
}
|
|
126
|
-
}
|
|
127
|
-
}
|
|
128
|
-
if (!appFile || typeof appFile.content !== 'string') {
|
|
129
|
-
return;
|
|
130
|
-
}
|
|
131
|
-
if (appFile.content.includes('AnalyticsTracker')) {
|
|
132
|
-
return;
|
|
133
|
-
}
|
|
134
|
-
var content = appFile.content;
|
|
135
|
-
var trackerImport = "import AnalyticsTracker from '../components/analytics/AnalyticsTracker';\n";
|
|
136
|
-
var firstImportIdx = content.indexOf('import ');
|
|
137
|
-
if (firstImportIdx >= 0) {
|
|
138
|
-
content = content.slice(0, firstImportIdx) + trackerImport + content.slice(firstImportIdx);
|
|
139
|
-
}
|
|
140
|
-
else {
|
|
141
|
-
content = trackerImport + content;
|
|
142
|
-
}
|
|
143
|
-
var returnMatch = content.match(/return\s*\(\s*/);
|
|
144
|
-
if (returnMatch && returnMatch.index !== undefined) {
|
|
145
|
-
var afterReturn = returnMatch.index + returnMatch[0].length;
|
|
146
|
-
var restContent = content.slice(afterReturn);
|
|
147
|
-
var closingParenIdx = findMatchingClosingParen(restContent);
|
|
148
|
-
if (closingParenIdx >= 0) {
|
|
149
|
-
var innerJSX = restContent.slice(0, closingParenIdx);
|
|
150
|
-
var afterClosing = restContent.slice(closingParenIdx);
|
|
151
|
-
// Both halves of the fragment are required — omitting `</>` produces
|
|
152
|
-
// a syntax error in _app.js.
|
|
153
|
-
content =
|
|
154
|
-
content.slice(0, afterReturn) + "<>".concat(innerJSX, "<AnalyticsTracker /></>") + afterClosing;
|
|
155
|
-
}
|
|
156
|
-
}
|
|
157
|
-
appFile.content = content;
|
|
158
|
-
};
|
|
159
113
|
return NextAnalyticsProjectPlugin;
|
|
160
114
|
}());
|
|
161
115
|
exports.NextAnalyticsProjectPlugin = NextAnalyticsProjectPlugin;
|
|
162
|
-
function findMatchingClosingParen(str) {
|
|
163
|
-
var depth = 0;
|
|
164
|
-
for (var i = 0; i < str.length; i++) {
|
|
165
|
-
var ch = str[i];
|
|
166
|
-
if (ch === '(') {
|
|
167
|
-
depth++;
|
|
168
|
-
}
|
|
169
|
-
if (ch === ')') {
|
|
170
|
-
if (depth === 0) {
|
|
171
|
-
return i;
|
|
172
|
-
}
|
|
173
|
-
depth--;
|
|
174
|
-
}
|
|
175
|
-
}
|
|
176
|
-
return -1;
|
|
177
|
-
}
|
|
178
116
|
//# sourceMappingURL=project-plugin.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project-plugin.js","sourceRoot":"","sources":["../../../src/analytics/project-plugin.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"project-plugin.js","sourceRoot":"","sources":["../../../src/analytics/project-plugin.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6DAA4F;AAC5F,mDAAiD;AACjD,yDAA8D;AAC9D,kEAA+D;AAE/D,IAAM,WAAW,GAAG,oCAAoC,CAAA;AACxD,IAAM,cAAc,GAAG,oCAAoC,CAAA;AAC3D,IAAM,uBAAuB,GAAG,qBAAqB,CAAA;AAErD,8EAA8E;AAC9E,oEAAoE;AACpE,wEAAwE;AACxE,yEAAyE;AACzE,2DAA2D;AAC3D;IAAA;IAyDA,CAAC;IAxDO,8CAAS,GAAf,UAAgB,SAAiC;;;gBAC/C,sBAAO,SAAS,EAAA;;;KACjB;IAEK,6CAAQ,GAAd,UAAe,SAAiC;;;;;gBACtC,IAAI,GAAY,SAAS,KAArB,EAAE,KAAK,GAAK,SAAS,MAAd,CAAc;gBAEjC,IAAI,CAAC,CAAA,MAAA,IAAI,CAAC,SAAS,0CAAE,OAAO,CAAA,EAAE;oBAC5B,sBAAO,SAAS,EAAA;iBACjB;gBAED,KAAK,CAAC,GAAG,CAAC,wBAAwB,EAAE;oBAClC,IAAI,EAAE,CAAC,KAAK,CAAC;oBACb,KAAK,EAAE;wBACL;4BACE,IAAI,EAAE,oBAAoB;4BAC1B,QAAQ,EAAE,yBAAQ,CAAC,EAAE;4BACrB,OAAO,EAAE,+BAAc;yBACxB;qBACF;iBACF,CAAC,CAAA;gBAEF,KAAK,CAAC,GAAG,CAAC,4BAA4B,EAAE;oBACtC,IAAI,EAAE,CAAC,YAAY,EAAE,WAAW,CAAC;oBACjC,KAAK,EAAE;wBACL;4BACE,IAAI,EAAE,kBAAkB;4BACxB,QAAQ,EAAE,yBAAQ,CAAC,EAAE;4BACrB,OAAO,EAAE,4CAAwB;yBAClC;qBACF;iBACF,CAAC,CAAA;gBAEF,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAA;gBAC1B,IAAA,4CAAoB,EAAC,SAAS,EAAE;oBAC9B,aAAa,EAAE,kBAAkB;oBACjC,eAAe,EAAE,4EAA4E;iBAC9F,CAAC,CAAA;gBAEF,sBAAO,SAAS,EAAA;;;KACjB;IAEO,oDAAe,GAAvB,UAAwB,IAAoC;QAC1D,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE;YACrB,IAAI,CAAC,OAAO,CAAC,GAAG,GAAG,EAAE,CAAA;SACtB;QAED,sEAAsE;QACtE,kEAAkE;QAClE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE;YAClC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,UAAG,uBAAuB,SAAG,WAAW,CAAE,CAAA;SAC3E;QACD,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE;YACrC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,GAAG,UAAG,uBAAuB,SAAG,cAAc,CAAE,CAAA;SACjF;IACH,CAAC;IACH,iCAAC;AAAD,CAAC,AAzDD,IAyDC;AAzDY,gEAA0B"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { ProjectPluginStructure } from '@teleporthq/teleport-types';
|
|
2
|
+
/**
|
|
3
|
+
* Injects a null-rendering client component as a sibling of the app's returned
|
|
4
|
+
* JSX in `pages/_app`. Proven string-surgery (shared by the analytics tracker
|
|
5
|
+
* and the nav active-link highlighter): add the import before the first import,
|
|
6
|
+
* then wrap the returned JSX in a fragment with `<Component />` as a sibling.
|
|
7
|
+
*
|
|
8
|
+
* Idempotent — a second call for the same `componentName` is a no-op. Safe: if
|
|
9
|
+
* `_app` cannot be located or parsed, the structure is left untouched.
|
|
10
|
+
*/
|
|
11
|
+
export declare function injectSiblingIntoApp(structure: ProjectPluginStructure, params: {
|
|
12
|
+
componentName: string;
|
|
13
|
+
importStatement: string;
|
|
14
|
+
}): void;
|
|
15
|
+
//# sourceMappingURL=app-sibling-injection.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"app-sibling-injection.d.ts","sourceRoot":"","sources":["../../src/app-sibling-injection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,sBAAsB,EAAE,MAAM,4BAA4B,CAAA;AAElF;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAClC,SAAS,EAAE,sBAAsB,EACjC,MAAM,EAAE;IAAE,aAAa,EAAE,MAAM,CAAC;IAAC,eAAe,EAAE,MAAM,CAAA;CAAE,GACzD,IAAI,CAkDN"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.injectSiblingIntoApp = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Injects a null-rendering client component as a sibling of the app's returned
|
|
6
|
+
* JSX in `pages/_app`. Proven string-surgery (shared by the analytics tracker
|
|
7
|
+
* and the nav active-link highlighter): add the import before the first import,
|
|
8
|
+
* then wrap the returned JSX in a fragment with `<Component />` as a sibling.
|
|
9
|
+
*
|
|
10
|
+
* Idempotent — a second call for the same `componentName` is a no-op. Safe: if
|
|
11
|
+
* `_app` cannot be located or parsed, the structure is left untouched.
|
|
12
|
+
*/
|
|
13
|
+
function injectSiblingIntoApp(structure, params) {
|
|
14
|
+
var _a;
|
|
15
|
+
var files = structure.files;
|
|
16
|
+
var componentName = params.componentName, importStatement = params.importStatement;
|
|
17
|
+
var appFile = null;
|
|
18
|
+
for (var _i = 0, _b = Array.from(files.entries()); _i < _b.length; _i++) {
|
|
19
|
+
var _c = _b[_i], key = _c[0], record = _c[1];
|
|
20
|
+
if (key === '_app' || key.includes('_app')) {
|
|
21
|
+
var found = (_a = record.files) === null || _a === void 0 ? void 0 : _a.find(function (file) {
|
|
22
|
+
return file.name === '_app' && (file.fileType === 'js' || file.fileType === 'tsx');
|
|
23
|
+
});
|
|
24
|
+
if (found) {
|
|
25
|
+
appFile = found;
|
|
26
|
+
break;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
if (!appFile || typeof appFile.content !== 'string') {
|
|
31
|
+
return;
|
|
32
|
+
}
|
|
33
|
+
if (appFile.content.includes(componentName)) {
|
|
34
|
+
return;
|
|
35
|
+
}
|
|
36
|
+
var content = appFile.content;
|
|
37
|
+
var firstImportIdx = content.indexOf('import ');
|
|
38
|
+
if (firstImportIdx >= 0) {
|
|
39
|
+
content = content.slice(0, firstImportIdx) + importStatement + content.slice(firstImportIdx);
|
|
40
|
+
}
|
|
41
|
+
else {
|
|
42
|
+
content = importStatement + content;
|
|
43
|
+
}
|
|
44
|
+
var returnMatch = content.match(/return\s*\(\s*/);
|
|
45
|
+
if (returnMatch && returnMatch.index !== undefined) {
|
|
46
|
+
var afterReturn = returnMatch.index + returnMatch[0].length;
|
|
47
|
+
var restContent = content.slice(afterReturn);
|
|
48
|
+
var closingParenIdx = findMatchingClosingParen(restContent);
|
|
49
|
+
if (closingParenIdx >= 0) {
|
|
50
|
+
var innerJSX = restContent.slice(0, closingParenIdx);
|
|
51
|
+
var afterClosing = restContent.slice(closingParenIdx);
|
|
52
|
+
// Both halves of the fragment are required — omitting `</>` produces a
|
|
53
|
+
// syntax error in _app.js.
|
|
54
|
+
content =
|
|
55
|
+
content.slice(0, afterReturn) + "<>".concat(innerJSX, "<").concat(componentName, " /></>") + afterClosing;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
appFile.content = content;
|
|
59
|
+
}
|
|
60
|
+
exports.injectSiblingIntoApp = injectSiblingIntoApp;
|
|
61
|
+
function findMatchingClosingParen(str) {
|
|
62
|
+
var depth = 0;
|
|
63
|
+
for (var i = 0; i < str.length; i++) {
|
|
64
|
+
var ch = str[i];
|
|
65
|
+
if (ch === '(') {
|
|
66
|
+
depth++;
|
|
67
|
+
}
|
|
68
|
+
if (ch === ')') {
|
|
69
|
+
if (depth === 0) {
|
|
70
|
+
return i;
|
|
71
|
+
}
|
|
72
|
+
depth--;
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
return -1;
|
|
76
|
+
}
|
|
77
|
+
//# sourceMappingURL=app-sibling-injection.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"app-sibling-injection.js","sourceRoot":"","sources":["../../src/app-sibling-injection.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAiC,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAIzF,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAA;AAC3D,OAAO,YAAY,MAAM,oBAAoB,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAiC,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAIzF,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAA;AAC3D,OAAO,YAAY,MAAM,oBAAoB,CAAA;AA8B7C;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,eAAO,MAAM,wBAAwB,QAAO,aAAa,EAgBxD,CAAA;AAED,QAAA,MAAM,0BAA0B,yEA+H/B,CAAA;AAED,OAAO,EAAE,0BAA0B,EAAE,kBAAkB,EAAE,YAAY,EAAE,CAAA;AACvE,OAAO,EAAE,oCAAoC,EAAE,MAAM,iCAAiC,CAAA;AACtF,OAAO,EAAE,4BAA4B,EAAE,MAAM,+BAA+B,CAAA;AAC5E,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAA;AAClE,OAAO,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAA;AACvE,OAAO,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAA;AACvE,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAA;AACrE,OAAO,EAAE,+BAA+B,EAAE,MAAM,mCAAmC,CAAA;AACnF,OAAO,EAAE,mCAAmC,EAAE,MAAM,qCAAqC,CAAA;AACzF,OAAO,EAAE,4BAA4B,EAAE,MAAM,2BAA2B,CAAA;AACxE,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAA;AACjF,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAA;AACtE,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAA;AACjE,OAAO,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAA;AAIvE,OAAO,EAAE,8BAA8B,EAAE,MAAM,WAAW,CAAA;AAC1D,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAA;AAC/E,OAAO,EAAE,2BAA2B,EAAE,MAAM,8BAA8B,CAAA;AAC1E,OAAO,EAAE,8BAA8B,EAAE,MAAM,iCAAiC,CAAA;AAChF,OAAO,EACL,8BAA8B,EAC9B,qCAAqC,GACtC,MAAM,+BAA+B,CAAA;AACtC,OAAO,EAAE,4BAA4B,EAAE,MAAM,+BAA+B,CAAA;AAC5E,OAAO,EAAE,2BAA2B,EAAE,MAAM,gCAAgC,CAAA;AAC5E,OAAO,EAAE,gCAAgC,EAAE,MAAM,4BAA4B,CAAA;AAC7E,OAAO,EAAE,2BAA2B,EAAE,MAAM,8BAA8B,CAAA;AAC1E,OAAO,EAAE,yBAAyB,EAAE,MAAM,4CAA4C,CAAA;AACtF,OAAO,EAAE,6BAA6B,EAAE,MAAM,iDAAiD,CAAA;AAC/F,OAAO,EAAE,oCAAoC,EAAE,MAAM,gDAAgD,CAAA;AACrG,OAAO,EAAE,8BAA8B,EAAE,MAAM,iCAAiC,CAAA;AAChF,OAAO,EACL,+BAA+B,EAC/B,mCAAmC,GACpC,MAAM,8CAA8C,CAAA;AACrD,OAAO,EAAE,0BAA0B,EAAE,MAAM,WAAW,CAAA;AACtD,YAAY,EACV,2BAA2B,EAC3B,uBAAuB,EACvB,oBAAoB,GACrB,MAAM,WAAW,CAAA;AAClB,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAChD,YAAY,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA"}
|
package/dist/cjs/index.js
CHANGED
|
@@ -43,14 +43,15 @@ var component_plugin_1 = require("./global-state/component-plugin");
|
|
|
43
43
|
var project_plugin_1 = require("./global-state/project-plugin");
|
|
44
44
|
var project_plugin_2 = require("./ai-chat/project-plugin");
|
|
45
45
|
var project_plugin_3 = require("./analytics/project-plugin");
|
|
46
|
-
var project_plugin_4 = require("./
|
|
46
|
+
var project_plugin_4 = require("./nav-active-link/project-plugin");
|
|
47
|
+
var project_plugin_5 = require("./ecommerce/project-plugin");
|
|
47
48
|
var dashboard_layout_plugin_1 = require("./dashboard-layout-plugin");
|
|
48
|
-
var
|
|
49
|
+
var project_plugin_6 = require("./rich-text-editor/project-plugin");
|
|
49
50
|
var component_plugin_2 = require("./rich-text-editor/component-plugin");
|
|
50
|
-
var
|
|
51
|
-
var
|
|
52
|
-
var
|
|
53
|
-
var
|
|
51
|
+
var project_plugin_7 = require("./calendar/project-plugin");
|
|
52
|
+
var project_plugin_8 = require("./drag-drop/project-plugin");
|
|
53
|
+
var project_plugin_9 = require("./kanban/project-plugin");
|
|
54
|
+
var project_plugin_10 = require("./countdown/project-plugin");
|
|
54
55
|
var widgets_1 = require("./widgets");
|
|
55
56
|
var local_component_path_plugin_1 = require("./local-component-path-plugin");
|
|
56
57
|
/**
|
|
@@ -81,16 +82,17 @@ var createNextProjectPlugins = function () { return __spreadArray([
|
|
|
81
82
|
new data_source_dependencies_1.NextDataSourceDependenciesPlugin(),
|
|
82
83
|
new data_source_utility_plugin_1.NextDataSourceUtilityPlugin(),
|
|
83
84
|
new teleport_plugin_next_workflows_1.NextWorkflowProjectPlugin(),
|
|
84
|
-
new
|
|
85
|
+
new project_plugin_5.NextEcommerceProjectPlugin(),
|
|
85
86
|
new project_plugin_1.NextGlobalStateProjectPlugin(),
|
|
86
87
|
new project_plugin_2.NextAIChatProjectPlugin(),
|
|
87
88
|
new project_plugin_3.NextAnalyticsProjectPlugin(),
|
|
89
|
+
new project_plugin_4.NextNavActiveLinkProjectPlugin(),
|
|
88
90
|
new dashboard_layout_plugin_1.NextDashboardLayoutPlugin(),
|
|
89
|
-
new
|
|
90
|
-
new
|
|
91
|
-
new
|
|
92
|
-
new
|
|
93
|
-
new
|
|
91
|
+
new project_plugin_6.NextRichTextEditorProjectPlugin(),
|
|
92
|
+
new project_plugin_7.NextCalendarKitProjectPlugin(),
|
|
93
|
+
new project_plugin_8.NextDragDropProjectPlugin(),
|
|
94
|
+
new project_plugin_9.NextKanbanProjectPlugin(),
|
|
95
|
+
new project_plugin_10.NextCountdownProjectPlugin()
|
|
94
96
|
], (0, widgets_1.createNextWidgetProjectPlugins)(), true); };
|
|
95
97
|
exports.createNextProjectPlugins = createNextProjectPlugins;
|
|
96
98
|
var createNextProjectGenerator = function () {
|
|
@@ -220,31 +222,31 @@ var createNextProjectGenerator = function () {
|
|
|
220
222
|
exports.createNextProjectGenerator = createNextProjectGenerator;
|
|
221
223
|
var component_plugin_3 = require("./global-state/component-plugin");
|
|
222
224
|
Object.defineProperty(exports, "createNextGlobalStateComponentPlugin", { enumerable: true, get: function () { return component_plugin_3.createNextGlobalStateComponentPlugin; } });
|
|
223
|
-
var
|
|
224
|
-
Object.defineProperty(exports, "NextGlobalStateProjectPlugin", { enumerable: true, get: function () { return
|
|
225
|
-
var
|
|
226
|
-
Object.defineProperty(exports, "NextAIChatProjectPlugin", { enumerable: true, get: function () { return
|
|
227
|
-
var
|
|
228
|
-
Object.defineProperty(exports, "NextAnalyticsProjectPlugin", { enumerable: true, get: function () { return
|
|
229
|
-
var
|
|
230
|
-
Object.defineProperty(exports, "NextEcommerceProjectPlugin", { enumerable: true, get: function () { return
|
|
225
|
+
var project_plugin_11 = require("./global-state/project-plugin");
|
|
226
|
+
Object.defineProperty(exports, "NextGlobalStateProjectPlugin", { enumerable: true, get: function () { return project_plugin_11.NextGlobalStateProjectPlugin; } });
|
|
227
|
+
var project_plugin_12 = require("./ai-chat/project-plugin");
|
|
228
|
+
Object.defineProperty(exports, "NextAIChatProjectPlugin", { enumerable: true, get: function () { return project_plugin_12.NextAIChatProjectPlugin; } });
|
|
229
|
+
var project_plugin_13 = require("./analytics/project-plugin");
|
|
230
|
+
Object.defineProperty(exports, "NextAnalyticsProjectPlugin", { enumerable: true, get: function () { return project_plugin_13.NextAnalyticsProjectPlugin; } });
|
|
231
|
+
var project_plugin_14 = require("./ecommerce/project-plugin");
|
|
232
|
+
Object.defineProperty(exports, "NextEcommerceProjectPlugin", { enumerable: true, get: function () { return project_plugin_14.NextEcommerceProjectPlugin; } });
|
|
231
233
|
var dashboard_layout_plugin_2 = require("./dashboard-layout-plugin");
|
|
232
234
|
Object.defineProperty(exports, "NextDashboardLayoutPlugin", { enumerable: true, get: function () { return dashboard_layout_plugin_2.NextDashboardLayoutPlugin; } });
|
|
233
|
-
var
|
|
234
|
-
Object.defineProperty(exports, "NextRichTextEditorProjectPlugin", { enumerable: true, get: function () { return
|
|
235
|
+
var project_plugin_15 = require("./rich-text-editor/project-plugin");
|
|
236
|
+
Object.defineProperty(exports, "NextRichTextEditorProjectPlugin", { enumerable: true, get: function () { return project_plugin_15.NextRichTextEditorProjectPlugin; } });
|
|
235
237
|
var component_plugin_4 = require("./rich-text-editor/component-plugin");
|
|
236
238
|
Object.defineProperty(exports, "createRichTextEditorComponentPlugin", { enumerable: true, get: function () { return component_plugin_4.createRichTextEditorComponentPlugin; } });
|
|
237
|
-
var
|
|
238
|
-
Object.defineProperty(exports, "NextCalendarKitProjectPlugin", { enumerable: true, get: function () { return
|
|
239
|
+
var project_plugin_16 = require("./calendar/project-plugin");
|
|
240
|
+
Object.defineProperty(exports, "NextCalendarKitProjectPlugin", { enumerable: true, get: function () { return project_plugin_16.NextCalendarKitProjectPlugin; } });
|
|
239
241
|
var calendarkit_css_1 = require("./calendar/calendarkit-css");
|
|
240
242
|
Object.defineProperty(exports, "CALENDARKIT_CSS", { enumerable: true, get: function () { return calendarkit_css_1.CALENDARKIT_CSS; } });
|
|
241
243
|
Object.defineProperty(exports, "CALENDARKIT_VERSION", { enumerable: true, get: function () { return calendarkit_css_1.CALENDARKIT_VERSION; } });
|
|
242
|
-
var
|
|
243
|
-
Object.defineProperty(exports, "NextDragDropProjectPlugin", { enumerable: true, get: function () { return
|
|
244
|
-
var
|
|
245
|
-
Object.defineProperty(exports, "NextKanbanProjectPlugin", { enumerable: true, get: function () { return
|
|
246
|
-
var
|
|
247
|
-
Object.defineProperty(exports, "NextCountdownProjectPlugin", { enumerable: true, get: function () { return
|
|
244
|
+
var project_plugin_17 = require("./drag-drop/project-plugin");
|
|
245
|
+
Object.defineProperty(exports, "NextDragDropProjectPlugin", { enumerable: true, get: function () { return project_plugin_17.NextDragDropProjectPlugin; } });
|
|
246
|
+
var project_plugin_18 = require("./kanban/project-plugin");
|
|
247
|
+
Object.defineProperty(exports, "NextKanbanProjectPlugin", { enumerable: true, get: function () { return project_plugin_18.NextKanbanProjectPlugin; } });
|
|
248
|
+
var project_plugin_19 = require("./countdown/project-plugin");
|
|
249
|
+
Object.defineProperty(exports, "NextCountdownProjectPlugin", { enumerable: true, get: function () { return project_plugin_19.NextCountdownProjectPlugin; } });
|
|
248
250
|
// Re-exported so `packProject` (in @teleporthq/teleport-code-generator) can re-add
|
|
249
251
|
// the npm-backed widget primitives after it calls cleanPlugins(); the plugins
|
|
250
252
|
// registered inside createNextProjectGenerator are wiped by that path.
|
package/dist/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,sHAAuE;AACvE,8GAAwE;AACxE,oHAAkF;AAClF,qFAA+E;AAC/E,yFAAmF;AACnF,qGAA8F;AAC9F,+FAAuF;AACvF,mGAAuF;AACvF,mGAAuF;AACvF,mGAGsD;AACtD,iGAGqD;AACrD,6DAAyF;AACzF,uEAAwE;AACxE,iCAA0E;AAC1E,uEAAwE;AACxE,+DAA2D;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export declare const NAV_ACTIVE_LINK_COMPONENT_SOURCE = "import { useEffect } from 'react'\nimport { useRouter } from 'next/router'\n\n// Containers whose <a> descendants are navigation links.\nconst NAV_CONTAINERS = 'nav, [role=\"navigation\"], [class*=\"navigation\"], [class*=\"sidebar\"], [class*=\"navbar\"]'\n// The visible element the CSS styles as active may be the <a> itself or an\n// inner wrapper carrying the shared base class (e.g. <a><div class=\"navigation-link\">).\nconst ACTIVE_TARGET_TOKENS = ['navigation-link', 'nav-link', 'sidebar-link', 'nav-item', 'menu-item']\n\nfunction normalizePath(path) {\n if (!path) return '/'\n const clean = path.split('#')[0].split('?')[0]\n const trimmed = clean.replace(/\\/+$/, '')\n return trimmed === '' ? '/' : trimmed\n}\n\nfunction collectActiveTargets(anchor) {\n const targets = [anchor]\n const descendants = anchor.querySelectorAll('*')\n for (let i = 0; i < descendants.length; i++) {\n const el = descendants[i]\n const tokens = (el.getAttribute('class') || '').split(/\\s+/)\n for (let t = 0; t < tokens.length; t++) {\n if (ACTIVE_TARGET_TOKENS.indexOf(tokens[t]) !== -1) {\n targets.push(el)\n break\n }\n }\n }\n return targets\n}\n\nconst NavActiveLinks = () => {\n const router = useRouter()\n\n useEffect(() => {\n const apply = () => {\n try {\n const current = normalizePath(router.asPath)\n const seen = new Set()\n const containers = document.querySelectorAll(NAV_CONTAINERS)\n containers.forEach((container) => {\n const anchors = container.querySelectorAll('a[href]')\n anchors.forEach((anchor) => {\n if (seen.has(anchor)) return\n seen.add(anchor)\n const raw = anchor.getAttribute('href') || ''\n const linkable = raw && raw.charAt(0) !== '#' && !/^(https?:|mailto:|tel:)/i.test(raw)\n const isActive = linkable && normalizePath(raw) === current\n const targets = collectActiveTargets(anchor)\n targets.forEach((el) => {\n if (isActive) {\n el.classList.add('active')\n } else {\n el.classList.remove('active')\n }\n })\n if (isActive) {\n anchor.setAttribute('aria-current', 'page')\n } else if (anchor.getAttribute('aria-current') === 'page') {\n anchor.removeAttribute('aria-current')\n }\n })\n })\n } catch (err) {\n // Highlighting is best-effort \u2014 never let it break the page.\n }\n }\n\n apply()\n router.events.on('routeChangeComplete', apply)\n return () => {\n router.events.off('routeChangeComplete', apply)\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [router.asPath])\n\n return null\n}\n\nexport default NavActiveLinks\n";
|
|
2
|
+
//# sourceMappingURL=nav-active-link-component.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nav-active-link-component.d.ts","sourceRoot":"","sources":["../../../src/nav-active-link/nav-active-link-component.ts"],"names":[],"mappings":"AAcA,eAAO,MAAM,gCAAgC,ozFAiF5C,CAAA"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.NAV_ACTIVE_LINK_COMPONENT_SOURCE = void 0;
|
|
4
|
+
// Source of the generated `components/nav-active-links.js` — a null-rendering
|
|
5
|
+
// client component (mounted once in _app) that marks the navigation link
|
|
6
|
+
// matching the CURRENT route as active.
|
|
7
|
+
//
|
|
8
|
+
// The code generator deliberately emits every nav link with the SAME base
|
|
9
|
+
// class and NO hardcoded `active` / `aria-current` — a hardcoded active makes
|
|
10
|
+
// one link (e.g. "Taproom"/"Dashboard") look selected on EVERY page. This
|
|
11
|
+
// helper adds the `active` class + `aria-current="page"` to the link whose
|
|
12
|
+
// href matches the current page and REMOVES it from the others, on first paint
|
|
13
|
+
// and on every client-side route change. Removing it from non-matching links
|
|
14
|
+
// also self-corrects a link the generator may have accidentally left marked.
|
|
15
|
+
//
|
|
16
|
+
// It is purely additive: it never touches href/onClick, and the whole pass is
|
|
17
|
+
// wrapped in try/catch, so it can never break navigation.
|
|
18
|
+
exports.NAV_ACTIVE_LINK_COMPONENT_SOURCE = "import { useEffect } from 'react'\nimport { useRouter } from 'next/router'\n\n// Containers whose <a> descendants are navigation links.\nconst NAV_CONTAINERS = 'nav, [role=\"navigation\"], [class*=\"navigation\"], [class*=\"sidebar\"], [class*=\"navbar\"]'\n// The visible element the CSS styles as active may be the <a> itself or an\n// inner wrapper carrying the shared base class (e.g. <a><div class=\"navigation-link\">).\nconst ACTIVE_TARGET_TOKENS = ['navigation-link', 'nav-link', 'sidebar-link', 'nav-item', 'menu-item']\n\nfunction normalizePath(path) {\n if (!path) return '/'\n const clean = path.split('#')[0].split('?')[0]\n const trimmed = clean.replace(/\\/+$/, '')\n return trimmed === '' ? '/' : trimmed\n}\n\nfunction collectActiveTargets(anchor) {\n const targets = [anchor]\n const descendants = anchor.querySelectorAll('*')\n for (let i = 0; i < descendants.length; i++) {\n const el = descendants[i]\n const tokens = (el.getAttribute('class') || '').split(/\\s+/)\n for (let t = 0; t < tokens.length; t++) {\n if (ACTIVE_TARGET_TOKENS.indexOf(tokens[t]) !== -1) {\n targets.push(el)\n break\n }\n }\n }\n return targets\n}\n\nconst NavActiveLinks = () => {\n const router = useRouter()\n\n useEffect(() => {\n const apply = () => {\n try {\n const current = normalizePath(router.asPath)\n const seen = new Set()\n const containers = document.querySelectorAll(NAV_CONTAINERS)\n containers.forEach((container) => {\n const anchors = container.querySelectorAll('a[href]')\n anchors.forEach((anchor) => {\n if (seen.has(anchor)) return\n seen.add(anchor)\n const raw = anchor.getAttribute('href') || ''\n const linkable = raw && raw.charAt(0) !== '#' && !/^(https?:|mailto:|tel:)/i.test(raw)\n const isActive = linkable && normalizePath(raw) === current\n const targets = collectActiveTargets(anchor)\n targets.forEach((el) => {\n if (isActive) {\n el.classList.add('active')\n } else {\n el.classList.remove('active')\n }\n })\n if (isActive) {\n anchor.setAttribute('aria-current', 'page')\n } else if (anchor.getAttribute('aria-current') === 'page') {\n anchor.removeAttribute('aria-current')\n }\n })\n })\n } catch (err) {\n // Highlighting is best-effort \u2014 never let it break the page.\n }\n }\n\n apply()\n router.events.on('routeChangeComplete', apply)\n return () => {\n router.events.off('routeChangeComplete', apply)\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [router.asPath])\n\n return null\n}\n\nexport default NavActiveLinks\n";
|
|
19
|
+
//# sourceMappingURL=nav-active-link-component.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nav-active-link-component.js","sourceRoot":"","sources":["../../../src/nav-active-link/nav-active-link-component.ts"],"names":[],"mappings":";;;AAAA,8EAA8E;AAC9E,yEAAyE;AACzE,wCAAwC;AACxC,EAAE;AACF,0EAA0E;AAC1E,8EAA8E;AAC9E,0EAA0E;AAC1E,2EAA2E;AAC3E,+EAA+E;AAC/E,6EAA6E;AAC7E,6EAA6E;AAC7E,EAAE;AACF,8EAA8E;AAC9E,0DAA0D;AAC7C,QAAA,gCAAgC,GAAG,izFAiF/C,CAAA"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { ProjectPlugin, ProjectPluginStructure } from '@teleporthq/teleport-types';
|
|
2
|
+
export declare class NextNavActiveLinkProjectPlugin implements ProjectPlugin {
|
|
3
|
+
runBefore(structure: ProjectPluginStructure): Promise<ProjectPluginStructure>;
|
|
4
|
+
runAfter(structure: ProjectPluginStructure): Promise<ProjectPluginStructure>;
|
|
5
|
+
}
|
|
6
|
+
//# sourceMappingURL=project-plugin.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-plugin.d.ts","sourceRoot":"","sources":["../../../src/nav-active-link/project-plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,aAAa,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAA;AAS5F,qBAAa,8BAA+B,YAAW,aAAa;IAC5D,SAAS,CAAC,SAAS,EAAE,sBAAsB,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAI7E,QAAQ,CAAC,SAAS,EAAE,sBAAsB,GAAG,OAAO,CAAC,sBAAsB,CAAC;CAqBnF"}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
+
function step(op) {
|
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
18
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
+
switch (op[0]) {
|
|
21
|
+
case 0: case 1: t = op; break;
|
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
+
default:
|
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
+
if (t[2]) _.ops.pop();
|
|
31
|
+
_.trys.pop(); continue;
|
|
32
|
+
}
|
|
33
|
+
op = body.call(thisArg, _);
|
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.NextNavActiveLinkProjectPlugin = void 0;
|
|
40
|
+
var teleport_types_1 = require("@teleporthq/teleport-types");
|
|
41
|
+
var nav_active_link_component_1 = require("./nav-active-link-component");
|
|
42
|
+
var app_sibling_injection_1 = require("../app-sibling-injection");
|
|
43
|
+
// Ships a tiny first-party navigation active-link highlighter with EVERY Next
|
|
44
|
+
// project. The link matching the current route gets `active` + `aria-current`
|
|
45
|
+
// at render time, so the generator never has to hardcode which link is active
|
|
46
|
+
// (a hardcoded active makes one link look selected on every page). The
|
|
47
|
+
// component is null-rendering and self-contained (no npm dependency).
|
|
48
|
+
var NextNavActiveLinkProjectPlugin = /** @class */ (function () {
|
|
49
|
+
function NextNavActiveLinkProjectPlugin() {
|
|
50
|
+
}
|
|
51
|
+
NextNavActiveLinkProjectPlugin.prototype.runBefore = function (structure) {
|
|
52
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
53
|
+
return __generator(this, function (_a) {
|
|
54
|
+
return [2 /*return*/, structure];
|
|
55
|
+
});
|
|
56
|
+
});
|
|
57
|
+
};
|
|
58
|
+
NextNavActiveLinkProjectPlugin.prototype.runAfter = function (structure) {
|
|
59
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
60
|
+
var files;
|
|
61
|
+
return __generator(this, function (_a) {
|
|
62
|
+
files = structure.files;
|
|
63
|
+
files.set('nav-active-links', {
|
|
64
|
+
path: ['components'],
|
|
65
|
+
files: [
|
|
66
|
+
{
|
|
67
|
+
name: 'nav-active-links',
|
|
68
|
+
fileType: teleport_types_1.FileType.JS,
|
|
69
|
+
content: nav_active_link_component_1.NAV_ACTIVE_LINK_COMPONENT_SOURCE,
|
|
70
|
+
},
|
|
71
|
+
],
|
|
72
|
+
});
|
|
73
|
+
(0, app_sibling_injection_1.injectSiblingIntoApp)(structure, {
|
|
74
|
+
componentName: 'NavActiveLinks',
|
|
75
|
+
importStatement: "import NavActiveLinks from '../components/nav-active-links';\n",
|
|
76
|
+
});
|
|
77
|
+
return [2 /*return*/, structure];
|
|
78
|
+
});
|
|
79
|
+
});
|
|
80
|
+
};
|
|
81
|
+
return NextNavActiveLinkProjectPlugin;
|
|
82
|
+
}());
|
|
83
|
+
exports.NextNavActiveLinkProjectPlugin = NextNavActiveLinkProjectPlugin;
|
|
84
|
+
//# sourceMappingURL=project-plugin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-plugin.js","sourceRoot":"","sources":["../../../src/nav-active-link/project-plugin.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6DAA4F;AAC5F,yEAA8E;AAC9E,kEAA+D;AAE/D,8EAA8E;AAC9E,8EAA8E;AAC9E,8EAA8E;AAC9E,uEAAuE;AACvE,sEAAsE;AACtE;IAAA;IA0BA,CAAC;IAzBO,kDAAS,GAAf,UAAgB,SAAiC;;;gBAC/C,sBAAO,SAAS,EAAA;;;KACjB;IAEK,iDAAQ,GAAd,UAAe,SAAiC;;;;gBACtC,KAAK,GAAK,SAAS,MAAd,CAAc;gBAE3B,KAAK,CAAC,GAAG,CAAC,kBAAkB,EAAE;oBAC5B,IAAI,EAAE,CAAC,YAAY,CAAC;oBACpB,KAAK,EAAE;wBACL;4BACE,IAAI,EAAE,kBAAkB;4BACxB,QAAQ,EAAE,yBAAQ,CAAC,EAAE;4BACrB,OAAO,EAAE,4DAAgC;yBAC1C;qBACF;iBACF,CAAC,CAAA;gBAEF,IAAA,4CAAoB,EAAC,SAAS,EAAE;oBAC9B,aAAa,EAAE,gBAAgB;oBAC/B,eAAe,EAAE,gEAAgE;iBAClF,CAAC,CAAA;gBAEF,sBAAO,SAAS,EAAA;;;KACjB;IACH,qCAAC;AAAD,CAAC,AA1BD,IA0BC;AA1BY,wEAA8B"}
|