flavor-code 1.4.2 → 1.4.3
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/README.md +53 -1
- package/README.zh-CN.md +53 -1
- package/dist/agent/loop.d.ts +1 -0
- package/dist/{app-4CUS3GEJ.js → app-TVY2HM5L.js} +891 -604
- package/dist/apply-WOW3QU5I.js +51 -0
- package/dist/broker-cli-X5H46FZV.js +15 -0
- package/dist/check-CSKTV4O2.js +16 -0
- package/dist/chunk-3563SW4X.js +10513 -0
- package/dist/chunk-36IDJRLQ.js +630 -0
- package/dist/chunk-3UX2CGDW.js +1955 -0
- package/dist/chunk-4TMLXZVZ.js +75 -0
- package/dist/{chunk-7YFHRORG.js → chunk-5BDKRA6U.js} +412 -172
- package/dist/chunk-6F66UXBI.js +48 -0
- package/dist/{chunk-KMBDK4SN.js → chunk-6URQ7FIF.js} +24 -88
- package/dist/chunk-7Y64WNBB.js +8930 -0
- package/dist/chunk-AA4QNKTF.js +501 -0
- package/dist/chunk-BDX777JR.js +11 -0
- package/dist/chunk-CVP5OUHD.js +103 -0
- package/dist/chunk-EWD7FWTH.js +14547 -0
- package/dist/{chunk-N5MXHJKD.js → chunk-GTFP2R5I.js} +1 -1
- package/dist/{chunk-W2TIY6JY.js → chunk-IKGT4MDT.js} +2028 -516
- package/dist/chunk-IQEEFDEE.js +389 -0
- package/dist/chunk-IU3UBETC.js +30 -0
- package/dist/chunk-JQM2L2YM.js +1003 -0
- package/dist/chunk-KRWWCVXA.js +74 -0
- package/dist/chunk-OKHV7CTB.js +482 -0
- package/dist/chunk-ONRY3C2L.js +196 -0
- package/dist/chunk-PULWAH6E.js +474 -0
- package/dist/chunk-PZ5NKRVA.js +85 -0
- package/dist/chunk-QACFKPZP.js +43704 -0
- package/dist/chunk-RBAZLFKB.js +1022 -0
- package/dist/chunk-RV3EXUXM.js +30 -0
- package/dist/chunk-TIEOVQW6.js +61 -0
- package/dist/chunk-WLZUAVVU.js +15 -0
- package/dist/chunk-X442CJJH.js +114 -0
- package/dist/chunk-X6U6BO5D.js +2130 -0
- package/dist/{chunk-RAYH6K2H.js → chunk-Y7EH4NVO.js} +1 -1
- package/dist/{chunk-S32JRDZK.js → chunk-ZKKVSR37.js} +6 -1
- package/dist/{claude-ink-VQU3C5UL.js → claude-ink-F554I3GJ.js} +9 -4
- package/dist/cli-MAWCV2YR.js +163 -0
- package/dist/cli-main.js +3805 -473
- package/dist/cli.js +50 -4
- package/dist/config/load.d.ts +8 -0
- package/dist/config/protected-file.d.ts +2 -0
- package/dist/config/schema.d.ts +14 -0
- package/dist/context/global-instructions.d.ts +12 -0
- package/dist/context/manager.d.ts +4 -0
- package/dist/desktop/main.js +4943 -1562
- package/dist/desktop/preload.cjs +30 -0
- package/dist/desktop-renderer/assets/index-BWklSoOO.css +1 -0
- package/dist/desktop-renderer/assets/index-CjC0Ibiq.js +153 -0
- package/dist/desktop-renderer/assets/{interactive-terminal-ouQQ3brz.js → interactive-terminal-IjIT3Xoa.js} +1 -1
- package/dist/desktop-renderer/index.html +2 -2
- package/dist/doctor-SEL32R7M.js +20 -0
- package/dist/harness/local.d.ts +1 -0
- package/dist/load-RHWXNUCS.js +25 -0
- package/dist/log-ATFIPRNU.js +19 -0
- package/dist/manager-IYBNNKUP.js +191 -0
- package/dist/models/anthropic.d.ts +3 -0
- package/dist/node-LOIXT44J.js +879 -0
- package/dist/plugin-worker-entry.js +1 -1
- package/dist/production-TQROFEPV.js +46 -0
- package/dist/production.d.ts +28 -1
- package/dist/project-3QXE22TG.js +11 -0
- package/dist/react-M6JGXSJZ.js +7 -0
- package/dist/recorder-FAGJJH3N.js +11 -0
- package/dist/sdk/index.js +30 -8
- package/dist/server-2KLKPHPL.js +11 -0
- package/dist/session/store.d.ts +1 -0
- package/dist/store-MZZERW7K.js +18 -0
- package/dist/ui/commands.d.ts +11 -3
- package/dist/ui/session.d.ts +2 -1
- package/dist/usage-summary-G5FBOJLK.js +13 -0
- package/dist/write-stream-CGD57URC.js +77 -0
- package/package.json +1 -1
- package//346/212/200/346/234/257/346/226/271/346/241/210/346/212/245/345/221/212.md +649 -1
- package/dist/chunk-B23V72YR.js +0 -170
- package/dist/chunk-QKND3FX7.js +0 -26103
- package/dist/desktop-renderer/assets/index-Bk6FYhyh.css +0 -1
- package/dist/desktop-renderer/assets/index-CPXrzFgv.js +0 -154
- package/dist/load-UPOG3XQR.js +0 -19
|
@@ -0,0 +1,196 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import { createRequire as createFlavorRequire } from "node:module"; const require = createFlavorRequire(import.meta.url);
|
|
3
|
+
import {
|
|
4
|
+
external_exports
|
|
5
|
+
} from "./chunk-EWD7FWTH.js";
|
|
6
|
+
|
|
7
|
+
// src/config/schema.ts
|
|
8
|
+
var PERMISSION_MODES = [
|
|
9
|
+
"default",
|
|
10
|
+
"acceptEdits",
|
|
11
|
+
"plan",
|
|
12
|
+
"bypassPermissions",
|
|
13
|
+
"auto",
|
|
14
|
+
"bubble"
|
|
15
|
+
];
|
|
16
|
+
function normalizePermissionMode(value) {
|
|
17
|
+
if (value === "safe" || value === "workspace") return "default";
|
|
18
|
+
if (value === "full") return "bypassPermissions";
|
|
19
|
+
return value;
|
|
20
|
+
}
|
|
21
|
+
var PermissionModeSchema = external_exports.preprocess(
|
|
22
|
+
normalizePermissionMode,
|
|
23
|
+
external_exports.enum(PERMISSION_MODES).default("default")
|
|
24
|
+
);
|
|
25
|
+
var ProviderConfigSchema = external_exports.object({
|
|
26
|
+
type: external_exports.string(),
|
|
27
|
+
baseURL: external_exports.string().url().optional(),
|
|
28
|
+
apiKey: external_exports.string().optional(),
|
|
29
|
+
defaultModel: external_exports.string().min(1).optional(),
|
|
30
|
+
cheapModel: external_exports.string().min(1).optional(),
|
|
31
|
+
models: external_exports.array(external_exports.string().min(1)).max(100).optional(),
|
|
32
|
+
maxOutputTokens: external_exports.number().int().positive().optional(),
|
|
33
|
+
// Extended-thinking budget in output tokens for the Anthropic protocol.
|
|
34
|
+
// Defaults to DEFAULT_THINKING_BUDGET; set to 0 to disable the request
|
|
35
|
+
// parameter. Provider thinking deltas are forwarded whenever they arrive.
|
|
36
|
+
thinkingBudget: external_exports.number().int().min(0).optional(),
|
|
37
|
+
// Anthropic explicit prompt-cache lifetime. Omitted keeps the broadly
|
|
38
|
+
// compatible provider default (5 minutes); 1h trades higher writes for
|
|
39
|
+
// better reuse across longer pauses.
|
|
40
|
+
cacheTtl: external_exports.enum(["5m", "1h"]).optional(),
|
|
41
|
+
// Reasoning effort requested from the OpenAI Responses protocol (sent as
|
|
42
|
+
// reasoning.effort). The adapter defaults an omitted value to high.
|
|
43
|
+
thinkingEffort: external_exports.enum(["minimal", "low", "medium", "high", "xhigh", "ultra"]).optional(),
|
|
44
|
+
// Send the Claude Code client fingerprint (User-Agent/x-app) with Anthropic requests,
|
|
45
|
+
// for gateways that restrict the Anthropic protocol to Claude clients.
|
|
46
|
+
claudeClient: external_exports.boolean().optional(),
|
|
47
|
+
// OAuth PKCE fields
|
|
48
|
+
apiType: external_exports.enum(["openai", "anthropic"]).optional(),
|
|
49
|
+
authorizationUrl: external_exports.string().url().optional(),
|
|
50
|
+
tokenUrl: external_exports.string().url().optional(),
|
|
51
|
+
clientId: external_exports.string().min(1).optional(),
|
|
52
|
+
scope: external_exports.string().optional()
|
|
53
|
+
});
|
|
54
|
+
var McpServerCommonShape = {
|
|
55
|
+
disabled: external_exports.boolean().default(false),
|
|
56
|
+
timeoutMs: external_exports.number().int().min(100).max(30 * 6e4).default(6e4)
|
|
57
|
+
};
|
|
58
|
+
var McpStdioServerConfigSchema = external_exports.object({
|
|
59
|
+
command: external_exports.string().min(1),
|
|
60
|
+
args: external_exports.array(external_exports.string()).default([]),
|
|
61
|
+
env: external_exports.record(external_exports.string(), external_exports.string()).default({}),
|
|
62
|
+
cwd: external_exports.string().min(1).optional(),
|
|
63
|
+
...McpServerCommonShape
|
|
64
|
+
}).strict();
|
|
65
|
+
var McpHttpServerConfigSchema = external_exports.object({
|
|
66
|
+
url: external_exports.string().url().refine((value) => {
|
|
67
|
+
const protocol = new URL(value).protocol;
|
|
68
|
+
return protocol === "http:" || protocol === "https:";
|
|
69
|
+
}, "MCP HTTP URLs must use http or https"),
|
|
70
|
+
headers: external_exports.record(external_exports.string(), external_exports.string()).default({}),
|
|
71
|
+
...McpServerCommonShape
|
|
72
|
+
}).strict();
|
|
73
|
+
var McpServerConfigSchema = external_exports.union([
|
|
74
|
+
McpStdioServerConfigSchema,
|
|
75
|
+
McpHttpServerConfigSchema
|
|
76
|
+
]);
|
|
77
|
+
var McpServerNameSchema = external_exports.string().min(1).max(32).regex(/^[A-Za-z0-9_-]+$/, "MCP server names may contain only letters, digits, underscores, and hyphens");
|
|
78
|
+
var SkillNameSchema = external_exports.string().min(1).max(64).regex(/^[a-z0-9]+(?:-[a-z0-9]+)*$/, "Skill names must use lowercase letters, digits, and single hyphens");
|
|
79
|
+
var FlavorConfigSchema = external_exports.object({
|
|
80
|
+
sleep: external_exports.boolean().default(false),
|
|
81
|
+
providers: external_exports.record(external_exports.string(), ProviderConfigSchema).default({}),
|
|
82
|
+
mcpServers: external_exports.record(McpServerNameSchema, McpServerConfigSchema).default({}),
|
|
83
|
+
skills: external_exports.object({
|
|
84
|
+
disabled: external_exports.array(SkillNameSchema).max(1e3).default([])
|
|
85
|
+
}).prefault({}),
|
|
86
|
+
globalInstructions: external_exports.object({
|
|
87
|
+
enabled: external_exports.boolean().default(true)
|
|
88
|
+
}).prefault({}),
|
|
89
|
+
agents: external_exports.object({
|
|
90
|
+
main: external_exports.object({ model: external_exports.string() }).optional(),
|
|
91
|
+
subagent: external_exports.object({ model: external_exports.string() }).optional()
|
|
92
|
+
}).optional(),
|
|
93
|
+
maxSubagents: external_exports.number().int().min(1).max(16).default(3),
|
|
94
|
+
maxSessions: external_exports.number().int().min(1).max(1e3).default(50),
|
|
95
|
+
memory: external_exports.object({
|
|
96
|
+
enabled: external_exports.boolean().default(true),
|
|
97
|
+
autoExtract: external_exports.boolean().default(true),
|
|
98
|
+
autoExtractMinChars: external_exports.number().int().min(200).max(1e5).default(200),
|
|
99
|
+
scoreThreshold: external_exports.number().int().min(0).max(12).default(9),
|
|
100
|
+
autoStoreThreshold: external_exports.number().int().min(0).max(12).default(11),
|
|
101
|
+
ignoreStreakLimit: external_exports.number().int().min(2).max(100).default(5),
|
|
102
|
+
reviewAutoDismissSeconds: external_exports.number().int().min(0).max(300).default(5),
|
|
103
|
+
// One candidate per task is a deliberate memory-quality boundary, not a tunable range.
|
|
104
|
+
maxCandidatesPerTask: external_exports.literal(1).default(1),
|
|
105
|
+
retrievalTopK: external_exports.number().int().min(1).max(20).default(5),
|
|
106
|
+
maxEntries: external_exports.number().int().min(1).max(1e4).default(200),
|
|
107
|
+
maxEntryChars: external_exports.number().int().min(32).max(2e4).default(1e3),
|
|
108
|
+
maxPromptChars: external_exports.number().int().min(256).max(2e5).default(12e3)
|
|
109
|
+
}).prefault({}),
|
|
110
|
+
permissionMode: PermissionModeSchema,
|
|
111
|
+
execution: external_exports.object({
|
|
112
|
+
mode: external_exports.enum(["local", "docker"]).default("local"),
|
|
113
|
+
image: external_exports.string().trim().min(1).default("node:24-bookworm-slim"),
|
|
114
|
+
network: external_exports.boolean().default(false),
|
|
115
|
+
memory: external_exports.string().regex(/^[1-9][0-9]*(?:[kKmMgG])?$/).default("2g"),
|
|
116
|
+
cpus: external_exports.number().positive().max(64).default(2)
|
|
117
|
+
}).prefault({}),
|
|
118
|
+
language: external_exports.string().regex(/^[a-z]{2}(-[A-Z]{2})?$/, "language must be a BCP47 tag like zh-CN or en-US").optional(),
|
|
119
|
+
hallucination: external_exports.object({
|
|
120
|
+
showWarnings: external_exports.boolean().default(false),
|
|
121
|
+
evaluationTimeoutMs: external_exports.number().int().min(100).max(3e4).default(2e3)
|
|
122
|
+
}).prefault({}),
|
|
123
|
+
maxIterations: external_exports.object({
|
|
124
|
+
main: external_exports.number().int().min(10).max(500).default(300),
|
|
125
|
+
subagent: external_exports.number().int().min(10).max(200).default(100),
|
|
126
|
+
softLimitFactor: external_exports.number().min(0.5).max(1).default(0.8),
|
|
127
|
+
extendBy: external_exports.number().int().min(5).max(100).default(50)
|
|
128
|
+
}).prefault({}),
|
|
129
|
+
loop: external_exports.object({
|
|
130
|
+
maxCycles: external_exports.number().int().positive().max(1e4).default(100),
|
|
131
|
+
maxTokens: external_exports.number().int().positive().max(Number.MAX_SAFE_INTEGER).default(5e5),
|
|
132
|
+
isolation: external_exports.literal("auto").default("auto")
|
|
133
|
+
}).prefault({}),
|
|
134
|
+
goal: external_exports.object({
|
|
135
|
+
maxRounds: external_exports.number().int().positive().max(1e4).default(100),
|
|
136
|
+
maxStallStreak: external_exports.number().int().positive().max(100).default(3)
|
|
137
|
+
}).prefault({}),
|
|
138
|
+
context: external_exports.object({
|
|
139
|
+
windowTokens: external_exports.number().int().positive().default(2e5),
|
|
140
|
+
reservedOutputTokens: external_exports.number().int().nonnegative().default(2e4),
|
|
141
|
+
autoCompactBufferTokens: external_exports.number().int().nonnegative().default(27e3),
|
|
142
|
+
warningBufferTokens: external_exports.number().int().nonnegative().default(2e4),
|
|
143
|
+
blockingBufferTokens: external_exports.number().int().nonnegative().default(3e3),
|
|
144
|
+
microcompactKeepRecentToolResults: external_exports.number().int().nonnegative().default(5),
|
|
145
|
+
recentTokens: external_exports.number().int().nonnegative().default(1e4),
|
|
146
|
+
recentTextMessages: external_exports.number().int().nonnegative().default(5),
|
|
147
|
+
maxRecentTokens: external_exports.number().int().nonnegative().default(4e4),
|
|
148
|
+
/** @deprecated Character threshold retained for configuration compatibility. */
|
|
149
|
+
compactAtChars: external_exports.number().int().positive().optional(),
|
|
150
|
+
toolOutputChars: external_exports.number().int().positive().default(3e4)
|
|
151
|
+
}).superRefine((context, issue) => {
|
|
152
|
+
if (context.reservedOutputTokens >= context.windowTokens) issue.addIssue({
|
|
153
|
+
code: "custom",
|
|
154
|
+
path: ["reservedOutputTokens"],
|
|
155
|
+
message: "reservedOutputTokens must be below windowTokens"
|
|
156
|
+
});
|
|
157
|
+
if (context.maxRecentTokens < context.recentTokens) issue.addIssue({
|
|
158
|
+
code: "custom",
|
|
159
|
+
path: ["maxRecentTokens"],
|
|
160
|
+
message: "maxRecentTokens must be at least recentTokens"
|
|
161
|
+
});
|
|
162
|
+
}).prefault({}),
|
|
163
|
+
incidents: external_exports.object({
|
|
164
|
+
enabled: external_exports.boolean().default(false),
|
|
165
|
+
webhookUrl: external_exports.string().url().optional()
|
|
166
|
+
}).prefault({}),
|
|
167
|
+
evolve: external_exports.object({
|
|
168
|
+
promptTop: external_exports.number().int().min(1).max(10).default(3),
|
|
169
|
+
minRepeats: external_exports.number().int().min(2).max(100).default(2),
|
|
170
|
+
testCommand: external_exports.string().trim().min(1).default("npm test"),
|
|
171
|
+
testTimeoutMs: external_exports.number().int().min(1e3).max(6e5).default(12e4)
|
|
172
|
+
}).prefault({})
|
|
173
|
+
});
|
|
174
|
+
var CONFIG_TOP_LEVEL_KEYS = Object.keys(FlavorConfigSchema.shape);
|
|
175
|
+
function configPathSegments(key) {
|
|
176
|
+
const segments = key.split(".");
|
|
177
|
+
if (segments.length === 0 || segments.some((segment) => segment.length === 0)) {
|
|
178
|
+
throw new Error(`Invalid configuration key: "${key}". Use dot notation like "maxSessions" or "context.windowTokens".`);
|
|
179
|
+
}
|
|
180
|
+
if (!CONFIG_TOP_LEVEL_KEYS.includes(segments[0])) {
|
|
181
|
+
throw new Error(`Unknown configuration key: "${segments[0]}". Known keys: ${CONFIG_TOP_LEVEL_KEYS.join(", ")}.`);
|
|
182
|
+
}
|
|
183
|
+
return segments;
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
export {
|
|
187
|
+
PERMISSION_MODES,
|
|
188
|
+
normalizePermissionMode,
|
|
189
|
+
PermissionModeSchema,
|
|
190
|
+
ProviderConfigSchema,
|
|
191
|
+
McpServerConfigSchema,
|
|
192
|
+
McpServerNameSchema,
|
|
193
|
+
SkillNameSchema,
|
|
194
|
+
FlavorConfigSchema,
|
|
195
|
+
configPathSegments
|
|
196
|
+
};
|
|
@@ -0,0 +1,474 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import { createRequire as createFlavorRequire } from "node:module"; const require = createFlavorRequire(import.meta.url);
|
|
3
|
+
import {
|
|
4
|
+
__commonJS
|
|
5
|
+
} from "./chunk-ZKKVSR37.js";
|
|
6
|
+
|
|
7
|
+
// node_modules/react/cjs/react.production.js
|
|
8
|
+
var require_react_production = __commonJS({
|
|
9
|
+
"node_modules/react/cjs/react.production.js"(exports) {
|
|
10
|
+
"use strict";
|
|
11
|
+
var REACT_ELEMENT_TYPE = /* @__PURE__ */ Symbol.for("react.transitional.element");
|
|
12
|
+
var REACT_PORTAL_TYPE = /* @__PURE__ */ Symbol.for("react.portal");
|
|
13
|
+
var REACT_FRAGMENT_TYPE = /* @__PURE__ */ Symbol.for("react.fragment");
|
|
14
|
+
var REACT_STRICT_MODE_TYPE = /* @__PURE__ */ Symbol.for("react.strict_mode");
|
|
15
|
+
var REACT_PROFILER_TYPE = /* @__PURE__ */ Symbol.for("react.profiler");
|
|
16
|
+
var REACT_CONSUMER_TYPE = /* @__PURE__ */ Symbol.for("react.consumer");
|
|
17
|
+
var REACT_CONTEXT_TYPE = /* @__PURE__ */ Symbol.for("react.context");
|
|
18
|
+
var REACT_FORWARD_REF_TYPE = /* @__PURE__ */ Symbol.for("react.forward_ref");
|
|
19
|
+
var REACT_SUSPENSE_TYPE = /* @__PURE__ */ Symbol.for("react.suspense");
|
|
20
|
+
var REACT_MEMO_TYPE = /* @__PURE__ */ Symbol.for("react.memo");
|
|
21
|
+
var REACT_LAZY_TYPE = /* @__PURE__ */ Symbol.for("react.lazy");
|
|
22
|
+
var REACT_ACTIVITY_TYPE = /* @__PURE__ */ Symbol.for("react.activity");
|
|
23
|
+
var MAYBE_ITERATOR_SYMBOL = Symbol.iterator;
|
|
24
|
+
function getIteratorFn(maybeIterable) {
|
|
25
|
+
if (null === maybeIterable || "object" !== typeof maybeIterable) return null;
|
|
26
|
+
maybeIterable = MAYBE_ITERATOR_SYMBOL && maybeIterable[MAYBE_ITERATOR_SYMBOL] || maybeIterable["@@iterator"];
|
|
27
|
+
return "function" === typeof maybeIterable ? maybeIterable : null;
|
|
28
|
+
}
|
|
29
|
+
var ReactNoopUpdateQueue = {
|
|
30
|
+
isMounted: function() {
|
|
31
|
+
return false;
|
|
32
|
+
},
|
|
33
|
+
enqueueForceUpdate: function() {
|
|
34
|
+
},
|
|
35
|
+
enqueueReplaceState: function() {
|
|
36
|
+
},
|
|
37
|
+
enqueueSetState: function() {
|
|
38
|
+
}
|
|
39
|
+
};
|
|
40
|
+
var assign = Object.assign;
|
|
41
|
+
var emptyObject = {};
|
|
42
|
+
function Component(props, context, updater) {
|
|
43
|
+
this.props = props;
|
|
44
|
+
this.context = context;
|
|
45
|
+
this.refs = emptyObject;
|
|
46
|
+
this.updater = updater || ReactNoopUpdateQueue;
|
|
47
|
+
}
|
|
48
|
+
Component.prototype.isReactComponent = {};
|
|
49
|
+
Component.prototype.setState = function(partialState, callback) {
|
|
50
|
+
if ("object" !== typeof partialState && "function" !== typeof partialState && null != partialState)
|
|
51
|
+
throw Error(
|
|
52
|
+
"takes an object of state variables to update or a function which returns an object of state variables."
|
|
53
|
+
);
|
|
54
|
+
this.updater.enqueueSetState(this, partialState, callback, "setState");
|
|
55
|
+
};
|
|
56
|
+
Component.prototype.forceUpdate = function(callback) {
|
|
57
|
+
this.updater.enqueueForceUpdate(this, callback, "forceUpdate");
|
|
58
|
+
};
|
|
59
|
+
function ComponentDummy() {
|
|
60
|
+
}
|
|
61
|
+
ComponentDummy.prototype = Component.prototype;
|
|
62
|
+
function PureComponent(props, context, updater) {
|
|
63
|
+
this.props = props;
|
|
64
|
+
this.context = context;
|
|
65
|
+
this.refs = emptyObject;
|
|
66
|
+
this.updater = updater || ReactNoopUpdateQueue;
|
|
67
|
+
}
|
|
68
|
+
var pureComponentPrototype = PureComponent.prototype = new ComponentDummy();
|
|
69
|
+
pureComponentPrototype.constructor = PureComponent;
|
|
70
|
+
assign(pureComponentPrototype, Component.prototype);
|
|
71
|
+
pureComponentPrototype.isPureReactComponent = true;
|
|
72
|
+
var isArrayImpl = Array.isArray;
|
|
73
|
+
function noop() {
|
|
74
|
+
}
|
|
75
|
+
var ReactSharedInternals = { H: null, A: null, T: null, S: null };
|
|
76
|
+
var hasOwnProperty = Object.prototype.hasOwnProperty;
|
|
77
|
+
function ReactElement(type, key, props) {
|
|
78
|
+
var refProp = props.ref;
|
|
79
|
+
return {
|
|
80
|
+
$$typeof: REACT_ELEMENT_TYPE,
|
|
81
|
+
type,
|
|
82
|
+
key,
|
|
83
|
+
ref: void 0 !== refProp ? refProp : null,
|
|
84
|
+
props
|
|
85
|
+
};
|
|
86
|
+
}
|
|
87
|
+
function cloneAndReplaceKey(oldElement, newKey) {
|
|
88
|
+
return ReactElement(oldElement.type, newKey, oldElement.props);
|
|
89
|
+
}
|
|
90
|
+
function isValidElement(object) {
|
|
91
|
+
return "object" === typeof object && null !== object && object.$$typeof === REACT_ELEMENT_TYPE;
|
|
92
|
+
}
|
|
93
|
+
function escape(key) {
|
|
94
|
+
var escaperLookup = { "=": "=0", ":": "=2" };
|
|
95
|
+
return "$" + key.replace(/[=:]/g, function(match) {
|
|
96
|
+
return escaperLookup[match];
|
|
97
|
+
});
|
|
98
|
+
}
|
|
99
|
+
var userProvidedKeyEscapeRegex = /\/+/g;
|
|
100
|
+
function getElementKey(element, index) {
|
|
101
|
+
return "object" === typeof element && null !== element && null != element.key ? escape("" + element.key) : index.toString(36);
|
|
102
|
+
}
|
|
103
|
+
function resolveThenable(thenable) {
|
|
104
|
+
switch (thenable.status) {
|
|
105
|
+
case "fulfilled":
|
|
106
|
+
return thenable.value;
|
|
107
|
+
case "rejected":
|
|
108
|
+
throw thenable.reason;
|
|
109
|
+
default:
|
|
110
|
+
switch ("string" === typeof thenable.status ? thenable.then(noop, noop) : (thenable.status = "pending", thenable.then(
|
|
111
|
+
function(fulfilledValue) {
|
|
112
|
+
"pending" === thenable.status && (thenable.status = "fulfilled", thenable.value = fulfilledValue);
|
|
113
|
+
},
|
|
114
|
+
function(error) {
|
|
115
|
+
"pending" === thenable.status && (thenable.status = "rejected", thenable.reason = error);
|
|
116
|
+
}
|
|
117
|
+
)), thenable.status) {
|
|
118
|
+
case "fulfilled":
|
|
119
|
+
return thenable.value;
|
|
120
|
+
case "rejected":
|
|
121
|
+
throw thenable.reason;
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
throw thenable;
|
|
125
|
+
}
|
|
126
|
+
function mapIntoArray(children, array, escapedPrefix, nameSoFar, callback) {
|
|
127
|
+
var type = typeof children;
|
|
128
|
+
if ("undefined" === type || "boolean" === type) children = null;
|
|
129
|
+
var invokeCallback = false;
|
|
130
|
+
if (null === children) invokeCallback = true;
|
|
131
|
+
else
|
|
132
|
+
switch (type) {
|
|
133
|
+
case "bigint":
|
|
134
|
+
case "string":
|
|
135
|
+
case "number":
|
|
136
|
+
invokeCallback = true;
|
|
137
|
+
break;
|
|
138
|
+
case "object":
|
|
139
|
+
switch (children.$$typeof) {
|
|
140
|
+
case REACT_ELEMENT_TYPE:
|
|
141
|
+
case REACT_PORTAL_TYPE:
|
|
142
|
+
invokeCallback = true;
|
|
143
|
+
break;
|
|
144
|
+
case REACT_LAZY_TYPE:
|
|
145
|
+
return invokeCallback = children._init, mapIntoArray(
|
|
146
|
+
invokeCallback(children._payload),
|
|
147
|
+
array,
|
|
148
|
+
escapedPrefix,
|
|
149
|
+
nameSoFar,
|
|
150
|
+
callback
|
|
151
|
+
);
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
if (invokeCallback)
|
|
155
|
+
return callback = callback(children), invokeCallback = "" === nameSoFar ? "." + getElementKey(children, 0) : nameSoFar, isArrayImpl(callback) ? (escapedPrefix = "", null != invokeCallback && (escapedPrefix = invokeCallback.replace(userProvidedKeyEscapeRegex, "$&/") + "/"), mapIntoArray(callback, array, escapedPrefix, "", function(c) {
|
|
156
|
+
return c;
|
|
157
|
+
})) : null != callback && (isValidElement(callback) && (callback = cloneAndReplaceKey(
|
|
158
|
+
callback,
|
|
159
|
+
escapedPrefix + (null == callback.key || children && children.key === callback.key ? "" : ("" + callback.key).replace(
|
|
160
|
+
userProvidedKeyEscapeRegex,
|
|
161
|
+
"$&/"
|
|
162
|
+
) + "/") + invokeCallback
|
|
163
|
+
)), array.push(callback)), 1;
|
|
164
|
+
invokeCallback = 0;
|
|
165
|
+
var nextNamePrefix = "" === nameSoFar ? "." : nameSoFar + ":";
|
|
166
|
+
if (isArrayImpl(children))
|
|
167
|
+
for (var i = 0; i < children.length; i++)
|
|
168
|
+
nameSoFar = children[i], type = nextNamePrefix + getElementKey(nameSoFar, i), invokeCallback += mapIntoArray(
|
|
169
|
+
nameSoFar,
|
|
170
|
+
array,
|
|
171
|
+
escapedPrefix,
|
|
172
|
+
type,
|
|
173
|
+
callback
|
|
174
|
+
);
|
|
175
|
+
else if (i = getIteratorFn(children), "function" === typeof i)
|
|
176
|
+
for (children = i.call(children), i = 0; !(nameSoFar = children.next()).done; )
|
|
177
|
+
nameSoFar = nameSoFar.value, type = nextNamePrefix + getElementKey(nameSoFar, i++), invokeCallback += mapIntoArray(
|
|
178
|
+
nameSoFar,
|
|
179
|
+
array,
|
|
180
|
+
escapedPrefix,
|
|
181
|
+
type,
|
|
182
|
+
callback
|
|
183
|
+
);
|
|
184
|
+
else if ("object" === type) {
|
|
185
|
+
if ("function" === typeof children.then)
|
|
186
|
+
return mapIntoArray(
|
|
187
|
+
resolveThenable(children),
|
|
188
|
+
array,
|
|
189
|
+
escapedPrefix,
|
|
190
|
+
nameSoFar,
|
|
191
|
+
callback
|
|
192
|
+
);
|
|
193
|
+
array = String(children);
|
|
194
|
+
throw Error(
|
|
195
|
+
"Objects are not valid as a React child (found: " + ("[object Object]" === array ? "object with keys {" + Object.keys(children).join(", ") + "}" : array) + "). If you meant to render a collection of children, use an array instead."
|
|
196
|
+
);
|
|
197
|
+
}
|
|
198
|
+
return invokeCallback;
|
|
199
|
+
}
|
|
200
|
+
function mapChildren(children, func, context) {
|
|
201
|
+
if (null == children) return children;
|
|
202
|
+
var result = [], count = 0;
|
|
203
|
+
mapIntoArray(children, result, "", "", function(child) {
|
|
204
|
+
return func.call(context, child, count++);
|
|
205
|
+
});
|
|
206
|
+
return result;
|
|
207
|
+
}
|
|
208
|
+
function lazyInitializer(payload) {
|
|
209
|
+
if (-1 === payload._status) {
|
|
210
|
+
var ctor = payload._result;
|
|
211
|
+
ctor = ctor();
|
|
212
|
+
ctor.then(
|
|
213
|
+
function(moduleObject) {
|
|
214
|
+
if (0 === payload._status || -1 === payload._status)
|
|
215
|
+
payload._status = 1, payload._result = moduleObject;
|
|
216
|
+
},
|
|
217
|
+
function(error) {
|
|
218
|
+
if (0 === payload._status || -1 === payload._status)
|
|
219
|
+
payload._status = 2, payload._result = error;
|
|
220
|
+
}
|
|
221
|
+
);
|
|
222
|
+
-1 === payload._status && (payload._status = 0, payload._result = ctor);
|
|
223
|
+
}
|
|
224
|
+
if (1 === payload._status) return payload._result.default;
|
|
225
|
+
throw payload._result;
|
|
226
|
+
}
|
|
227
|
+
var reportGlobalError = "function" === typeof reportError ? reportError : function(error) {
|
|
228
|
+
if ("object" === typeof window && "function" === typeof window.ErrorEvent) {
|
|
229
|
+
var event = new window.ErrorEvent("error", {
|
|
230
|
+
bubbles: true,
|
|
231
|
+
cancelable: true,
|
|
232
|
+
message: "object" === typeof error && null !== error && "string" === typeof error.message ? String(error.message) : String(error),
|
|
233
|
+
error
|
|
234
|
+
});
|
|
235
|
+
if (!window.dispatchEvent(event)) return;
|
|
236
|
+
} else if ("object" === typeof process && "function" === typeof process.emit) {
|
|
237
|
+
process.emit("uncaughtException", error);
|
|
238
|
+
return;
|
|
239
|
+
}
|
|
240
|
+
console.error(error);
|
|
241
|
+
};
|
|
242
|
+
var Children = {
|
|
243
|
+
map: mapChildren,
|
|
244
|
+
forEach: function(children, forEachFunc, forEachContext) {
|
|
245
|
+
mapChildren(
|
|
246
|
+
children,
|
|
247
|
+
function() {
|
|
248
|
+
forEachFunc.apply(this, arguments);
|
|
249
|
+
},
|
|
250
|
+
forEachContext
|
|
251
|
+
);
|
|
252
|
+
},
|
|
253
|
+
count: function(children) {
|
|
254
|
+
var n = 0;
|
|
255
|
+
mapChildren(children, function() {
|
|
256
|
+
n++;
|
|
257
|
+
});
|
|
258
|
+
return n;
|
|
259
|
+
},
|
|
260
|
+
toArray: function(children) {
|
|
261
|
+
return mapChildren(children, function(child) {
|
|
262
|
+
return child;
|
|
263
|
+
}) || [];
|
|
264
|
+
},
|
|
265
|
+
only: function(children) {
|
|
266
|
+
if (!isValidElement(children))
|
|
267
|
+
throw Error(
|
|
268
|
+
"React.Children.only expected to receive a single React element child."
|
|
269
|
+
);
|
|
270
|
+
return children;
|
|
271
|
+
}
|
|
272
|
+
};
|
|
273
|
+
exports.Activity = REACT_ACTIVITY_TYPE;
|
|
274
|
+
exports.Children = Children;
|
|
275
|
+
exports.Component = Component;
|
|
276
|
+
exports.Fragment = REACT_FRAGMENT_TYPE;
|
|
277
|
+
exports.Profiler = REACT_PROFILER_TYPE;
|
|
278
|
+
exports.PureComponent = PureComponent;
|
|
279
|
+
exports.StrictMode = REACT_STRICT_MODE_TYPE;
|
|
280
|
+
exports.Suspense = REACT_SUSPENSE_TYPE;
|
|
281
|
+
exports.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE = ReactSharedInternals;
|
|
282
|
+
exports.__COMPILER_RUNTIME = {
|
|
283
|
+
__proto__: null,
|
|
284
|
+
c: function(size) {
|
|
285
|
+
return ReactSharedInternals.H.useMemoCache(size);
|
|
286
|
+
}
|
|
287
|
+
};
|
|
288
|
+
exports.cache = function(fn) {
|
|
289
|
+
return function() {
|
|
290
|
+
return fn.apply(null, arguments);
|
|
291
|
+
};
|
|
292
|
+
};
|
|
293
|
+
exports.cacheSignal = function() {
|
|
294
|
+
return null;
|
|
295
|
+
};
|
|
296
|
+
exports.cloneElement = function(element, config, children) {
|
|
297
|
+
if (null === element || void 0 === element)
|
|
298
|
+
throw Error(
|
|
299
|
+
"The argument must be a React element, but you passed " + element + "."
|
|
300
|
+
);
|
|
301
|
+
var props = assign({}, element.props), key = element.key;
|
|
302
|
+
if (null != config)
|
|
303
|
+
for (propName in void 0 !== config.key && (key = "" + config.key), config)
|
|
304
|
+
!hasOwnProperty.call(config, propName) || "key" === propName || "__self" === propName || "__source" === propName || "ref" === propName && void 0 === config.ref || (props[propName] = config[propName]);
|
|
305
|
+
var propName = arguments.length - 2;
|
|
306
|
+
if (1 === propName) props.children = children;
|
|
307
|
+
else if (1 < propName) {
|
|
308
|
+
for (var childArray = Array(propName), i = 0; i < propName; i++)
|
|
309
|
+
childArray[i] = arguments[i + 2];
|
|
310
|
+
props.children = childArray;
|
|
311
|
+
}
|
|
312
|
+
return ReactElement(element.type, key, props);
|
|
313
|
+
};
|
|
314
|
+
exports.createContext = function(defaultValue) {
|
|
315
|
+
defaultValue = {
|
|
316
|
+
$$typeof: REACT_CONTEXT_TYPE,
|
|
317
|
+
_currentValue: defaultValue,
|
|
318
|
+
_currentValue2: defaultValue,
|
|
319
|
+
_threadCount: 0,
|
|
320
|
+
Provider: null,
|
|
321
|
+
Consumer: null
|
|
322
|
+
};
|
|
323
|
+
defaultValue.Provider = defaultValue;
|
|
324
|
+
defaultValue.Consumer = {
|
|
325
|
+
$$typeof: REACT_CONSUMER_TYPE,
|
|
326
|
+
_context: defaultValue
|
|
327
|
+
};
|
|
328
|
+
return defaultValue;
|
|
329
|
+
};
|
|
330
|
+
exports.createElement = function(type, config, children) {
|
|
331
|
+
var propName, props = {}, key = null;
|
|
332
|
+
if (null != config)
|
|
333
|
+
for (propName in void 0 !== config.key && (key = "" + config.key), config)
|
|
334
|
+
hasOwnProperty.call(config, propName) && "key" !== propName && "__self" !== propName && "__source" !== propName && (props[propName] = config[propName]);
|
|
335
|
+
var childrenLength = arguments.length - 2;
|
|
336
|
+
if (1 === childrenLength) props.children = children;
|
|
337
|
+
else if (1 < childrenLength) {
|
|
338
|
+
for (var childArray = Array(childrenLength), i = 0; i < childrenLength; i++)
|
|
339
|
+
childArray[i] = arguments[i + 2];
|
|
340
|
+
props.children = childArray;
|
|
341
|
+
}
|
|
342
|
+
if (type && type.defaultProps)
|
|
343
|
+
for (propName in childrenLength = type.defaultProps, childrenLength)
|
|
344
|
+
void 0 === props[propName] && (props[propName] = childrenLength[propName]);
|
|
345
|
+
return ReactElement(type, key, props);
|
|
346
|
+
};
|
|
347
|
+
exports.createRef = function() {
|
|
348
|
+
return { current: null };
|
|
349
|
+
};
|
|
350
|
+
exports.forwardRef = function(render) {
|
|
351
|
+
return { $$typeof: REACT_FORWARD_REF_TYPE, render };
|
|
352
|
+
};
|
|
353
|
+
exports.isValidElement = isValidElement;
|
|
354
|
+
exports.lazy = function(ctor) {
|
|
355
|
+
return {
|
|
356
|
+
$$typeof: REACT_LAZY_TYPE,
|
|
357
|
+
_payload: { _status: -1, _result: ctor },
|
|
358
|
+
_init: lazyInitializer
|
|
359
|
+
};
|
|
360
|
+
};
|
|
361
|
+
exports.memo = function(type, compare) {
|
|
362
|
+
return {
|
|
363
|
+
$$typeof: REACT_MEMO_TYPE,
|
|
364
|
+
type,
|
|
365
|
+
compare: void 0 === compare ? null : compare
|
|
366
|
+
};
|
|
367
|
+
};
|
|
368
|
+
exports.startTransition = function(scope) {
|
|
369
|
+
var prevTransition = ReactSharedInternals.T, currentTransition = {};
|
|
370
|
+
ReactSharedInternals.T = currentTransition;
|
|
371
|
+
try {
|
|
372
|
+
var returnValue = scope(), onStartTransitionFinish = ReactSharedInternals.S;
|
|
373
|
+
null !== onStartTransitionFinish && onStartTransitionFinish(currentTransition, returnValue);
|
|
374
|
+
"object" === typeof returnValue && null !== returnValue && "function" === typeof returnValue.then && returnValue.then(noop, reportGlobalError);
|
|
375
|
+
} catch (error) {
|
|
376
|
+
reportGlobalError(error);
|
|
377
|
+
} finally {
|
|
378
|
+
null !== prevTransition && null !== currentTransition.types && (prevTransition.types = currentTransition.types), ReactSharedInternals.T = prevTransition;
|
|
379
|
+
}
|
|
380
|
+
};
|
|
381
|
+
exports.unstable_useCacheRefresh = function() {
|
|
382
|
+
return ReactSharedInternals.H.useCacheRefresh();
|
|
383
|
+
};
|
|
384
|
+
exports.use = function(usable) {
|
|
385
|
+
return ReactSharedInternals.H.use(usable);
|
|
386
|
+
};
|
|
387
|
+
exports.useActionState = function(action, initialState, permalink) {
|
|
388
|
+
return ReactSharedInternals.H.useActionState(action, initialState, permalink);
|
|
389
|
+
};
|
|
390
|
+
exports.useCallback = function(callback, deps) {
|
|
391
|
+
return ReactSharedInternals.H.useCallback(callback, deps);
|
|
392
|
+
};
|
|
393
|
+
exports.useContext = function(Context) {
|
|
394
|
+
return ReactSharedInternals.H.useContext(Context);
|
|
395
|
+
};
|
|
396
|
+
exports.useDebugValue = function() {
|
|
397
|
+
};
|
|
398
|
+
exports.useDeferredValue = function(value, initialValue) {
|
|
399
|
+
return ReactSharedInternals.H.useDeferredValue(value, initialValue);
|
|
400
|
+
};
|
|
401
|
+
exports.useEffect = function(create, deps) {
|
|
402
|
+
return ReactSharedInternals.H.useEffect(create, deps);
|
|
403
|
+
};
|
|
404
|
+
exports.useEffectEvent = function(callback) {
|
|
405
|
+
return ReactSharedInternals.H.useEffectEvent(callback);
|
|
406
|
+
};
|
|
407
|
+
exports.useId = function() {
|
|
408
|
+
return ReactSharedInternals.H.useId();
|
|
409
|
+
};
|
|
410
|
+
exports.useImperativeHandle = function(ref, create, deps) {
|
|
411
|
+
return ReactSharedInternals.H.useImperativeHandle(ref, create, deps);
|
|
412
|
+
};
|
|
413
|
+
exports.useInsertionEffect = function(create, deps) {
|
|
414
|
+
return ReactSharedInternals.H.useInsertionEffect(create, deps);
|
|
415
|
+
};
|
|
416
|
+
exports.useLayoutEffect = function(create, deps) {
|
|
417
|
+
return ReactSharedInternals.H.useLayoutEffect(create, deps);
|
|
418
|
+
};
|
|
419
|
+
exports.useMemo = function(create, deps) {
|
|
420
|
+
return ReactSharedInternals.H.useMemo(create, deps);
|
|
421
|
+
};
|
|
422
|
+
exports.useOptimistic = function(passthrough, reducer) {
|
|
423
|
+
return ReactSharedInternals.H.useOptimistic(passthrough, reducer);
|
|
424
|
+
};
|
|
425
|
+
exports.useReducer = function(reducer, initialArg, init) {
|
|
426
|
+
return ReactSharedInternals.H.useReducer(reducer, initialArg, init);
|
|
427
|
+
};
|
|
428
|
+
exports.useRef = function(initialValue) {
|
|
429
|
+
return ReactSharedInternals.H.useRef(initialValue);
|
|
430
|
+
};
|
|
431
|
+
exports.useState = function(initialState) {
|
|
432
|
+
return ReactSharedInternals.H.useState(initialState);
|
|
433
|
+
};
|
|
434
|
+
exports.useSyncExternalStore = function(subscribe, getSnapshot, getServerSnapshot) {
|
|
435
|
+
return ReactSharedInternals.H.useSyncExternalStore(
|
|
436
|
+
subscribe,
|
|
437
|
+
getSnapshot,
|
|
438
|
+
getServerSnapshot
|
|
439
|
+
);
|
|
440
|
+
};
|
|
441
|
+
exports.useTransition = function() {
|
|
442
|
+
return ReactSharedInternals.H.useTransition();
|
|
443
|
+
};
|
|
444
|
+
exports.version = "19.2.7";
|
|
445
|
+
}
|
|
446
|
+
});
|
|
447
|
+
|
|
448
|
+
// node_modules/react/index.js
|
|
449
|
+
var require_react = __commonJS({
|
|
450
|
+
"node_modules/react/index.js"(exports, module) {
|
|
451
|
+
if (true) {
|
|
452
|
+
module.exports = require_react_production();
|
|
453
|
+
} else {
|
|
454
|
+
module.exports = null;
|
|
455
|
+
}
|
|
456
|
+
}
|
|
457
|
+
});
|
|
458
|
+
|
|
459
|
+
export {
|
|
460
|
+
require_react
|
|
461
|
+
};
|
|
462
|
+
/*! Bundled license information:
|
|
463
|
+
|
|
464
|
+
react/cjs/react.production.js:
|
|
465
|
+
(**
|
|
466
|
+
* @license React
|
|
467
|
+
* react.production.js
|
|
468
|
+
*
|
|
469
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
470
|
+
*
|
|
471
|
+
* This source code is licensed under the MIT license found in the
|
|
472
|
+
* LICENSE file in the root directory of this source tree.
|
|
473
|
+
*)
|
|
474
|
+
*/
|