/opt/canhelp/node_modules/next/dist/esm/client
NameSizeModeActions
app-dir/-0755rm
compat/-0755rm
components/-0755rm
dev/-0755rm
legacy/-0755rm
lib/-0755rm
portal/-0755rm
react-client-callbacks/-0755rm
request/-0755rm
tracing/-0755rm
add-base-path.js4330644editdlrm
add-base-path.js.map9780644editdlrm
add-locale.js5010644editdlrm
add-locale.js.map8990644editdlrm
app-bootstrap.js22100644editdlrm
app-bootstrap.js.map39640644editdlrm
app-build-id.js9850644editdlrm
app-build-id.js.map14180644editdlrm
app-call-server.js6000644editdlrm
app-call-server.js.map10410644editdlrm
app-find-source-map-url.js11240644editdlrm
app-find-source-map-url.js.map20810644editdlrm
app-globals.js3010644editdlrm
app-globals.js.map6000644editdlrm
app-index.js102280644editdlrm
app-index.js.map172380644editdlrm
app-link-gc.js40250644editdlrm
app-link-gc.js.map51460644editdlrm
app-next-dev.js7330644editdlrm
app-next-dev.js.map12640644editdlrm
app-next-turbopack.js8430644editdlrm
app-next-turbopack.js.map16820644editdlrm
app-next.js8560644editdlrm
app-next.js.map12660644editdlrm
app-webpack.js27270644editdlrm
app-webpack.js.map32070644editdlrm
assign-location.js9950644editdlrm
assign-location.js.map15570644editdlrm
detect-domain-locale.js3800644editdlrm
detect-domain-locale.js.map7110644editdlrm
flight-data-helpers.js50880644editdlrm
flight-data-helpers.js.map86570644editdlrm
form-shared.js55520644editdlrm
form-shared.js.map106220644editdlrm
form.js52120644editdlrm
form.js.map83060644editdlrm
get-domain-locale.js9980644editdlrm
get-domain-locale.js.map24510644editdlrm
has-base-path.js2570644editdlrm
has-base-path.js.map5980644editdlrm
head-manager.js49880644editdlrm
head-manager.js.map83200644editdlrm
image-component.js128780644editdlrm
image-component.js.map214460644editdlrm
index.js312570644editdlrm
index.js.map527990644editdlrm
link.js181650644editdlrm
link.js.map343940644editdlrm
next-dev-turbopack.js14170644editdlrm
next-dev-turbopack.js.map30540644editdlrm
next-dev.js6260644editdlrm
next-dev.js.map12300644editdlrm
next-turbopack.js11660644editdlrm
next-turbopack.js.map23970644editdlrm
next.js3830644editdlrm
next.js.map8930644editdlrm
normalize-locale-path.js3390644editdlrm
normalize-locale-path.js.map8720644editdlrm
normalize-trailing-slash.js9350644editdlrm
normalize-trailing-slash.js.map17360644editdlrm
page-bootstrap.js63140644editdlrm
page-bootstrap.js.map90250644editdlrm
page-loader.js68200644editdlrm
page-loader.js.map122200644editdlrm
remove-base-path.js5260644editdlrm
remove-base-path.js.map11380644editdlrm
remove-locale.js6000644editdlrm
remove-locale.js.map13010644editdlrm
request-idle-callback.js6340644editdlrm
request-idle-callback.js.map13920644editdlrm
resolve-href.js48160644editdlrm
resolve-href.js.map79830644editdlrm
route-announcer.js23460644editdlrm
route-announcer.js.map35230644editdlrm
route-loader.js130750644editdlrm
route-loader.js.map230360644editdlrm
route-params.js68150644editdlrm
route-params.js.map108220644editdlrm
router.js58730644editdlrm
router.js.map88450644editdlrm
script.js126190644editdlrm
script.js.map187110644editdlrm
set-attributes-from-props.js18170644editdlrm
set-attributes-from-props.js.map31010644editdlrm
trusted-types.js14100644editdlrm
trusted-types.js.map19560644editdlrm
use-client-disallowed.js4760644editdlrm
use-client-disallowed.js.map7390644editdlrm
use-intersection.js32480644editdlrm
use-intersection.js.map66470644editdlrm
use-merged-ref.js23450644editdlrm
use-merged-ref.js.map35660644editdlrm
web-vitals.js4910644editdlrm
web-vitals.js.map10050644editdlrm
webpack.js18770644editdlrm
webpack.js.map25420644editdlrm
with-router.js7810644editdlrm
with-router.js.map19350644editdlrm
Edit: /opt/canhelp/node_modules/next/dist/esm/client/form-shared.js (5552B)
export const DISALLOWED_FORM_PROPS = [ 'method', 'encType', 'target' ]; export function createFormSubmitDestinationUrl(action, formElement) { let targetUrl; try { // NOTE: It might be more correct to resolve URLs relative to `document.baseURI`, // but we already do it relative to `location.href` elsewhere: // (see e.g. https://github.com/vercel/next.js/blob/bb0e6722f87ceb2d43015f5b8a413d0072f2badf/packages/next/src/client/components/app-router.tsx#L146) // so it's better to stay consistent. const base = window.location.href; targetUrl = new URL(action, base); } catch (err) { throw Object.defineProperty(new Error('Cannot parse form action "' + action + '" as a URL', { cause: err }), "__NEXT_ERROR_CODE", { value: "E152", enumerable: false, configurable: true }); } if (targetUrl.searchParams.size) { // url-encoded HTML forms *overwrite* any search params in the `action` url: // // "Let `query` be the result of running the application/x-www-form-urlencoded serializer [...]" // "Set parsed action's query component to `query`." // https://html.spec.whatwg.org/multipage/form-control-infrastructure.html#submit-mutate-action // // We need to match that. // (note that all other parts of the URL, like `hash`, are preserved) targetUrl.search = ''; } const formData = new FormData(formElement); for (let [name, value] of formData){ if (typeof value !== 'string') { // For file inputs, the native browser behavior is to use the filename as the value instead: // // "If entry's value is a File object, then let value be entry's value's name. Otherwise, let value be entry's value." // https://html.spec.whatwg.org/multipage/form-control-infrastructure.html#converting-an-entry-list-to-a-list-of-name-value-pairs // if (process.env.NODE_ENV === 'development') { console.warn("
only supports file inputs if `action` is a function. File inputs cannot be used if `action` is a string, " + "because files cannot be encoded as search params."); } value = value.name; } targetUrl.searchParams.append(name, value); } return targetUrl; } export function checkFormActionUrl(action, source) { const aPropName = source === 'action' ? "an `action`" : "a `formAction`"; let testUrl; try { testUrl = new URL(action, 'http://n'); } catch (err) { console.error(" received " + aPropName + ' that cannot be parsed as a URL: "' + action + '".'); return; } // url-encoded HTML forms ignore any queryparams in the `action` url. We need to match that. if (testUrl.searchParams.size) { console.warn(" received " + aPropName + ' that contains search params: "' + action + '". This is not supported, and they will be ignored. ' + 'If you need to pass in additional search params, use an `` instead.'); } } export const isSupportedFormEncType = (value)=>value === 'application/x-www-form-urlencoded'; export const isSupportedFormMethod = (value)=>value === 'get'; export const isSupportedFormTarget = (value)=>value === '_self'; export function hasUnsupportedSubmitterAttributes(submitter) { // A submitter can override `encType` for the form. const formEncType = submitter.getAttribute('formEncType'); if (formEncType !== null && !isSupportedFormEncType(formEncType)) { if (process.env.NODE_ENV === 'development') { console.error("'s `encType` was set to an unsupported value via `formEncType=\"" + formEncType + '"`. ' + "This will disable 's navigation functionality. If you need this, use a native element instead."); } return true; } // A submitter can override `method` for the form. const formMethod = submitter.getAttribute('formMethod'); if (formMethod !== null && !isSupportedFormMethod(formMethod)) { if (process.env.NODE_ENV === 'development') { console.error("'s `method` was set to an unsupported value via `formMethod=\"" + formMethod + '"`. ' + "This will disable 's navigation functionality. If you need this, use a native element instead."); } return true; } // A submitter can override `target` for the form. const formTarget = submitter.getAttribute('formTarget'); if (formTarget !== null && !isSupportedFormTarget(formTarget)) { if (process.env.NODE_ENV === 'development') { console.error("'s `target` was set to an unsupported value via `formTarget=\"" + formTarget + '"`. ' + "This will disable 's navigation functionality. If you need this, use a native element instead."); } return true; } return false; } export function hasReactClientActionAttributes(submitter) { // CSR: https://github.com/facebook/react/blob/942eb80381b96f8410eab1bef1c539bed1ab0eb1/packages/react-dom-bindings/src/client/ReactDOMComponent.js#L482-L487 // SSR: https://github.com/facebook/react/blob/942eb80381b96f8410eab1bef1c539bed1ab0eb1/packages/react-dom-bindings/src/client/ReactDOMComponent.js#L2401 const action = submitter.getAttribute('formAction'); return action && /\s*javascript:/i.test(action); } //# sourceMappingURL=form-shared.js.map