@codecanvascollective/source-admin 0.1.0 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CONTRIBUTING.md +26 -26
- package/LICENSE +190 -190
- package/README.md +81 -79
- package/SECURITY.md +11 -11
- package/bin/source-admin.mjs +265 -265
- package/dist/standalone/.next/BUILD_ID +1 -1
- package/dist/standalone/.next/build-manifest.json +3 -3
- package/dist/standalone/.next/prerender-manifest.json +3 -3
- package/dist/standalone/.next/required-server-files.json +20 -20
- package/dist/standalone/.next/server/app/_global-error.html +1 -1
- package/dist/standalone/.next/server/app/_global-error.rsc +1 -1
- package/dist/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/dist/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/dist/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/dist/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/dist/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/dist/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/dist/standalone/.next/server/app/_not-found.html +1 -1
- package/dist/standalone/.next/server/app/_not-found.rsc +2 -2
- package/dist/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
- package/dist/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/dist/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
- package/dist/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/dist/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/dist/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/dist/standalone/.next/server/app/admin/source/page.js +2 -2
- package/dist/standalone/.next/server/app/admin/source/page.js.nft.json +1 -1
- package/dist/standalone/.next/server/app/admin/source/page_client-reference-manifest.js +1 -1
- package/dist/standalone/.next/server/app/admin/tables/page.js +2 -2
- package/dist/standalone/.next/server/app/admin/tables/page.js.nft.json +1 -1
- package/dist/standalone/.next/server/app/admin/tables/page_client-reference-manifest.js +1 -1
- package/dist/standalone/.next/server/app/api/admin/source/discover/route.js +3 -3
- package/dist/standalone/.next/server/app/api/admin/source/discover/route.js.nft.json +1 -1
- package/dist/standalone/.next/server/app/api/admin/source/mapping/route.js +3 -3
- package/dist/standalone/.next/server/app/api/admin/source/mapping/route.js.nft.json +1 -1
- package/dist/standalone/.next/server/app/api/admin/source/route.js +3 -3
- package/dist/standalone/.next/server/app/api/admin/source/route.js.nft.json +1 -1
- package/dist/standalone/.next/server/app/api/admin/source/test/route.js +3 -3
- package/dist/standalone/.next/server/app/api/admin/source/test/route.js.nft.json +1 -1
- package/dist/standalone/.next/server/app/api/admin/tables/route.js +3 -3
- package/dist/standalone/.next/server/app/api/admin/tables/route.js.nft.json +1 -1
- package/dist/standalone/.next/server/app/api/admin/tables/rows/route.js +3 -3
- package/dist/standalone/.next/server/app/api/admin/tables/rows/route.js.nft.json +1 -1
- package/dist/standalone/.next/server/app/index.html +1 -1
- package/dist/standalone/.next/server/app/index.rsc +2 -2
- package/dist/standalone/.next/server/app/index.segments/__PAGE__.segment.rsc +1 -1
- package/dist/standalone/.next/server/app/index.segments/_full.segment.rsc +2 -2
- package/dist/standalone/.next/server/app/index.segments/_head.segment.rsc +1 -1
- package/dist/standalone/.next/server/app/index.segments/_index.segment.rsc +2 -2
- package/dist/standalone/.next/server/app/index.segments/_tree.segment.rsc +2 -2
- package/dist/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
- package/dist/standalone/.next/server/app/sign-in/page_client-reference-manifest.js +1 -1
- package/dist/standalone/.next/server/chunks/[root-of-the-server]__08voc16._.js +3 -0
- package/dist/standalone/.next/server/chunks/[root-of-the-server]__0hzpf7k._.js +3 -0
- package/dist/standalone/.next/server/chunks/[root-of-the-server]__0h~4w31._.js +3 -0
- package/dist/standalone/.next/server/chunks/[root-of-the-server]__0k~_qfk._.js +3 -0
- package/dist/standalone/.next/server/chunks/[root-of-the-server]__0lmxc5_._.js +3 -0
- package/dist/standalone/.next/server/chunks/[root-of-the-server]__0p09u08._.js +3 -0
- package/dist/standalone/.next/server/chunks/_06an.-f._.js +29 -18
- package/dist/standalone/.next/server/chunks/_0eildm-._.js +29 -18
- package/dist/standalone/.next/server/chunks/_0xr7q4b._.js +18 -15
- package/dist/standalone/.next/server/chunks/ssr/[root-of-the-server]__0zpjyya._.js +3 -0
- package/dist/standalone/.next/server/chunks/ssr/[root-of-the-server]__13lr0v4._.js +3 -0
- package/dist/standalone/.next/server/chunks/ssr/_0esgwcu._.js +16 -9
- package/dist/standalone/.next/server/chunks/ssr/_0w76r0e._.js +1 -1
- package/dist/standalone/.next/server/chunks/ssr/src_components_admin_source-manager-console_tsx_0083okn._.js +3 -0
- package/dist/standalone/.next/server/chunks/ssr/src_lib_platform_service_ts_0c9l1f7._.js +16 -13
- package/dist/standalone/.next/server/middleware-build-manifest.js +3 -3
- package/dist/standalone/.next/server/middleware-manifest.json +5 -5
- package/dist/standalone/.next/server/pages/404.html +1 -1
- package/dist/standalone/.next/server/pages/500.html +1 -1
- package/dist/standalone/.next/server/server-reference-manifest.js +1 -1
- package/dist/standalone/.next/server/server-reference-manifest.json +1 -1
- package/dist/standalone/.next/static/chunks/0fzblwu6f7o8u.css +1 -0
- package/dist/standalone/.next/static/chunks/0se7aghcfp.wu.js +1 -0
- package/dist/standalone/.next/static/chunks/{0--6sjpgdxkp8.js → 0v3~3f8d_ihp1.js} +1 -1
- package/dist/standalone/node_modules/@img/sharp-libvips-linux-x64/README.md +46 -0
- package/dist/standalone/node_modules/@img/sharp-libvips-linux-x64/lib/glib-2.0/include/glibconfig.h +221 -0
- package/dist/standalone/node_modules/@img/sharp-libvips-linux-x64/lib/index.js +1 -0
- package/dist/standalone/node_modules/@img/sharp-libvips-linux-x64/lib/libvips-cpp.so.8.17.3 +0 -0
- package/dist/standalone/node_modules/@img/sharp-libvips-linux-x64/package.json +42 -0
- package/dist/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/README.md +46 -0
- package/dist/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/lib/glib-2.0/include/glibconfig.h +221 -0
- package/dist/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/lib/index.js +1 -0
- package/dist/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/lib/libvips-cpp.so.8.17.3 +0 -0
- package/dist/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/package.json +42 -0
- package/dist/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/versions.json +30 -0
- package/dist/standalone/node_modules/@img/sharp-linux-x64/lib/sharp-linux-x64.node +0 -0
- package/dist/standalone/node_modules/@img/{sharp-win32-x64 → sharp-linux-x64}/package.json +46 -39
- package/dist/standalone/node_modules/@img/sharp-linuxmusl-x64/lib/sharp-linuxmusl-x64.node +0 -0
- package/dist/standalone/node_modules/@img/sharp-linuxmusl-x64/package.json +46 -0
- package/dist/standalone/node_modules/msnodesqlv8/build/Release/sqlserver.node +0 -0
- package/dist/standalone/node_modules/msnodesqlv8/lib/base-promises.js +0 -0
- package/dist/standalone/node_modules/msnodesqlv8/lib/connection.js +0 -0
- package/dist/standalone/node_modules/msnodesqlv8/lib/data-struture/heap/Heap.js +0 -0
- package/dist/standalone/node_modules/msnodesqlv8/lib/data-struture/heap/MaxHeap.js +0 -0
- package/dist/standalone/node_modules/msnodesqlv8/lib/data-struture/heap/MinHeap.js +0 -0
- package/dist/standalone/node_modules/msnodesqlv8/lib/data-struture/priority-queue/PriorityQueue.js +0 -0
- package/dist/standalone/node_modules/msnodesqlv8/lib/data-struture/utils/comparator/Comparator.js +0 -0
- package/dist/standalone/node_modules/msnodesqlv8/lib/dialect.js +0 -0
- package/dist/standalone/node_modules/msnodesqlv8/lib/driver.js +0 -0
- package/dist/standalone/node_modules/msnodesqlv8/lib/index.d.ts +0 -0
- package/dist/standalone/node_modules/msnodesqlv8/lib/meta.js +0 -0
- package/dist/standalone/node_modules/msnodesqlv8/lib/notifier.js +0 -0
- package/dist/standalone/node_modules/msnodesqlv8/lib/pool.js +0 -0
- package/dist/standalone/node_modules/msnodesqlv8/lib/prepared-statement.js +0 -0
- package/dist/standalone/node_modules/msnodesqlv8/lib/procedure-bound.js +0 -0
- package/dist/standalone/node_modules/msnodesqlv8/lib/procedure-meta.js +0 -0
- package/dist/standalone/node_modules/msnodesqlv8/lib/procedure.js +0 -0
- package/dist/standalone/node_modules/msnodesqlv8/lib/queries/proc_describe.sql +0 -0
- package/dist/standalone/node_modules/msnodesqlv8/lib/queries/server_version.sql +0 -0
- package/dist/standalone/node_modules/msnodesqlv8/lib/queries/table_describe.2014.sql +0 -0
- package/dist/standalone/node_modules/msnodesqlv8/lib/queries/table_describe.sql +0 -0
- package/dist/standalone/node_modules/msnodesqlv8/lib/queries/user_type.sql +0 -0
- package/dist/standalone/node_modules/msnodesqlv8/lib/query-aggregator.js +0 -0
- package/dist/standalone/node_modules/msnodesqlv8/lib/query-handler.js +0 -0
- package/dist/standalone/node_modules/msnodesqlv8/lib/queue.js +0 -0
- package/dist/standalone/node_modules/msnodesqlv8/lib/reader.js +0 -0
- package/dist/standalone/node_modules/msnodesqlv8/lib/sequelize/connection.js +0 -0
- package/dist/standalone/node_modules/msnodesqlv8/lib/sequelize/index.js +0 -0
- package/dist/standalone/node_modules/msnodesqlv8/lib/sequelize/request.js +0 -0
- package/dist/standalone/node_modules/msnodesqlv8/lib/shema-splitter.js +0 -0
- package/dist/standalone/node_modules/msnodesqlv8/lib/sql-client.js +0 -0
- package/dist/standalone/node_modules/msnodesqlv8/lib/sql.js +0 -0
- package/dist/standalone/node_modules/msnodesqlv8/lib/table-builder.js +0 -0
- package/dist/standalone/node_modules/msnodesqlv8/lib/table-bulk-op-mgr.js +0 -0
- package/dist/standalone/node_modules/msnodesqlv8/lib/table-column.js +0 -0
- package/dist/standalone/node_modules/msnodesqlv8/lib/table-meta.js +0 -0
- package/dist/standalone/node_modules/msnodesqlv8/lib/table.js +0 -0
- package/dist/standalone/node_modules/msnodesqlv8/lib/user.js +0 -0
- package/dist/standalone/node_modules/msnodesqlv8/lib/util.js +0 -0
- package/dist/standalone/node_modules/mssql/bin/mssql +0 -0
- package/dist/standalone/node_modules/open/xdg-open +0 -0
- package/dist/standalone/package.json +60 -59
- package/dist/standalone/server.js +1 -1
- package/package.json +60 -59
- package/dist/standalone/.next/server/chunks/[root-of-the-server]__02a79yv._.js +0 -3
- package/dist/standalone/.next/server/chunks/[root-of-the-server]__0nk-09u._.js +0 -3
- package/dist/standalone/.next/server/chunks/[root-of-the-server]__0nn_zpx._.js +0 -3
- package/dist/standalone/.next/server/chunks/[root-of-the-server]__0pr0jqt._.js +0 -3
- package/dist/standalone/.next/server/chunks/[root-of-the-server]__0zj4ll6._.js +0 -3
- package/dist/standalone/.next/server/chunks/[root-of-the-server]__110gi2p._.js +0 -3
- package/dist/standalone/.next/server/chunks/ssr/[root-of-the-server]__0r3b4.4._.js +0 -3
- package/dist/standalone/.next/server/chunks/ssr/[root-of-the-server]__0xwj_sh._.js +0 -3
- package/dist/standalone/.next/server/chunks/ssr/src_components_admin_source-console_tsx_01x.d.u._.js +0 -3
- package/dist/standalone/.next/static/chunks/06nz~tv04ai2q.css +0 -1
- package/dist/standalone/.next/static/chunks/110llkdc70cqf.js +0 -1
- package/dist/standalone/node_modules/@img/sharp-win32-x64/lib/sharp-win32-x64.node +0 -0
- /package/dist/standalone/.next/static/{P5MMIlYxIq6fvXoCpYoTQ → mBwymJ7f6SxgPAmQc9dxG}/_buildManifest.js +0 -0
- /package/dist/standalone/.next/static/{P5MMIlYxIq6fvXoCpYoTQ → mBwymJ7f6SxgPAmQc9dxG}/_clientMiddlewareManifest.js +0 -0
- /package/dist/standalone/.next/static/{P5MMIlYxIq6fvXoCpYoTQ → mBwymJ7f6SxgPAmQc9dxG}/_ssgManifest.js +0 -0
- /package/dist/standalone/node_modules/@img/{sharp-win32-x64 → sharp-libvips-linux-x64}/versions.json +0 -0
|
@@ -75,16 +75,25 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
75
75
|
created_at TEXT NOT NULL,
|
|
76
76
|
updated_at TEXT NOT NULL
|
|
77
77
|
);
|
|
78
|
-
|
|
78
|
+
|
|
79
|
+
CREATE INDEX IF NOT EXISTS idx_sources_active_updated
|
|
80
|
+
ON sources(is_active, updated_at);
|
|
81
|
+
|
|
82
|
+
CREATE INDEX IF NOT EXISTS idx_source_discoveries_source_created
|
|
83
|
+
ON source_discoveries(source_id, created_at);
|
|
84
|
+
|
|
85
|
+
CREATE INDEX IF NOT EXISTS idx_source_mappings_source_active_updated
|
|
86
|
+
ON source_mappings(source_id, is_active, updated_at);
|
|
87
|
+
`),e.g.__logManagerMetadataDb}function f(e){let t;if("csv"===e.type)return{authMode:null,connectionLabel:e.connection.filePath,createdAt:e.createdAt,delimiter:e.connection.delimiter,encoding:e.connection.encoding,filePath:e.connection.filePath,hasStoredCredentials:!1,id:e.id,isActive:e.isActive,maskedConnectionString:null,name:e.name,odbcDriver:null,requestTimeoutMs:null,type:e.type,updatedAt:e.updatedAt};let i=(t=e.connection.connectionString.replace(/(password|pwd)\s*=\s*[^;]+/gi,"$1=****").replace(/(user id|uid)\s*=\s*[^;]+/gi,"$1=****")).length>180?`${t.slice(0,177)}...`:t;return{authMode:e.connection.authMode,connectionLabel:i,createdAt:e.createdAt,delimiter:null,encoding:null,filePath:null,hasStoredCredentials:!0,id:e.id,isActive:e.isActive,maskedConnectionString:i,name:e.name,odbcDriver:e.connection.odbcDriver,requestTimeoutMs:e.connection.requestTimeoutMs,type:e.type,updatedAt:e.updatedAt}}function p(){return!!m().prepare(`
|
|
79
88
|
SELECT id
|
|
80
89
|
FROM auth_users
|
|
81
90
|
LIMIT 1
|
|
82
|
-
`).get()}function
|
|
91
|
+
`).get()}function v(e){let t=m().prepare(`
|
|
83
92
|
SELECT id, email, name, password_hash, role, created_at, updated_at
|
|
84
93
|
FROM auth_users
|
|
85
94
|
WHERE email = ? COLLATE NOCASE
|
|
86
95
|
LIMIT 1
|
|
87
|
-
`).get(e);return t?{createdAt:t.created_at,email:t.email,id:t.id,name:t.name,passwordHash:t.password_hash,role:t.role,updatedAt:t.updated_at}:null}function
|
|
96
|
+
`).get(e);return t?{createdAt:t.created_at,email:t.email,id:t.id,name:t.name,passwordHash:t.password_hash,role:t.role,updatedAt:t.updated_at}:null}function g(e){let t=m();if(p())return null;let i=new Date().toISOString(),n=(0,a.randomUUID)();return t.prepare(`
|
|
88
97
|
INSERT INTO auth_users (
|
|
89
98
|
id,
|
|
90
99
|
email,
|
|
@@ -95,26 +104,34 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
95
104
|
updated_at
|
|
96
105
|
)
|
|
97
106
|
VALUES (?, ?, ?, ?, 'admin', ?, ?)
|
|
98
|
-
`).run(n,e.email.toLowerCase(),e.name,e.passwordHash,i,i),
|
|
107
|
+
`).run(n,e.email.toLowerCase(),e.name,e.passwordHash,i,i),v(e.email)}function $(){return m().prepare(`
|
|
99
108
|
SELECT id, name, type, connection_blob, is_active, created_at, updated_at
|
|
100
109
|
FROM sources
|
|
101
|
-
|
|
102
|
-
|
|
110
|
+
ORDER BY is_active DESC, updated_at DESC, created_at DESC
|
|
111
|
+
`).all().map(e=>y(e)).filter(e=>!!e)}function _(e){let t=m().prepare(`
|
|
112
|
+
SELECT id, name, type, connection_blob, is_active, created_at, updated_at
|
|
113
|
+
FROM sources
|
|
114
|
+
WHERE id = ?
|
|
103
115
|
LIMIT 1
|
|
104
|
-
`).get();return
|
|
116
|
+
`).get(e);return t?y(t):null}function h(){return $().find(e=>e.isActive)??null}function y(e){try{let t,i;return t=function(e){let[t,i,n]=e.split(".");if(!t||!i||!n)throw new d("Encrypted metadata is malformed.");try{let e=(0,a.createDecipheriv)("aes-256-gcm",c(),Buffer.from(t,"base64url"));e.setAuthTag(Buffer.from(i,"base64url"));let r=Buffer.concat([e.update(Buffer.from(n,"base64url")),e.final()]);return JSON.parse(r.toString("utf8"))}catch(e){if(e instanceof d)throw e;throw new d}}(e.connection_blob),i={createdAt:e.created_at,id:e.id,isActive:1===e.is_active,name:e.name,updatedAt:e.updated_at},"csv"===e.type?{...i,connection:t,type:"csv"}:{...i,connection:t,type:"mssql"}}catch(t){if(t instanceof d)return console.warn(`Ignoring source "${e.id}" because its encrypted metadata could not be decrypted. Re-save the source with the current APP_CONFIG_ENCRYPTION_KEY.`),null;throw t}}e.s(["clearActiveMapping",0,function(e){m().prepare("UPDATE source_mappings SET is_active = 0, updated_at = ? WHERE source_id = ?").run(new Date().toISOString(),e)},"createFirstLocalAdminUser",0,g,"deleteSource",0,function(e){let t=m(),i=_(e);if(!i)return null;t.exec("BEGIN");try{if(t.prepare("DELETE FROM source_mappings WHERE source_id = ?").run(e),t.prepare("DELETE FROM source_discoveries WHERE source_id = ?").run(e),t.prepare("DELETE FROM sources WHERE id = ?").run(e),i.isActive){let e=t.prepare(`
|
|
117
|
+
SELECT id
|
|
118
|
+
FROM sources
|
|
119
|
+
ORDER BY updated_at DESC, created_at DESC
|
|
120
|
+
LIMIT 1
|
|
121
|
+
`).get();t.prepare("UPDATE sources SET is_active = 0").run(),e&&t.prepare("UPDATE sources SET is_active = 1 WHERE id = ?").run(e.id)}t.exec("COMMIT")}catch(e){throw t.exec("ROLLBACK"),e}return{deletedSource:i,nextActiveSource:h()}},"getActiveMapping",0,function(e){let t=m().prepare(`
|
|
105
122
|
SELECT id, source_id, payload_json, created_at, updated_at
|
|
106
123
|
FROM source_mappings
|
|
107
124
|
WHERE source_id = ?
|
|
108
125
|
AND is_active = 1
|
|
109
126
|
ORDER BY updated_at DESC
|
|
110
127
|
LIMIT 1
|
|
111
|
-
`).get(e);return t?JSON.parse(t.payload_json):null},"getActiveSource",0,
|
|
128
|
+
`).get(e);return t?JSON.parse(t.payload_json):null},"getActiveSource",0,h,"getLatestDiscovery",0,function(e){let t=m().prepare(`
|
|
112
129
|
SELECT id, source_id, payload_json, created_at
|
|
113
130
|
FROM source_discoveries
|
|
114
131
|
WHERE source_id = ?
|
|
115
132
|
ORDER BY created_at DESC
|
|
116
133
|
LIMIT 1
|
|
117
|
-
`).get(e);return t?JSON.parse(t.payload_json):null},"getLocalUserByEmail",0,
|
|
134
|
+
`).get(e);return t?JSON.parse(t.payload_json):null},"getLocalUserByEmail",0,v,"getSourceById",0,_,"getSourceSummary",0,function(e){return f(e)},"hasLocalUsers",0,p,"listSourceSummaries",0,function(){return $().map(f)},"saveActiveMapping",0,function(e,t){let i=m(),n=new Date().toISOString();return i.prepare("UPDATE source_mappings SET is_active = 0 WHERE source_id = ?").run(e),i.prepare(`
|
|
118
135
|
INSERT INTO source_mappings (
|
|
119
136
|
id,
|
|
120
137
|
source_id,
|
|
@@ -127,7 +144,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
127
144
|
`).run((0,a.randomUUID)(),e,JSON.stringify(t),n,n),i.prepare("UPDATE sources SET updated_at = ? WHERE id = ?").run(n,e),t},"saveDiscovery",0,function(e,t){let i=m(),n=new Date().toISOString();return i.prepare(`
|
|
128
145
|
INSERT INTO source_discoveries (id, source_id, payload_json, created_at)
|
|
129
146
|
VALUES (?, ?, ?, ?)
|
|
130
|
-
`).run((0,a.randomUUID)(),e,JSON.stringify(t),n),t},"updateLatestDiscovery",0,function(e,t){let i=m(),n=i.prepare(`
|
|
147
|
+
`).run((0,a.randomUUID)(),e,JSON.stringify(t),n),t},"switchActiveSource",0,function(e){let t=m();if(!_(e))return null;let i=new Date().toISOString();return t.prepare("UPDATE sources SET is_active = 0").run(),t.prepare("UPDATE sources SET is_active = 1, updated_at = ? WHERE id = ?").run(i,e),_(e)},"updateLatestDiscovery",0,function(e,t){let i=m(),n=i.prepare(`
|
|
131
148
|
SELECT id
|
|
132
149
|
FROM source_discoveries
|
|
133
150
|
WHERE source_id = ?
|
|
@@ -137,13 +154,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
137
154
|
UPDATE source_discoveries
|
|
138
155
|
SET payload_json = ?
|
|
139
156
|
WHERE id = ?
|
|
140
|
-
`).run(JSON.stringify(t),n.id),t},"
|
|
141
|
-
SELECT id
|
|
142
|
-
FROM sources
|
|
143
|
-
WHERE is_active = 1
|
|
144
|
-
ORDER BY updated_at DESC
|
|
145
|
-
LIMIT 1
|
|
146
|
-
`).get(),l=new Date().toISOString(),d=s?.id??(0,a.randomUUID)();u.prepare("UPDATE sources SET is_active = 0").run(),u.prepare(`
|
|
157
|
+
`).run(JSON.stringify(t),n.id),t},"upsertSource",0,function(e){var t;let i,n,r,o,u=m(),s=e.id,l=new Date().toISOString(),d=s??(0,a.randomUUID)();u.prepare("UPDATE sources SET is_active = 0").run(),u.prepare(`
|
|
147
158
|
INSERT INTO sources (
|
|
148
159
|
id,
|
|
149
160
|
name,
|
|
@@ -160,6 +171,6 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
160
171
|
connection_blob = excluded.connection_blob,
|
|
161
172
|
is_active = 1,
|
|
162
173
|
updated_at = excluded.updated_at
|
|
163
|
-
`).run(d,e.name,e.type,(t=e.connection,i=(0,a.randomBytes)(12),n=(0,a.createCipheriv)("aes-256-gcm",c(),i),r=Buffer.from(JSON.stringify(t),"utf8"),o=Buffer.concat([n.update(r),n.final()]),[i,n.getAuthTag(),o].map(e=>e.toString("base64url")).join(".")),l,l);let f=
|
|
174
|
+
`).run(d,e.name,e.type,(t=e.connection,i=(0,a.randomBytes)(12),n=(0,a.createCipheriv)("aes-256-gcm",c(),i),r=Buffer.from(JSON.stringify(t),"utf8"),o=Buffer.concat([n.update(r),n.final()]),[i,n.getAuthTag(),o].map(e=>e.toString("base64url")).join(".")),l,l);let f=_(d);if(!f)throw Error("Source was not saved.");return f}],97528);let b=t.z.string().trim().toLowerCase().email().max(320),x=t.z.object({confirmPassword:t.z.string().min(1),email:b,name:t.z.string().trim().min(1).max(120),password:t.z.string().min(8).max(256)}).refine(e=>e.password===e.confirmPassword,{message:"Passwords do not match.",path:["confirmPassword"]}),k=t.z.object({email:b,password:t.z.string().min(1).max(256)});class I extends Error{constructor(){super("Signup is closed after the first local admin account is created."),this.name="LocalSignupClosedError"}}async function S(e){let t=x.parse(e);if(p())throw new I;let n=await (0,i.hashPassword)(t.password),r=g({email:t.email,name:t.name,passwordHash:n});if(!r)throw new I;return{email:r.email,id:r.id,name:r.name,role:r.role}}async function Z(e){let t=k.safeParse(e);if(!t.success)return null;let n=v(t.data.email);return n&&await (0,i.verifyPassword)(t.data.password,n.passwordHash)?{email:n.email,id:n.id,name:n.name,role:n.role}:null}e.s(["authorizeLocalUser",0,Z,"createFirstLocalAdmin",0,S,"isLocalSignupClosedError",0,function(e){return e instanceof I}],59893)}];
|
|
164
175
|
|
|
165
176
|
//# sourceMappingURL=_06an.-f._.js.map
|
|
@@ -75,16 +75,25 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
75
75
|
created_at TEXT NOT NULL,
|
|
76
76
|
updated_at TEXT NOT NULL
|
|
77
77
|
);
|
|
78
|
-
|
|
78
|
+
|
|
79
|
+
CREATE INDEX IF NOT EXISTS idx_sources_active_updated
|
|
80
|
+
ON sources(is_active, updated_at);
|
|
81
|
+
|
|
82
|
+
CREATE INDEX IF NOT EXISTS idx_source_discoveries_source_created
|
|
83
|
+
ON source_discoveries(source_id, created_at);
|
|
84
|
+
|
|
85
|
+
CREATE INDEX IF NOT EXISTS idx_source_mappings_source_active_updated
|
|
86
|
+
ON source_mappings(source_id, is_active, updated_at);
|
|
87
|
+
`),e.g.__logManagerMetadataDb}function f(e){let t;if("csv"===e.type)return{authMode:null,connectionLabel:e.connection.filePath,createdAt:e.createdAt,delimiter:e.connection.delimiter,encoding:e.connection.encoding,filePath:e.connection.filePath,hasStoredCredentials:!1,id:e.id,isActive:e.isActive,maskedConnectionString:null,name:e.name,odbcDriver:null,requestTimeoutMs:null,type:e.type,updatedAt:e.updatedAt};let i=(t=e.connection.connectionString.replace(/(password|pwd)\s*=\s*[^;]+/gi,"$1=****").replace(/(user id|uid)\s*=\s*[^;]+/gi,"$1=****")).length>180?`${t.slice(0,177)}...`:t;return{authMode:e.connection.authMode,connectionLabel:i,createdAt:e.createdAt,delimiter:null,encoding:null,filePath:null,hasStoredCredentials:!0,id:e.id,isActive:e.isActive,maskedConnectionString:i,name:e.name,odbcDriver:e.connection.odbcDriver,requestTimeoutMs:e.connection.requestTimeoutMs,type:e.type,updatedAt:e.updatedAt}}function p(){return!!m().prepare(`
|
|
79
88
|
SELECT id
|
|
80
89
|
FROM auth_users
|
|
81
90
|
LIMIT 1
|
|
82
|
-
`).get()}function
|
|
91
|
+
`).get()}function v(e){let t=m().prepare(`
|
|
83
92
|
SELECT id, email, name, password_hash, role, created_at, updated_at
|
|
84
93
|
FROM auth_users
|
|
85
94
|
WHERE email = ? COLLATE NOCASE
|
|
86
95
|
LIMIT 1
|
|
87
|
-
`).get(e);return t?{createdAt:t.created_at,email:t.email,id:t.id,name:t.name,passwordHash:t.password_hash,role:t.role,updatedAt:t.updated_at}:null}function
|
|
96
|
+
`).get(e);return t?{createdAt:t.created_at,email:t.email,id:t.id,name:t.name,passwordHash:t.password_hash,role:t.role,updatedAt:t.updated_at}:null}function g(e){let t=m();if(p())return null;let i=new Date().toISOString(),n=(0,a.randomUUID)();return t.prepare(`
|
|
88
97
|
INSERT INTO auth_users (
|
|
89
98
|
id,
|
|
90
99
|
email,
|
|
@@ -95,26 +104,34 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
95
104
|
updated_at
|
|
96
105
|
)
|
|
97
106
|
VALUES (?, ?, ?, ?, 'admin', ?, ?)
|
|
98
|
-
`).run(n,e.email.toLowerCase(),e.name,e.passwordHash,i,i),
|
|
107
|
+
`).run(n,e.email.toLowerCase(),e.name,e.passwordHash,i,i),v(e.email)}function $(){return m().prepare(`
|
|
99
108
|
SELECT id, name, type, connection_blob, is_active, created_at, updated_at
|
|
100
109
|
FROM sources
|
|
101
|
-
|
|
102
|
-
|
|
110
|
+
ORDER BY is_active DESC, updated_at DESC, created_at DESC
|
|
111
|
+
`).all().map(e=>y(e)).filter(e=>!!e)}function _(e){let t=m().prepare(`
|
|
112
|
+
SELECT id, name, type, connection_blob, is_active, created_at, updated_at
|
|
113
|
+
FROM sources
|
|
114
|
+
WHERE id = ?
|
|
103
115
|
LIMIT 1
|
|
104
|
-
`).get();return
|
|
116
|
+
`).get(e);return t?y(t):null}function h(){return $().find(e=>e.isActive)??null}function y(e){try{let t,i;return t=function(e){let[t,i,n]=e.split(".");if(!t||!i||!n)throw new d("Encrypted metadata is malformed.");try{let e=(0,a.createDecipheriv)("aes-256-gcm",c(),Buffer.from(t,"base64url"));e.setAuthTag(Buffer.from(i,"base64url"));let r=Buffer.concat([e.update(Buffer.from(n,"base64url")),e.final()]);return JSON.parse(r.toString("utf8"))}catch(e){if(e instanceof d)throw e;throw new d}}(e.connection_blob),i={createdAt:e.created_at,id:e.id,isActive:1===e.is_active,name:e.name,updatedAt:e.updated_at},"csv"===e.type?{...i,connection:t,type:"csv"}:{...i,connection:t,type:"mssql"}}catch(t){if(t instanceof d)return console.warn(`Ignoring source "${e.id}" because its encrypted metadata could not be decrypted. Re-save the source with the current APP_CONFIG_ENCRYPTION_KEY.`),null;throw t}}e.s(["clearActiveMapping",0,function(e){m().prepare("UPDATE source_mappings SET is_active = 0, updated_at = ? WHERE source_id = ?").run(new Date().toISOString(),e)},"createFirstLocalAdminUser",0,g,"deleteSource",0,function(e){let t=m(),i=_(e);if(!i)return null;t.exec("BEGIN");try{if(t.prepare("DELETE FROM source_mappings WHERE source_id = ?").run(e),t.prepare("DELETE FROM source_discoveries WHERE source_id = ?").run(e),t.prepare("DELETE FROM sources WHERE id = ?").run(e),i.isActive){let e=t.prepare(`
|
|
117
|
+
SELECT id
|
|
118
|
+
FROM sources
|
|
119
|
+
ORDER BY updated_at DESC, created_at DESC
|
|
120
|
+
LIMIT 1
|
|
121
|
+
`).get();t.prepare("UPDATE sources SET is_active = 0").run(),e&&t.prepare("UPDATE sources SET is_active = 1 WHERE id = ?").run(e.id)}t.exec("COMMIT")}catch(e){throw t.exec("ROLLBACK"),e}return{deletedSource:i,nextActiveSource:h()}},"getActiveMapping",0,function(e){let t=m().prepare(`
|
|
105
122
|
SELECT id, source_id, payload_json, created_at, updated_at
|
|
106
123
|
FROM source_mappings
|
|
107
124
|
WHERE source_id = ?
|
|
108
125
|
AND is_active = 1
|
|
109
126
|
ORDER BY updated_at DESC
|
|
110
127
|
LIMIT 1
|
|
111
|
-
`).get(e);return t?JSON.parse(t.payload_json):null},"getActiveSource",0,
|
|
128
|
+
`).get(e);return t?JSON.parse(t.payload_json):null},"getActiveSource",0,h,"getLatestDiscovery",0,function(e){let t=m().prepare(`
|
|
112
129
|
SELECT id, source_id, payload_json, created_at
|
|
113
130
|
FROM source_discoveries
|
|
114
131
|
WHERE source_id = ?
|
|
115
132
|
ORDER BY created_at DESC
|
|
116
133
|
LIMIT 1
|
|
117
|
-
`).get(e);return t?JSON.parse(t.payload_json):null},"getLocalUserByEmail",0,
|
|
134
|
+
`).get(e);return t?JSON.parse(t.payload_json):null},"getLocalUserByEmail",0,v,"getSourceById",0,_,"getSourceSummary",0,function(e){return f(e)},"hasLocalUsers",0,p,"listSourceSummaries",0,function(){return $().map(f)},"saveActiveMapping",0,function(e,t){let i=m(),n=new Date().toISOString();return i.prepare("UPDATE source_mappings SET is_active = 0 WHERE source_id = ?").run(e),i.prepare(`
|
|
118
135
|
INSERT INTO source_mappings (
|
|
119
136
|
id,
|
|
120
137
|
source_id,
|
|
@@ -127,7 +144,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
127
144
|
`).run((0,a.randomUUID)(),e,JSON.stringify(t),n,n),i.prepare("UPDATE sources SET updated_at = ? WHERE id = ?").run(n,e),t},"saveDiscovery",0,function(e,t){let i=m(),n=new Date().toISOString();return i.prepare(`
|
|
128
145
|
INSERT INTO source_discoveries (id, source_id, payload_json, created_at)
|
|
129
146
|
VALUES (?, ?, ?, ?)
|
|
130
|
-
`).run((0,a.randomUUID)(),e,JSON.stringify(t),n),t},"updateLatestDiscovery",0,function(e,t){let i=m(),n=i.prepare(`
|
|
147
|
+
`).run((0,a.randomUUID)(),e,JSON.stringify(t),n),t},"switchActiveSource",0,function(e){let t=m();if(!_(e))return null;let i=new Date().toISOString();return t.prepare("UPDATE sources SET is_active = 0").run(),t.prepare("UPDATE sources SET is_active = 1, updated_at = ? WHERE id = ?").run(i,e),_(e)},"updateLatestDiscovery",0,function(e,t){let i=m(),n=i.prepare(`
|
|
131
148
|
SELECT id
|
|
132
149
|
FROM source_discoveries
|
|
133
150
|
WHERE source_id = ?
|
|
@@ -137,13 +154,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
137
154
|
UPDATE source_discoveries
|
|
138
155
|
SET payload_json = ?
|
|
139
156
|
WHERE id = ?
|
|
140
|
-
`).run(JSON.stringify(t),n.id),t},"
|
|
141
|
-
SELECT id
|
|
142
|
-
FROM sources
|
|
143
|
-
WHERE is_active = 1
|
|
144
|
-
ORDER BY updated_at DESC
|
|
145
|
-
LIMIT 1
|
|
146
|
-
`).get(),l=new Date().toISOString(),d=s?.id??(0,a.randomUUID)();u.prepare("UPDATE sources SET is_active = 0").run(),u.prepare(`
|
|
157
|
+
`).run(JSON.stringify(t),n.id),t},"upsertSource",0,function(e){var t;let i,n,r,o,u=m(),s=e.id,l=new Date().toISOString(),d=s??(0,a.randomUUID)();u.prepare("UPDATE sources SET is_active = 0").run(),u.prepare(`
|
|
147
158
|
INSERT INTO sources (
|
|
148
159
|
id,
|
|
149
160
|
name,
|
|
@@ -160,6 +171,6 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
160
171
|
connection_blob = excluded.connection_blob,
|
|
161
172
|
is_active = 1,
|
|
162
173
|
updated_at = excluded.updated_at
|
|
163
|
-
`).run(d,e.name,e.type,(t=e.connection,i=(0,a.randomBytes)(12),n=(0,a.createCipheriv)("aes-256-gcm",c(),i),r=Buffer.from(JSON.stringify(t),"utf8"),o=Buffer.concat([n.update(r),n.final()]),[i,n.getAuthTag(),o].map(e=>e.toString("base64url")).join(".")),l,l);let f=
|
|
174
|
+
`).run(d,e.name,e.type,(t=e.connection,i=(0,a.randomBytes)(12),n=(0,a.createCipheriv)("aes-256-gcm",c(),i),r=Buffer.from(JSON.stringify(t),"utf8"),o=Buffer.concat([n.update(r),n.final()]),[i,n.getAuthTag(),o].map(e=>e.toString("base64url")).join(".")),l,l);let f=_(d);if(!f)throw Error("Source was not saved.");return f}],97528);let b=t.z.string().trim().toLowerCase().email().max(320),x=t.z.object({confirmPassword:t.z.string().min(1),email:b,name:t.z.string().trim().min(1).max(120),password:t.z.string().min(8).max(256)}).refine(e=>e.password===e.confirmPassword,{message:"Passwords do not match.",path:["confirmPassword"]}),k=t.z.object({email:b,password:t.z.string().min(1).max(256)});class I extends Error{constructor(){super("Signup is closed after the first local admin account is created."),this.name="LocalSignupClosedError"}}async function S(e){let t=x.parse(e);if(p())throw new I;let n=await (0,i.hashPassword)(t.password),r=g({email:t.email,name:t.name,passwordHash:n});if(!r)throw new I;return{email:r.email,id:r.id,name:r.name,role:r.role}}async function Z(e){let t=k.safeParse(e);if(!t.success)return null;let n=v(t.data.email);return n&&await (0,i.verifyPassword)(t.data.password,n.passwordHash)?{email:n.email,id:n.id,name:n.name,role:n.role}:null}e.s(["authorizeLocalUser",0,Z,"createFirstLocalAdmin",0,S,"isLocalSignupClosedError",0,function(e){return e instanceof I}],59893)}];
|
|
164
175
|
|
|
165
176
|
//# sourceMappingURL=_0eildm-._.js.map
|
|
@@ -1,10 +1,13 @@
|
|
|
1
|
-
module.exports=[8595,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"ReadonlyURLSearchParams",{enumerable:!0,get:function(){return n}});class i extends Error{constructor(){super("Method unavailable on `ReadonlyURLSearchParams`. Read more: https://nextjs.org/docs/app/api-reference/functions/use-search-params#updating-searchparams")}}class n extends URLSearchParams{append(){throw new i}delete(){throw new i}set(){throw new i}sort(){throw new i}}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},50723,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"RedirectStatusCode",{enumerable:!0,get:function(){return n}});var i,n=((i={})[i.SeeOther=303]="SeeOther",i[i.TemporaryRedirect=307]="TemporaryRedirect",i[i.PermanentRedirect=308]="PermanentRedirect",i);("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},19334,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var i={REDIRECT_ERROR_CODE:function(){return o},isRedirectError:function(){return l}};for(var n in i)Object.defineProperty(r,n,{enumerable:!0,get:i[n]});let a=e.r(50723),o="NEXT_REDIRECT";function l(e){if("object"!=typeof e||null===e||!("digest"in e)||"string"!=typeof e.digest)return!1;let t=e.digest.split(";"),[r,i]=t,n=t.slice(2,-2).join(";"),l=Number(t.at(-2));return r===o&&("replace"===i||"push"===i)&&"string"==typeof n&&!isNaN(l)&&l in a.RedirectStatusCode}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},22349,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var i={getRedirectError:function(){return s},getRedirectStatusCodeFromError:function(){return p},getRedirectTypeFromError:function(){return f},getURLFromRedirectError:function(){return c},permanentRedirect:function(){return d},redirect:function(){return u}};for(var n in i)Object.defineProperty(r,n,{enumerable:!0,get:i[n]});let a=e.r(50723),o=e.r(19334),l=e.r(20635).actionAsyncStorage;function s(e,t,r=a.RedirectStatusCode.TemporaryRedirect){let i=Object.defineProperty(Error(o.REDIRECT_ERROR_CODE),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return i.digest=`${o.REDIRECT_ERROR_CODE};${t};${e};${r};`,i}function u(e,t){throw s(e,t??=l?.getStore()?.isAction?"push":"replace",a.RedirectStatusCode.TemporaryRedirect)}function d(e,t="replace"){throw s(e,t,a.RedirectStatusCode.PermanentRedirect)}function c(e){return(0,o.isRedirectError)(e)?e.digest.split(";").slice(2,-2).join(";"):null}function f(e){if(!(0,o.isRedirectError)(e))throw Object.defineProperty(Error("Not a redirect error"),"__NEXT_ERROR_CODE",{value:"E260",enumerable:!1,configurable:!0});return e.digest.split(";",2)[1]}function p(e){if(!(0,o.isRedirectError)(e))throw Object.defineProperty(Error("Not a redirect error"),"__NEXT_ERROR_CODE",{value:"E260",enumerable:!1,configurable:!0});return Number(e.digest.split(";").at(-2))}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},12053,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var i={HTTPAccessErrorStatus:function(){return a},HTTP_ERROR_FALLBACK_ERROR_CODE:function(){return l},getAccessFallbackErrorTypeByStatus:function(){return d},getAccessFallbackHTTPStatus:function(){return u},isHTTPAccessFallbackError:function(){return s}};for(var n in i)Object.defineProperty(r,n,{enumerable:!0,get:i[n]});let a={NOT_FOUND:404,FORBIDDEN:403,UNAUTHORIZED:401},o=new Set(Object.values(a)),l="NEXT_HTTP_ERROR_FALLBACK";function s(e){if("object"!=typeof e||null===e||!("digest"in e)||"string"!=typeof e.digest)return!1;let[t,r]=e.digest.split(";");return t===l&&o.has(Number(r))}function u(e){return Number(e.digest.split(";")[1])}function d(e){switch(e){case 401:return"unauthorized";case 403:return"forbidden";case 404:return"not-found";default:return}}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},2507,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"notFound",{enumerable:!0,get:function(){return a}});let i=e.r(12053),n=`${i.HTTP_ERROR_FALLBACK_ERROR_CODE};404`;function a(){let e=Object.defineProperty(Error(n),"__NEXT_ERROR_CODE",{value:"E1041",enumerable:!1,configurable:!0});throw e.digest=n,e}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},47658,(e,t,r)=>{"use strict";function i(){throw Object.defineProperty(Error("`forbidden()` is experimental and only allowed to be enabled when `experimental.authInterrupts` is enabled."),"__NEXT_ERROR_CODE",{value:"E488",enumerable:!1,configurable:!0})}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"forbidden",{enumerable:!0,get:function(){return i}}),e.r(12053).HTTP_ERROR_FALLBACK_ERROR_CODE,("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},35458,(e,t,r)=>{"use strict";function i(){throw Object.defineProperty(Error("`unauthorized()` is experimental and only allowed to be used when `experimental.authInterrupts` is enabled."),"__NEXT_ERROR_CODE",{value:"E411",enumerable:!1,configurable:!0})}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"unauthorized",{enumerable:!0,get:function(){return i}}),e.r(12053).HTTP_ERROR_FALLBACK_ERROR_CODE,("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},67539,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"isPostpone",{enumerable:!0,get:function(){return n}});let i=Symbol.for("react.postpone");function n(e){return"object"==typeof e&&null!==e&&e.$$typeof===i}},62782,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"isNextRouterError",{enumerable:!0,get:function(){return a}});let i=e.r(12053),n=e.r(19334);function a(e){return(0,n.isRedirectError)(e)||(0,i.isHTTPAccessFallbackError)(e)}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},17387,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"unstable_rethrow",{enumerable:!0,get:function(){return function e(t){if((0,o.isNextRouterError)(t)||(0,a.isBailoutToCSRError)(t)||(0,s.isDynamicServerError)(t)||(0,l.isDynamicPostpone)(t)||(0,n.isPostpone)(t)||(0,i.isHangingPromiseRejectionError)(t)||(0,l.isPrerenderInterruptedError)(t))throw t;t instanceof Error&&"cause"in t&&e(t.cause)}}});let i=e.r(4642),n=e.r(67539),a=e.r(31584),o=e.r(62782),l=e.r(68665),s=e.r(65252);("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},9811,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"unstable_rethrow",{enumerable:!0,get:function(){return i}});let i=e.r(17387).unstable_rethrow;("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},79509,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var i={ReadonlyURLSearchParams:function(){return a.ReadonlyURLSearchParams},RedirectType:function(){return f},forbidden:function(){return s.forbidden},notFound:function(){return l.notFound},permanentRedirect:function(){return o.permanentRedirect},redirect:function(){return o.redirect},unauthorized:function(){return u.unauthorized},unstable_isUnrecognizedActionError:function(){return c},unstable_rethrow:function(){return d.unstable_rethrow}};for(var n in i)Object.defineProperty(r,n,{enumerable:!0,get:i[n]});let a=e.r(8595),o=e.r(22349),l=e.r(2507),s=e.r(47658),u=e.r(35458),d=e.r(9811);function c(){throw Object.defineProperty(Error("`unstable_isUnrecognizedActionError` can only be used on the client."),"__NEXT_ERROR_CODE",{value:"E776",enumerable:!1,configurable:!0})}let f={push:"push",replace:"replace"};("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},91180,43471,e=>{"use strict";var t=e.i(23667);e.i(79509);var r=e.i(98902),i=e.i(98003);async function n(){return(0,i.isLoginBypassed)()?{expires:new Date(Date.now()+864e5).toISOString(),user:{email:"local@source-admin.dev",id:"local-dev-user",name:"Local Developer",preferredUsername:"local-dev",role:"admin"}}:(0,t.getServerSession)(r.authOptions)}async function a(){return n()}e.s(["isSessionAdmin",0,function(e){return!!e?.user&&(!!(0,i.isLoginBypassed)()||"admin"===e.user.role)},"requireApiSession",0,a],91180);var o=e.i(40317);function l(){e.g.__logManagerPlatformCacheVersion=("number"!=typeof e.g.__logManagerPlatformCacheVersion&&(e.g.__logManagerPlatformCacheVersion=0),e.g.__logManagerPlatformCacheVersion+1)}async function s(t){if("windows"===t)try{let t=await e.A(11817);return t.default??t}catch{throw new o.ConfigurationError("Windows Authentication requires the msnodesqlv8 driver to be installed.",["msnodesqlv8"])}let r=await e.A(75106);return r.default??r}async function u(e){let t=await s(e.authMode),r=t.ConnectionPool.parseConnectionString(e.connectionString);return new t.ConnectionPool((r.requestTimeout=e.requestTimeoutMs,!r.options&&(r.options={}),r.options.instanceName&&r.server?.endsWith("\\")&&(r.server=r.server.slice(0,-1)),"windows"===e.authMode?(r.driver=e.odbcDriver||"ODBC Driver 17 for SQL Server",r.options.trustedConnection=!0,"boolean"!=typeof r.options.trustServerCertificate&&(r.options.trustServerCertificate=!0),"boolean"!=typeof r.options.encrypt&&(r.options.encrypt=!1)):"boolean"!=typeof r.options.encrypt&&(r.options.encrypt=!0),r)).connect()}async function d(t){let r=JSON.stringify(t);e.g.__logManagerMssqlPools||(e.g.__logManagerMssqlPools=new Map);let i=e.g.__logManagerMssqlPools.get(r);if(i)return i;let n=u(t).catch(t=>{throw e.g.__logManagerMssqlPools?.delete(r),t});return e.g.__logManagerMssqlPools.set(r,n),n}async function c(e){return(await d(e)).request()}let f=[{dataTypes:["bit","boolean"],valueType:"boolean"},{dataTypes:["bigint","decimal","float","int","money","numeric","real","smallint","smallmoney","tinyint"],valueType:"number"},{dataTypes:["date","datetime","datetime2","datetimeoffset","smalldatetime","time"],valueType:"datetime"}],p={application:[{bonus:18,pattern:/^(application|app|appname)$/i},{bonus:14,pattern:/^app(env|version)$/i},{bonus:10,pattern:/application/i}],correlationId:[{bonus:28,pattern:/^correlation(id)?$/i},{bonus:18,pattern:/request(id|key)/i},{bonus:8,pattern:/trace(id)?/i}],description:[{bonus:18,pattern:/(message|description|summary|details?)/i},{bonus:10,pattern:/(error|fault).*(message|description)/i}],fromLocation:[{bonus:16,pattern:/^(from|origin)(airport|station|location|code)?$/i},{bonus:8,pattern:/^source(airport|location)$/i}],provider:[{bonus:18,pattern:/^provider(name)?$/i},{bonus:10,pattern:/(vendor|supplier)/i}],recordId:[{bonus:28,pattern:/(log(detail)?id|recordid|eventid|entryid|auditid)/i,preferredTypes:["string","number"]},{bonus:16,pattern:/(id)$/i,preferredTypes:["string","number"]}],responseTime:[{bonus:22,pattern:/(response|duration|elapsed|latency).*ms/i},{bonus:16,pattern:/(response|duration|elapsed|latency|time)/i}],service:[{bonus:18,pattern:/^service(id|name)?$/i},{bonus:12,pattern:/(endpoint|operation|method)/i}],status:[{bonus:24,pattern:/^is(error|failed?)$/i,preferredTypes:["boolean"]},{bonus:18,pattern:/(error|failed?|success|status|severity|level)/i}],timestamp:[{bonus:30,pattern:/(event(date|time)|created(at|on)?|logged(at)?|timestamp|occurred(at)?)/i,preferredTypes:["datetime"]},{bonus:12,pattern:/(date|time)/i,preferredTypes:["datetime"]}],title:[{bonus:18,pattern:/(application|service|operation|event|action)/i},{bonus:10,pattern:/(provider|message|description)/i}],toLocation:[{bonus:16,pattern:/^(to|destination)(airport|station|location|code)?$/i},{bonus:8,pattern:/^target(airport|location)$/i}]};function m(e){return e.replace(/([a-z\d])([A-Z])/g,"$1 $2").replace(/[^a-zA-Z0-9]+/g," ").trim().split(/\s+/).map((e,t)=>0===t?e.toLowerCase():`${e.charAt(0).toUpperCase()}${e.slice(1).toLowerCase()}`).join("")||"field"}function b(e){let t=new Set,r=e.fieldRef.toLowerCase();for(let i of(("xml"===e.dataType.toLowerCase()||r.includes("xml"))&&t.add("xml"),r.includes("json")&&t.add("json"),e.sampleValues)){let e=i.trim();if(e){if((e.startsWith("{")||e.startsWith("["))&&!t.has("json"))try{JSON.parse(e),t.add("json")}catch{}(e.startsWith("<")||e.startsWith("<?xml"))&&!t.has("xml")&&/<[A-Za-z_]/.test(e)&&t.add("xml")}}return!t.size&&/(payload|body|request|response|content)/i.test(r)&&t.add("text"),Array.from(t)}function y(e,t){let r=null;for(let i of e.fields){let e=function(e,t){let r=p[t],i=0;for(let t of r)t.pattern.test(e.fieldRef)&&(i+=t.bonus,(!t.preferredTypes?.length||t.preferredTypes.includes(e.valueType))&&(i+=6));return"status"===t&&"boolean"===e.valueType&&(i+=8),"timestamp"===t&&"datetime"===e.valueType&&(i+=10),"recordId"===t&&["string","number"].includes(e.valueType)&&(i+=8),i}(i,t);!e||r&&r.confidence>=e||(r={confidence:e,fieldRef:i.fieldRef,label:i.label,role:t})}return r}function g(e,t,r){let i=function(e,t){if(!t.has(e))return t.add(e),e;let r=2;for(;t.has(`${e}${r}`);)r+=1;let i=`${e}${r}`;return t.add(i),i}(r?.id??m(e.fieldRef),t),n="text";return"datetime"===e.valueType?n="datetime":"boolean"===e.valueType&&(n="boolean"),{fieldRef:e.fieldRef,filterable:!1,filterInput:null,format:n,id:i,label:r?.label??e.label,showInDetail:!0,showInList:!1,valueType:e.valueType,...r}}function R(e,t){let r,i={application:y(t,"application")??void 0,correlationId:y(t,"correlationId")??void 0,description:y(t,"description")??void 0,fromLocation:y(t,"fromLocation")??void 0,provider:y(t,"provider")??void 0,recordId:y(t,"recordId")??void 0,responseTime:y(t,"responseTime")??void 0,service:y(t,"service")??void 0,status:y(t,"status")??void 0,timestamp:y(t,"timestamp")??void 0,title:y(t,"title")??void 0,toLocation:y(t,"toLocation")??void 0};if(!i.recordId||!i.timestamp)return null;let n=new Set,a=[],o=(e,r)=>{let o=i[e];if(!o)return null;let l=t.fields.find(e=>e.fieldRef===o.fieldRef);if(!l)return null;let s=g(l,n,r);return a.push(s),s},l=o("recordId",{id:"recordId",label:"Record ID",showInList:!1}),s=o("timestamp",{format:"datetime",id:"eventTime",label:"Event Time (UTC)",showInList:!0,valueType:"datetime"}),u=o("application",{filterInput:"text",filterable:!0,id:"application",label:"Application",showInList:!0})??o("title",{filterInput:"text",filterable:!0,id:"title",label:"Title",showInList:!0}),d=o("description",{id:"description",label:"Description",showInList:!1});o("service",{filterInput:"text",filterable:!0,id:"service",label:"Service",showInList:!0}),o("provider",{filterInput:"text",filterable:!0,id:"provider",label:"Provider",showInList:!0}),o("correlationId",{filterInput:"text",filterable:!0,id:"correlationId",label:"Correlation ID",showInList:!0}),o("fromLocation",{filterInput:"text",filterable:!0,id:"fromLocation",label:"From",showInList:!0}),o("toLocation",{filterInput:"text",filterable:!0,id:"toLocation",label:"To",showInList:!0}),o("responseTime",{format:"durationMs",id:"responseTime",label:"Response Time",showInList:!0,valueType:"number"});let c=o("status",{filterInput:"boolean",filterable:!0,format:"status",id:"status",label:"Status",showInList:!0}),f=function(e){let t=e.fields.filter(e=>e.sampleKinds.length||/(payload|body|request|response|json|xml)/i.test(e.fieldRef)),r=[];for(let e of t){let t=e.sampleKinds.length?e.sampleKinds:b(e);if(!t.length)continue;let i=e.fieldRef.toLowerCase().includes("request")?"request":e.fieldRef.toLowerCase().includes("response")?"response":"other";for(let n of t)"text"===n&&t.some(e=>"text"!==e)||r.push({fieldRef:e.fieldRef,group:i,id:m(e.fieldRef),kind:n,label:e.fieldRef.replace(/[_-]+/g," ").replace(/([a-z\d])([A-Z])/g,"$1 $2").replace(/\s+/g," ").trim().replace(/\b\w/g,e=>e.toUpperCase())})}return r}(t),p=new Set(f.map(e=>e.fieldRef));for(let e of t.fields.filter(e=>!p.has(e.fieldRef)).filter(e=>!a.some(t=>t.fieldRef===e.fieldRef)).slice(0,12))a.push(g(e,n,{filterInput:"boolean"===e.valueType?"boolean":"string"===e.valueType?"text":null,filterable:"boolean"===e.valueType||"string"===e.valueType}));let R=(r=new Set,a.filter(e=>!r.has(e.fieldRef)&&(r.add(e.fieldRef),!0))).map((e,t)=>({...e,showInDetail:t<16&&e.showInDetail})),v=(i.timestamp?.confidence??0)+(i.recordId?.confidence??0)+(i.status?.confidence??0)+(i.correlationId?.confidence??0)+16*!!f.length+24*!!/log|audit|trace|event|hit/i.test(t.name),h=[i.timestamp?`Timestamp field: ${i.timestamp.label}`:null,i.recordId?`Record id field: ${i.recordId.label}`:null,i.status?`Status field: ${i.status.label}`:null,f.length?`${f.length} payload field(s) detected`:null].filter(Boolean);return{candidate:{matches:i,proposedMapping:{defaultSort:{direction:"desc",fieldRef:s?.fieldRef??i.timestamp.fieldRef},descriptionFieldId:d?.id??null,fields:R,payloads:f,recordIdFieldRef:l?.fieldRef??i.recordId.fieldRef,sourceId:e,statusFieldId:c?.id??null,target:{name:t.name,qualifiedName:t.qualifiedName,schema:t.schema},timestampFieldRef:s?.fieldRef??i.timestamp.fieldRef,titleFieldId:u?.id??d?.id??null,version:1},reasons:h,score:v,target:{name:t.name,qualifiedName:t.qualifiedName,schema:t.schema}},reasons:h,score:v}}function v(e,t){return t.map(t=>{let r=R(e,t);return{...t,candidateReasons:r?.reasons??t.candidateReasons,candidateScore:r?.score??t.candidateScore}}).sort((e,t)=>t.candidateScore-e.candidateScore)}function h(e,t){let r=e.fields.find(e=>e.id===t);if(!r)throw Error(`Mapped field ${t} is missing.`);return{format:r.format,id:r.id,label:r.label,valueType:r.valueType}}function _(e,t){let r=t.fields.map(e=>({format:e.format,id:e.id,label:e.label,valueType:e.valueType})),i=t.fields.filter(e=>e.filterable&&e.filterInput).slice(0,8).map(e=>({id:e.id,input:e.filterInput??"text",label:e.label,valueType:e.valueType})),n=t.fields.filter(e=>e.showInList).map(e=>h(t,e.id)),a=t.fields.filter(e=>e.showInDetail).map(e=>h(t,e.id)),o=t.fields.find(e=>e.fieldRef===t.timestampFieldRef)?.id??"eventTime";return{columns:n,defaultDatePresetHours:24,descriptionFieldId:t.descriptionFieldId,description:`Read-only inspection of ${t.target.qualifiedName}.`,detailFields:a,fields:r,filters:i,payloads:t.payloads,sourceLabel:e.name,statusFieldId:t.statusFieldId,targetLabel:t.target.qualifiedName,timestampFieldId:o,title:`${e.name} Table Explorer`,titleFieldId:t.titleFieldId}}function T(e){return{...e,sampleKinds:b(e)}}function S(e){return"boolean"===e.valueType?"boolean":"number"===e.valueType?"number":"datetime"===e.valueType?"datetime":/text|ntext|xml/i.test(e.dataType)||-1===e.maxLength||null!==e.maxLength&&e.maxLength>=512?"longText":"shortText"}function w(e){let t=e.sampleKinds.length?e.sampleKinds:b(e);return t.includes("json")?"json":t.includes("xml")?"xml":t.includes("text")?"text":null}function E(e){return`[${e.replaceAll("]","]]")}]`}function O(e){return`${E(e.schema)}.${E(e.name)}`}function N(e){if(null==e)return null;if("boolean"==typeof e)return e;if("number"==typeof e)return 0!==e;if("bigint"==typeof e)return e!==BigInt(0);let t=String(e).trim().toLowerCase();return"1"===t||"true"===t||"0"!==t&&"false"!==t&&null}function j(e){if(null==e)return null;if("number"==typeof e)return Number.isFinite(e)?e:null;if("bigint"==typeof e)return Number(e);let t=Number(e);return Number.isFinite(t)?t:null}function A(e){return null==e?null:String(e)}function x(e){return/binary|image|rowversion|timestamp/i.test(e)}function C(e){return x(e.dataType)?`DATALENGTH(${E(e.fieldRef)})`:/xml|text|ntext|sql_variant/i.test(e.dataType)?`TRY_CONVERT(nvarchar(4000), ${E(e.fieldRef)})`:E(e.fieldRef)}function I(e){return{dataType:e.dataType,isNullable:e.isNullable,label:e.label,maxLength:e.maxLength,name:e.fieldRef,payloadKindHint:w(e),presentationKind:S(e),valueType:e.valueType}}async function P(e,t){let r=t.fields.filter(e=>/(request|response|json|xml|payload|body|message|description|time|id|status|error)/i.test(e.fieldRef)).slice(0,10);if(!r.length)return t;let i=await c(e.connection),n=t.fields.find(e=>/event|created|time|date/i.test(e.fieldRef))??t.fields.find(e=>/id$/i.test(e.fieldRef)),a=r.map(e=>`${E(e.fieldRef)} AS ${E(e.fieldRef)}`).join(", "),o=n?`ORDER BY ${E(n.fieldRef)} DESC`:"",l=(await i.query(`
|
|
2
|
-
SELECT TOP (5) ${
|
|
3
|
-
FROM ${
|
|
4
|
-
${
|
|
5
|
-
`)).recordset??[],
|
|
6
|
-
|
|
7
|
-
|
|
1
|
+
module.exports=[8595,(e,t,i)=>{"use strict";Object.defineProperty(i,"__esModule",{value:!0}),Object.defineProperty(i,"ReadonlyURLSearchParams",{enumerable:!0,get:function(){return n}});class r extends Error{constructor(){super("Method unavailable on `ReadonlyURLSearchParams`. Read more: https://nextjs.org/docs/app/api-reference/functions/use-search-params#updating-searchparams")}}class n extends URLSearchParams{append(){throw new r}delete(){throw new r}set(){throw new r}sort(){throw new r}}("function"==typeof i.default||"object"==typeof i.default&&null!==i.default)&&void 0===i.default.__esModule&&(Object.defineProperty(i.default,"__esModule",{value:!0}),Object.assign(i.default,i),t.exports=i.default)},50723,(e,t,i)=>{"use strict";Object.defineProperty(i,"__esModule",{value:!0}),Object.defineProperty(i,"RedirectStatusCode",{enumerable:!0,get:function(){return n}});var r,n=((r={})[r.SeeOther=303]="SeeOther",r[r.TemporaryRedirect=307]="TemporaryRedirect",r[r.PermanentRedirect=308]="PermanentRedirect",r);("function"==typeof i.default||"object"==typeof i.default&&null!==i.default)&&void 0===i.default.__esModule&&(Object.defineProperty(i.default,"__esModule",{value:!0}),Object.assign(i.default,i),t.exports=i.default)},19334,(e,t,i)=>{"use strict";Object.defineProperty(i,"__esModule",{value:!0});var r={REDIRECT_ERROR_CODE:function(){return s},isRedirectError:function(){return a}};for(var n in r)Object.defineProperty(i,n,{enumerable:!0,get:r[n]});let o=e.r(50723),s="NEXT_REDIRECT";function a(e){if("object"!=typeof e||null===e||!("digest"in e)||"string"!=typeof e.digest)return!1;let t=e.digest.split(";"),[i,r]=t,n=t.slice(2,-2).join(";"),a=Number(t.at(-2));return i===s&&("replace"===r||"push"===r)&&"string"==typeof n&&!isNaN(a)&&a in o.RedirectStatusCode}("function"==typeof i.default||"object"==typeof i.default&&null!==i.default)&&void 0===i.default.__esModule&&(Object.defineProperty(i.default,"__esModule",{value:!0}),Object.assign(i.default,i),t.exports=i.default)},22349,(e,t,i)=>{"use strict";Object.defineProperty(i,"__esModule",{value:!0});var r={getRedirectError:function(){return l},getRedirectStatusCodeFromError:function(){return m},getRedirectTypeFromError:function(){return c},getURLFromRedirectError:function(){return f},permanentRedirect:function(){return d},redirect:function(){return u}};for(var n in r)Object.defineProperty(i,n,{enumerable:!0,get:r[n]});let o=e.r(50723),s=e.r(19334),a=e.r(20635).actionAsyncStorage;function l(e,t,i=o.RedirectStatusCode.TemporaryRedirect){let r=Object.defineProperty(Error(s.REDIRECT_ERROR_CODE),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return r.digest=`${s.REDIRECT_ERROR_CODE};${t};${e};${i};`,r}function u(e,t){throw l(e,t??=a?.getStore()?.isAction?"push":"replace",o.RedirectStatusCode.TemporaryRedirect)}function d(e,t="replace"){throw l(e,t,o.RedirectStatusCode.PermanentRedirect)}function f(e){return(0,s.isRedirectError)(e)?e.digest.split(";").slice(2,-2).join(";"):null}function c(e){if(!(0,s.isRedirectError)(e))throw Object.defineProperty(Error("Not a redirect error"),"__NEXT_ERROR_CODE",{value:"E260",enumerable:!1,configurable:!0});return e.digest.split(";",2)[1]}function m(e){if(!(0,s.isRedirectError)(e))throw Object.defineProperty(Error("Not a redirect error"),"__NEXT_ERROR_CODE",{value:"E260",enumerable:!1,configurable:!0});return Number(e.digest.split(";").at(-2))}("function"==typeof i.default||"object"==typeof i.default&&null!==i.default)&&void 0===i.default.__esModule&&(Object.defineProperty(i.default,"__esModule",{value:!0}),Object.assign(i.default,i),t.exports=i.default)},12053,(e,t,i)=>{"use strict";Object.defineProperty(i,"__esModule",{value:!0});var r={HTTPAccessErrorStatus:function(){return o},HTTP_ERROR_FALLBACK_ERROR_CODE:function(){return a},getAccessFallbackErrorTypeByStatus:function(){return d},getAccessFallbackHTTPStatus:function(){return u},isHTTPAccessFallbackError:function(){return l}};for(var n in r)Object.defineProperty(i,n,{enumerable:!0,get:r[n]});let o={NOT_FOUND:404,FORBIDDEN:403,UNAUTHORIZED:401},s=new Set(Object.values(o)),a="NEXT_HTTP_ERROR_FALLBACK";function l(e){if("object"!=typeof e||null===e||!("digest"in e)||"string"!=typeof e.digest)return!1;let[t,i]=e.digest.split(";");return t===a&&s.has(Number(i))}function u(e){return Number(e.digest.split(";")[1])}function d(e){switch(e){case 401:return"unauthorized";case 403:return"forbidden";case 404:return"not-found";default:return}}("function"==typeof i.default||"object"==typeof i.default&&null!==i.default)&&void 0===i.default.__esModule&&(Object.defineProperty(i.default,"__esModule",{value:!0}),Object.assign(i.default,i),t.exports=i.default)},2507,(e,t,i)=>{"use strict";Object.defineProperty(i,"__esModule",{value:!0}),Object.defineProperty(i,"notFound",{enumerable:!0,get:function(){return o}});let r=e.r(12053),n=`${r.HTTP_ERROR_FALLBACK_ERROR_CODE};404`;function o(){let e=Object.defineProperty(Error(n),"__NEXT_ERROR_CODE",{value:"E1041",enumerable:!1,configurable:!0});throw e.digest=n,e}("function"==typeof i.default||"object"==typeof i.default&&null!==i.default)&&void 0===i.default.__esModule&&(Object.defineProperty(i.default,"__esModule",{value:!0}),Object.assign(i.default,i),t.exports=i.default)},47658,(e,t,i)=>{"use strict";function r(){throw Object.defineProperty(Error("`forbidden()` is experimental and only allowed to be enabled when `experimental.authInterrupts` is enabled."),"__NEXT_ERROR_CODE",{value:"E488",enumerable:!1,configurable:!0})}Object.defineProperty(i,"__esModule",{value:!0}),Object.defineProperty(i,"forbidden",{enumerable:!0,get:function(){return r}}),e.r(12053).HTTP_ERROR_FALLBACK_ERROR_CODE,("function"==typeof i.default||"object"==typeof i.default&&null!==i.default)&&void 0===i.default.__esModule&&(Object.defineProperty(i.default,"__esModule",{value:!0}),Object.assign(i.default,i),t.exports=i.default)},35458,(e,t,i)=>{"use strict";function r(){throw Object.defineProperty(Error("`unauthorized()` is experimental and only allowed to be used when `experimental.authInterrupts` is enabled."),"__NEXT_ERROR_CODE",{value:"E411",enumerable:!1,configurable:!0})}Object.defineProperty(i,"__esModule",{value:!0}),Object.defineProperty(i,"unauthorized",{enumerable:!0,get:function(){return r}}),e.r(12053).HTTP_ERROR_FALLBACK_ERROR_CODE,("function"==typeof i.default||"object"==typeof i.default&&null!==i.default)&&void 0===i.default.__esModule&&(Object.defineProperty(i.default,"__esModule",{value:!0}),Object.assign(i.default,i),t.exports=i.default)},67539,(e,t,i)=>{"use strict";Object.defineProperty(i,"__esModule",{value:!0}),Object.defineProperty(i,"isPostpone",{enumerable:!0,get:function(){return n}});let r=Symbol.for("react.postpone");function n(e){return"object"==typeof e&&null!==e&&e.$$typeof===r}},62782,(e,t,i)=>{"use strict";Object.defineProperty(i,"__esModule",{value:!0}),Object.defineProperty(i,"isNextRouterError",{enumerable:!0,get:function(){return o}});let r=e.r(12053),n=e.r(19334);function o(e){return(0,n.isRedirectError)(e)||(0,r.isHTTPAccessFallbackError)(e)}("function"==typeof i.default||"object"==typeof i.default&&null!==i.default)&&void 0===i.default.__esModule&&(Object.defineProperty(i.default,"__esModule",{value:!0}),Object.assign(i.default,i),t.exports=i.default)},17387,(e,t,i)=>{"use strict";Object.defineProperty(i,"__esModule",{value:!0}),Object.defineProperty(i,"unstable_rethrow",{enumerable:!0,get:function(){return function e(t){if((0,s.isNextRouterError)(t)||(0,o.isBailoutToCSRError)(t)||(0,l.isDynamicServerError)(t)||(0,a.isDynamicPostpone)(t)||(0,n.isPostpone)(t)||(0,r.isHangingPromiseRejectionError)(t)||(0,a.isPrerenderInterruptedError)(t))throw t;t instanceof Error&&"cause"in t&&e(t.cause)}}});let r=e.r(4642),n=e.r(67539),o=e.r(31584),s=e.r(62782),a=e.r(68665),l=e.r(65252);("function"==typeof i.default||"object"==typeof i.default&&null!==i.default)&&void 0===i.default.__esModule&&(Object.defineProperty(i.default,"__esModule",{value:!0}),Object.assign(i.default,i),t.exports=i.default)},9811,(e,t,i)=>{"use strict";Object.defineProperty(i,"__esModule",{value:!0}),Object.defineProperty(i,"unstable_rethrow",{enumerable:!0,get:function(){return r}});let r=e.r(17387).unstable_rethrow;("function"==typeof i.default||"object"==typeof i.default&&null!==i.default)&&void 0===i.default.__esModule&&(Object.defineProperty(i.default,"__esModule",{value:!0}),Object.assign(i.default,i),t.exports=i.default)},79509,(e,t,i)=>{"use strict";Object.defineProperty(i,"__esModule",{value:!0});var r={ReadonlyURLSearchParams:function(){return o.ReadonlyURLSearchParams},RedirectType:function(){return c},forbidden:function(){return l.forbidden},notFound:function(){return a.notFound},permanentRedirect:function(){return s.permanentRedirect},redirect:function(){return s.redirect},unauthorized:function(){return u.unauthorized},unstable_isUnrecognizedActionError:function(){return f},unstable_rethrow:function(){return d.unstable_rethrow}};for(var n in r)Object.defineProperty(i,n,{enumerable:!0,get:r[n]});let o=e.r(8595),s=e.r(22349),a=e.r(2507),l=e.r(47658),u=e.r(35458),d=e.r(9811);function f(){throw Object.defineProperty(Error("`unstable_isUnrecognizedActionError` can only be used on the client."),"__NEXT_ERROR_CODE",{value:"E776",enumerable:!1,configurable:!0})}let c={push:"push",replace:"replace"};("function"==typeof i.default||"object"==typeof i.default&&null!==i.default)&&void 0===i.default.__esModule&&(Object.defineProperty(i.default,"__esModule",{value:!0}),Object.assign(i.default,i),t.exports=i.default)},91180,43471,e=>{"use strict";var t=e.i(23667);e.i(79509);var i=e.i(98902),r=e.i(98003);async function n(){return(0,r.isLoginBypassed)()?{expires:new Date(Date.now()+864e5).toISOString(),user:{email:"local@source-admin.dev",id:"local-dev-user",name:"Local Developer",preferredUsername:"local-dev",role:"admin"}}:(0,t.getServerSession)(i.authOptions)}async function o(){return n()}e.s(["isSessionAdmin",0,function(e){return!!e?.user&&(!!(0,r.isLoginBypassed)()||"admin"===e.user.role)},"requireApiSession",0,o],91180);var s=e.i(40317);function a(){e.g.__logManagerPlatformCacheVersion=("number"!=typeof e.g.__logManagerPlatformCacheVersion&&(e.g.__logManagerPlatformCacheVersion=0),e.g.__logManagerPlatformCacheVersion+1)}var l=e.i(2157),u=e.i(12714),d=e.i(50227),f=e.i(88947);let c=function(e){return"object"==typeof e&&null!==e&&!Array.isArray(e)};class m extends Error{constructor(e,t,i,...r){for(const n of(Array.isArray(t)&&(t=t.join(" ").trim()),super(t),void 0!==Error.captureStackTrace&&Error.captureStackTrace(this,m),this.code=e,r))for(const e in n){const t=n[e];this[e]=Buffer.isBuffer(t)?t.toString(i.encoding):null==t?t:JSON.parse(JSON.stringify(t))}}}let p=function(e){let t=[];for(let i=0,r=e.length;i<r;i++){let r=e[i];if(null==r||!1===r)t[i]={disabled:!0};else if("string"==typeof r||"number"==typeof r)t[i]={name:`${r}`};else if(c(r)){if("string"!=typeof r.name)throw new m("CSV_OPTION_COLUMNS_MISSING_NAME",["Option columns missing name:",`property "name" is required at position ${i}`,"when column is an object literal"]);t[i]=r}else throw new m("CSV_INVALID_COLUMN_DEFINITION",["Invalid column definition:","expect a string or a literal object,",`got ${JSON.stringify(r)} at position ${i}`])}return t},h=class{constructor(e=100){this.size=e,this.length=0,this.buf=Buffer.allocUnsafe(e)}prepend(e){if(Buffer.isBuffer(e)){let t=this.length+e.length;if(t>=this.size&&(this.resize(),t>=this.size))throw Error("INVALID_BUFFER_STATE");let i=this.buf;this.buf=Buffer.allocUnsafe(this.size),e.copy(this.buf,0),i.copy(this.buf,e.length),this.length+=e.length}else{let t=this.length++;t===this.size&&this.resize();let i=this.clone();this.buf[0]=e,i.copy(this.buf,1,0,t)}}append(e){let t=this.length++;t===this.size&&this.resize(),this.buf[t]=e}clone(){return Buffer.from(this.buf.slice(0,this.length))}resize(){let e=this.length;this.size=2*this.size;let t=Buffer.allocUnsafe(this.size);this.buf.copy(t,0,0,e),this.buf=t}toString(e){return e?this.buf.slice(0,this.length).toString(e):Uint8Array.prototype.slice.call(this.buf.slice(0,this.length))}toJSON(){return this.toString("utf8")}reset(){this.length=0}},_=function(e){let t={};for(let i in e)t[i.replace(/([A-Z])/g,function(e,t){return"_"+t.toLowerCase()})]=e[i];if(void 0===t.encoding||!0===t.encoding)t.encoding="utf8";else if(null===t.encoding||!1===t.encoding)t.encoding=null;else if("string"!=typeof t.encoding&&null!==t.encoding)throw new m("CSV_INVALID_OPTION_ENCODING",["Invalid option encoding:","encoding must be a string or null to return a buffer,",`got ${JSON.stringify(t.encoding)}`],t);if(void 0===t.bom||null===t.bom||!1===t.bom)t.bom=!1;else if(!0!==t.bom)throw new m("CSV_INVALID_OPTION_BOM",["Invalid option bom:","bom must be true,",`got ${JSON.stringify(t.bom)}`],t);if(t.cast_function=null,void 0===t.cast||null===t.cast||!1===t.cast||""===t.cast)t.cast=void 0;else if("function"==typeof t.cast)t.cast_function=t.cast,t.cast=!0;else if(!0!==t.cast)throw new m("CSV_INVALID_OPTION_CAST",["Invalid option cast:","cast must be true or a function,",`got ${JSON.stringify(t.cast)}`],t);if(void 0===t.cast_date||null===t.cast_date||!1===t.cast_date||""===t.cast_date)t.cast_date=!1;else if(!0===t.cast_date)t.cast_date=function(e){let t=Date.parse(e);return isNaN(t)?e:new Date(t)};else if("function"!=typeof t.cast_date)throw new m("CSV_INVALID_OPTION_CAST_DATE",["Invalid option cast_date:","cast_date must be true or a function,",`got ${JSON.stringify(t.cast_date)}`],t);if(t.cast_first_line_to_header=void 0,!0===t.columns)t.cast_first_line_to_header=void 0;else if("function"==typeof t.columns)t.cast_first_line_to_header=t.columns,t.columns=!0;else if(Array.isArray(t.columns))t.columns=p(t.columns);else if(void 0===t.columns||null===t.columns||!1===t.columns)t.columns=!1;else throw new m("CSV_INVALID_OPTION_COLUMNS",["Invalid option columns:","expect an array, a function or true,",`got ${JSON.stringify(t.columns)}`],t);if(void 0===t.group_columns_by_name||null===t.group_columns_by_name||!1===t.group_columns_by_name)t.group_columns_by_name=!1;else if(!0!==t.group_columns_by_name)throw new m("CSV_INVALID_OPTION_GROUP_COLUMNS_BY_NAME",["Invalid option group_columns_by_name:","expect an boolean,",`got ${JSON.stringify(t.group_columns_by_name)}`],t);else if(!1===t.columns)throw new m("CSV_INVALID_OPTION_GROUP_COLUMNS_BY_NAME",["Invalid option group_columns_by_name:","the `columns` mode must be activated."],t);if(void 0===t.comment||null===t.comment||!1===t.comment||""===t.comment)t.comment=null;else if("string"==typeof t.comment&&(t.comment=Buffer.from(t.comment,t.encoding)),!Buffer.isBuffer(t.comment))throw new m("CSV_INVALID_OPTION_COMMENT",["Invalid option comment:","comment must be a buffer or a string,",`got ${JSON.stringify(t.comment)}`],t);if(void 0===t.comment_no_infix||null===t.comment_no_infix||!1===t.comment_no_infix)t.comment_no_infix=!1;else if(!0!==t.comment_no_infix)throw new m("CSV_INVALID_OPTION_COMMENT",["Invalid option comment_no_infix:","value must be a boolean,",`got ${JSON.stringify(t.comment_no_infix)}`],t);let i=JSON.stringify(t.delimiter);if(Array.isArray(t.delimiter)||(t.delimiter=[t.delimiter]),0===t.delimiter.length)throw new m("CSV_INVALID_OPTION_DELIMITER",["Invalid option delimiter:","delimiter must be a non empty string or buffer or array of string|buffer,",`got ${i}`],t);if(t.delimiter=t.delimiter.map(function(e){if(null==e||!1===e)return Buffer.from(",",t.encoding);if("string"==typeof e&&(e=Buffer.from(e,t.encoding)),!Buffer.isBuffer(e)||0===e.length)throw new m("CSV_INVALID_OPTION_DELIMITER",["Invalid option delimiter:","delimiter must be a non empty string or buffer or array of string|buffer,",`got ${i}`],t);return e}),void 0===t.escape||!0===t.escape?t.escape=Buffer.from('"',t.encoding):"string"==typeof t.escape?t.escape=Buffer.from(t.escape,t.encoding):(null===t.escape||!1===t.escape)&&(t.escape=null),null!==t.escape&&!Buffer.isBuffer(t.escape))throw Error(`Invalid Option: escape must be a buffer, a string or a boolean, got ${JSON.stringify(t.escape)}`);if(void 0===t.from||null===t.from)t.from=1;else if("string"==typeof t.from&&/\d+/.test(t.from)&&(t.from=parseInt(t.from)),Number.isInteger(t.from)){if(t.from<0)throw Error(`Invalid Option: from must be a positive integer, got ${JSON.stringify(e.from)}`)}else throw Error(`Invalid Option: from must be an integer, got ${JSON.stringify(t.from)}`);if(void 0===t.from_line||null===t.from_line)t.from_line=1;else if("string"==typeof t.from_line&&/\d+/.test(t.from_line)&&(t.from_line=parseInt(t.from_line)),Number.isInteger(t.from_line)){if(t.from_line<=0)throw Error(`Invalid Option: from_line must be a positive integer greater than 0, got ${JSON.stringify(e.from_line)}`)}else throw Error(`Invalid Option: from_line must be an integer, got ${JSON.stringify(e.from_line)}`);if(void 0===t.ignore_last_delimiters||null===t.ignore_last_delimiters)t.ignore_last_delimiters=!1;else if("number"==typeof t.ignore_last_delimiters)t.ignore_last_delimiters=Math.floor(t.ignore_last_delimiters),0===t.ignore_last_delimiters&&(t.ignore_last_delimiters=!1);else if("boolean"!=typeof t.ignore_last_delimiters)throw new m("CSV_INVALID_OPTION_IGNORE_LAST_DELIMITERS",["Invalid option `ignore_last_delimiters`:","the value must be a boolean value or an integer,",`got ${JSON.stringify(t.ignore_last_delimiters)}`],t);if(!0===t.ignore_last_delimiters&&!1===t.columns)throw new m("CSV_IGNORE_LAST_DELIMITERS_REQUIRES_COLUMNS",["The option `ignore_last_delimiters`","requires the activation of the `columns` option"],t);if(void 0===t.info||null===t.info||!1===t.info)t.info=!1;else if(!0!==t.info)throw Error(`Invalid Option: info must be true, got ${JSON.stringify(t.info)}`);if(void 0===t.max_record_size||null===t.max_record_size||!1===t.max_record_size)t.max_record_size=0;else if(Number.isInteger(t.max_record_size)&&t.max_record_size>=0);else if("string"==typeof t.max_record_size&&/\d+/.test(t.max_record_size))t.max_record_size=parseInt(t.max_record_size);else throw Error(`Invalid Option: max_record_size must be a positive integer, got ${JSON.stringify(t.max_record_size)}`);if(void 0===t.objname||null===t.objname||!1===t.objname)t.objname=void 0;else if(Buffer.isBuffer(t.objname)){if(0===t.objname.length)throw Error("Invalid Option: objname must be a non empty buffer");null===t.encoding||(t.objname=t.objname.toString(t.encoding))}else if("string"==typeof t.objname){if(0===t.objname.length)throw Error("Invalid Option: objname must be a non empty string")}else if("number"==typeof t.objname);else throw Error(`Invalid Option: objname must be a string or a buffer, got ${t.objname}`);if(void 0!==t.objname){if("number"==typeof t.objname){if(!1!==t.columns)throw Error("Invalid Option: objname index cannot be combined with columns or be defined as a field")}else if(!1===t.columns)throw Error("Invalid Option: objname field must be combined with columns or be defined as an index")}if(void 0===t.on_record||null===t.on_record)t.on_record=void 0;else if("function"!=typeof t.on_record)throw new m("CSV_INVALID_OPTION_ON_RECORD",["Invalid option `on_record`:","expect a function,",`got ${JSON.stringify(t.on_record)}`],t);if(void 0!==t.on_skip&&null!==t.on_skip&&"function"!=typeof t.on_skip)throw Error(`Invalid Option: on_skip must be a function, got ${JSON.stringify(t.on_skip)}`);if(null===t.quote||!1===t.quote||""===t.quote)t.quote=null;else if(void 0===t.quote||!0===t.quote?t.quote=Buffer.from('"',t.encoding):"string"==typeof t.quote&&(t.quote=Buffer.from(t.quote,t.encoding)),!Buffer.isBuffer(t.quote))throw Error(`Invalid Option: quote must be a buffer or a string, got ${JSON.stringify(t.quote)}`);if(void 0===t.raw||null===t.raw||!1===t.raw)t.raw=!1;else if(!0!==t.raw)throw Error(`Invalid Option: raw must be true, got ${JSON.stringify(t.raw)}`);if(void 0===t.record_delimiter)t.record_delimiter=[];else if("string"==typeof t.record_delimiter||Buffer.isBuffer(t.record_delimiter)){if(0===t.record_delimiter.length)throw new m("CSV_INVALID_OPTION_RECORD_DELIMITER",["Invalid option `record_delimiter`:","value must be a non empty string or buffer,",`got ${JSON.stringify(t.record_delimiter)}`],t);t.record_delimiter=[t.record_delimiter]}else if(!Array.isArray(t.record_delimiter))throw new m("CSV_INVALID_OPTION_RECORD_DELIMITER",["Invalid option `record_delimiter`:","value must be a string, a buffer or array of string|buffer,",`got ${JSON.stringify(t.record_delimiter)}`],t);if(t.record_delimiter=t.record_delimiter.map(function(e,i){if("string"==typeof e||Buffer.isBuffer(e)){if(0===e.length)throw new m("CSV_INVALID_OPTION_RECORD_DELIMITER",["Invalid option `record_delimiter`:","value must be a non empty string or buffer",`at index ${i},`,`got ${JSON.stringify(e)}`],t)}else throw new m("CSV_INVALID_OPTION_RECORD_DELIMITER",["Invalid option `record_delimiter`:","value must be a string, a buffer or array of string|buffer",`at index ${i},`,`got ${JSON.stringify(e)}`],t);return"string"==typeof e&&(e=Buffer.from(e,t.encoding)),e}),"boolean"==typeof t.relax_column_count);else if(void 0===t.relax_column_count||null===t.relax_column_count)t.relax_column_count=!1;else throw Error(`Invalid Option: relax_column_count must be a boolean, got ${JSON.stringify(t.relax_column_count)}`);if("boolean"==typeof t.relax_column_count_less);else if(void 0===t.relax_column_count_less||null===t.relax_column_count_less)t.relax_column_count_less=!1;else throw Error(`Invalid Option: relax_column_count_less must be a boolean, got ${JSON.stringify(t.relax_column_count_less)}`);if("boolean"==typeof t.relax_column_count_more);else if(void 0===t.relax_column_count_more||null===t.relax_column_count_more)t.relax_column_count_more=!1;else throw Error(`Invalid Option: relax_column_count_more must be a boolean, got ${JSON.stringify(t.relax_column_count_more)}`);if("boolean"==typeof t.relax_quotes);else if(void 0===t.relax_quotes||null===t.relax_quotes)t.relax_quotes=!1;else throw Error(`Invalid Option: relax_quotes must be a boolean, got ${JSON.stringify(t.relax_quotes)}`);if("boolean"==typeof t.skip_empty_lines);else if(void 0===t.skip_empty_lines||null===t.skip_empty_lines)t.skip_empty_lines=!1;else throw Error(`Invalid Option: skip_empty_lines must be a boolean, got ${JSON.stringify(t.skip_empty_lines)}`);if("boolean"==typeof t.skip_records_with_empty_values);else if(void 0===t.skip_records_with_empty_values||null===t.skip_records_with_empty_values)t.skip_records_with_empty_values=!1;else throw Error(`Invalid Option: skip_records_with_empty_values must be a boolean, got ${JSON.stringify(t.skip_records_with_empty_values)}`);if("boolean"==typeof t.skip_records_with_error);else if(void 0===t.skip_records_with_error||null===t.skip_records_with_error)t.skip_records_with_error=!1;else throw Error(`Invalid Option: skip_records_with_error must be a boolean, got ${JSON.stringify(t.skip_records_with_error)}`);if(void 0===t.rtrim||null===t.rtrim||!1===t.rtrim)t.rtrim=!1;else if(!0!==t.rtrim)throw Error(`Invalid Option: rtrim must be a boolean, got ${JSON.stringify(t.rtrim)}`);if(void 0===t.ltrim||null===t.ltrim||!1===t.ltrim)t.ltrim=!1;else if(!0!==t.ltrim)throw Error(`Invalid Option: ltrim must be a boolean, got ${JSON.stringify(t.ltrim)}`);if(void 0===t.trim||null===t.trim||!1===t.trim)t.trim=!1;else if(!0!==t.trim)throw Error(`Invalid Option: trim must be a boolean, got ${JSON.stringify(t.trim)}`);if(!0===t.trim&&!1!==e.ltrim?t.ltrim=!0:!0!==t.ltrim&&(t.ltrim=!1),!0===t.trim&&!1!==e.rtrim?t.rtrim=!0:!0!==t.rtrim&&(t.rtrim=!1),void 0===t.to||null===t.to)t.to=-1;else if(-1!==t.to)if("string"==typeof t.to&&/\d+/.test(t.to)&&(t.to=parseInt(t.to)),Number.isInteger(t.to)){if(t.to<=0)throw Error(`Invalid Option: to must be a positive integer greater than 0, got ${JSON.stringify(e.to)}`)}else throw Error(`Invalid Option: to must be an integer, got ${JSON.stringify(e.to)}`);if(void 0===t.to_line||null===t.to_line)t.to_line=-1;else if(-1!==t.to_line)if("string"==typeof t.to_line&&/\d+/.test(t.to_line)&&(t.to_line=parseInt(t.to_line)),Number.isInteger(t.to_line)){if(t.to_line<=0)throw Error(`Invalid Option: to_line must be a positive integer greater than 0, got ${JSON.stringify(e.to_line)}`)}else throw Error(`Invalid Option: to_line must be an integer, got ${JSON.stringify(e.to_line)}`);return t},g=function(e){return e.every(e=>null==e||e.toString&&""===e.toString().trim())},b={utf8:Buffer.from([239,187,191]),utf16le:Buffer.from([255,254])},y=function(e={}){let t=_(e);return{info:{bytes:0,bytes_records:0,comment_lines:0,empty_lines:0,invalid_field_length:0,lines:1,records:0},original_options:e,options:t,state:{bomSkipped:!1,bufBytesStart:0,castField:t.cast_function,commenting:!1,error:void 0,enabled:1===t.from_line,escaping:!1,escapeIsQuote:Buffer.isBuffer(t.escape)&&Buffer.isBuffer(t.quote)&&0===Buffer.compare(t.escape,t.quote),expectedRecordLength:Array.isArray(t.columns)?t.columns.length:void 0,field:new h(20),firstLineToHeaders:t.cast_first_line_to_header,needMoreDataSize:Math.max(null!==t.comment?t.comment.length:0,...t.delimiter.map(e=>e.length),null!==t.quote?t.quote.length:0),previousBuf:void 0,quoting:!1,stop:!1,rawBuffer:new h(100),record:[],recordHasError:!1,record_length:0,recordDelimiterMaxLength:0===t.record_delimiter.length?0:Math.max(...t.record_delimiter.map(e=>e.length)),trimChars:[Buffer.from(" ",t.encoding)[0],Buffer.from(" ",t.encoding)[0]],wasQuoting:!1,wasRowDelimiter:!1,timchars:[Buffer.from(Buffer.from([13],"utf8").toString(),t.encoding),Buffer.from(Buffer.from([10],"utf8").toString(),t.encoding),Buffer.from(Buffer.from([12],"utf8").toString(),t.encoding),Buffer.from(Buffer.from([32],"utf8").toString(),t.encoding),Buffer.from(Buffer.from([9],"utf8").toString(),t.encoding)]},__needMoreData:function(e,t,i){if(i)return!1;let{encoding:r,escape:n,quote:o}=this.options,{quoting:s,needMoreDataSize:a,recordDelimiterMaxLength:l}=this.state;return t-e-1<Math.max(a,0===l?Buffer.from("\r\n",r).length:l,s?(null===n?0:n.length)+o.length:0,s?o.length+l:0)},parse:function(e,t,i,r){let n,o,{bom:s,comment_no_infix:a,encoding:l,from_line:u,ltrim:d,max_record_size:f,raw:c,relax_quotes:p,rtrim:h,skip_empty_lines:g,to:y,to_line:v}=this.options,{comment:w,escape:S,quote:R,record_delimiter:O}=this.options,{bomSkipped:N,previousBuf:I,rawBuffer:E,escapeIsQuote:T}=this.state;if(void 0===I)if(void 0===e)return void r();else n=e;else n=void 0!==I&&void 0===e?I:Buffer.concat([I,e]);if(!1===N)if(!1===s)this.state.bomSkipped=!0;else if(n.length<3){if(!1===t){this.state.previousBuf=n;return}}else{for(let e in b)if(0===b[e].compare(n,0,b[e].length)){let t=b[e].length;this.state.bufBytesStart+=t,n=n.slice(t);let i=_({...this.original_options,encoding:e});for(let e in i)this.options[e]=i[e];({comment:w,escape:S,quote:R}=this.options);break}this.state.bomSkipped=!0}let C=n.length;for(o=0;o<C&&!this.__needMoreData(o,C,t);o++){if(!0===this.state.wasRowDelimiter&&(this.info.lines++,this.state.wasRowDelimiter=!1),-1!==v&&this.info.lines>v){this.state.stop=!0,r();return}!1===this.state.quoting&&0===O.length&&this.__autoDiscoverRecordDelimiter(n,o)&&(O=this.options.record_delimiter);let e=n[o];if(!0===c&&E.append(e),(13===e||10===e)&&!1===this.state.wasRowDelimiter&&(this.state.wasRowDelimiter=!0),!0===this.state.escaping)this.state.escaping=!1;else{if(null!==S&&!0===this.state.quoting&&this.__isEscape(n,o,e)&&o+S.length<C)if(T){if(this.__isQuote(n,o+S.length)){this.state.escaping=!0,o+=S.length-1;continue}}else{this.state.escaping=!0,o+=S.length-1;continue}if(!1===this.state.commenting&&this.__isQuote(n,o))if(!0===this.state.quoting){let t=n[o+R.length],i=h&&this.__isCharTrimable(n,o+R.length),r=null!==w&&this.__compareBytes(w,n,o+R.length,t),s=this.__isDelimiter(n,o+R.length,t),a=0===O.length?this.__autoDiscoverRecordDelimiter(n,o+R.length):this.__isRecordDelimiter(t,n,o+R.length);if(null!==S&&this.__isEscape(n,o,e)&&this.__isQuote(n,o+S.length))o+=S.length-1;else if(!t||s||a||r||i){this.state.quoting=!1,this.state.wasQuoting=!0,o+=R.length-1;continue}else if(!1===p){let e=this.__error(new m("CSV_INVALID_CLOSING_QUOTE",["Invalid Closing Quote:",`got "${String.fromCharCode(t)}"`,`at line ${this.info.lines}`,"instead of delimiter, record delimiter, trimable character","(if activated) or comment"],this.options,this.__infoField()));if(void 0!==e)return e}else this.state.quoting=!1,this.state.wasQuoting=!0,this.state.field.prepend(R),o+=R.length-1}else if(0!==this.state.field.length){if(!1===p){let e=this.__infoField(),t=Object.keys(b).map(e=>!!b[e].equals(this.state.field.toString())&&e).filter(Boolean)[0],i=this.__error(new m("INVALID_OPENING_QUOTE",["Invalid Opening Quote:",`a quote is found on field ${JSON.stringify(e.column)} at line ${e.lines}, value is ${JSON.stringify(this.state.field.toString(l))}`,t?`(${t} bom)`:void 0],this.options,e,{field:this.state.field}));if(void 0!==i)return i}}else{this.state.quoting=!0,o+=R.length-1;continue}if(!1===this.state.quoting){let t=this.__isRecordDelimiter(e,n,o);if(0!==t){if(this.state.commenting&&!1===this.state.wasQuoting&&0===this.state.record.length&&0===this.state.field.length)this.info.comment_lines++;else{if(!1===this.state.enabled&&this.info.lines+ +(!0===this.state.wasRowDelimiter)>=u){this.state.enabled=!0,this.__resetField(),this.__resetRecord(),o+=t-1;continue}if(!0===g&&!1===this.state.wasQuoting&&0===this.state.record.length&&0===this.state.field.length){this.info.empty_lines++,o+=t-1;continue}this.info.bytes=this.state.bufBytesStart+o;let e=this.__onField();if(void 0!==e)return e;this.info.bytes=this.state.bufBytesStart+o+t;let n=this.__onRecord(i);if(void 0!==n)return n;if(-1!==y&&this.info.records>=y){this.state.stop=!0,r();return}}this.state.commenting=!1,o+=t-1;continue}if(this.state.commenting)continue;if(null!==w&&(!1===a||0===this.state.record.length&&0===this.state.field.length)&&0!==this.__compareBytes(w,n,o,e)){this.state.commenting=!0;continue}let s=this.__isDelimiter(n,o,e);if(0!==s){this.info.bytes=this.state.bufBytesStart+o;let e=this.__onField();if(void 0!==e)return e;o+=s-1;continue}}}if(!1===this.state.commenting&&0!==f&&this.state.record_length+this.state.field.length>f)return this.__error(new m("CSV_MAX_RECORD_SIZE",["Max Record Size:","record exceed the maximum number of tolerated bytes",`of ${f}`,`at line ${this.info.lines}`],this.options,this.__infoField()));let t=!1===d||!0===this.state.quoting||0!==this.state.field.length||!this.__isCharTrimable(n,o),s=!1===h||!1===this.state.wasQuoting;if(!0===t&&!0===s)this.state.field.append(e);else{if(!0===h&&!this.__isCharTrimable(n,o))return this.__error(new m("CSV_NON_TRIMABLE_CHAR_AFTER_CLOSING_QUOTE",["Invalid Closing Quote:","found non trimable byte after quote",`at line ${this.info.lines}`],this.options,this.__infoField()));!1===t&&(o+=this.__isCharTrimable(n,o)-1);continue}}if(!0===t)if(!0===this.state.quoting){let e=this.__error(new m("CSV_QUOTE_NOT_CLOSED",["Quote Not Closed:",`the parsing is finished with an opening quote at line ${this.info.lines}`],this.options,this.__infoField()));if(void 0!==e)return e}else if(!0===this.state.wasQuoting||0!==this.state.record.length||0!==this.state.field.length){this.info.bytes=this.state.bufBytesStart+o;let e=this.__onField();if(void 0!==e)return e;let t=this.__onRecord(i);if(void 0!==t)return t}else!0===this.state.wasRowDelimiter?this.info.empty_lines++:!0===this.state.commenting&&this.info.comment_lines++;else this.state.bufBytesStart+=o,this.state.previousBuf=n.slice(o);!0===this.state.wasRowDelimiter&&(this.info.lines++,this.state.wasRowDelimiter=!1)},__onRecord:function(e){let{columns:t,group_columns_by_name:i,encoding:r,info:n,from:o,relax_column_count:s,relax_column_count_less:a,relax_column_count_more:l,raw:u,skip_records_with_empty_values:d}=this.options,{enabled:f,record:c}=this.state;if(!1===f)return this.__resetRecord();let p=c.length;if(!0===t)return!0===d&&g(c)?void this.__resetRecord():this.__firstLineToColumns(c);if(!1===t&&0===this.info.records&&(this.state.expectedRecordLength=p),p!==this.state.expectedRecordLength){let e=!1===t?new m("CSV_RECORD_INCONSISTENT_FIELDS_LENGTH",["Invalid Record Length:",`expect ${this.state.expectedRecordLength},`,`got ${p} on line ${this.info.lines}`],this.options,this.__infoField(),{record:c}):new m("CSV_RECORD_INCONSISTENT_COLUMNS",["Invalid Record Length:",`columns length is ${t.length},`,`got ${p} on line ${this.info.lines}`],this.options,this.__infoField(),{record:c});if(!0===s||!0===a&&p<this.state.expectedRecordLength||!0===l&&p>this.state.expectedRecordLength)this.info.invalid_field_length++,this.state.error=e;else{let t=this.__error(e);if(t)return t}}if(!0===d&&g(c))return void this.__resetRecord();if(!0===this.state.recordHasError){this.__resetRecord(),this.state.recordHasError=!1;return}if(this.info.records++,1===o||this.info.records>=o){let{objname:o}=this.options;if(!1!==t){let s={};for(let e=0,r=c.length;e<r;e++)void 0===t[e]||t[e].disabled||(!0===i&&void 0!==s[t[e].name]?Array.isArray(s[t[e].name])?s[t[e].name]=s[t[e].name].concat(c[e]):s[t[e].name]=[s[t[e].name],c[e]]:s[t[e].name]=c[e]);if(!0===u||!0===n){let t=Object.assign({record:s},!0===u?{raw:this.state.rawBuffer.toString(r)}:{},!0===n?{info:this.__infoRecord()}:{}),i=this.__push(void 0===o?t:[s[o],t],e);if(i)return i}else{let t=this.__push(void 0===o?s:[s[o],s],e);if(t)return t}}else if(!0===u||!0===n){let t=Object.assign({record:c},!0===u?{raw:this.state.rawBuffer.toString(r)}:{},!0===n?{info:this.__infoRecord()}:{}),i=this.__push(void 0===o?t:[c[o],t],e);if(i)return i}else{let t=this.__push(void 0===o?c:[c[o],c],e);if(t)return t}}this.__resetRecord()},__firstLineToColumns:function(e){let{firstLineToHeaders:t}=this.state;try{let i=void 0===t?e:t.call(null,e);if(!Array.isArray(i))return this.__error(new m("CSV_INVALID_COLUMN_MAPPING",["Invalid Column Mapping:","expect an array from column function,",`got ${JSON.stringify(i)}`],this.options,this.__infoField(),{headers:i}));let r=p(i);this.state.expectedRecordLength=r.length,this.options.columns=r,this.__resetRecord();return}catch(e){return e}},__resetRecord:function(){!0===this.options.raw&&this.state.rawBuffer.reset(),this.state.error=void 0,this.state.record=[],this.state.record_length=0},__onField:function(){let{cast:e,encoding:t,rtrim:i,max_record_size:r}=this.options,{enabled:n,wasQuoting:o}=this.state;if(!1===n)return this.__resetField();let s=this.state.field.toString(t);if(!0===i&&!1===o&&(s=s.trimRight()),!0===e){let[e,t]=this.__cast(s);if(void 0!==e)return e;s=t}this.state.record.push(s),0!==r&&"string"==typeof s&&(this.state.record_length+=s.length),this.__resetField()},__resetField:function(){this.state.field.reset(),this.state.wasQuoting=!1},__push:function(e,t){let{on_record:i}=this.options;if(void 0!==i){let t=this.__infoRecord();try{e=i.call(null,e,t)}catch(e){return e}if(null==e)return}this.info.bytes_records+=this.info.bytes,t(e)},__cast:function(e){let{columns:t,relax_column_count:i}=this.options;if(!0===Array.isArray(t)&&i&&this.options.columns.length<=this.state.record.length)return[void 0,void 0];if(null!==this.state.castField)try{let t=this.__infoField();return[void 0,this.state.castField.call(null,e,t)]}catch(e){return[e]}if(this.__isFloat(e))return[void 0,parseFloat(e)];if(!1!==this.options.cast_date){let t=this.__infoField();return[void 0,this.options.cast_date.call(null,e,t)]}return[void 0,e]},__isCharTrimable:function(e,t){return((e,t)=>{let{timchars:i}=this.state;e:for(let r=0;r<i.length;r++){let n=i[r];for(let i=0;i<n.length;i++)if(n[i]!==e[t+i])continue e;return n.length}return 0})(e,t)},__isFloat:function(e){return e-parseFloat(e)+1>=0},__compareBytes:function(e,t,i,r){if(e[0]!==r)return 0;let n=e.length;for(let r=1;r<n;r++)if(e[r]!==t[i+r])return 0;return n},__isDelimiter:function(e,t,i){let{delimiter:r,ignore_last_delimiters:n}=this.options;if(!0===n&&this.state.record.length===this.options.columns.length-1||!1!==n&&"number"==typeof n&&this.state.record.length===n-1)return 0;e:for(let n=0;n<r.length;n++){let o=r[n];if(o[0]===i){for(let i=1;i<o.length;i++)if(o[i]!==e[t+i])continue e;return o.length}}return 0},__isRecordDelimiter:function(e,t,i){let{record_delimiter:r}=this.options,n=r.length;e:for(let o=0;o<n;o++){let n=r[o],s=n.length;if(n[0]===e){for(let e=1;e<s;e++)if(n[e]!==t[i+e])continue e;return n.length}}return 0},__isEscape:function(e,t,i){let{escape:r}=this.options;if(null===r)return!1;let n=r.length;if(r[0]===i){for(let i=0;i<n;i++)if(r[i]!==e[t+i])return!1;return!0}return!1},__isQuote:function(e,t){let{quote:i}=this.options;if(null===i)return!1;let r=i.length;for(let n=0;n<r;n++)if(i[n]!==e[t+n])return!1;return!0},__autoDiscoverRecordDelimiter:function(e,t){let{encoding:i}=this.options,r=[Buffer.from("\r\n",i),Buffer.from("\n",i),Buffer.from("\r",i)];t:for(let i=0;i<r.length;i++){let n=r[i].length;for(let o=0;o<n;o++)if(r[i][o]!==e[t+o])continue t;return this.options.record_delimiter.push(r[i]),this.state.recordDelimiterMaxLength=r[i].length,r[i].length}return 0},__error:function(e){let{encoding:t,raw:i,skip_records_with_error:r}=this.options,n="string"==typeof e?Error(e):e;if(!r)return n;if(this.state.recordHasError=!0,void 0!==this.options.on_skip)try{this.options.on_skip(n,i?this.state.rawBuffer.toString(t):void 0)}catch(e){return e}},__infoDataSet:function(){return{...this.info,columns:this.options.columns}},__infoRecord:function(){let{columns:e,raw:t,encoding:i}=this.options;return{...this.__infoDataSet(),bytes_records:this.info.bytes,error:this.state.error,header:!0===e,index:this.state.record.length,raw:t?this.state.rawBuffer.toString(i):void 0}},__infoField:function(){let{columns:e}=this.options,t=Array.isArray(e),i=this.info.bytes_records;return{...this.__infoRecord(),bytes_records:i,column:!0===t?e.length>this.state.record.length?e[this.state.record.length].name:null:this.state.record.length,quoting:this.state.wasQuoting}}}};class v extends f.Transform{constructor(e={}){super({readableObjectMode:!0,...e,encoding:null}),this.api=y({on_skip:(e,t)=>{this.emit("skip",e,t)},...e}),this.state=this.api.state,this.options=this.api.options,this.info=this.api.info}_transform(e,t,i){if(!0===this.state.stop)return;let r=this.api.parse(e,!1,e=>{this.push(e)},()=>{this.push(null),this.end(),this.on("end",this.destroy)});void 0!==r&&(this.state.stop=!0),i(r)}_flush(e){!0===this.state.stop||e(this.api.parse(void 0,!0,e=>{this.push(e)},()=>{this.push(null),this.on("end",this.destroy)}))}}let w=function(){let e,t,i;for(let r in arguments){let n=arguments[r],o=typeof n;if(void 0===e&&("string"==typeof n||Buffer.isBuffer(n)))e=n;else if(void 0===t&&c(n))t=n;else if(void 0===i&&"function"===o)i=n;else throw new m("CSV_INVALID_ARGUMENT",["Invalid argument:",`got ${JSON.stringify(n)} at index ${r}`],t||{})}let r=new v(t);if(i){let e=void 0===t||void 0===t.objname?[]:Object.create(null);r.on("readable",function(){let i;for(;null!==(i=this.read());)void 0===t||void 0===t.objname?e.push(i):Object.assign(e,{[i[0]]:i[1]})}),r.on("error",function(e){i(e,void 0,r.api.__infoDataSet())}),r.on("end",function(){i(void 0,e,r.api.__infoDataSet())})}if(void 0!==e){let t=function(){r.write(e),r.end()};"function"==typeof setImmediate?setImmediate(t):setTimeout(t,0)}return r},S=[{dataTypes:["bit","boolean"],valueType:"boolean"},{dataTypes:["bigint","decimal","float","int","money","numeric","real","smallint","smallmoney","tinyint"],valueType:"number"},{dataTypes:["date","datetime","datetime2","datetimeoffset","smalldatetime","time"],valueType:"datetime"}],R={application:[{bonus:18,pattern:/^(application|app|appname)$/i},{bonus:14,pattern:/^app(env|version)$/i},{bonus:10,pattern:/application/i}],correlationId:[{bonus:28,pattern:/^correlation(id)?$/i},{bonus:18,pattern:/request(id|key)/i},{bonus:8,pattern:/trace(id)?/i}],description:[{bonus:18,pattern:/(message|description|summary|details?)/i},{bonus:10,pattern:/(error|fault).*(message|description)/i}],fromLocation:[{bonus:16,pattern:/^(from|origin)(airport|station|location|code)?$/i},{bonus:8,pattern:/^source(airport|location)$/i}],provider:[{bonus:18,pattern:/^provider(name)?$/i},{bonus:10,pattern:/(vendor|supplier)/i}],recordId:[{bonus:28,pattern:/(log(detail)?id|recordid|eventid|entryid|auditid)/i,preferredTypes:["string","number"]},{bonus:16,pattern:/(id)$/i,preferredTypes:["string","number"]}],responseTime:[{bonus:22,pattern:/(response|duration|elapsed|latency).*ms/i},{bonus:16,pattern:/(response|duration|elapsed|latency|time)/i}],service:[{bonus:18,pattern:/^service(id|name)?$/i},{bonus:12,pattern:/(endpoint|operation|method)/i}],status:[{bonus:24,pattern:/^is(error|failed?)$/i,preferredTypes:["boolean"]},{bonus:18,pattern:/(error|failed?|success|status|severity|level)/i}],timestamp:[{bonus:30,pattern:/(event(date|time)|created(at|on)?|logged(at)?|timestamp|occurred(at)?)/i,preferredTypes:["datetime"]},{bonus:12,pattern:/(date|time)/i,preferredTypes:["datetime"]}],title:[{bonus:18,pattern:/(application|service|operation|event|action)/i},{bonus:10,pattern:/(provider|message|description)/i}],toLocation:[{bonus:16,pattern:/^(to|destination)(airport|station|location|code)?$/i},{bonus:8,pattern:/^target(airport|location)$/i}]};function O(e){return e.replace(/([a-z\d])([A-Z])/g,"$1 $2").replace(/[^a-zA-Z0-9]+/g," ").trim().split(/\s+/).map((e,t)=>0===t?e.toLowerCase():`${e.charAt(0).toUpperCase()}${e.slice(1).toLowerCase()}`).join("")||"field"}function N(e){let t=new Set,i=e.fieldRef.toLowerCase();for(let r of(("xml"===e.dataType.toLowerCase()||i.includes("xml"))&&t.add("xml"),i.includes("json")&&t.add("json"),e.sampleValues)){let e=r.trim();if(e){if((e.startsWith("{")||e.startsWith("["))&&!t.has("json"))try{JSON.parse(e),t.add("json")}catch{}(e.startsWith("<")||e.startsWith("<?xml"))&&!t.has("xml")&&/<[A-Za-z_]/.test(e)&&t.add("xml")}}return!t.size&&/(payload|body|request|response|content)/i.test(i)&&t.add("text"),Array.from(t)}function I(e,t){let i=null;for(let r of e.fields){let e=function(e,t){let i=R[t],r=0;for(let t of i)t.pattern.test(e.fieldRef)&&(r+=t.bonus,(!t.preferredTypes?.length||t.preferredTypes.includes(e.valueType))&&(r+=6));return"status"===t&&"boolean"===e.valueType&&(r+=8),"timestamp"===t&&"datetime"===e.valueType&&(r+=10),"recordId"===t&&["string","number"].includes(e.valueType)&&(r+=8),r}(r,t);!e||i&&i.confidence>=e||(i={confidence:e,fieldRef:r.fieldRef,label:r.label,role:t})}return i}function E(e,t,i){let r=function(e,t){if(!t.has(e))return t.add(e),e;let i=2;for(;t.has(`${e}${i}`);)i+=1;let r=`${e}${i}`;return t.add(r),r}(i?.id??O(e.fieldRef),t),n="text";return"datetime"===e.valueType?n="datetime":"boolean"===e.valueType&&(n="boolean"),{fieldRef:e.fieldRef,filterable:!1,filterInput:null,format:n,id:r,label:i?.label??e.label,showInDetail:!0,showInList:!1,valueType:e.valueType,...i}}function T(e,t){let i,r={application:I(t,"application")??void 0,correlationId:I(t,"correlationId")??void 0,description:I(t,"description")??void 0,fromLocation:I(t,"fromLocation")??void 0,provider:I(t,"provider")??void 0,recordId:I(t,"recordId")??void 0,responseTime:I(t,"responseTime")??void 0,service:I(t,"service")??void 0,status:I(t,"status")??void 0,timestamp:I(t,"timestamp")??void 0,title:I(t,"title")??void 0,toLocation:I(t,"toLocation")??void 0};if(!r.recordId||!r.timestamp)return null;let n=new Set,o=[],s=(e,i)=>{let s=r[e];if(!s)return null;let a=t.fields.find(e=>e.fieldRef===s.fieldRef);if(!a)return null;let l=E(a,n,i);return o.push(l),l},a=s("recordId",{id:"recordId",label:"Record ID",showInList:!1}),l=s("timestamp",{format:"datetime",id:"eventTime",label:"Event Time (UTC)",showInList:!0,valueType:"datetime"}),u=s("application",{filterInput:"text",filterable:!0,id:"application",label:"Application",showInList:!0})??s("title",{filterInput:"text",filterable:!0,id:"title",label:"Title",showInList:!0}),d=s("description",{id:"description",label:"Description",showInList:!1});s("service",{filterInput:"text",filterable:!0,id:"service",label:"Service",showInList:!0}),s("provider",{filterInput:"text",filterable:!0,id:"provider",label:"Provider",showInList:!0}),s("correlationId",{filterInput:"text",filterable:!0,id:"correlationId",label:"Correlation ID",showInList:!0}),s("fromLocation",{filterInput:"text",filterable:!0,id:"fromLocation",label:"From",showInList:!0}),s("toLocation",{filterInput:"text",filterable:!0,id:"toLocation",label:"To",showInList:!0}),s("responseTime",{format:"durationMs",id:"responseTime",label:"Response Time",showInList:!0,valueType:"number"});let f=s("status",{filterInput:"boolean",filterable:!0,format:"status",id:"status",label:"Status",showInList:!0}),c=function(e){let t=e.fields.filter(e=>e.sampleKinds.length||/(payload|body|request|response|json|xml)/i.test(e.fieldRef)),i=[];for(let e of t){let t=e.sampleKinds.length?e.sampleKinds:N(e);if(!t.length)continue;let r=e.fieldRef.toLowerCase().includes("request")?"request":e.fieldRef.toLowerCase().includes("response")?"response":"other";for(let n of t)"text"===n&&t.some(e=>"text"!==e)||i.push({fieldRef:e.fieldRef,group:r,id:O(e.fieldRef),kind:n,label:e.fieldRef.replace(/[_-]+/g," ").replace(/([a-z\d])([A-Z])/g,"$1 $2").replace(/\s+/g," ").trim().replace(/\b\w/g,e=>e.toUpperCase())})}return i}(t),m=new Set(c.map(e=>e.fieldRef));for(let e of t.fields.filter(e=>!m.has(e.fieldRef)).filter(e=>!o.some(t=>t.fieldRef===e.fieldRef)).slice(0,12))o.push(E(e,n,{filterInput:"boolean"===e.valueType?"boolean":"string"===e.valueType?"text":null,filterable:"boolean"===e.valueType||"string"===e.valueType}));let p=(i=new Set,o.filter(e=>!i.has(e.fieldRef)&&(i.add(e.fieldRef),!0))).map((e,t)=>({...e,showInDetail:t<16&&e.showInDetail})),h=(r.timestamp?.confidence??0)+(r.recordId?.confidence??0)+(r.status?.confidence??0)+(r.correlationId?.confidence??0)+16*!!c.length+24*!!/log|audit|trace|event|hit/i.test(t.name),_=[r.timestamp?`Timestamp field: ${r.timestamp.label}`:null,r.recordId?`Record id field: ${r.recordId.label}`:null,r.status?`Status field: ${r.status.label}`:null,c.length?`${c.length} payload field(s) detected`:null].filter(Boolean);return{candidate:{matches:r,proposedMapping:{defaultSort:{direction:"desc",fieldRef:l?.fieldRef??r.timestamp.fieldRef},descriptionFieldId:d?.id??null,fields:p,payloads:c,recordIdFieldRef:a?.fieldRef??r.recordId.fieldRef,sourceId:e,statusFieldId:f?.id??null,target:{name:t.name,qualifiedName:t.qualifiedName,schema:t.schema},timestampFieldRef:l?.fieldRef??r.timestamp.fieldRef,titleFieldId:u?.id??d?.id??null,version:1},reasons:_,score:h,target:{name:t.name,qualifiedName:t.qualifiedName,schema:t.schema}},reasons:_,score:h}}function C(e,t){return t.map(t=>{let i=T(e,t);return{...t,candidateReasons:i?.reasons??t.candidateReasons,candidateScore:i?.score??t.candidateScore}}).sort((e,t)=>t.candidateScore-e.candidateScore)}function x(e,t){let i=[];for(let r of t){let t=T(e,r);t&&i.push(t.candidate)}return i.sort((e,t)=>t.score-e.score)}function A(e,t){let i=e.fields.find(e=>e.id===t);if(!i)throw Error(`Mapped field ${t} is missing.`);return{format:i.format,id:i.id,label:i.label,valueType:i.valueType}}function D(e,t){let i=t.fields.map(e=>({format:e.format,id:e.id,label:e.label,valueType:e.valueType})),r=t.fields.filter(e=>e.filterable&&e.filterInput).slice(0,8).map(e=>({id:e.id,input:e.filterInput??"text",label:e.label,valueType:e.valueType})),n=t.fields.filter(e=>e.showInList).map(e=>A(t,e.id)),o=t.fields.filter(e=>e.showInDetail).map(e=>A(t,e.id)),s=t.fields.find(e=>e.fieldRef===t.timestampFieldRef)?.id??"eventTime";return{columns:n,defaultDatePresetHours:24,descriptionFieldId:t.descriptionFieldId,description:`Read-only inspection of ${t.target.qualifiedName}.`,detailFields:o,fields:i,filters:r,payloads:t.payloads,sourceLabel:e.name,statusFieldId:t.statusFieldId,targetLabel:t.target.qualifiedName,timestampFieldId:s,title:`${e.name} Table Explorer`,titleFieldId:t.titleFieldId}}function j(e){return{...e,sampleKinds:N(e)}}function $(e){return"boolean"===e.valueType?"boolean":"number"===e.valueType?"number":"datetime"===e.valueType?"datetime":/text|ntext|xml/i.test(e.dataType)||-1===e.maxLength||null!==e.maxLength&&e.maxLength>=512?"longText":"shortText"}function M(e){let t=e.sampleKinds.length?e.sampleKinds:N(e);return t.includes("json")?"json":t.includes("xml")?"xml":t.includes("text")?"text":null}let L=[","," ","|",";"];function P(e){let t=e.trim();if(/^file:/i.test(t)||/^[a-z][a-z0-9+.-]*:\/\//i.test(t))throw new s.BadRequestError("CSV file path must be a local filesystem path.");return(0,d.resolve)(t)}function q(e){if("csv"!==e.type)throw Error("The CSV adapter received a non-CSV source.");return{...e,connection:{...e.connection,filePath:P(e.connection.filePath)}}}async function z(e){let t;try{t=await (0,u.stat)(e)}catch{throw new s.BadRequestError("CSV file path does not point to a readable file.")}if(!t.isFile())throw new s.BadRequestError("CSV file path must point to a regular file.")}function B(e,t){let i=e.replace(/[^a-zA-Z0-9_]+/g,"_").replace(/^_+|_+$/g,"")||`column_${t}`;return/^\d/.test(i)?`column_${i}`:i}function F(e){if(!e.some(e=>e.replace(/^\uFEFF/,"").trim()))throw new s.BadRequestError("CSV file must include at least one usable header.");let t=new Map;return e.map((e,i)=>{let r=i+1,n=e.replace(/^\uFEFF/,"").trim()||`Column ${r}`,o=B(n,r),s=(t.get(o)??0)+1;return t.set(o,s),{fieldRef:1===s?o:`${o}_${s}`,label:n,ordinal:r}})}function V(e){if(e<=0)throw new s.BadRequestError("CSV file must include at least one column.");return Array.from({length:e},(e,t)=>{let i=t+1,r=`Column ${i}`;return{fieldRef:B(r,i),label:r,ordinal:i}})}function J(e){let t,i=e.trim();return!i||/^null$/i.test(i.trim())||G(i)||X(i)||Y(i)||(t=i.trim()).startsWith("{")||t.startsWith("[")||t.startsWith("<")||/^\d{1,3}(?:\.\d{1,3}){3}$/.test(i.trim())||/^\d{1,2}:\d{2}:\d{2}(?:\.\d+)?$/.test(i.trim())}function k(e){return e.length?e.filter(J).length/e.length:0}function U(e,t){let i=k(e),r=e.length?e.filter(e=>{let t=e.replace(/^\uFEFF/,"").trim();return t.length>0&&t.length<=80&&/[A-Za-z_]/.test(t)&&!J(t)}).length/e.length:0;return t?r>=.45&&i+.25<k(t):r>=.7&&i<.2}async function H(e){let t="";for await(let i of(0,l.createReadStream)(e,{encoding:"utf8"})){let e=(t+=i).split(/\r?\n/),r=(t.endsWith("\n")||t.endsWith("\r")?e:e.slice(0,-1)).find(e=>e.trim());if(r)return r.replace(/^\uFEFF/,"");if(t.length>65536)break}return t.replace(/^\uFEFF/,"")}async function Q(e){let t=await H(e.connection.filePath),i=Array.from(new Set([e.connection.delimiter,...L])).map(e=>({count:function(e,t){if(1!==t.length)return e.split(t).length-1;let i=0,r=!1,n=0;for(let o=0;o<e.length;o+=1){let s=e[o],a=e[o+1];if('"'===s&&'"'===a){o+=1;continue}if('"'===s&&"\\"!==e[o-1]){r=!r;continue}!r&&("{"===s||"["===s?n+=1:("}"===s||"]"===s)&&n>0&&(n-=1)),r||0!==n||s!==t||(i+=1)}return i}(t,e),delimiter:e})).sort((e,t)=>t.count-e.count)[0];return i&&i.count>0?i.delimiter:e.connection.delimiter}function K(e,t){return(0,l.createReadStream)(e.connection.filePath).pipe(w({bom:!0,delimiter:t,relax_column_count:!0,relax_quotes:!0,skip_empty_lines:!0}))}async function W(e,t=50){await z(e.connection.filePath);let i=null,r=null,n=!1,o=[],a=await Q(e),l=0;function u(e){l+=1,o.length<t&&o.push(e)}for await(let t of K(e,a)){let e=t.map(e=>String(e??""));if(!i){if(!r){r=e;continue}let t=U(r,e);n=t,i=t?F(r):V(r.length),t||u(r),u(e);continue}u(e)}if(!i){if(!r)throw new s.BadRequestError("CSV file is empty.");let e=U(r,null);n=e,i=e?F(r):V(r.length),e||u(r)}return{delimiter:a,filePath:e.connection.filePath,hasHeaderRow:n,headers:i,rowCount:l,sampleRows:o}}function G(e){return/^(true|false|1|0|yes|no)$/i.test(e)}function X(e){return Number.isFinite(Number(e))}function Y(e){return!!/[-/:T ]/.test(e)&&!Number.isNaN(new Date(e).getTime())}function Z(e){return{dataType:e.dataType,isNullable:e.isNullable,label:e.label,maxLength:e.maxLength,name:e.fieldRef,payloadKindHint:M(e),presentationKind:$(e),valueType:e.valueType}}async function ee({hasHeaderRow:e,page:t,pageSize:i,source:r,table:n}){let o=[],s=[...n.fields].sort((e,t)=>e.ordinal-t.ordinal),a=(t-1)*i,l=a+i,u=0,d=!0,f=await Q(r);for await(let t of K(r,f)){if(d&&e){d=!1;continue}if(d=!1,u>=a&&u<l&&o.push(Object.fromEntries(s.map(e=>[e.fieldRef,function(e,t){let i=e?.trim()??"";if(!i)return null;if("boolean"===t.valueType)return!!/^(true|1|yes)$/i.test(i)||!/^(false|0|no)$/i.test(i)&&null;if("number"===t.valueType){let e=Number(i);return Number.isFinite(e)?e:null}if("datetime"===t.valueType){let e=new Date(i);return Number.isNaN(e.getTime())?i:e.toISOString()}return e??null}(t[e.ordinal-1],e)]))),(u+=1)>=l)break}return o}async function et(t){if("windows"===t)try{let t=await e.A(11817);return t.default??t}catch{throw new s.ConfigurationError("Windows Authentication requires the msnodesqlv8 driver to be installed.",["msnodesqlv8"])}let i=await e.A(75106);return i.default??i}function ei(e){return JSON.stringify(e)}async function er(e){let t=await et(e.authMode),i=t.ConnectionPool.parseConnectionString(e.connectionString);return new t.ConnectionPool((i.requestTimeout=e.requestTimeoutMs,!i.options&&(i.options={}),i.options.instanceName&&i.server?.endsWith("\\")&&(i.server=i.server.slice(0,-1)),"windows"===e.authMode?(i.driver=e.odbcDriver||"ODBC Driver 17 for SQL Server",i.options.trustedConnection=!0,"boolean"!=typeof i.options.trustServerCertificate&&(i.options.trustServerCertificate=!0),"boolean"!=typeof i.options.encrypt&&(i.options.encrypt=!1)):"boolean"!=typeof i.options.encrypt&&(i.options.encrypt=!0),i)).connect()}async function en(t){let i=ei(t);e.g.__logManagerMssqlPools||(e.g.__logManagerMssqlPools=new Map);let r=e.g.__logManagerMssqlPools.get(i);if(r)return r;let n=er(t).catch(t=>{throw e.g.__logManagerMssqlPools?.delete(i),t});return e.g.__logManagerMssqlPools.set(i,n),n}async function eo(e){return(await en(e)).request()}async function es(t){let i=ei(t),r=e.g.__logManagerMssqlPools?.get(i);if(r){e.g.__logManagerMssqlPools?.delete(i);try{let e=await r;await e.close()}catch{}}}function ea(e){if("mssql"!==e.type)throw Error("The MSSQL adapter received a non-MSSQL source.");return e}function el(e){return`[${e.replaceAll("]","]]")}]`}function eu(e){return`${el(e.schema)}.${el(e.name)}`}function ed(e){if(null==e)return null;if("boolean"==typeof e)return e;if("number"==typeof e)return 0!==e;if("bigint"==typeof e)return e!==BigInt(0);let t=String(e).trim().toLowerCase();return"1"===t||"true"===t||"0"!==t&&"false"!==t&&null}function ef(e){if(null==e)return null;if("number"==typeof e)return Number.isFinite(e)?e:null;if("bigint"==typeof e)return Number(e);let t=Number(e);return Number.isFinite(t)?t:null}function ec(e){return null==e?null:String(e)}function em(e){return/binary|image|rowversion|timestamp/i.test(e)}function ep(e){return em(e.dataType)?`DATALENGTH(${el(e.fieldRef)})`:/xml|text|ntext|sql_variant/i.test(e.dataType)?`TRY_CONVERT(nvarchar(4000), ${el(e.fieldRef)})`:el(e.fieldRef)}function eh(e){return{dataType:e.dataType,isNullable:e.isNullable,label:e.label,maxLength:e.maxLength,name:e.fieldRef,payloadKindHint:M(e),presentationKind:$(e),valueType:e.valueType}}async function e_(e,t){let i=t.fields.filter(e=>/(request|response|json|xml|payload|body|message|description|time|id|status|error)/i.test(e.fieldRef)).slice(0,10);if(!i.length)return t;let r=await eo(e.connection),n=t.fields.find(e=>/event|created|time|date/i.test(e.fieldRef))??t.fields.find(e=>/id$/i.test(e.fieldRef)),o=i.map(e=>`${el(e.fieldRef)} AS ${el(e.fieldRef)}`).join(", "),s=n?`ORDER BY ${el(n.fieldRef)} DESC`:"",a=(await r.query(`
|
|
2
|
+
SELECT TOP (5) ${o}
|
|
3
|
+
FROM ${el(t.schema)}.${el(t.name)}
|
|
4
|
+
${s};
|
|
5
|
+
`)).recordset??[],l=new Map;for(let e of i)l.set(e.fieldRef,a.map(t=>ec(t[e.fieldRef])).filter(e=>!!e).slice(0,5));return{...t,fields:t.fields.map(e=>j({...e,sampleValues:l.get(e.fieldRef)??e.sampleValues})),sampleSize:a.length}}function eg(e){let t={supportedAuthModes:[],supportedPayloadKinds:["json","xml","text"],supportsRowDeletion:!1,supportsSchemaDiscovery:!1};function i(){return Promise.reject(new s.ConfigurationError(`${e} support is not implemented in this version yet.`))}return{deleteTableRows:i,discoverSchema:i,getCapabilities:()=>t,listTableRows:i,testConnection:i}}let eb={csv:{async deleteTableRows(){throw new s.BadRequestError("CSV sources are read-only and do not support deleting rows.")},async discoverSchema(e){var t;let i,r,n=q(e),o=n.id;if(!o)throw Error("CSV discovery requires a saved source.");let s=await W(n),a=(t=s.filePath,i=(0,d.basename)(t),((r=(0,d.extname)(i))?i.slice(0,-r.length):i).trim()||"CsvSource"),l=C(o,[{approxRowCount:s.rowCount,candidateReasons:[],candidateScore:0,fields:s.headers.map(e=>{let t,i=s.sampleRows.map(t=>t[e.ordinal-1]??"").filter(e=>e.trim()).slice(0,5),r=(t=s.sampleRows.map(t=>t[e.ordinal-1]??"").map(e=>e.trim()).filter(Boolean)).length?t.every(G)?"boolean":t.every(X)?"number":t.every(Y)?"datetime":"string":"string",n=i.length?Math.max(...i.map(e=>e.length)):null;return j({dataType:function(e){switch(e){case"boolean":return"boolean";case"datetime":return"datetime";case"number":return"number";default:return"text"}}(r),fieldRef:e.fieldRef,isNullable:s.sampleRows.some(t=>!(t[e.ordinal-1]??"").trim()),label:e.label,maxLength:n,ordinal:e.ordinal,sampleValues:i,valueType:r})}),indexes:[],name:a,qualifiedName:`csv.${a}`,sampleSize:s.sampleRows.length,schema:"csv"}]);return{candidates:x(o,l),createdAt:new Date().toISOString(),databaseName:(0,d.basename)(s.filePath),sourceId:o,tables:l}},getCapabilities:()=>({supportedAuthModes:[],supportedPayloadKinds:["json","xml","text"],supportsRowDeletion:!1,supportsSchemaDiscovery:!0}),async listTableRows(e,t,i){let r=q(e),n=await W(r,0),o=Math.max(1,i.page),s=Math.min(100,Math.max(1,i.pageSize)),a=Math.max(1,Math.ceil(n.rowCount/s)),l=0===n.rowCount?1:Math.min(o,a),u=[...t.fields].sort((e,t)=>e.ordinal-t.ordinal),d=await ee({hasHeaderRow:n.hasHeaderRow,page:l,pageSize:s,source:r,table:t});return{columns:u.map(Z),hasNextPage:l<a,hasPreviousPage:l>1,page:l,pageSize:s,rows:d,total:n.rowCount}},async testConnection(e){let t=q(e);return await W(t,1),{capabilities:this.getCapabilities(),databaseName:(0,d.basename)(t.connection.filePath),message:"CSV file is readable.",ok:!0,serverVersion:null}}},mongodb:eg("mongodb"),mssql:{async deleteTableRows(e,t){let i=ea(e),r={...i.connection,requestTimeoutMs:Math.max(i.connection.requestTimeoutMs,12e4)},n=0;for(;;){let e=await eo(r);e.input("batchSize",5e3);let i=await e.query(`
|
|
6
|
+
DELETE TOP (@batchSize)
|
|
7
|
+
FROM ${eu(t)};
|
|
8
|
+
|
|
9
|
+
SELECT @@ROWCOUNT AS DeletedRowCount;
|
|
10
|
+
`),o=ef(i.recordset?.[0]?.DeletedRowCount)??i.rowsAffected?.[0]??0;if(n+=o,0===o)break}return{deletedRowCount:n}},async discoverSchema(e){let t=ea(e),i=await eo(t.connection),r=await i.query(`
|
|
8
11
|
SELECT DB_NAME() AS DatabaseName;
|
|
9
12
|
|
|
10
13
|
SELECT
|
|
@@ -61,19 +64,19 @@ module.exports=[8595,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule"
|
|
|
61
64
|
WHERE t.is_ms_shipped = 0
|
|
62
65
|
AND i.index_id > 0
|
|
63
66
|
ORDER BY s.name, t.name, i.name, ic.key_ordinal;
|
|
64
|
-
`),
|
|
67
|
+
`),n=ec(r.recordsets[0]?.[0]?.DatabaseName),o=r.recordsets[1]??[],s=r.recordsets[2]??[],a=r.recordsets[3]??[],l=new Map,u=new Map,d=new Map;for(let e of s)u.set(`${e.SchemaName}.${e.TableName}`,ef(e.ApproxRowCount)??0);for(let e of a){let t=`${e.SchemaName}.${e.TableName}`,i=d.get(t)??new Map,r=ec(e.IndexName)??"UnnamedIndex",n=i.get(r)??{columns:[],isUnique:ed(e.IsUnique)??!1,name:r,type:ec(e.IndexType)??"UNKNOWN"},o=ec(e.ColumnName);o&&n.columns.push(o),i.set(r,n),d.set(t,i)}for(let e of o){let t=ec(e.SchemaName)??"dbo",i=ec(e.TableName)??"UnknownTable",r=`${t}.${i}`,n=l.get(r)??{approxRowCount:u.get(r)??0,candidateReasons:[],candidateScore:0,fields:[],indexes:Array.from(d.get(r)?.values()??[]),name:i,qualifiedName:r,sampleSize:0,schema:t},o=j({dataType:ec(e.DataType)??"nvarchar",fieldRef:ec(e.ColumnName)??"UnknownColumn",isNullable:ed(e.IsNullable)??!1,label:ec(e.ColumnName)??"Unknown Column",maxLength:ef(e.MaxLength),ordinal:ef(e.ColumnOrdinal)??n.fields.length+1,sampleValues:[],valueType:function(e){let t,i;return t=e.trim().toLowerCase(),i=S.find(e=>e.dataTypes.includes(t)),i?.valueType??"string"}(ec(e.DataType)??"nvarchar")});n.fields.push({...o,label:o.label.replace(/([a-z\d])([A-Z])/g,"$1 $2").replace(/[_-]+/g," ")}),l.set(r,n)}let f=Array.from(l.values()).sort((e,t)=>t.approxRowCount-e.approxRowCount),c=C(e.id,f),m=c.slice(0,6).map(e=>e.qualifiedName);f=await Promise.all(c.map(e=>m.includes(e.qualifiedName)?e_(t,e):Promise.resolve(e)));let p=C(e.id,f);return{candidates:x(e.id,p),createdAt:new Date().toISOString(),databaseName:n,sourceId:e.id,tables:p}},getCapabilities:()=>({supportedAuthModes:["sql","windows"],supportedPayloadKinds:["json","xml","text"],supportsRowDeletion:!0,supportsSchemaDiscovery:!0}),async listTableRows(e,t,i){let r=ea(e),n=[...t.fields].sort((e,t)=>e.ordinal-t.ordinal);if(!n.length)return{columns:[],hasNextPage:!1,hasPreviousPage:i.page>1,page:i.page,pageSize:i.pageSize,rows:[],total:0};let o=Math.max(1,i.page),s=Math.min(100,Math.max(1,i.pageSize)),a=await eo(r.connection),l=await a.query(`
|
|
65
68
|
SELECT COUNT_BIG(1) AS TotalCount
|
|
66
|
-
FROM ${
|
|
67
|
-
`),
|
|
69
|
+
FROM ${eu(t)};
|
|
70
|
+
`),u=ef(l.recordset[0]?.TotalCount)??0,d=Math.max(1,Math.ceil(u/s)),f=0===u?1:Math.min(o,d),c=await eo(r.connection);c.input("offset",(f-1)*s),c.input("pageSize",s);let m=function(e){let t=Array.from(new Set(e.indexes.filter(e=>e.isUnique).flatMap(e=>e.columns))),i=[...e.fields].sort((e,t)=>e.ordinal-t.ordinal),r=i.find(e=>"datetime"===e.valueType||/event|created|updated|timestamp|time|date/i.test(e.fieldRef))??null;if(r)return{direction:"desc",fieldRef:r.fieldRef,tieBreakers:t.filter(e=>e!==r.fieldRef)};let n=i.find(e=>t.includes(e.fieldRef)&&/(^id$|id$|guid|uuid|key$)/i.test(e.fieldRef))??i.find(e=>/(^id$|id$|guid|uuid|key$)/i.test(e.fieldRef))??i.find(e=>t.includes(e.fieldRef))??i[0]??null;return n?{direction:/(^id$|id$|guid|uuid|key$)/i.test(n.fieldRef)?"desc":"asc",fieldRef:n.fieldRef,tieBreakers:t.filter(e=>e!==n.fieldRef)}:{direction:"asc",fieldRef:"",tieBreakers:[]}}(t),p=new Map(n.map(e=>[e.fieldRef,e])),h=[`${ep(p.get(m.fieldRef)??n[0])} ${"desc"===m.direction?"DESC":"ASC"}`,...m.tieBreakers.map(e=>{let t=p.get(e);return`${ep(t??n[0])} ASC`})],_=n.map(e=>`${el(e.fieldRef)} AS ${el(e.fieldRef)}`).join(",\n "),g=((await c.query(`
|
|
68
71
|
SELECT
|
|
69
|
-
${
|
|
70
|
-
FROM ${
|
|
71
|
-
ORDER BY ${
|
|
72
|
+
${_}
|
|
73
|
+
FROM ${eu(t)}
|
|
74
|
+
ORDER BY ${h.join(", ")}
|
|
72
75
|
OFFSET @offset ROWS FETCH NEXT @pageSize ROWS ONLY;
|
|
73
|
-
`)).recordset??[]).map(e=>Object.fromEntries(
|
|
76
|
+
`)).recordset??[]).map(e=>Object.fromEntries(n.map(t=>[t.fieldRef,function(e,t){if(null==e)return null;if(em(t.dataType)){let t=Buffer.isBuffer(e)||e instanceof Uint8Array?e.byteLength:null;return null===t?"[binary]":`[binary ${t} bytes]`}if("boolean"===t.valueType)return ed(e);if("number"===t.valueType)return ef(e);if("datetime"===t.valueType){if(e instanceof Date)return e.toISOString();if("string"==typeof e){let t=new Date(e);return Number.isNaN(t.getTime())?e:t.toISOString()}return null}if("object"==typeof e)try{return JSON.stringify(e)}catch{return"[object]"}return ec(e)}(e[t.fieldRef],t)])));return{columns:n.map(eh),hasNextPage:f<d,hasPreviousPage:f>1,page:f,pageSize:s,rows:g,total:u}},async testConnection(e){let t=await eo(ea(e).connection),i=(await t.query(`
|
|
74
77
|
SELECT
|
|
75
78
|
DB_NAME() AS DatabaseName,
|
|
76
79
|
CAST(SERVERPROPERTY('ProductVersion') AS nvarchar(128)) AS ServerVersion;
|
|
77
|
-
`)).recordset[0]??{};return{capabilities:this.getCapabilities(),databaseName:A(r.DatabaseName),message:"Connection to SQL Server succeeded.",ok:!0,serverVersion:A(r.ServerVersion)}}},mysql:M("mysql"),postgres:M("postgres")};function D(){return Object.keys(L)}var z=e.i(97528),$=e.i(69719);let q=$.z.object({connection:$.z.object({authMode:$.z.enum(["sql","windows"]).default("sql"),connectionString:$.z.string().trim().min(1),odbcDriver:$.z.string().trim().nullable().optional().default(null),requestTimeoutMs:$.z.coerce.number().int().positive().max(12e4).default(3e4)}),name:$.z.string().trim().min(1).max(120),type:$.z.literal("mssql")}),F=$.z.object({fieldRef:$.z.string().trim().min(1),filterable:$.z.boolean(),filterInput:$.z.enum(["text","boolean"]).nullable(),format:$.z.enum(["text","datetime","durationMs","boolean","status"]),id:$.z.string().trim().min(1).max(80),label:$.z.string().trim().min(1).max(120),showInDetail:$.z.boolean(),showInList:$.z.boolean(),valueType:$.z.enum(["string","number","boolean","datetime"])}),B=$.z.object({fieldRef:$.z.string().trim().min(1),group:$.z.enum(["request","response","other"]),id:$.z.string().trim().min(1).max(80),kind:$.z.enum(["json","xml","text"]),label:$.z.string().trim().min(1).max(120)}),U=$.z.object({defaultSort:$.z.object({direction:$.z.enum(["asc","desc"]),fieldRef:$.z.string().trim().min(1)}),descriptionFieldId:$.z.string().trim().min(1).nullable(),fields:$.z.array(F).min(1),payloads:$.z.array(B),recordIdFieldRef:$.z.string().trim().min(1),sourceId:$.z.string().trim().min(1),statusFieldId:$.z.string().trim().min(1).nullable(),target:$.z.object({name:$.z.string().trim().min(1),qualifiedName:$.z.string().trim().min(1),schema:$.z.string().trim().min(1)}),timestampFieldRef:$.z.string().trim().min(1),titleFieldId:$.z.string().trim().min(1).nullable(),version:$.z.literal(1)});$.z.object({mapping:U});let K=$.z.object({page:$.z.coerce.number().int().min(1).catch(1).default(1),pageSize:$.z.coerce.number().int().min(1).max(100).catch(50).default(50),table:$.z.string().trim().min(1).nullable().optional().catch(null).default(null)}),k=$.z.object({confirmationTable:$.z.string().trim().min(1),pageSize:$.z.coerce.number().int().min(1).max(100).catch(50).default(50),table:$.z.string().trim().min(1)});async function H(){return(0,z.getActiveSource)()}async function V(){let e=await H();if(!e)throw new o.ConfigurationError("No active source is configured yet. Configure one from Source Admin.",["source_admin"]);return e}function J(e){return[...e].sort((e,t)=>e.schema.localeCompare(t.schema)||e.name.localeCompare(t.name))}function W(e){return{approxRowCount:e.approxRowCount,fieldCount:e.fields.length,name:e.name,qualifiedName:e.qualifiedName,schema:e.schema}}function X(e){return e.fields.map(e=>({dataType:e.dataType,isNullable:e.isNullable,label:e.label,maxLength:e.maxLength,name:e.fieldRef,payloadKindHint:w(e),presentationKind:S(e),valueType:e.valueType}))}function Y(e,t){let r=e.find(e=>e.qualifiedName===t);if(!r)throw new o.BadRequestError("The requested table is no longer available in the current discovery snapshot.");return r}function Z({databaseLabel:e,latestDiscoveryAt:t,source:r,sourceSummary:i,tables:n}){let a=J(n).map(W);return{databaseLabel:e||r.name,defaultSelectedTable:a[0]?.qualifiedName??null,latestDiscoveryAt:t,source:i,tables:a}}function G(e){let t=e instanceof Error?e.message.toLowerCase():"";return t.includes("invalid object name")||t.includes("could not find object")||t.includes("does not exist")}async function Q(){let e=await V(),t=(0,z.getActiveMapping)(e.id);if(!t)throw new o.ConfigurationError("An admin must confirm a source mapping before browsing discovered tables.",["source_mappings"]);let r=(0,z.getLatestDiscovery)(e.id);if(!r)throw new o.ConfigurationError("Run source discovery before browsing discovered tables.",["source_discoveries"]);return{adapter:L[e.type],discovery:r,mapping:t,source:e,sourceSummary:function(e){let t=(0,z.getActiveSourceSummary)();if(!t||t.id!==e.id)throw new o.ConfigurationError("The active source summary is unavailable.");return t}(e)}}async function ee(){let e=await H();if(!e)return{dashboard:null,discovery:null,mapping:null,source:null,supportedDatabaseKinds:D()};let t=(0,z.getActiveMapping)(e.id);return{dashboard:t?_(e,t):null,discovery:(0,z.getLatestDiscovery)(e.id),mapping:t,source:(0,z.getActiveSourceSummary)(),supportedDatabaseKinds:D()}}async function et(){let e=await Q();return Z({databaseLabel:e.discovery.databaseName??e.source.name,latestDiscoveryAt:e.discovery.createdAt,source:e.source,sourceSummary:e.sourceSummary,tables:e.discovery.tables})}async function er(e){let t=K.parse(e),r=await Q(),{selectedTable:i,staleSelection:n}=function(e,t){let r=e[0]??null;if(!t)return{selectedTable:r,staleSelection:!1};let i=e.find(e=>e.qualifiedName===t)??r;return{selectedTable:i,staleSelection:i?.qualifiedName!==t}}(J(r.discovery.tables),t.table),a=r.discovery.databaseName??r.source.name;if(!i)return{columns:[],databaseLabel:a,hasNextPage:!1,hasPreviousPage:!1,latestDiscoveryAt:r.discovery.createdAt,page:t.page,pageSize:t.pageSize,requestedTable:t.table,rows:[],selectedTable:null,source:r.sourceSummary,staleSelection:!!t.table,total:0};try{return{...await r.adapter.listTableRows(r.source,i,t),databaseLabel:a,latestDiscoveryAt:r.discovery.createdAt,requestedTable:t.table,selectedTable:W(i),source:r.sourceSummary,staleSelection:n}}catch(e){if(!G(e))throw e;return{columns:X(i),databaseLabel:a,hasNextPage:!1,hasPreviousPage:t.page>1,latestDiscoveryAt:r.discovery.createdAt,page:t.page,pageSize:t.pageSize,requestedTable:t.table,rows:[],selectedTable:W(i),source:r.sourceSummary,staleSelection:!0,total:0}}}async function ei(e){let t=k.parse(e),r=await Q(),i=Y(J(r.discovery.tables),t.table),n=r.discovery.databaseName??r.source.name;if(t.confirmationTable!==i.qualifiedName)throw new o.BadRequestError("Type the exact qualified table name to confirm deletion.");let a=0;try{a=(await r.adapter.deleteTableRows(r.source,i)).deletedRowCount}catch(e){if(!G(e))throw e;throw new o.BadRequestError("The requested table is no longer available in the source database.")}let s={...r.discovery,tables:r.discovery.tables.map(e=>e.qualifiedName===i.qualifiedName?{...e,approxRowCount:0}:e)};(0,z.updateLatestDiscovery)(r.source.id,s),l();let u=Y(s.tables,i.qualifiedName),d=W(u);return{browser:Z({databaseLabel:n,latestDiscoveryAt:s.createdAt,source:r.source,sourceSummary:r.sourceSummary,tables:s.tables}),deletedRowCount:a,preview:{columns:X(u),databaseLabel:n,hasNextPage:!1,hasPreviousPage:!1,latestDiscoveryAt:s.createdAt,page:1,pageSize:t.pageSize,requestedTable:t.table,rows:[],selectedTable:d,source:r.sourceSummary,staleSelection:!1,total:0},table:d}}async function en(e){let t=q.parse(e);return L[t.type].testConnection(t)}async function ea(e){let t=q.parse(e),r=L[t.type];await r.testConnection(t);let i=(0,z.upsertActiveSource)(t);(0,z.clearActiveMapping)(i.id);let n=await r.discoverSchema(i);return(0,z.saveDiscovery)(i.id,n),l(),{discovery:n,source:(0,z.getActiveSourceSummary)()}}async function eo(e){let t=await V(),r=U.parse("object"==typeof e&&null!==e&&"mapping"in e?e.mapping:e);if(r.sourceId!==t.id)throw new o.ConfigurationError("The submitted mapping does not match the active source.");return(0,z.saveActiveMapping)(t.id,r),l(),{dashboard:_(t,r),mapping:r,source:(0,z.getActiveSourceSummary)()}}e.s(["deleteAdminTableRows",0,ei,"discoverSource",0,ea,"getAdminTableBrowserState",0,et,"getAdminTablePreview",0,er,"getSourceAdminState",0,ee,"testSourceConnection",0,en,"updateSourceMapping",0,eo],43471)}];
|
|
80
|
+
`)).recordset[0]??{};return{capabilities:this.getCapabilities(),databaseName:ec(i.DatabaseName),message:"Connection to SQL Server succeeded.",ok:!0,serverVersion:ec(i.ServerVersion)}}},mysql:eg("mysql"),postgres:eg("postgres")};function ey(){return["mssql","csv"]}var ev=e.i(97528),ew=e.i(69719);let eS=ew.z.object({authMode:ew.z.enum(["sql","windows"]).default("sql"),connectionString:ew.z.string().trim().min(1),odbcDriver:ew.z.string().trim().nullable().optional().default(null),requestTimeoutMs:ew.z.coerce.number().int().positive().max(12e4).default(3e4)}),eR=eS.extend({connectionString:ew.z.string().trim().optional().default("")}),eO=ew.z.object({delimiter:ew.z.string().min(1).max(8).default(","),encoding:ew.z.literal("utf8").default("utf8"),filePath:ew.z.string().trim().min(1),hasHeaderRow:ew.z.literal(!0).default(!0)}),eN=ew.z.discriminatedUnion("type",[ew.z.object({connection:eS,id:ew.z.string().trim().min(1).optional(),name:ew.z.string().trim().min(1).max(120),type:ew.z.literal("mssql")}),ew.z.object({connection:eO,id:ew.z.string().trim().min(1).optional(),name:ew.z.string().trim().min(1).max(120),type:ew.z.literal("csv")})]),eI=ew.z.discriminatedUnion("type",[ew.z.object({connection:eR,id:ew.z.string().trim().min(1).optional(),name:ew.z.string().trim().min(1).max(120),type:ew.z.literal("mssql")}),ew.z.object({connection:eO,id:ew.z.string().trim().min(1).optional(),name:ew.z.string().trim().min(1).max(120),type:ew.z.literal("csv")})]),eE=ew.z.object({sourceId:ew.z.string().trim().min(1)}),eT=eE.extend({confirmationName:ew.z.string().trim().min(1)}),eC=ew.z.object({fieldRef:ew.z.string().trim().min(1),filterable:ew.z.boolean(),filterInput:ew.z.enum(["text","boolean"]).nullable(),format:ew.z.enum(["text","datetime","durationMs","boolean","status"]),id:ew.z.string().trim().min(1).max(80),label:ew.z.string().trim().min(1).max(120),showInDetail:ew.z.boolean(),showInList:ew.z.boolean(),valueType:ew.z.enum(["string","number","boolean","datetime"])}),ex=ew.z.object({fieldRef:ew.z.string().trim().min(1),group:ew.z.enum(["request","response","other"]),id:ew.z.string().trim().min(1).max(80),kind:ew.z.enum(["json","xml","text"]),label:ew.z.string().trim().min(1).max(120)}),eA=ew.z.object({defaultSort:ew.z.object({direction:ew.z.enum(["asc","desc"]),fieldRef:ew.z.string().trim().min(1)}),descriptionFieldId:ew.z.string().trim().min(1).nullable(),fields:ew.z.array(eC).min(1),payloads:ew.z.array(ex),recordIdFieldRef:ew.z.string().trim().min(1),sourceId:ew.z.string().trim().min(1),statusFieldId:ew.z.string().trim().min(1).nullable(),target:ew.z.object({name:ew.z.string().trim().min(1),qualifiedName:ew.z.string().trim().min(1),schema:ew.z.string().trim().min(1)}),timestampFieldRef:ew.z.string().trim().min(1),titleFieldId:ew.z.string().trim().min(1).nullable(),version:ew.z.literal(1)});ew.z.object({mapping:eA});let eD=ew.z.object({page:ew.z.coerce.number().int().min(1).catch(1).default(1),pageSize:ew.z.coerce.number().int().min(1).max(100).catch(50).default(50),table:ew.z.string().trim().min(1).nullable().optional().catch(null).default(null)}),ej=ew.z.object({confirmationTable:ew.z.string().trim().min(1),pageSize:ew.z.coerce.number().int().min(1).max(100).catch(50).default(50),table:ew.z.string().trim().min(1)});async function e$(){return(0,ev.getActiveSource)()}function eM(e){return"csv"===e.type?{...e,connection:{...e.connection,filePath:P(e.connection.filePath)}}:e}function eL(e){if("object"==typeof e&&null!==e&&"sourceId"in e){let{sourceId:t}=eE.parse(e),i=(0,ev.getSourceById)(t);if(!i)throw new s.BadRequestError("The requested source was not found.");return i}return null}function eP(e){let t=eI.parse(e);if("csv"===t.type)return eM(t);let i=t.id?(0,ev.getSourceById)(t.id):null,r=t.connection.connectionString.trim()||(i?.type==="mssql"?i.connection.connectionString:"");if(!r)throw new s.BadRequestError("MSSQL connection string is required.");return{...t,connection:{...t.connection,connectionString:r}}}async function eq(e,t){e?.type!=="mssql"||t&&"mssql"===t.type&&JSON.stringify(e.connection)===JSON.stringify(t.connection)||await es(e.connection)}async function ez(){let e=await e$();if(!e)throw new s.ConfigurationError("No active source is configured yet. Configure one from Source Admin.",["source_admin"]);return e}function eB(e){return[...e].sort((e,t)=>e.schema.localeCompare(t.schema)||e.name.localeCompare(t.name))}function eF(e){return{approxRowCount:e.approxRowCount,fieldCount:e.fields.length,name:e.name,qualifiedName:e.qualifiedName,schema:e.schema}}function eV(e){return e.fields.map(e=>({dataType:e.dataType,isNullable:e.isNullable,label:e.label,maxLength:e.maxLength,name:e.fieldRef,payloadKindHint:M(e),presentationKind:$(e),valueType:e.valueType}))}function eJ(e,t){let i=e.find(e=>e.qualifiedName===t);if(!i)throw new s.BadRequestError("The requested table is no longer available in the current discovery snapshot.");return i}function ek({databaseLabel:e,latestDiscoveryAt:t,source:i,sourceCapabilities:r,sourceSummary:n,tables:o}){let s=eB(o).map(eF);return{databaseLabel:e||i.name,defaultSelectedTable:s[0]?.qualifiedName??null,latestDiscoveryAt:t,source:n,sourceCapabilities:r,tables:s}}function eU(e){let t=e instanceof Error?e.message.toLowerCase():"";return t.includes("invalid object name")||t.includes("could not find object")||t.includes("does not exist")}async function eH(){let e=await ez(),t=(0,ev.getActiveMapping)(e.id);if(!t)throw new s.ConfigurationError("An admin must confirm a source mapping before browsing discovered tables.",["source_mappings"]);let i=(0,ev.getLatestDiscovery)(e.id);if(!i)throw new s.ConfigurationError("Run source discovery before browsing discovered tables.",["source_discoveries"]);return{adapter:eb[e.type],discovery:i,mapping:t,source:e,sourceSummary:(0,ev.getSourceSummary)(e)}}async function eQ(){let e=await e$(),t=(0,ev.listSourceSummaries)(),i=ey(),r=Object.fromEntries(ey().map(e=>[e,eb[e].getCapabilities()]));if(!e)return{activeSourceId:null,adapterCapabilities:r,dashboard:null,discovery:null,mapping:null,source:null,sources:t,supportedDatabaseKinds:i};let n=(0,ev.getActiveMapping)(e.id),o=n?D(e,n):null;return{activeSourceId:e.id,adapterCapabilities:r,dashboard:o,discovery:(0,ev.getLatestDiscovery)(e.id),mapping:n,source:(0,ev.getSourceSummary)(e),sources:t,supportedDatabaseKinds:i}}async function eK(){let e=await eH();return ek({databaseLabel:e.discovery.databaseName??e.source.name,latestDiscoveryAt:e.discovery.createdAt,source:e.source,sourceCapabilities:e.adapter.getCapabilities(),sourceSummary:e.sourceSummary,tables:e.discovery.tables})}async function eW(e){let t=eD.parse(e),i=await eH(),r=eB(i.discovery.tables),n=i.adapter.getCapabilities(),{selectedTable:o,staleSelection:s}=function(e,t){let i=e[0]??null;if(!t)return{selectedTable:i,staleSelection:!1};let r=e.find(e=>e.qualifiedName===t)??i;return{selectedTable:r,staleSelection:r?.qualifiedName!==t}}(r,t.table),a=i.discovery.databaseName??i.source.name;if(!o)return{columns:[],databaseLabel:a,hasNextPage:!1,hasPreviousPage:!1,latestDiscoveryAt:i.discovery.createdAt,page:t.page,pageSize:t.pageSize,requestedTable:t.table,rows:[],selectedTable:null,source:i.sourceSummary,sourceCapabilities:n,staleSelection:!!t.table,total:0};try{return{...await i.adapter.listTableRows(i.source,o,t),databaseLabel:a,latestDiscoveryAt:i.discovery.createdAt,requestedTable:t.table,selectedTable:eF(o),source:i.sourceSummary,sourceCapabilities:n,staleSelection:s}}catch(e){if(!eU(e))throw e;return{columns:eV(o),databaseLabel:a,hasNextPage:!1,hasPreviousPage:t.page>1,latestDiscoveryAt:i.discovery.createdAt,page:t.page,pageSize:t.pageSize,requestedTable:t.table,rows:[],selectedTable:eF(o),source:i.sourceSummary,sourceCapabilities:n,staleSelection:!0,total:0}}}async function eG(e){let t=ej.parse(e),i=await eH(),r=i.adapter.getCapabilities();if(!r.supportsRowDeletion)throw new s.BadRequestError("The active source is read-only and does not support deleting rows.");let n=eJ(eB(i.discovery.tables),t.table),o=i.discovery.databaseName??i.source.name;if(t.confirmationTable!==n.qualifiedName)throw new s.BadRequestError("Type the exact qualified table name to confirm deletion.");let l=0;try{l=(await i.adapter.deleteTableRows(i.source,n)).deletedRowCount}catch(e){if(eU(e))throw new s.BadRequestError("The requested table is no longer available in the source database.");if(e instanceof Error&&["ConnectionError","RequestError","TransactionError"].includes(e.name)){var u;let t,i;throw t=(u=e).message.trim().replace(/\s+/g," ").slice(0,500),i="ConnectionError"===u.name?"The active source could not be reached while deleting rows.":"The source rejected the delete request.",new s.BadRequestError(t?`${i} ${t}`:i)}throw e}let d={...i.discovery,tables:i.discovery.tables.map(e=>e.qualifiedName===n.qualifiedName?{...e,approxRowCount:0}:e)};(0,ev.updateLatestDiscovery)(i.source.id,d),a();let f=eJ(d.tables,n.qualifiedName),c=eF(f);return{browser:ek({databaseLabel:o,latestDiscoveryAt:d.createdAt,source:i.source,sourceCapabilities:r,sourceSummary:i.sourceSummary,tables:d.tables}),deletedRowCount:l,preview:{columns:eV(f),databaseLabel:o,hasNextPage:!1,hasPreviousPage:!1,latestDiscoveryAt:d.createdAt,page:1,pageSize:t.pageSize,requestedTable:t.table,rows:[],selectedTable:c,source:i.sourceSummary,sourceCapabilities:r,staleSelection:!1,total:0},table:c}}async function eX(e){let t,i=(t=eL(e))||eM(eN.parse(e));return eb[i.type].testConnection(i)}async function eY(e){let t=eP(e),i=eb[t.type],r=t.id?(0,ev.getSourceById)(t.id):null;await i.testConnection(t);let n=(0,ev.upsertSource)(t);return await eq(r,n),a(),eQ()}async function eZ(e){let{sourceId:t}=eE.parse(e);if(!(0,ev.switchActiveSource)(t))throw new s.BadRequestError("The requested source was not found.");return a(),eQ()}async function e0(e){let{confirmationName:t,sourceId:i}=eT.parse(e),r=(0,ev.getSourceById)(i);if(!r)throw new s.BadRequestError("The requested source was not found.");if(t!==r.name)throw new s.BadRequestError("Type the exact source name to confirm deletion.");let n=(0,ev.deleteSource)(i);return await eq(r,n?.nextActiveSource??null),a(),eQ()}async function e1(e){let t,i=eL(e);if(i)t=(0,ev.switchActiveSource)(i.id)??i;else{let i=eP(e),r=eb[i.type],n=i.id?(0,ev.getSourceById)(i.id):null;await r.testConnection(i),t=(0,ev.upsertSource)(i),await eq(n,t)}let r=eb[t.type];await r.testConnection(t),(0,ev.clearActiveMapping)(t.id);let n=await r.discoverSchema(t);return(0,ev.saveDiscovery)(t.id,n),a(),eQ()}async function e2(e){let t=await ez(),i=eA.parse("object"==typeof e&&null!==e&&"mapping"in e?e.mapping:e);if(i.sourceId!==t.id)throw new s.ConfigurationError("The submitted mapping does not match the active source.");return(0,ev.saveActiveMapping)(t.id,i),a(),{dashboard:D(t,i),mapping:i,source:(0,ev.getSourceSummary)(t)}}e.s(["deleteAdminTableRows",0,eG,"deleteSource",0,e0,"discoverSource",0,e1,"getAdminTableBrowserState",0,eK,"getAdminTablePreview",0,eW,"getSourceAdminState",0,eQ,"saveSource",0,eY,"switchSource",0,eZ,"testSourceConnection",0,eX,"updateSourceMapping",0,e2],43471)}];
|
|
78
81
|
|
|
79
82
|
//# sourceMappingURL=_0xr7q4b._.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[93695,(a,b,c)=>{b.exports=a.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},12714,(a,b,c)=>{b.exports=a.x("node:fs/promises",()=>require("node:fs/promises"))},88947,(a,b,c)=>{b.exports=a.x("stream",()=>require("stream"))},10585,a=>{a.v("/_next/static/media/favicon.0x3dzn~oxb6tn.ico"+(globalThis.NEXT_CLIENT_ASSET_SUFFIX||""))},68611,a=>{"use strict";let b={src:a.i(10585).default,width:256,height:256};a.s(["default",0,b])},38316,a=>{"use strict";a.s(["SourceManagerConsole",()=>b]);let b=(0,a.i(11857).registerClientReference)(function(){throw Error("Attempted to call SourceManagerConsole() from the server but SourceManagerConsole is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/components/admin/source-manager-console.tsx <module evaluation>","SourceManagerConsole")},84916,a=>{"use strict";a.s(["SourceManagerConsole",()=>b]);let b=(0,a.i(11857).registerClientReference)(function(){throw Error("Attempted to call SourceManagerConsole() from the server but SourceManagerConsole is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/components/admin/source-manager-console.tsx","SourceManagerConsole")},84129,a=>{"use strict";a.i(38316);var b=a.i(84916);a.n(b)},96419,a=>{"use strict";var b=a.i(7997),c=a.i(84129),d=a.i(34991);async function e(){let a=await (0,d.getSourceAdminState)();return(0,b.jsx)(c.SourceManagerConsole,{initialState:a})}a.s(["default",0,e,"dynamic",0,"force-dynamic","runtime",0,"nodejs"])},7425,a=>{a.n(a.i(96419))},11817,a=>{a.v(b=>Promise.all(["server/chunks/ssr/[externals]_mssql_msnodesqlv8_06z-x0m.js"].map(b=>a.l(b))).then(()=>b(56891)))},75106,a=>{a.v(b=>Promise.all(["server/chunks/ssr/[externals]_mssql_0pj5u_s._.js"].map(b=>a.l(b))).then(()=>b(59100)))}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__0zpjyya._.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[93695,(a,b,c)=>{b.exports=a.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},12714,(a,b,c)=>{b.exports=a.x("node:fs/promises",()=>require("node:fs/promises"))},88947,(a,b,c)=>{b.exports=a.x("stream",()=>require("stream"))},78641,a=>{"use strict";var b=a.i(7997);a.s(["ConfigurationCallout",0,function({className:a,description:c,title:d}){return(0,b.jsxs)("div",{className:function(...a){return a.filter(Boolean).join(" ")}("rounded-[28px] border border-amber-300/70 bg-amber-50/90 p-6 shadow-[0_24px_60px_rgba(108,71,10,0.08)]",a),children:[(0,b.jsx)("p",{className:"text-sm font-semibold uppercase tracking-[0.18em] text-amber-800",children:"Configuration Required"}),(0,b.jsx)("h2",{className:"mt-2 text-xl font-semibold text-amber-950",children:d}),(0,b.jsx)("p",{className:"mt-2 text-sm leading-7 text-amber-900/85",children:c})]})}],78641)},10585,a=>{a.v("/_next/static/media/favicon.0x3dzn~oxb6tn.ico"+(globalThis.NEXT_CLIENT_ASSET_SUFFIX||""))},68611,a=>{"use strict";let b={src:a.i(10585).default,width:256,height:256};a.s(["default",0,b])},36965,a=>{"use strict";a.s(["AdminTableExplorer",()=>c,"InspectorField",()=>d,"RowInspector",()=>e]);var b=a.i(11857);let c=(0,b.registerClientReference)(function(){throw Error("Attempted to call AdminTableExplorer() from the server but AdminTableExplorer is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/components/admin/table-explorer.tsx <module evaluation>","AdminTableExplorer"),d=(0,b.registerClientReference)(function(){throw Error("Attempted to call InspectorField() from the server but InspectorField is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/components/admin/table-explorer.tsx <module evaluation>","InspectorField"),e=(0,b.registerClientReference)(function(){throw Error("Attempted to call RowInspector() from the server but RowInspector is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/components/admin/table-explorer.tsx <module evaluation>","RowInspector")},95065,a=>{"use strict";a.s(["AdminTableExplorer",()=>c,"InspectorField",()=>d,"RowInspector",()=>e]);var b=a.i(11857);let c=(0,b.registerClientReference)(function(){throw Error("Attempted to call AdminTableExplorer() from the server but AdminTableExplorer is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/components/admin/table-explorer.tsx","AdminTableExplorer"),d=(0,b.registerClientReference)(function(){throw Error("Attempted to call InspectorField() from the server but InspectorField is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/components/admin/table-explorer.tsx","InspectorField"),e=(0,b.registerClientReference)(function(){throw Error("Attempted to call RowInspector() from the server but RowInspector is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/components/admin/table-explorer.tsx","RowInspector")},37035,a=>{"use strict";a.i(36965);var b=a.i(95065);a.n(b)},23018,a=>{"use strict";var b=a.i(7997),c=a.i(78641),d=a.i(37035),e=a.i(19406),f=a.i(34991);async function g(a){try{let b=await a,c=await (0,f.getAdminTableBrowserState)(),d=await (0,f.getAdminTablePreview)({page:b.page,pageSize:b.pageSize,table:b.table});return{browser:c,kind:"ready",preview:d}}catch(a){if((0,e.isConfigurationError)(a))return{kind:"configuration"};throw a}}async function h({searchParams:a}){let e=await g(a);return"configuration"===e.kind?(0,b.jsx)(c.ConfigurationCallout,{description:"Run source discovery and activate a mapping before browsing discovered tables.",title:"Table explorer is not available yet."}):(0,b.jsx)(d.AdminTableExplorer,{browser:e.browser,preview:e.preview})}a.s(["default",0,h,"dynamic",0,"force-dynamic","runtime",0,"nodejs"])},82017,a=>{a.n(a.i(23018))},11817,a=>{a.v(b=>Promise.all(["server/chunks/ssr/[externals]_mssql_msnodesqlv8_06z-x0m.js"].map(b=>a.l(b))).then(()=>b(56891)))},75106,a=>{a.v(b=>Promise.all(["server/chunks/ssr/[externals]_mssql_0pj5u_s._.js"].map(b=>a.l(b))).then(()=>b(59100)))}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__13lr0v4._.js.map
|