@openclaw/diffs 2026.8.1-beta.3 → 2026.8.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/viewer-runtime.js +129 -156
- package/dist/{browser.runtime-_hkQDewM.js → browser.runtime-DTKAejqd.js} +1 -1
- package/dist/index.js +18 -16
- package/dist/{viewer-assets-DKR8WLAI.js → viewer-assets-D3qrnaxI.js} +11 -23
- package/node_modules/@pierre/diffs/README.md +9 -0
- package/node_modules/@pierre/diffs/dist/components/CodeView.d.ts +94 -7
- package/node_modules/@pierre/diffs/dist/components/CodeView.d.ts.map +1 -1
- package/node_modules/@pierre/diffs/dist/components/CodeView.js +333 -47
- package/node_modules/@pierre/diffs/dist/components/CodeView.js.map +1 -1
- package/node_modules/@pierre/diffs/dist/components/File.d.ts +22 -4
- package/node_modules/@pierre/diffs/dist/components/File.d.ts.map +1 -1
- package/node_modules/@pierre/diffs/dist/components/File.js +143 -23
- package/node_modules/@pierre/diffs/dist/components/File.js.map +1 -1
- package/node_modules/@pierre/diffs/dist/components/FileDiff.d.ts +83 -19
- package/node_modules/@pierre/diffs/dist/components/FileDiff.d.ts.map +1 -1
- package/node_modules/@pierre/diffs/dist/components/FileDiff.js +461 -46
- package/node_modules/@pierre/diffs/dist/components/FileDiff.js.map +1 -1
- package/node_modules/@pierre/diffs/dist/components/FileStream.d.ts.map +1 -1
- package/node_modules/@pierre/diffs/dist/components/FileStream.js +2 -1
- package/node_modules/@pierre/diffs/dist/components/FileStream.js.map +1 -1
- package/node_modules/@pierre/diffs/dist/components/UnresolvedFile.d.ts +2 -2
- package/node_modules/@pierre/diffs/dist/components/UnresolvedFile.d.ts.map +1 -1
- package/node_modules/@pierre/diffs/dist/components/UnresolvedFile.js +9 -4
- package/node_modules/@pierre/diffs/dist/components/UnresolvedFile.js.map +1 -1
- package/node_modules/@pierre/diffs/dist/components/VirtualizedFile.d.ts +7 -3
- package/node_modules/@pierre/diffs/dist/components/VirtualizedFile.d.ts.map +1 -1
- package/node_modules/@pierre/diffs/dist/components/VirtualizedFile.js +87 -60
- package/node_modules/@pierre/diffs/dist/components/VirtualizedFile.js.map +1 -1
- package/node_modules/@pierre/diffs/dist/components/VirtualizedFileDiff.d.ts +30 -5
- package/node_modules/@pierre/diffs/dist/components/VirtualizedFileDiff.d.ts.map +1 -1
- package/node_modules/@pierre/diffs/dist/components/VirtualizedFileDiff.js +277 -56
- package/node_modules/@pierre/diffs/dist/components/VirtualizedFileDiff.js.map +1 -1
- package/node_modules/@pierre/diffs/dist/components/Virtualizer.d.ts +17 -3
- package/node_modules/@pierre/diffs/dist/components/Virtualizer.d.ts.map +1 -1
- package/node_modules/@pierre/diffs/dist/components/Virtualizer.js +44 -5
- package/node_modules/@pierre/diffs/dist/components/Virtualizer.js.map +1 -1
- package/node_modules/@pierre/diffs/dist/constants.d.ts +4 -1
- package/node_modules/@pierre/diffs/dist/constants.d.ts.map +1 -1
- package/node_modules/@pierre/diffs/dist/constants.js +4 -1
- package/node_modules/@pierre/diffs/dist/constants.js.map +1 -1
- package/node_modules/@pierre/diffs/dist/edit/index.d.ts +6 -0
- package/node_modules/@pierre/diffs/dist/edit/index.js +3 -0
- package/node_modules/@pierre/diffs/dist/editor/command.d.ts +15 -0
- package/node_modules/@pierre/diffs/dist/editor/command.d.ts.map +1 -0
- package/node_modules/@pierre/diffs/dist/editor/command.js +128 -0
- package/node_modules/@pierre/diffs/dist/editor/command.js.map +1 -0
- package/node_modules/@pierre/diffs/dist/editor/editStack.d.ts +76 -0
- package/node_modules/@pierre/diffs/dist/editor/editStack.d.ts.map +1 -0
- package/node_modules/@pierre/diffs/dist/editor/editStack.js +259 -0
- package/node_modules/@pierre/diffs/dist/editor/editStack.js.map +1 -0
- package/node_modules/@pierre/diffs/dist/editor/editor.d.ts +118 -0
- package/node_modules/@pierre/diffs/dist/editor/editor.d.ts.map +1 -0
- package/node_modules/@pierre/diffs/dist/editor/editor.js +2880 -0
- package/node_modules/@pierre/diffs/dist/editor/editor.js.map +1 -0
- package/node_modules/@pierre/diffs/dist/editor/editor2.js +6 -0
- package/node_modules/@pierre/diffs/dist/editor/editor2.js.map +1 -0
- package/node_modules/@pierre/diffs/dist/editor/languages.d.ts +26 -0
- package/node_modules/@pierre/diffs/dist/editor/languages.d.ts.map +1 -0
- package/node_modules/@pierre/diffs/dist/editor/languages.js +363 -0
- package/node_modules/@pierre/diffs/dist/editor/languages.js.map +1 -0
- package/node_modules/@pierre/diffs/dist/editor/lineAnnotations.d.ts +9 -0
- package/node_modules/@pierre/diffs/dist/editor/lineAnnotations.d.ts.map +1 -0
- package/node_modules/@pierre/diffs/dist/editor/lineAnnotations.js +212 -0
- package/node_modules/@pierre/diffs/dist/editor/lineAnnotations.js.map +1 -0
- package/node_modules/@pierre/diffs/dist/editor/marker.d.ts +38 -0
- package/node_modules/@pierre/diffs/dist/editor/marker.d.ts.map +1 -0
- package/node_modules/@pierre/diffs/dist/editor/marker.js +245 -0
- package/node_modules/@pierre/diffs/dist/editor/marker.js.map +1 -0
- package/node_modules/@pierre/diffs/dist/editor/matchBrackets.d.ts +9 -0
- package/node_modules/@pierre/diffs/dist/editor/matchBrackets.d.ts.map +1 -0
- package/node_modules/@pierre/diffs/dist/editor/matchBrackets.js +138 -0
- package/node_modules/@pierre/diffs/dist/editor/matchBrackets.js.map +1 -0
- package/node_modules/@pierre/diffs/dist/editor/pieceTable.d.ts +40 -0
- package/node_modules/@pierre/diffs/dist/editor/pieceTable.d.ts.map +1 -0
- package/node_modules/@pierre/diffs/dist/editor/pieceTable.js +706 -0
- package/node_modules/@pierre/diffs/dist/editor/pieceTable.js.map +1 -0
- package/node_modules/@pierre/diffs/dist/editor/platform.d.ts +11 -0
- package/node_modules/@pierre/diffs/dist/editor/platform.d.ts.map +1 -0
- package/node_modules/@pierre/diffs/dist/editor/platform.js +31 -0
- package/node_modules/@pierre/diffs/dist/editor/platform.js.map +1 -0
- package/node_modules/@pierre/diffs/dist/editor/popover.d.ts +65 -0
- package/node_modules/@pierre/diffs/dist/editor/popover.d.ts.map +1 -0
- package/node_modules/@pierre/diffs/dist/editor/popover.js +191 -0
- package/node_modules/@pierre/diffs/dist/editor/popover.js.map +1 -0
- package/node_modules/@pierre/diffs/dist/editor/searchPanel.d.ts +41 -0
- package/node_modules/@pierre/diffs/dist/editor/searchPanel.d.ts.map +1 -0
- package/node_modules/@pierre/diffs/dist/editor/searchPanel.js +318 -0
- package/node_modules/@pierre/diffs/dist/editor/searchPanel.js.map +1 -0
- package/node_modules/@pierre/diffs/dist/editor/selection.d.ts +211 -0
- package/node_modules/@pierre/diffs/dist/editor/selection.d.ts.map +1 -0
- package/node_modules/@pierre/diffs/dist/editor/selection.js +1626 -0
- package/node_modules/@pierre/diffs/dist/editor/selection.js.map +1 -0
- package/node_modules/@pierre/diffs/dist/editor/selectionAction.d.ts +47 -0
- package/node_modules/@pierre/diffs/dist/editor/selectionAction.d.ts.map +1 -0
- package/node_modules/@pierre/diffs/dist/editor/selectionAction.js +66 -0
- package/node_modules/@pierre/diffs/dist/editor/selectionAction.js.map +1 -0
- package/node_modules/@pierre/diffs/dist/editor/sprite.d.ts +8 -0
- package/node_modules/@pierre/diffs/dist/editor/sprite.d.ts.map +1 -0
- package/node_modules/@pierre/diffs/dist/editor/sprite.js +45 -0
- package/node_modules/@pierre/diffs/dist/editor/sprite.js.map +1 -0
- package/node_modules/@pierre/diffs/dist/editor/stateStorage.d.ts +15 -0
- package/node_modules/@pierre/diffs/dist/editor/stateStorage.d.ts.map +1 -0
- package/node_modules/@pierre/diffs/dist/editor/stateStorage.js +65 -0
- package/node_modules/@pierre/diffs/dist/editor/stateStorage.js.map +1 -0
- package/node_modules/@pierre/diffs/dist/editor/textDocument.d.ts +67 -0
- package/node_modules/@pierre/diffs/dist/editor/textDocument.d.ts.map +1 -0
- package/node_modules/@pierre/diffs/dist/editor/textDocument.js +278 -0
- package/node_modules/@pierre/diffs/dist/editor/textDocument.js.map +1 -0
- package/node_modules/@pierre/diffs/dist/editor/textMeasure.d.ts +61 -0
- package/node_modules/@pierre/diffs/dist/editor/textMeasure.d.ts.map +1 -0
- package/node_modules/@pierre/diffs/dist/editor/textMeasure.js +209 -0
- package/node_modules/@pierre/diffs/dist/editor/textMeasure.js.map +1 -0
- package/node_modules/@pierre/diffs/dist/editor/tokenizer.d.ts +41 -0
- package/node_modules/@pierre/diffs/dist/editor/tokenizer.d.ts.map +1 -0
- package/node_modules/@pierre/diffs/dist/editor/tokenizer.js +596 -0
- package/node_modules/@pierre/diffs/dist/editor/tokenizer.js.map +1 -0
- package/node_modules/@pierre/diffs/dist/editor/utils.d.ts +22 -0
- package/node_modules/@pierre/diffs/dist/editor/utils.d.ts.map +1 -0
- package/node_modules/@pierre/diffs/dist/editor/utils.js +78 -0
- package/node_modules/@pierre/diffs/dist/editor/utils.js.map +1 -0
- package/node_modules/@pierre/diffs/dist/index.d.ts +12 -9
- package/node_modules/@pierre/diffs/dist/index.js +13 -10
- package/node_modules/@pierre/diffs/dist/managers/InteractionManager.d.ts +20 -2
- package/node_modules/@pierre/diffs/dist/managers/InteractionManager.d.ts.map +1 -1
- package/node_modules/@pierre/diffs/dist/managers/InteractionManager.js +155 -79
- package/node_modules/@pierre/diffs/dist/managers/InteractionManager.js.map +1 -1
- package/node_modules/@pierre/diffs/dist/managers/ResizeManager.d.ts +10 -2
- package/node_modules/@pierre/diffs/dist/managers/ResizeManager.d.ts.map +1 -1
- package/node_modules/@pierre/diffs/dist/managers/ResizeManager.js +33 -13
- package/node_modules/@pierre/diffs/dist/managers/ResizeManager.js.map +1 -1
- package/node_modules/@pierre/diffs/dist/managers/UniversalRenderingManager.d.ts +2 -1
- package/node_modules/@pierre/diffs/dist/managers/UniversalRenderingManager.d.ts.map +1 -1
- package/node_modules/@pierre/diffs/dist/managers/UniversalRenderingManager.js +7 -3
- package/node_modules/@pierre/diffs/dist/managers/UniversalRenderingManager.js.map +1 -1
- package/node_modules/@pierre/diffs/dist/react/CodeView.d.ts +29 -3
- package/node_modules/@pierre/diffs/dist/react/CodeView.d.ts.map +1 -1
- package/node_modules/@pierre/diffs/dist/react/CodeView.js +111 -30
- package/node_modules/@pierre/diffs/dist/react/CodeView.js.map +1 -1
- package/node_modules/@pierre/diffs/dist/react/EditContext.d.ts +20 -0
- package/node_modules/@pierre/diffs/dist/react/EditContext.d.ts.map +1 -0
- package/node_modules/@pierre/diffs/dist/react/EditContext.js +27 -0
- package/node_modules/@pierre/diffs/dist/react/EditContext.js.map +1 -0
- package/node_modules/@pierre/diffs/dist/react/File.d.ts +4 -1
- package/node_modules/@pierre/diffs/dist/react/File.d.ts.map +1 -1
- package/node_modules/@pierre/diffs/dist/react/File.js +5 -2
- package/node_modules/@pierre/diffs/dist/react/File.js.map +1 -1
- package/node_modules/@pierre/diffs/dist/react/FileDiff.d.ts +4 -1
- package/node_modules/@pierre/diffs/dist/react/FileDiff.d.ts.map +1 -1
- package/node_modules/@pierre/diffs/dist/react/FileDiff.js +5 -2
- package/node_modules/@pierre/diffs/dist/react/FileDiff.js.map +1 -1
- package/node_modules/@pierre/diffs/dist/react/MultiFileDiff.d.ts +7 -5
- package/node_modules/@pierre/diffs/dist/react/MultiFileDiff.d.ts.map +1 -1
- package/node_modules/@pierre/diffs/dist/react/MultiFileDiff.js +5 -2
- package/node_modules/@pierre/diffs/dist/react/MultiFileDiff.js.map +1 -1
- package/node_modules/@pierre/diffs/dist/react/PatchDiff.d.ts +4 -1
- package/node_modules/@pierre/diffs/dist/react/PatchDiff.d.ts.map +1 -1
- package/node_modules/@pierre/diffs/dist/react/PatchDiff.js +5 -2
- package/node_modules/@pierre/diffs/dist/react/PatchDiff.js.map +1 -1
- package/node_modules/@pierre/diffs/dist/react/UnresolvedFile.d.ts +2 -1
- package/node_modules/@pierre/diffs/dist/react/UnresolvedFile.d.ts.map +1 -1
- package/node_modules/@pierre/diffs/dist/react/UnresolvedFile.js +2 -1
- package/node_modules/@pierre/diffs/dist/react/UnresolvedFile.js.map +1 -1
- package/node_modules/@pierre/diffs/dist/react/index.d.ts +4 -3
- package/node_modules/@pierre/diffs/dist/react/index.js +3 -2
- package/node_modules/@pierre/diffs/dist/react/types.d.ts +11 -0
- package/node_modules/@pierre/diffs/dist/react/types.d.ts.map +1 -1
- package/node_modules/@pierre/diffs/dist/react/utils/renderDiffChildren.d.ts +2 -0
- package/node_modules/@pierre/diffs/dist/react/utils/renderDiffChildren.d.ts.map +1 -1
- package/node_modules/@pierre/diffs/dist/react/utils/renderDiffChildren.js +16 -8
- package/node_modules/@pierre/diffs/dist/react/utils/renderDiffChildren.js.map +1 -1
- package/node_modules/@pierre/diffs/dist/react/utils/renderFileChildren.d.ts +2 -0
- package/node_modules/@pierre/diffs/dist/react/utils/renderFileChildren.d.ts.map +1 -1
- package/node_modules/@pierre/diffs/dist/react/utils/renderFileChildren.js +16 -8
- package/node_modules/@pierre/diffs/dist/react/utils/renderFileChildren.js.map +1 -1
- package/node_modules/@pierre/diffs/dist/react/utils/useFileDiffInstance.d.ts +6 -2
- package/node_modules/@pierre/diffs/dist/react/utils/useFileDiffInstance.d.ts.map +1 -1
- package/node_modules/@pierre/diffs/dist/react/utils/useFileDiffInstance.js +21 -6
- package/node_modules/@pierre/diffs/dist/react/utils/useFileDiffInstance.js.map +1 -1
- package/node_modules/@pierre/diffs/dist/react/utils/useFileInstance.d.ts +7 -2
- package/node_modules/@pierre/diffs/dist/react/utils/useFileInstance.d.ts.map +1 -1
- package/node_modules/@pierre/diffs/dist/react/utils/useFileInstance.js +21 -6
- package/node_modules/@pierre/diffs/dist/react/utils/useFileInstance.js.map +1 -1
- package/node_modules/@pierre/diffs/dist/react/utils/useUnresolvedFileInstance.js +4 -4
- package/node_modules/@pierre/diffs/dist/react/utils/useUnresolvedFileInstance.js.map +1 -1
- package/node_modules/@pierre/diffs/dist/renderers/DiffHunksRenderer.d.ts +47 -2
- package/node_modules/@pierre/diffs/dist/renderers/DiffHunksRenderer.d.ts.map +1 -1
- package/node_modules/@pierre/diffs/dist/renderers/DiffHunksRenderer.js +361 -37
- package/node_modules/@pierre/diffs/dist/renderers/DiffHunksRenderer.js.map +1 -1
- package/node_modules/@pierre/diffs/dist/renderers/FileRenderer.d.ts +26 -1
- package/node_modules/@pierre/diffs/dist/renderers/FileRenderer.d.ts.map +1 -1
- package/node_modules/@pierre/diffs/dist/renderers/FileRenderer.js +240 -55
- package/node_modules/@pierre/diffs/dist/renderers/FileRenderer.js.map +1 -1
- package/node_modules/@pierre/diffs/dist/ssr/index.d.ts +2 -2
- package/node_modules/@pierre/diffs/dist/ssr/preloadDiffs.d.ts +11 -10
- package/node_modules/@pierre/diffs/dist/ssr/preloadDiffs.d.ts.map +1 -1
- package/node_modules/@pierre/diffs/dist/ssr/preloadDiffs.js +17 -7
- package/node_modules/@pierre/diffs/dist/ssr/preloadDiffs.js.map +1 -1
- package/node_modules/@pierre/diffs/dist/ssr/preloadFile.d.ts.map +1 -1
- package/node_modules/@pierre/diffs/dist/ssr/preloadFile.js +2 -0
- package/node_modules/@pierre/diffs/dist/ssr/preloadFile.js.map +1 -1
- package/node_modules/@pierre/diffs/dist/style.js +1 -1
- package/node_modules/@pierre/diffs/dist/types.d.ts +336 -5
- package/node_modules/@pierre/diffs/dist/types.d.ts.map +1 -1
- package/node_modules/@pierre/diffs/dist/utils/annotationHelpers.d.ts +20 -0
- package/node_modules/@pierre/diffs/dist/utils/annotationHelpers.d.ts.map +1 -0
- package/node_modules/@pierre/diffs/dist/utils/annotationHelpers.js +29 -0
- package/node_modules/@pierre/diffs/dist/utils/annotationHelpers.js.map +1 -0
- package/node_modules/@pierre/diffs/dist/utils/applyLineTextWithNewline.d.ts +5 -0
- package/node_modules/@pierre/diffs/dist/utils/applyLineTextWithNewline.d.ts.map +1 -0
- package/node_modules/@pierre/diffs/dist/utils/applyLineTextWithNewline.js +11 -0
- package/node_modules/@pierre/diffs/dist/utils/applyLineTextWithNewline.js.map +1 -0
- package/node_modules/@pierre/diffs/dist/utils/areHunkDataEqual.js +1 -1
- package/node_modules/@pierre/diffs/dist/utils/areHunkDataEqual.js.map +1 -1
- package/node_modules/@pierre/diffs/dist/utils/areManagedSnapshotsEqual.d.ts +2 -2
- package/node_modules/@pierre/diffs/dist/utils/areManagedSnapshotsEqual.d.ts.map +1 -1
- package/node_modules/@pierre/diffs/dist/utils/areManagedSnapshotsEqual.js +6 -1
- package/node_modules/@pierre/diffs/dist/utils/areManagedSnapshotsEqual.js.map +1 -1
- package/node_modules/@pierre/diffs/dist/utils/awaitWithTimeout.d.ts +5 -0
- package/node_modules/@pierre/diffs/dist/utils/awaitWithTimeout.d.ts.map +1 -0
- package/node_modules/@pierre/diffs/dist/utils/awaitWithTimeout.js +15 -0
- package/node_modules/@pierre/diffs/dist/utils/awaitWithTimeout.js.map +1 -0
- package/node_modules/@pierre/diffs/dist/utils/cleanLastNewline.js +6 -1
- package/node_modules/@pierre/diffs/dist/utils/cleanLastNewline.js.map +1 -1
- package/node_modules/@pierre/diffs/dist/utils/cloneFileDiffMetadata.d.ts +7 -0
- package/node_modules/@pierre/diffs/dist/utils/cloneFileDiffMetadata.d.ts.map +1 -0
- package/node_modules/@pierre/diffs/dist/utils/cloneFileDiffMetadata.js +16 -0
- package/node_modules/@pierre/diffs/dist/utils/cloneFileDiffMetadata.js.map +1 -0
- package/node_modules/@pierre/diffs/dist/utils/computeEstimatedDiffHeights.d.ts +3 -1
- package/node_modules/@pierre/diffs/dist/utils/computeEstimatedDiffHeights.d.ts.map +1 -1
- package/node_modules/@pierre/diffs/dist/utils/computeEstimatedDiffHeights.js +8 -1
- package/node_modules/@pierre/diffs/dist/utils/computeEstimatedDiffHeights.js.map +1 -1
- package/node_modules/@pierre/diffs/dist/utils/computeFileOffsets.d.ts +21 -0
- package/node_modules/@pierre/diffs/dist/utils/computeFileOffsets.d.ts.map +1 -0
- package/node_modules/@pierre/diffs/dist/utils/computeFileOffsets.js +80 -0
- package/node_modules/@pierre/diffs/dist/utils/computeFileOffsets.js.map +1 -0
- package/node_modules/@pierre/diffs/dist/utils/createCodeViewHeaderFooterHostElement.d.ts +5 -0
- package/node_modules/@pierre/diffs/dist/utils/createCodeViewHeaderFooterHostElement.d.ts.map +1 -0
- package/node_modules/@pierre/diffs/dist/utils/createCodeViewHeaderFooterHostElement.js +19 -0
- package/node_modules/@pierre/diffs/dist/utils/createCodeViewHeaderFooterHostElement.js.map +1 -0
- package/node_modules/@pierre/diffs/dist/utils/createFileHeaderElement.d.ts.map +1 -1
- package/node_modules/@pierre/diffs/dist/utils/createFileHeaderElement.js +5 -1
- package/node_modules/@pierre/diffs/dist/utils/createFileHeaderElement.js.map +1 -1
- package/node_modules/@pierre/diffs/dist/utils/createTransformerWithState.js +9 -0
- package/node_modules/@pierre/diffs/dist/utils/createTransformerWithState.js.map +1 -1
- package/node_modules/@pierre/diffs/dist/utils/editSessionHunks.d.ts +66 -0
- package/node_modules/@pierre/diffs/dist/utils/editSessionHunks.d.ts.map +1 -0
- package/node_modules/@pierre/diffs/dist/utils/editSessionHunks.js +437 -0
- package/node_modules/@pierre/diffs/dist/utils/editSessionHunks.js.map +1 -0
- package/node_modules/@pierre/diffs/dist/utils/getDiffFileInput.d.ts +14 -0
- package/node_modules/@pierre/diffs/dist/utils/getDiffFileInput.d.ts.map +1 -0
- package/node_modules/@pierre/diffs/dist/utils/getDiffFileInput.js +24 -0
- package/node_modules/@pierre/diffs/dist/utils/getDiffFileInput.js.map +1 -0
- package/node_modules/@pierre/diffs/dist/utils/getDiffHunksRendererOptions.d.ts.map +1 -1
- package/node_modules/@pierre/diffs/dist/utils/getDiffHunksRendererOptions.js +3 -1
- package/node_modules/@pierre/diffs/dist/utils/getDiffHunksRendererOptions.js.map +1 -1
- package/node_modules/@pierre/diffs/dist/utils/getFileRendererOptions.d.ts.map +1 -1
- package/node_modules/@pierre/diffs/dist/utils/getFileRendererOptions.js +2 -1
- package/node_modules/@pierre/diffs/dist/utils/getFileRendererOptions.js.map +1 -1
- package/node_modules/@pierre/diffs/dist/utils/getFiletypeFromFileName.d.ts.map +1 -1
- package/node_modules/@pierre/diffs/dist/utils/getFiletypeFromFileName.js +2 -0
- package/node_modules/@pierre/diffs/dist/utils/getFiletypeFromFileName.js.map +1 -1
- package/node_modules/@pierre/diffs/dist/utils/getHunkSideBoundaries.d.ts +7 -0
- package/node_modules/@pierre/diffs/dist/utils/getHunkSideBoundaries.d.ts.map +1 -0
- package/node_modules/@pierre/diffs/dist/utils/getHunkSideBoundaries.js +12 -0
- package/node_modules/@pierre/diffs/dist/utils/getHunkSideBoundaries.js.map +1 -0
- package/node_modules/@pierre/diffs/dist/utils/getTotalLineCountFromHunks.d.ts.map +1 -1
- package/node_modules/@pierre/diffs/dist/utils/getTotalLineCountFromHunks.js +2 -1
- package/node_modules/@pierre/diffs/dist/utils/getTotalLineCountFromHunks.js.map +1 -1
- package/node_modules/@pierre/diffs/dist/utils/guardWebKitScrollDuringRebuild.d.ts +20 -0
- package/node_modules/@pierre/diffs/dist/utils/guardWebKitScrollDuringRebuild.d.ts.map +1 -0
- package/node_modules/@pierre/diffs/dist/utils/guardWebKitScrollDuringRebuild.js +34 -0
- package/node_modules/@pierre/diffs/dist/utils/guardWebKitScrollDuringRebuild.js.map +1 -0
- package/node_modules/@pierre/diffs/dist/utils/hydratePartialDiff.d.ts +10 -0
- package/node_modules/@pierre/diffs/dist/utils/hydratePartialDiff.d.ts.map +1 -0
- package/node_modules/@pierre/diffs/dist/utils/hydratePartialDiff.js +141 -0
- package/node_modules/@pierre/diffs/dist/utils/hydratePartialDiff.js.map +1 -0
- package/node_modules/@pierre/diffs/dist/utils/isGutterUtilityPath.d.ts +5 -0
- package/node_modules/@pierre/diffs/dist/utils/isGutterUtilityPath.d.ts.map +1 -0
- package/node_modules/@pierre/diffs/dist/utils/isGutterUtilityPath.js +12 -0
- package/node_modules/@pierre/diffs/dist/utils/isGutterUtilityPath.js.map +1 -0
- package/node_modules/@pierre/diffs/dist/utils/iterateOverDiff.d.ts.map +1 -1
- package/node_modules/@pierre/diffs/dist/utils/iterateOverDiff.js +20 -15
- package/node_modules/@pierre/diffs/dist/utils/iterateOverDiff.js.map +1 -1
- package/node_modules/@pierre/diffs/dist/utils/parseDiffFromFile.d.ts +1 -1
- package/node_modules/@pierre/diffs/dist/utils/parseDiffFromFile.d.ts.map +1 -1
- package/node_modules/@pierre/diffs/dist/utils/parseDiffFromFile.js +26 -5
- package/node_modules/@pierre/diffs/dist/utils/parseDiffFromFile.js.map +1 -1
- package/node_modules/@pierre/diffs/dist/utils/parseMergeConflictDiffFromFile.d.ts.map +1 -1
- package/node_modules/@pierre/diffs/dist/utils/parseMergeConflictDiffFromFile.js +9 -6
- package/node_modules/@pierre/diffs/dist/utils/parseMergeConflictDiffFromFile.js.map +1 -1
- package/node_modules/@pierre/diffs/dist/utils/parsePatchFiles.d.ts.map +1 -1
- package/node_modules/@pierre/diffs/dist/utils/parsePatchFiles.js +6 -3
- package/node_modules/@pierre/diffs/dist/utils/parsePatchFiles.js.map +1 -1
- package/node_modules/@pierre/diffs/dist/utils/platform.d.ts +14 -0
- package/node_modules/@pierre/diffs/dist/utils/platform.d.ts.map +1 -0
- package/node_modules/@pierre/diffs/dist/utils/platform.js +32 -0
- package/node_modules/@pierre/diffs/dist/utils/platform.js.map +1 -0
- package/node_modules/@pierre/diffs/dist/utils/realignChangeContent.d.ts +33 -0
- package/node_modules/@pierre/diffs/dist/utils/realignChangeContent.d.ts.map +1 -0
- package/node_modules/@pierre/diffs/dist/utils/realignChangeContent.js +148 -0
- package/node_modules/@pierre/diffs/dist/utils/realignChangeContent.js.map +1 -0
- package/node_modules/@pierre/diffs/dist/utils/renderDiffWithHighlighter.js +1 -1
- package/node_modules/@pierre/diffs/dist/utils/renderFileWithHighlighter.d.ts.map +1 -1
- package/node_modules/@pierre/diffs/dist/utils/renderFileWithHighlighter.js +5 -14
- package/node_modules/@pierre/diffs/dist/utils/renderFileWithHighlighter.js.map +1 -1
- package/node_modules/@pierre/diffs/dist/utils/resolveRegion.d.ts.map +1 -1
- package/node_modules/@pierre/diffs/dist/utils/resolveRegion.js +18 -2
- package/node_modules/@pierre/diffs/dist/utils/resolveRegion.js.map +1 -1
- package/node_modules/@pierre/diffs/dist/utils/shouldUseTokenTransformer.d.ts +7 -3
- package/node_modules/@pierre/diffs/dist/utils/shouldUseTokenTransformer.d.ts.map +1 -1
- package/node_modules/@pierre/diffs/dist/utils/shouldUseTokenTransformer.js +1 -1
- package/node_modules/@pierre/diffs/dist/utils/shouldUseTokenTransformer.js.map +1 -1
- package/node_modules/@pierre/diffs/dist/utils/updateDiffHunks.d.ts +24 -0
- package/node_modules/@pierre/diffs/dist/utils/updateDiffHunks.d.ts.map +1 -0
- package/node_modules/@pierre/diffs/dist/utils/updateDiffHunks.js +236 -0
- package/node_modules/@pierre/diffs/dist/utils/updateDiffHunks.js.map +1 -0
- package/node_modules/@pierre/diffs/dist/utils/virtualDiffLayout.d.ts +43 -2
- package/node_modules/@pierre/diffs/dist/utils/virtualDiffLayout.d.ts.map +1 -1
- package/node_modules/@pierre/diffs/dist/utils/virtualDiffLayout.js +107 -5
- package/node_modules/@pierre/diffs/dist/utils/virtualDiffLayout.js.map +1 -1
- package/node_modules/@pierre/diffs/dist/worker/WorkerPoolManager.d.ts +9 -3
- package/node_modules/@pierre/diffs/dist/worker/WorkerPoolManager.d.ts.map +1 -1
- package/node_modules/@pierre/diffs/dist/worker/WorkerPoolManager.js +86 -18
- package/node_modules/@pierre/diffs/dist/worker/WorkerPoolManager.js.map +1 -1
- package/node_modules/@pierre/diffs/dist/worker/index.d.ts +2 -2
- package/node_modules/@pierre/diffs/dist/worker/types.d.ts +11 -1
- package/node_modules/@pierre/diffs/dist/worker/types.d.ts.map +1 -1
- package/node_modules/@pierre/diffs/dist/worker/wasm-B9ZqxnKj.js.map +1 -1
- package/node_modules/@pierre/diffs/dist/worker/worker-portable.js +116 -95
- package/node_modules/@pierre/diffs/dist/worker/worker-portable.js.map +1 -1
- package/node_modules/@pierre/diffs/dist/worker/worker.js +102 -80
- package/node_modules/@pierre/diffs/dist/worker/worker.js.map +1 -1
- package/node_modules/@pierre/diffs/node_modules/@pierre/theme/LICENSE +189 -21
- package/node_modules/@pierre/diffs/node_modules/@pierre/theme/NOTICE.md +32 -0
- package/node_modules/@pierre/diffs/node_modules/@pierre/theme/package.json +3 -2
- package/node_modules/@pierre/diffs/node_modules/@pierre/theming/LICENSE.md +189 -0
- package/node_modules/@pierre/diffs/node_modules/@pierre/theming/README.md +9 -0
- package/node_modules/@pierre/diffs/node_modules/@pierre/theming/package.json +5 -5
- package/node_modules/@pierre/diffs/node_modules/@shikijs/core/dist/index.d.mts +0 -1
- package/node_modules/@pierre/diffs/node_modules/@shikijs/core/dist/index.mjs +22 -3
- package/node_modules/@pierre/diffs/node_modules/@shikijs/core/package.json +4 -4
- package/node_modules/@pierre/diffs/node_modules/@shikijs/engine-javascript/dist/{engine-compile-CMRQUZTL.d.mts → engine-compile-Bdn9ihA2.d.mts} +0 -1
- package/node_modules/@pierre/diffs/node_modules/@shikijs/engine-javascript/dist/engine-compile.d.mts +1 -1
- package/node_modules/@pierre/diffs/node_modules/@shikijs/engine-javascript/dist/engine-raw.d.mts +0 -1
- package/node_modules/@pierre/diffs/node_modules/@shikijs/engine-javascript/dist/index.d.mts +1 -1
- package/node_modules/@pierre/diffs/node_modules/@shikijs/engine-javascript/package.json +2 -2
- package/node_modules/@pierre/diffs/node_modules/@shikijs/engine-oniguruma/package.json +2 -2
- package/node_modules/@pierre/diffs/node_modules/@shikijs/primitive/dist/index.d.mts +0 -1
- package/node_modules/@pierre/diffs/node_modules/@shikijs/primitive/package.json +3 -3
- package/node_modules/@pierre/diffs/node_modules/@shikijs/themes/dist/catppuccin-frappe.mjs +1 -1
- package/node_modules/@pierre/diffs/node_modules/@shikijs/themes/dist/catppuccin-latte.mjs +1 -1
- package/node_modules/@pierre/diffs/node_modules/@shikijs/themes/dist/catppuccin-macchiato.mjs +1 -1
- package/node_modules/@pierre/diffs/node_modules/@shikijs/themes/dist/catppuccin-mocha.mjs +1 -1
- package/node_modules/@pierre/diffs/node_modules/@shikijs/themes/dist/kanagawa-dragon.mjs +1 -1
- package/node_modules/@pierre/diffs/node_modules/@shikijs/themes/dist/kanagawa-lotus.mjs +1 -1
- package/node_modules/@pierre/diffs/node_modules/@shikijs/themes/dist/kanagawa-wave.mjs +1 -1
- package/node_modules/@pierre/diffs/node_modules/@shikijs/themes/dist/monokai.mjs +1 -1
- package/node_modules/@pierre/diffs/node_modules/@shikijs/themes/dist/red.mjs +1 -1
- package/node_modules/@pierre/diffs/node_modules/@shikijs/themes/dist/rose-pine-dawn.mjs +1 -1
- package/node_modules/@pierre/diffs/node_modules/@shikijs/themes/dist/rose-pine-moon.mjs +1 -1
- package/node_modules/@pierre/diffs/node_modules/@shikijs/themes/dist/rose-pine.mjs +1 -1
- package/node_modules/@pierre/diffs/node_modules/@shikijs/themes/dist/solarized-dark.mjs +1 -1
- package/node_modules/@pierre/diffs/node_modules/@shikijs/themes/dist/solarized-light.mjs +1 -1
- package/node_modules/@pierre/diffs/node_modules/@shikijs/themes/package.json +3 -3
- package/node_modules/@pierre/diffs/node_modules/@shikijs/transformers/dist/index.d.mts +0 -1
- package/node_modules/@pierre/diffs/node_modules/@shikijs/transformers/dist/index.mjs +2 -1
- package/node_modules/@pierre/diffs/node_modules/@shikijs/transformers/package.json +3 -3
- package/node_modules/@pierre/diffs/node_modules/@shikijs/types/dist/index.d.mts +0 -1
- package/node_modules/@pierre/diffs/node_modules/@shikijs/types/package.json +2 -2
- package/node_modules/@pierre/diffs/node_modules/shiki/dist/bundle-full.d.mts +4 -7
- package/node_modules/@pierre/diffs/node_modules/shiki/dist/bundle-full.mjs +3 -19
- package/node_modules/@pierre/diffs/node_modules/shiki/dist/bundle-web.d.mts +5 -6
- package/node_modules/@pierre/diffs/node_modules/shiki/dist/bundle-web.mjs +7 -0
- package/node_modules/@pierre/diffs/node_modules/shiki/dist/core-CaxrMD1A.d.mts +1 -0
- package/node_modules/@pierre/diffs/node_modules/shiki/dist/core.d.mts +1 -0
- package/node_modules/@pierre/diffs/node_modules/shiki/dist/index.d.mts +3 -9
- package/node_modules/@pierre/diffs/node_modules/shiki/dist/index.mjs +3 -24
- package/node_modules/@pierre/diffs/node_modules/shiki/dist/langs/actionscript.d.mts +1 -0
- package/node_modules/@pierre/diffs/node_modules/shiki/dist/langs/actionscript.mjs +1 -0
- package/node_modules/@pierre/diffs/node_modules/shiki/dist/langs/ahk.d.mts +1 -0
- package/node_modules/@pierre/diffs/node_modules/shiki/dist/langs/ahk.mjs +1 -0
- package/node_modules/@pierre/diffs/node_modules/shiki/dist/langs/ahk1.d.mts +1 -0
- package/node_modules/@pierre/diffs/node_modules/shiki/dist/langs/ahk1.mjs +1 -0
- package/node_modules/@pierre/diffs/node_modules/shiki/dist/langs/ahk2.d.mts +1 -0
- package/node_modules/@pierre/diffs/node_modules/shiki/dist/langs/ahk2.mjs +1 -0
- package/node_modules/@pierre/diffs/node_modules/shiki/dist/langs/as3.d.mts +1 -0
- package/node_modules/@pierre/diffs/node_modules/shiki/dist/langs/as3.mjs +1 -0
- package/node_modules/@pierre/diffs/node_modules/shiki/dist/langs/chapel.d.mts +1 -0
- package/node_modules/@pierre/diffs/node_modules/shiki/dist/langs/chapel.mjs +1 -0
- package/node_modules/@pierre/diffs/node_modules/shiki/dist/langs/chpl.d.mts +1 -0
- package/node_modules/@pierre/diffs/node_modules/shiki/dist/langs/chpl.mjs +1 -0
- package/node_modules/@pierre/diffs/node_modules/shiki/dist/langs/justfile.d.mts +1 -0
- package/node_modules/@pierre/diffs/node_modules/shiki/dist/langs/justfile.mjs +1 -0
- package/node_modules/@pierre/diffs/node_modules/shiki/dist/langs/nsis.d.mts +1 -0
- package/node_modules/@pierre/diffs/node_modules/shiki/dist/langs/nsis.mjs +1 -0
- package/node_modules/@pierre/diffs/node_modules/shiki/dist/langs/org.d.mts +1 -0
- package/node_modules/@pierre/diffs/node_modules/shiki/dist/langs/org.mjs +1 -0
- package/node_modules/@pierre/diffs/node_modules/shiki/dist/langs/pwsh.d.mts +1 -0
- package/node_modules/@pierre/diffs/node_modules/shiki/dist/langs/pwsh.mjs +1 -0
- package/node_modules/@pierre/diffs/node_modules/shiki/dist/langs/rbs.d.mts +1 -0
- package/node_modules/@pierre/diffs/node_modules/shiki/dist/langs/rbs.mjs +1 -0
- package/node_modules/@pierre/diffs/node_modules/shiki/dist/langs/ruby-signature.d.mts +1 -0
- package/node_modules/@pierre/diffs/node_modules/shiki/dist/langs/ruby-signature.mjs +1 -0
- package/node_modules/@pierre/diffs/node_modules/shiki/dist/langs/smithy.d.mts +1 -0
- package/node_modules/@pierre/diffs/node_modules/shiki/dist/langs/smithy.mjs +1 -0
- package/node_modules/@pierre/diffs/node_modules/shiki/dist/langs-B38xGbib.d.mts +1 -0
- package/node_modules/@pierre/diffs/node_modules/shiki/dist/langs-bundle-full-B4n9xYHw.d.mts +13 -0
- package/node_modules/@pierre/diffs/node_modules/shiki/dist/{langs-bundle-full-4noeO3oH.mjs → langs-bundle-full-xQVO1Cek.mjs} +48 -5
- package/node_modules/@pierre/diffs/node_modules/shiki/dist/langs.d.mts +2 -1
- package/node_modules/@pierre/diffs/node_modules/shiki/dist/langs.mjs +1 -1
- package/node_modules/@pierre/diffs/node_modules/shiki/dist/{themes-NeZbxnKu.d.mts → themes-BKdFAJ1v.d.mts} +0 -1
- package/node_modules/@pierre/diffs/node_modules/shiki/dist/themes.d.mts +1 -1
- package/node_modules/@pierre/diffs/node_modules/shiki/dist/types.d.mts +3 -3
- package/node_modules/@pierre/diffs/node_modules/shiki/package.json +10 -10
- package/node_modules/@pierre/diffs/package.json +13 -4
- package/node_modules/@shikijs/langs/dist/actionscript-3.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/actionscript.d.mts +3 -0
- package/node_modules/@shikijs/langs/dist/actionscript.mjs +2 -0
- package/node_modules/@shikijs/langs/dist/ahk.d.mts +3 -0
- package/node_modules/@shikijs/langs/dist/ahk.mjs +5 -0
- package/node_modules/@shikijs/langs/dist/ahk1.d.mts +3 -0
- package/node_modules/@shikijs/langs/dist/ahk1.mjs +2 -0
- package/node_modules/@shikijs/langs/dist/ahk2.d.mts +3 -0
- package/node_modules/@shikijs/langs/dist/ahk2.mjs +5 -0
- package/node_modules/@shikijs/langs/dist/apex.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/as3.d.mts +3 -0
- package/node_modules/@shikijs/langs/dist/as3.mjs +2 -0
- package/node_modules/@shikijs/langs/dist/asciidoc.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/bat.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/bird2.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/bsl.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/c3.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/chapel.d.mts +3 -0
- package/node_modules/@shikijs/langs/dist/chapel.mjs +8 -0
- package/node_modules/@shikijs/langs/dist/chpl.d.mts +3 -0
- package/node_modules/@shikijs/langs/dist/chpl.mjs +2 -0
- package/node_modules/@shikijs/langs/dist/clarity.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/cmd.mjs +2 -2
- package/node_modules/@shikijs/langs/dist/coq.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/cpp-macro.mjs +1 -3
- package/node_modules/@shikijs/langs/dist/cpp.mjs +1 -3
- package/node_modules/@shikijs/langs/dist/emacs-lisp.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/gdscript.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/hack.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/haxe.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/hxml.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/index.mjs +14 -0
- package/node_modules/@shikijs/langs/dist/just.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/justfile.d.mts +3 -0
- package/node_modules/@shikijs/langs/dist/justfile.mjs +2 -0
- package/node_modules/@shikijs/langs/dist/llvm.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/luau.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/mdc.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/mermaid.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/mojo.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/moonbit.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/move.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/nsis.d.mts +3 -0
- package/node_modules/@shikijs/langs/dist/nsis.mjs +5 -0
- package/node_modules/@shikijs/langs/dist/nushell.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/org.d.mts +3 -0
- package/node_modules/@shikijs/langs/dist/org.mjs +100 -0
- package/node_modules/@shikijs/langs/dist/powershell.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/prisma.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/pwsh.d.mts +3 -0
- package/node_modules/@shikijs/langs/dist/pwsh.mjs +2 -0
- package/node_modules/@shikijs/langs/dist/r.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/rbs.d.mts +3 -0
- package/node_modules/@shikijs/langs/dist/rbs.mjs +5 -0
- package/node_modules/@shikijs/langs/dist/ruby-signature.d.mts +3 -0
- package/node_modules/@shikijs/langs/dist/ruby-signature.mjs +2 -0
- package/node_modules/@shikijs/langs/dist/scala.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/smalltalk.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/smithy.d.mts +3 -0
- package/node_modules/@shikijs/langs/dist/smithy.mjs +5 -0
- package/node_modules/@shikijs/langs/dist/solidity.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/surrealql.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/swift.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/system-verilog.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/twig.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/typst.mjs +116 -1
- package/node_modules/@shikijs/langs/dist/v.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/vb.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/verilog.mjs +1 -1
- package/node_modules/@shikijs/langs/dist/vue.mjs +1 -1
- package/node_modules/@shikijs/langs/node_modules/@shikijs/types/dist/index.d.mts +0 -1
- package/node_modules/@shikijs/langs/node_modules/@shikijs/types/package.json +2 -2
- package/node_modules/@shikijs/langs/package.json +18 -4
- package/node_modules/typebox/build/format/date.d.mts +1 -1
- package/node_modules/typebox/build/format/date.mjs +1 -1
- package/node_modules/typebox/build/format/date_time.d.mts +2 -2
- package/node_modules/typebox/build/format/date_time.mjs +3 -3
- package/node_modules/typebox/build/format/email.d.mts +1 -1
- package/node_modules/typebox/build/format/email.mjs +2 -2
- package/node_modules/typebox/build/format/hostname.mjs +2 -10
- package/node_modules/typebox/build/format/idn_email.d.mts +1 -1
- package/node_modules/typebox/build/format/idn_email.mjs +3 -3
- package/node_modules/typebox/build/format/idn_hostname.d.mts +1 -0
- package/node_modules/typebox/build/format/idn_hostname.mjs +3 -11
- package/node_modules/typebox/build/format/idna/format/bidi.d.mts +3 -0
- package/node_modules/typebox/build/format/idna/format/bidi.mjs +98 -0
- package/node_modules/typebox/build/format/idna/format/puny.d.mts +3 -0
- package/node_modules/typebox/build/format/idna/format/puny.mjs +144 -0
- package/node_modules/typebox/build/format/idna/hostname.d.mts +1 -0
- package/node_modules/typebox/build/format/idna/hostname.mjs +16 -0
- package/node_modules/typebox/build/format/idna/idn-hostname.d.mts +1 -0
- package/node_modules/typebox/build/format/idna/idn-hostname.mjs +41 -0
- package/node_modules/typebox/build/format/idna/index.d.mts +2 -0
- package/node_modules/typebox/build/format/idna/index.mjs +2 -0
- package/node_modules/typebox/build/format/idna/label/ascii.d.mts +1 -0
- package/node_modules/typebox/build/format/idna/label/ascii.mjs +9 -0
- package/node_modules/typebox/build/format/idna/label/puny.d.mts +1 -0
- package/node_modules/typebox/build/format/idna/label/puny.mjs +28 -0
- package/node_modules/typebox/build/format/idna/label/unicode.d.mts +1 -0
- package/node_modules/typebox/build/format/idna/label/unicode.mjs +106 -0
- package/node_modules/typebox/build/format/idna/pattern/pattern.d.mts +30 -0
- package/node_modules/typebox/build/format/idna/pattern/pattern.mjs +70 -0
- package/node_modules/typebox/build/format/ipv4.d.mts +0 -1
- package/node_modules/typebox/build/format/ipv4.mjs +2 -32
- package/node_modules/typebox/build/format/ipv6.mjs +2 -61
- package/node_modules/typebox/build/format/iri.d.mts +2 -2
- package/node_modules/typebox/build/format/iri.mjs +26 -8
- package/node_modules/typebox/build/format/iri_reference.d.mts +2 -2
- package/node_modules/typebox/build/format/iri_reference.mjs +9 -55
- package/node_modules/typebox/build/format/regex.d.mts +1 -2
- package/node_modules/typebox/build/format/regex.mjs +2 -6
- package/node_modules/typebox/build/format/time.d.mts +2 -2
- package/node_modules/typebox/build/format/time.mjs +19 -14
- package/node_modules/typebox/build/format/uri.d.mts +1 -1
- package/node_modules/typebox/build/format/uri.mjs +3 -130
- package/node_modules/typebox/build/format/uri_reference.d.mts +1 -1
- package/node_modules/typebox/build/format/uri_reference.mjs +2 -3
- package/node_modules/typebox/build/format/uri_template.d.mts +2 -3
- package/node_modules/typebox/build/format/uri_template.mjs +4 -5
- package/node_modules/typebox/build/format/url.d.mts +3 -3
- package/node_modules/typebox/build/format/url.mjs +4 -5
- package/node_modules/typebox/build/guard/emit.d.mts +3 -1
- package/node_modules/typebox/build/guard/emit.mjs +12 -5
- package/node_modules/typebox/build/guard/guard.d.mts +8 -2
- package/node_modules/typebox/build/guard/guard.mjs +25 -4
- package/node_modules/typebox/build/guard/string.d.mts +2 -2
- package/node_modules/typebox/build/guard/string.mjs +7 -7
- package/node_modules/typebox/build/schema/engine/_context.mjs +3 -3
- package/node_modules/typebox/build/schema/engine/_functions.mjs +1 -2
- package/node_modules/typebox/build/schema/engine/_regexp.d.mts +2 -0
- package/node_modules/typebox/build/schema/engine/_regexp.mjs +4 -0
- package/node_modules/typebox/build/schema/engine/_stack.mjs +12 -13
- package/node_modules/typebox/build/schema/engine/additionalItems.mjs +17 -7
- package/node_modules/typebox/build/schema/engine/additionalProperties.mjs +4 -3
- package/node_modules/typebox/build/schema/engine/contains.mjs +18 -6
- package/node_modules/typebox/build/schema/engine/enum.mjs +1 -1
- package/node_modules/typebox/build/schema/engine/items.mjs +26 -6
- package/node_modules/typebox/build/schema/engine/maxContains.mjs +3 -3
- package/node_modules/typebox/build/schema/engine/minContains.mjs +14 -4
- package/node_modules/typebox/build/schema/engine/not.mjs +4 -2
- package/node_modules/typebox/build/schema/engine/oneOf.mjs +7 -6
- package/node_modules/typebox/build/schema/engine/pattern.mjs +3 -2
- package/node_modules/typebox/build/schema/engine/patternProperties.mjs +4 -3
- package/node_modules/typebox/build/schema/engine/ref.mjs +1 -7
- package/node_modules/typebox/build/schema/engine/schema.mjs +13 -4
- package/node_modules/typebox/build/schema/engine/type.mjs +1 -1
- package/node_modules/typebox/build/schema/resolve/resolve.d.mts +4 -1
- package/node_modules/typebox/build/schema/resolve/resolve.mjs +202 -1
- package/node_modules/typebox/build/schema/static/propertyNames.d.mts +5 -0
- package/node_modules/typebox/build/schema/static/propertyNames.mjs +3 -0
- package/node_modules/typebox/build/schema/static/schema.d.mts +3 -0
- package/node_modules/typebox/build/schema/types/index.d.mts +0 -2
- package/node_modules/typebox/build/schema/types/index.mjs +0 -2
- package/node_modules/typebox/build/system/memory/clone.mjs +14 -11
- package/node_modules/typebox/build/system/memory/discard.mjs +6 -5
- package/node_modules/typebox/build/system/settings/settings.d.mts +9 -0
- package/node_modules/typebox/build/system/settings/settings.mjs +2 -0
- package/node_modules/typebox/build/type/engine/call/distribute_arguments.d.mts +6 -1
- package/node_modules/typebox/build/type/engine/call/distribute_arguments.mjs +16 -3
- package/node_modules/typebox/build/type/engine/call/instantiate.mjs +34 -4
- package/node_modules/typebox/build/type/engine/evaluate/broaden.d.mts +5 -5
- package/node_modules/typebox/build/type/engine/evaluate/broaden.mjs +20 -26
- package/node_modules/typebox/build/type/engine/evaluate/compare.d.mts +6 -10
- package/node_modules/typebox/build/type/engine/evaluate/compare.mjs +9 -13
- package/node_modules/typebox/build/type/engine/evaluate/composite.d.mts +7 -4
- package/node_modules/typebox/build/type/engine/evaluate/composite.mjs +12 -19
- package/node_modules/typebox/build/type/engine/evaluate/distribute.d.mts +4 -20
- package/node_modules/typebox/build/type/engine/evaluate/distribute.mjs +8 -20
- package/node_modules/typebox/build/type/engine/evaluate/evaluate.d.mts +4 -4
- package/node_modules/typebox/build/type/engine/evaluate/evaluate.mjs +11 -8
- package/node_modules/typebox/build/type/engine/evaluate/flatten.d.mts +1 -1
- package/node_modules/typebox/build/type/engine/evaluate/flatten.mjs +3 -4
- package/node_modules/typebox/build/type/engine/evaluate/narrow.d.mts +17 -2
- package/node_modules/typebox/build/type/engine/evaluate/narrow.mjs +26 -6
- package/node_modules/typebox/build/type/engine/exclude/operation.mjs +3 -4
- package/node_modules/typebox/build/type/engine/extract/operation.d.mts +1 -1
- package/node_modules/typebox/build/type/engine/extract/operation.mjs +3 -4
- package/node_modules/typebox/build/type/engine/priority/priority.d.mts +2 -2
- package/node_modules/typebox/build/type/engine/priority/priority.mjs +3 -4
- package/node_modules/typebox/build/type/script/mapping.d.mts +32 -29
- package/node_modules/typebox/build/type/script/mapping.mjs +18 -25
- package/node_modules/typebox/build/type/script/parser.d.mts +19 -25
- package/node_modules/typebox/build/type/script/parser.mjs +27 -23
- package/node_modules/typebox/build/value/errors/errors.d.mts +2 -2
- package/node_modules/typebox/build/value/errors/errors.mjs +1 -1
- package/node_modules/typebox/package.json +27 -27
- package/node_modules/typebox/readme.md +79 -82
- package/package.json +9 -8
- package/node_modules/@pierre/diffs/dist/utils/iterateOverFile.d.ts +0 -50
- package/node_modules/@pierre/diffs/dist/utils/iterateOverFile.d.ts.map +0 -1
- package/node_modules/@pierre/diffs/dist/utils/iterateOverFile.js +0 -49
- package/node_modules/@pierre/diffs/dist/utils/iterateOverFile.js.map +0 -1
- package/node_modules/@pierre/diffs/node_modules/shiki/dist/core-BVVgDSdq.d.mts +0 -1
- package/node_modules/@pierre/diffs/node_modules/shiki/dist/langs-BVVgDSdq.d.mts +0 -1
- package/node_modules/@pierre/diffs/node_modules/shiki/dist/langs-bundle-full-WSWgUeqW.d.mts +0 -14
- package/node_modules/typebox/build/format/_idna.d.mts +0 -2
- package/node_modules/typebox/build/format/_idna.mjs +0 -246
- package/node_modules/typebox/build/format/_puny.d.mts +0 -1
- package/node_modules/typebox/build/format/_puny.mjs +0 -77
- package/node_modules/typebox/build/schema/resolve/ref.d.mts +0 -3
- package/node_modules/typebox/build/schema/resolve/ref.mjs +0 -146
- package/node_modules/typebox/build/schema/types/contentEncoding.d.mts +0 -9
- package/node_modules/typebox/build/schema/types/contentEncoding.mjs +0 -13
- package/node_modules/typebox/build/schema/types/contentMediaType.d.mts +0 -9
- package/node_modules/typebox/build/schema/types/contentMediaType.mjs +0 -13
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
// deno-fmt-ignore-file
|
|
2
|
+
// -------------------------------------------------------------------
|
|
3
|
+
// Validation Rules
|
|
4
|
+
// -------------------------------------------------------------------
|
|
5
|
+
export const RE_RULE_HYPHEN_PLACEMENT = /^(?!-).*(?<!-)$/;
|
|
6
|
+
export const RE_RULE_NOT_RESERVED_ACE = /^(?!..--)/;
|
|
7
|
+
export const RE_ASCII_LDH = /^[a-zA-Z0-9-]*$/;
|
|
8
|
+
// -------------------------------------------------------------------
|
|
9
|
+
// ASCII & Encoding
|
|
10
|
+
// -------------------------------------------------------------------
|
|
11
|
+
export const RE_ASCII = /^\p{ASCII}*$/u;
|
|
12
|
+
export const RE_NON_ASCII = /[^\p{ASCII}]/u;
|
|
13
|
+
// -------------------------------------------------------------------
|
|
14
|
+
// Structural & Unicode Controls
|
|
15
|
+
// -------------------------------------------------------------------
|
|
16
|
+
export const RE_HIGH_SURROGATE = /[\u{d800}-\u{dbff}]/u;
|
|
17
|
+
export const RE_REGIONAL_INDICATOR = /[\u{1f1e6}-\u{1f1ff}]/u;
|
|
18
|
+
export const RE_VARIATION_SELECTOR = /[\u{fe00}-\u{fe0f}]/u;
|
|
19
|
+
export const RE_ZERO_WIDTH_JOINER = /\u{200d}/u;
|
|
20
|
+
// -------------------------------------------------------------------
|
|
21
|
+
// Numbers & Digits
|
|
22
|
+
// -------------------------------------------------------------------
|
|
23
|
+
export const RE_ASCII_DIGIT = /[0-9]/;
|
|
24
|
+
export const RE_ARABIC_INDIC_DIGIT = /[\u{0660}-\u{0669}]/u;
|
|
25
|
+
export const RE_EXT_ARABIC_INDIC_DIGIT = /[\u{06f0}-\u{06f9}]/u;
|
|
26
|
+
// -------------------------------------------------------------------
|
|
27
|
+
// Separators
|
|
28
|
+
// -------------------------------------------------------------------
|
|
29
|
+
export const RE_COMMON_SEPARATOR = /[\u{002e}\u{002c}\u{003a}\u{002f}]/u;
|
|
30
|
+
export const RE_EUROPEAN_SEPARATOR = /[\u{002d}\u{002b}]/u;
|
|
31
|
+
// -------------------------------------------------------------------
|
|
32
|
+
// General Categories
|
|
33
|
+
// -------------------------------------------------------------------
|
|
34
|
+
export const RE_MARK_NONSPACING = /\p{Mn}/u;
|
|
35
|
+
export const RE_MARK_SPACING_COMBINING = /\p{Mc}/u;
|
|
36
|
+
export const RE_MARK_ENCLOSING = /\p{Me}/u;
|
|
37
|
+
export const RE_COMBINING_MARK = /[\p{Mn}\p{Mc}\p{Me}]/u;
|
|
38
|
+
export const RE_LETTER = /\p{L}/u;
|
|
39
|
+
export const RE_NUMBER_DECIMAL = /\p{Nd}/u;
|
|
40
|
+
// -------------------------------------------------------------------
|
|
41
|
+
// Scripts
|
|
42
|
+
// -------------------------------------------------------------------
|
|
43
|
+
export const RE_SCRIPT_GREEK = /\p{Script=Greek}/u;
|
|
44
|
+
export const RE_SCRIPT_HEBREW = /\p{Script=Hebrew}/u;
|
|
45
|
+
export const RE_SCRIPT_JAPANESE = /[\p{Script=Hiragana}\p{Script=Katakana}\p{Script=Han}]/u;
|
|
46
|
+
export const RE_SCRIPT_ARABIC_LETTER = /[\p{Script=Arabic}\p{Script=Syriac}\p{Script=Thaana}\p{Script=Mandaic}]/u;
|
|
47
|
+
// -------------------------------------------------------------------
|
|
48
|
+
// RFC Specifications & Context Exceptions
|
|
49
|
+
// -------------------------------------------------------------------
|
|
50
|
+
export const RE_VIRAMA = /[\u{094d}\u{09cd}\u{0a4d}\u{0acd}\u{0b4d}\u{0bcd}\u{0c4d}\u{0ccd}\u{0d3b}\u{0d3c}\u{0d4d}\u{0dca}\u{1b44}\u{1baa}\u{1bab}\u{a9c0}\u{11046}\u{1107f}\u{110b9}\u{11133}\u{11134}\u{111c0}\u{11235}\u{1134d}\u{11442}\u{114c2}\u{115bf}\u{1163f}\u{116b6}\u{11c3f}\u{11d44}\u{11d45}]/u;
|
|
51
|
+
export const RE_RFC5892_DISALLOWED = /[\u{0640}\u{07fa}\u{302e}\u{302f}\u{3031}\u{3032}\u{3033}\u{3034}\u{3035}\u{303b}]/u;
|
|
52
|
+
export const RE_CONTEXTO_EXCEPTIONS = /[\u{00b7}\u{0375}\u{05f3}\u{05f4}\u{200c}\u{200d}\u{30fb}]/u;
|
|
53
|
+
export const RE_PVALID_EXCEPTIONS = /[\u{00df}\u{03c2}\u{06fd}\u{06fe}\u{0f0b}\u{3007}]/u;
|
|
54
|
+
// -------------------------------------------------------------------
|
|
55
|
+
// Composite Patterns
|
|
56
|
+
// -------------------------------------------------------------------
|
|
57
|
+
export const RE_EUROPEAN_NUMBER = new RegExp([
|
|
58
|
+
RE_ASCII_DIGIT,
|
|
59
|
+
RE_EXT_ARABIC_INDIC_DIGIT
|
|
60
|
+
].map((regexp) => regexp.source).join('|'), 'u');
|
|
61
|
+
export const RE_PERMITTED_CATEGORY = new RegExp([
|
|
62
|
+
RE_LETTER,
|
|
63
|
+
RE_EUROPEAN_SEPARATOR,
|
|
64
|
+
RE_COMMON_SEPARATOR,
|
|
65
|
+
RE_NUMBER_DECIMAL,
|
|
66
|
+
RE_MARK_NONSPACING,
|
|
67
|
+
RE_MARK_SPACING_COMBINING,
|
|
68
|
+
RE_CONTEXTO_EXCEPTIONS,
|
|
69
|
+
RE_PVALID_EXCEPTIONS
|
|
70
|
+
].map((regexp) => regexp.source).join('|'), 'u');
|
|
@@ -1,38 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
// Ranged Fast Path
|
|
3
|
-
// ------------------------------------------------------------------
|
|
4
|
-
/* Returns true if the value is a IPV4 address from index range offsets */
|
|
5
|
-
export function IsIPv4Internal(value, start, end) {
|
|
6
|
-
let dots = 0;
|
|
7
|
-
let num = 0;
|
|
8
|
-
let digits = 0;
|
|
9
|
-
let leading = 0;
|
|
10
|
-
for (let i = start; i < end; i++) {
|
|
11
|
-
const ch = value.charCodeAt(i);
|
|
12
|
-
if (ch === 46) { // '.'
|
|
13
|
-
if (digits === 0 || num > 255 || (leading === 48 && digits > 1))
|
|
14
|
-
return false;
|
|
15
|
-
dots++;
|
|
16
|
-
num = 0;
|
|
17
|
-
digits = 0;
|
|
18
|
-
leading = 0;
|
|
19
|
-
}
|
|
20
|
-
else if (ch >= 48 && ch <= 57) { // '0'-'9'
|
|
21
|
-
if (digits === 0)
|
|
22
|
-
leading = ch;
|
|
23
|
-
num = num * 10 + (ch - 48);
|
|
24
|
-
digits++;
|
|
25
|
-
}
|
|
26
|
-
else {
|
|
27
|
-
return false;
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
return dots === 3 && digits > 0 && num <= 255 && !(leading === 48 && digits > 1);
|
|
31
|
-
}
|
|
1
|
+
const IPv4 = /^(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$/;
|
|
32
2
|
/**
|
|
33
3
|
* Returns true if the value is a IPV4 address
|
|
34
4
|
* @specification http://tools.ietf.org/html/rfc2673#section-3.2
|
|
35
5
|
*/
|
|
36
6
|
export function IsIPv4(value) {
|
|
37
|
-
return
|
|
7
|
+
return IPv4.test(value);
|
|
38
8
|
}
|
|
@@ -1,67 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
function InRange(ch) {
|
|
3
|
-
return (ch >= 48 && ch <= 57) || // 0-9
|
|
4
|
-
(ch >= 65 && ch <= 70) || // A-F
|
|
5
|
-
(ch >= 97 && ch <= 102); // a-f
|
|
6
|
-
}
|
|
1
|
+
const IPv6 = /^(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:)?[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)$/i;
|
|
7
2
|
/**
|
|
8
3
|
* Returns true if the value is an IPv6 address
|
|
9
4
|
* @specification http://tools.ietf.org/html/rfc2373#section-2.2
|
|
10
5
|
*/
|
|
11
6
|
export function IsIPv6(value) {
|
|
12
|
-
|
|
13
|
-
if (length === 0)
|
|
14
|
-
return false;
|
|
15
|
-
let groups = 0;
|
|
16
|
-
let compressed = false;
|
|
17
|
-
let i = 0;
|
|
18
|
-
// handle leading '::'
|
|
19
|
-
if (value.charCodeAt(0) === 58 && value.charCodeAt(1) === 58) {
|
|
20
|
-
if (length === 2)
|
|
21
|
-
return true; // '::' is valid
|
|
22
|
-
compressed = true;
|
|
23
|
-
i = 2;
|
|
24
|
-
}
|
|
25
|
-
while (i < length) {
|
|
26
|
-
// read hex digits
|
|
27
|
-
let digits = 0;
|
|
28
|
-
const start = i;
|
|
29
|
-
while (i < length && InRange(value.charCodeAt(i))) {
|
|
30
|
-
i++;
|
|
31
|
-
digits++;
|
|
32
|
-
}
|
|
33
|
-
if (digits === 0)
|
|
34
|
-
return false;
|
|
35
|
-
const next = value.charCodeAt(i);
|
|
36
|
-
// check for embedded IPv4 at the end
|
|
37
|
-
if (next === 46) { // '.'
|
|
38
|
-
if (!IsIPv4Internal(value, start, length))
|
|
39
|
-
return false;
|
|
40
|
-
groups += 2;
|
|
41
|
-
i = length;
|
|
42
|
-
break;
|
|
43
|
-
}
|
|
44
|
-
if (digits > 4)
|
|
45
|
-
return false;
|
|
46
|
-
groups++;
|
|
47
|
-
if (i === length)
|
|
48
|
-
break;
|
|
49
|
-
// expect ':' separator
|
|
50
|
-
if (next !== 58)
|
|
51
|
-
return false;
|
|
52
|
-
i++;
|
|
53
|
-
// check for '::' compression
|
|
54
|
-
if (value.charCodeAt(i) === 58) {
|
|
55
|
-
if (compressed)
|
|
56
|
-
return false; // only one '::' allowed
|
|
57
|
-
// check for ':::'
|
|
58
|
-
if (value.charCodeAt(i + 1) === 58)
|
|
59
|
-
return false;
|
|
60
|
-
compressed = true;
|
|
61
|
-
i++;
|
|
62
|
-
if (i === length)
|
|
63
|
-
break; // trailing '::'
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
return compressed ? groups <= 7 : groups === 8;
|
|
7
|
+
return IPv6.test(value);
|
|
67
8
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Returns true if the value is a
|
|
3
|
-
* @specification
|
|
2
|
+
* Returns true if the value is a valid Internationalized Resource Identifier.
|
|
3
|
+
* @specification https://datatracker.ietf.org/doc/html/rfc3987
|
|
4
4
|
*/
|
|
5
5
|
export declare function IsIri(value: string): boolean;
|
|
@@ -1,13 +1,31 @@
|
|
|
1
|
+
// deno-lint-ignore-file no-control-regex
|
|
2
|
+
const IpvFutureMatchMaxLength = 2048;
|
|
3
|
+
const IpvFutureMatch = /\[[vV][0-9a-fA-F]+\.[^\]]+\]/; // Guarded By IpvFutureMatchMaxLength
|
|
4
|
+
const InvalidIriChars = /[\x00-\x20<>\^`{|}\\]/;
|
|
5
|
+
// ------------------------------------------------------------------
|
|
6
|
+
// NarrowIpvFuture
|
|
7
|
+
//
|
|
8
|
+
// Substitutes an IPvFuture address with a standard IPv6 loopback
|
|
9
|
+
// address ([::1]). We do this because the native URL.canParse
|
|
10
|
+
// (WHATWG standard) rejects IPvFuture literals, which are
|
|
11
|
+
// otherwise valid in RFC 3987. Because regex substitution can
|
|
12
|
+
// be expensive on large strings, this operation is strictly
|
|
13
|
+
// limited to inputs under a defined length threshold.
|
|
14
|
+
//
|
|
15
|
+
// (review-optimization)
|
|
16
|
+
//
|
|
17
|
+
// ------------------------------------------------------------------
|
|
18
|
+
function NarrowIpvFuture(value) {
|
|
19
|
+
return value.length < IpvFutureMatchMaxLength ? value.replace(IpvFutureMatch, '[::1]') : value;
|
|
20
|
+
}
|
|
1
21
|
/**
|
|
2
|
-
* Returns true if the value is a
|
|
3
|
-
* @specification
|
|
22
|
+
* Returns true if the value is a valid Internationalized Resource Identifier.
|
|
23
|
+
* @specification https://datatracker.ietf.org/doc/html/rfc3987
|
|
4
24
|
*/
|
|
5
25
|
export function IsIri(value) {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
return true;
|
|
9
|
-
}
|
|
10
|
-
catch {
|
|
26
|
+
// 1. Reject strings containing unencoded whitespace or illegal control characters.
|
|
27
|
+
if (InvalidIriChars.test(value))
|
|
11
28
|
return false;
|
|
12
|
-
|
|
29
|
+
// 2. Delegate to the native URL parser, patching the IPvFuture edge case beforehand.
|
|
30
|
+
return URL.canParse(NarrowIpvFuture(value));
|
|
13
31
|
}
|
|
@@ -1,60 +1,14 @@
|
|
|
1
1
|
// deno-lint-ignore-file no-control-regex
|
|
2
|
-
//
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
return true;
|
|
7
|
-
}
|
|
8
|
-
catch {
|
|
9
|
-
return false;
|
|
10
|
-
}
|
|
11
|
-
}
|
|
12
|
-
// deno-coverage-ignore-stop
|
|
2
|
+
// Rejects unencoded spaces (0x20), backslashes, control characters (0x00-0x1F, 0x7F), or malformed percent-encodings
|
|
3
|
+
const InvalidIriChars = /[\x00-\x20\x7F\\]|%(?![0-9a-fA-F]{2})/;
|
|
4
|
+
// Detects malformed scheme/authority patterns lacking a colon (e.g. "httpx//example.com")
|
|
5
|
+
const MalformedScheme = /^[a-zA-Z][a-zA-Z0-9+\-.]*\/\//;
|
|
13
6
|
/**
|
|
14
|
-
* Returns true if the value is
|
|
15
|
-
* @specification
|
|
7
|
+
* Returns true if the value is an IRI reference
|
|
8
|
+
* @specification https://tools.ietf.org/html/rfc3987
|
|
16
9
|
*/
|
|
17
10
|
export function IsIriReference(value) {
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
return false;
|
|
22
|
-
}
|
|
23
|
-
if (value.includes('\\')) { // Backslash (U+005C)
|
|
24
|
-
return false;
|
|
25
|
-
}
|
|
26
|
-
// ASCII control characters (U+0000-U+001F and U+007F)
|
|
27
|
-
if (/[\x00-\x1F\x7F]/.test(value)) {
|
|
28
|
-
return false;
|
|
29
|
-
}
|
|
30
|
-
// 2. Check for invalid percent-encoding
|
|
31
|
-
// A percent sign '%' must always be followed by exactly two hexadecimal characters.
|
|
32
|
-
// This regex finds a '%' that is NOT followed by two hexadecimal characters.
|
|
33
|
-
// - `%` matches a literal percent sign.
|
|
34
|
-
// - `(?!...)` is a negative lookahead, asserting that what follows is NOT.
|
|
35
|
-
// - `[0-9a-fA-F]{2}` matches exactly two hexadecimal digits.
|
|
36
|
-
// So, if a '%' is found that is not immediately followed by two hex digits, this regex will match.
|
|
37
|
-
if (/%(?![0-9a-fA-F]{2})/.test(value)) {
|
|
38
|
-
return false;
|
|
39
|
-
}
|
|
40
|
-
// 3. Handle empty string (valid relative reference to the current document)
|
|
41
|
-
if (value === '') {
|
|
42
|
-
return true;
|
|
43
|
-
}
|
|
44
|
-
// 4. Determine if it's attempting to be an absolute IRI or a relative IRI, and parse.
|
|
45
|
-
const colonIndex = value.indexOf(':');
|
|
46
|
-
const hasValidSchemePrefix = colonIndex > 0 && // Colon must not be at the very beginning (e.g., ":foo")
|
|
47
|
-
/^[a-zA-Z][a-zA-Z0-9+\-.]*$/.test(value.substring(0, colonIndex));
|
|
48
|
-
if (hasValidSchemePrefix) {
|
|
49
|
-
return TryUrl(value);
|
|
50
|
-
}
|
|
51
|
-
else {
|
|
52
|
-
// This handles cases like `httpx//example.com/path` which look like malformed absolute URIs.
|
|
53
|
-
const looksLikeMalformedSchemeAndAuthority = value.match(/^([a-zA-Z][a-zA-Z0-9+\-.]*)(\/\/)/);
|
|
54
|
-
if (looksLikeMalformedSchemeAndAuthority && colonIndex === -1) {
|
|
55
|
-
return false;
|
|
56
|
-
}
|
|
57
|
-
// Otherwise, it's a relative IRI reference.
|
|
58
|
-
return TryUrl(value);
|
|
59
|
-
}
|
|
11
|
+
return (!InvalidIriChars.test(value) &&
|
|
12
|
+
!MalformedScheme.test(value) &&
|
|
13
|
+
URL.canParse(value, 'http://example.com'));
|
|
60
14
|
}
|
|
@@ -1,14 +1,10 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Returns true if the value is a regular expression string pattern
|
|
3
|
-
* @specification
|
|
4
|
-
* @source ajv-formats
|
|
3
|
+
* @specification https://ecma-international.org/ecma-262
|
|
5
4
|
*/
|
|
6
5
|
export function IsRegex(value) {
|
|
7
|
-
if (value.length === 0) {
|
|
8
|
-
return false;
|
|
9
|
-
}
|
|
10
6
|
try {
|
|
11
|
-
new RegExp(value);
|
|
7
|
+
new RegExp(value, 'u');
|
|
12
8
|
return true;
|
|
13
9
|
}
|
|
14
10
|
catch {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Returns true if the value is
|
|
3
|
-
* @specification
|
|
2
|
+
* Returns true if the value is an ISO time string
|
|
3
|
+
* @specification https://datatracker.ietf.org/doc/html/rfc3339
|
|
4
4
|
*/
|
|
5
5
|
export declare function IsTime(value: string, strictTimeZone?: boolean): boolean;
|
|
@@ -1,27 +1,32 @@
|
|
|
1
|
-
const TIME = /^(\d\d):(\d\d):(\d\d(?:\.\d+)?
|
|
1
|
+
const TIME = /^(\d\d):(\d\d):(\d\d)(?:\.\d+)?(?:([Zz])|([+-])(\d\d):(\d\d))?$/;
|
|
2
2
|
/**
|
|
3
|
-
* Returns true if the value is
|
|
4
|
-
* @specification
|
|
3
|
+
* Returns true if the value is an ISO time string
|
|
4
|
+
* @specification https://datatracker.ietf.org/doc/html/rfc3339
|
|
5
5
|
*/
|
|
6
6
|
export function IsTime(value, strictTimeZone = true) {
|
|
7
7
|
const matches = TIME.exec(value);
|
|
8
8
|
if (!matches)
|
|
9
9
|
return false;
|
|
10
|
+
// Require timezone offset or 'Z'/'z' when strictTimeZone is true
|
|
11
|
+
if (strictTimeZone && !matches[4] && !matches[5])
|
|
12
|
+
return false;
|
|
10
13
|
const hr = +matches[1];
|
|
11
14
|
const min = +matches[2];
|
|
12
15
|
const sec = +matches[3];
|
|
13
|
-
|
|
14
|
-
const tzH = +(matches[5] || 0); // tzH is now matches[5]
|
|
15
|
-
const tzM = +(matches[6] || 0); // tzM is now matches[6]
|
|
16
|
-
if (tzH > 23 || tzM > 59)
|
|
17
|
-
return false; // Check for valid hour/minute range in offset
|
|
18
|
-
if (strictTimeZone && !matches[4] && value.toLowerCase().indexOf('z') === -1) {
|
|
19
|
-
// If strictTimeZone is true, and neither 'Z' nor a '+/-' offset was found
|
|
16
|
+
if (hr > 23 || min > 59 || sec > 60)
|
|
20
17
|
return false;
|
|
18
|
+
if (matches[5]) {
|
|
19
|
+
const tzH = +matches[6];
|
|
20
|
+
const tzM = +matches[7];
|
|
21
|
+
if (tzH > 23 || tzM > 59)
|
|
22
|
+
return false;
|
|
21
23
|
}
|
|
22
|
-
if (
|
|
24
|
+
if (sec < 60)
|
|
23
25
|
return true;
|
|
24
|
-
|
|
25
|
-
const
|
|
26
|
-
|
|
26
|
+
// Leap second handling: must normalize to 23:59:60 UTC (1439 total UTC minutes)
|
|
27
|
+
const tzSign = matches[5] === '-' ? -1 : 1;
|
|
28
|
+
const tzH = +(matches[6] || 0);
|
|
29
|
+
const tzM = +(matches[7] || 0);
|
|
30
|
+
const totalUtcMin = (hr * 60 + min) - tzSign * (tzH * 60 + tzM);
|
|
31
|
+
return (totalUtcMin % 1440 + 1440) % 1440 === 1439;
|
|
27
32
|
}
|
|
@@ -1,135 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
return (ch >= 97 && ch <= 122) || (ch >= 65 && ch <= 90); // a-z, A-Z
|
|
3
|
-
}
|
|
4
|
-
function IsAlphaNumeric(ch) {
|
|
5
|
-
return IsAlpha(ch) || (ch >= 48 && ch <= 57); // a-z, A-Z, 0-9
|
|
6
|
-
}
|
|
7
|
-
function IsHex(ch) {
|
|
8
|
-
return (ch >= 48 && ch <= 57) || // 0-9
|
|
9
|
-
(ch >= 65 && ch <= 70) || // A-F
|
|
10
|
-
(ch >= 97 && ch <= 102); // a-f
|
|
11
|
-
}
|
|
12
|
-
function IsSchemeChar(ch) {
|
|
13
|
-
return IsAlphaNumeric(ch) ||
|
|
14
|
-
ch === 43 || ch === 45 || ch === 46; // '+', '-', '.'
|
|
15
|
-
}
|
|
16
|
-
function IsUnreserved(ch) {
|
|
17
|
-
return IsAlphaNumeric(ch) ||
|
|
18
|
-
ch === 45 || ch === 46 || // '-', '.'
|
|
19
|
-
ch === 95 || ch === 126; // '_', '~'
|
|
20
|
-
}
|
|
21
|
-
function IsSubDelim(ch) {
|
|
22
|
-
return ch === 33 || ch === 36 || ch === 38 || ch === 39 ||
|
|
23
|
-
ch === 40 || ch === 41 || ch === 42 || ch === 43 ||
|
|
24
|
-
ch === 44 || ch === 59 || ch === 61; // ! $ & ' ( ) * + , ; =
|
|
25
|
-
}
|
|
26
|
-
function IsPchar(ch) {
|
|
27
|
-
return IsUnreserved(ch) || IsSubDelim(ch) || ch === 58 || ch === 64; // ':', '@'
|
|
28
|
-
}
|
|
1
|
+
const Uri = /^[a-z][a-z0-9+\-.]*:(?:\/\/(?:(?:[-a-z0-9._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:[\da-f]{1,4}:){6}(?:[\da-f]{1,4}:[\da-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d))|::(?:[\da-f]{1,4}:){5}(?:[\da-f]{1,4}:[\da-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d))|(?:[\da-f]{1,4})?::(?:[\da-f]{1,4}:){4}(?:[\da-f]{1,4}:[\da-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d))|(?:(?:[\da-f]{1,4}:){0,1}[\da-f]{1,4})?::(?:[\da-f]{1,4}:){3}(?:[\da-f]{1,4}:[\da-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d))|(?:(?:[\da-f]{1,4}:){0,2}[\da-f]{1,4})?::(?:[\da-f]{1,4}:){2}(?:[\da-f]{1,4}:[\da-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d))|(?:(?:[\da-f]{1,4}:){0,3}[\da-f]{1,4})?::[\da-f]{1,4}:(?:[\da-f]{1,4}:[\da-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d))|(?:(?:[\da-f]{1,4}:){0,4}[\da-f]{1,4})?::(?:[\da-f]{1,4}:[\da-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d))|(?:(?:[\da-f]{1,4}:){0,5}[\da-f]{1,4})?::[\da-f]{1,4}|(?:(?:[\da-f]{1,4}:){0,6}[\da-f]{1,4})?::)|v[0-9a-f]+\.[-a-z0-9._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)|(?:[-a-z0-9._~!$&'()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[-a-z0-9._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[-a-z0-9._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[-a-z0-9._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[-a-z0-9._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[-a-z0-9._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[-a-z0-9._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[-a-z0-9._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i;
|
|
29
2
|
/**
|
|
30
|
-
* Returns true if the value
|
|
3
|
+
* Returns true if the value is a valid Uniform Resource Identifier.
|
|
31
4
|
* @specification https://tools.ietf.org/html/rfc3986
|
|
32
5
|
*/
|
|
33
6
|
export function IsUri(value) {
|
|
34
|
-
|
|
35
|
-
if (length === 0)
|
|
36
|
-
return false;
|
|
37
|
-
// Scheme: must start with a letter
|
|
38
|
-
if (!IsAlpha(value.charCodeAt(0)))
|
|
39
|
-
return false;
|
|
40
|
-
// Scheme: continues until ':'
|
|
41
|
-
let i = 1;
|
|
42
|
-
while (i < length) {
|
|
43
|
-
const ch = value.charCodeAt(i);
|
|
44
|
-
if (ch === 58)
|
|
45
|
-
break; // ':'
|
|
46
|
-
if (!IsSchemeChar(ch))
|
|
47
|
-
return false;
|
|
48
|
-
i++;
|
|
49
|
-
}
|
|
50
|
-
// Ensure scheme is terminated by ':'
|
|
51
|
-
if (value.charCodeAt(i) !== 58)
|
|
52
|
-
return false;
|
|
53
|
-
i++;
|
|
54
|
-
// Authority: optional '//'
|
|
55
|
-
if (value.charCodeAt(i) === 47 && value.charCodeAt(i + 1) === 47) {
|
|
56
|
-
i += 2;
|
|
57
|
-
// Userinfo: check for '@' before path/query/fragment delimiters
|
|
58
|
-
const authorityStart = i;
|
|
59
|
-
let atPos = -1;
|
|
60
|
-
for (let j = i; j < length; j++) {
|
|
61
|
-
const ch = value.charCodeAt(j);
|
|
62
|
-
if (ch === 64) {
|
|
63
|
-
atPos = j;
|
|
64
|
-
break;
|
|
65
|
-
} // '@'
|
|
66
|
-
if (ch === 47 || ch === 63 || ch === 35)
|
|
67
|
-
break; // '/', '?', '#'
|
|
68
|
-
}
|
|
69
|
-
if (atPos !== -1) {
|
|
70
|
-
// Userinfo: validate allowed chars and percent-encoding
|
|
71
|
-
for (let j = authorityStart; j < atPos; j++) {
|
|
72
|
-
const ch = value.charCodeAt(j);
|
|
73
|
-
if (ch === 91 || ch === 93)
|
|
74
|
-
return false; // No '[' or ']' in userinfo
|
|
75
|
-
if (ch === 37) { // '%' percent-encoding
|
|
76
|
-
if (j + 2 >= atPos || !IsHex(value.charCodeAt(j + 1)) || !IsHex(value.charCodeAt(j + 2)))
|
|
77
|
-
return false;
|
|
78
|
-
j += 2;
|
|
79
|
-
}
|
|
80
|
-
else if (!IsUnreserved(ch) && !IsSubDelim(ch) && ch !== 58)
|
|
81
|
-
return false;
|
|
82
|
-
}
|
|
83
|
-
i = atPos + 1;
|
|
84
|
-
}
|
|
85
|
-
// Host: IP-literal [addr] or reg-name
|
|
86
|
-
if (value.charCodeAt(i) === 91) { // '['
|
|
87
|
-
i++;
|
|
88
|
-
while (i < length && value.charCodeAt(i) !== 93)
|
|
89
|
-
i++;
|
|
90
|
-
if (value.charCodeAt(i) !== 93)
|
|
91
|
-
return false; // ']'
|
|
92
|
-
i++;
|
|
93
|
-
}
|
|
94
|
-
else {
|
|
95
|
-
// Host: validate ASCII; skip validation for non-ASCII (Unicode hosts)
|
|
96
|
-
while (i < length) {
|
|
97
|
-
const ch = value.charCodeAt(i);
|
|
98
|
-
if (ch === 47 || ch === 63 || ch === 35 || ch === 58)
|
|
99
|
-
break;
|
|
100
|
-
if (ch < 128 && !IsUnreserved(ch) && !IsSubDelim(ch))
|
|
101
|
-
return false;
|
|
102
|
-
i++;
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
// Port: optional digits after ':'
|
|
106
|
-
if (value.charCodeAt(i) === 58) { // ':'
|
|
107
|
-
i++;
|
|
108
|
-
while (i < length) {
|
|
109
|
-
const ch = value.charCodeAt(i);
|
|
110
|
-
if (ch === 47 || ch === 63 || ch === 35)
|
|
111
|
-
break;
|
|
112
|
-
if (ch < 48 || ch > 57)
|
|
113
|
-
return false; // 0-9
|
|
114
|
-
i++;
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
// Path, Query, and Fragment
|
|
119
|
-
while (i < length) {
|
|
120
|
-
const ch = value.charCodeAt(i);
|
|
121
|
-
if (ch === 37) { // '%' percent-encoding
|
|
122
|
-
if (i + 2 >= length || !IsHex(value.charCodeAt(i + 1)) || !IsHex(value.charCodeAt(i + 2)))
|
|
123
|
-
return false;
|
|
124
|
-
i += 2;
|
|
125
|
-
}
|
|
126
|
-
else if (ch > 127) {
|
|
127
|
-
return false; // URI is ASCII-only
|
|
128
|
-
}
|
|
129
|
-
else if (!(IsPchar(ch) || ch === 47 || ch === 63 || ch === 35)) {
|
|
130
|
-
return false; // '/', '?', '#'
|
|
131
|
-
}
|
|
132
|
-
i++;
|
|
133
|
-
}
|
|
134
|
-
return true;
|
|
7
|
+
return Uri.test(value);
|
|
135
8
|
}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
const UriReference = /^(?!.*[^\x00-\x7F])(?!.*\\)(?:(?:[a-z][a-z0-9+\-.]*:)?(?:\/\/[^\s[\]{}<>^`|]*)?|[^\s[\]{}<>^`|]*)(?:\?[^\s[\]{}<>^`|]*)?(?:#[^\s[\]{}<>^`|]*)?$/i;
|
|
1
|
+
const UriReference = /^(?:[a-z][a-z0-9+\-.]*:(?:\/\/(?:(?:[-a-z0-9._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:[\da-f]{1,4}:){6}(?:[\da-f]{1,4}:[\da-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d))|::(?:[\da-f]{1,4}:){5}(?:[\da-f]{1,4}:[\da-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d))|(?:[\da-f]{1,4})?::(?:[\da-f]{1,4}:){4}(?:[\da-f]{1,4}:[\da-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d))|(?:(?:[\da-f]{1,4}:){0,1}[\da-f]{1,4})?::(?:[\da-f]{1,4}:){3}(?:[\da-f]{1,4}:[\da-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d))|(?:(?:[\da-f]{1,4}:){0,2}[\da-f]{1,4})?::(?:[\da-f]{1,4}:){2}(?:[\da-f]{1,4}:[\da-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d))|(?:(?:[\da-f]{1,4}:){0,3}[\da-f]{1,4})?::[\da-f]{1,4}:(?:[\da-f]{1,4}:[\da-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d))|(?:(?:[\da-f]{1,4}:){0,4}[\da-f]{1,4})?::(?:[\da-f]{1,4}:[\da-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d))|(?:(?:[\da-f]{1,4}:){0,5}[\da-f]{1,4})?::[\da-f]{1,4}|(?:(?:[\da-f]{1,4}:){0,6}[\da-f]{1,4})?::)|v[0-9a-f]+\.[-a-z0-9._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)|(?:[-a-z0-9._~!$&'()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[-a-z0-9._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[-a-z0-9._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[-a-z0-9._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[-a-z0-9._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[-a-z0-9._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:\/\/(?:(?:[-a-z0-9._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:[\da-f]{1,4}:){6}(?:[\da-f]{1,4}:[\da-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d))|::(?:[\da-f]{1,4}:){5}(?:[\da-f]{1,4}:[\da-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d))|(?:[\da-f]{1,4})?::(?:[\da-f]{1,4}:){4}(?:[\da-f]{1,4}:[\da-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d))|(?:(?:[\da-f]{1,4}:){0,1}[\da-f]{1,4})?::(?:[\da-f]{1,4}:){3}(?:[\da-f]{1,4}:[\da-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d))|(?:(?:[\da-f]{1,4}:){0,2}[\da-f]{1,4})?::(?:[\da-f]{1,4}:){2}(?:[\da-f]{1,4}:[\da-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d))|(?:(?:[\da-f]{1,4}:){0,3}[\da-f]{1,4})?::[\da-f]{1,4}:(?:[\da-f]{1,4}:[\da-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d))|(?:(?:[\da-f]{1,4}:){0,4}[\da-f]{1,4})?::(?:[\da-f]{1,4}:[\da-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d))|(?:(?:[\da-f]{1,4}:){0,5}[\da-f]{1,4})?::[\da-f]{1,4}|(?:(?:[\da-f]{1,4}:){0,6}[\da-f]{1,4})?::)|v[0-9a-f]+\.[-a-z0-9._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)|(?:[-a-z0-9._~!$&'()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[-a-z0-9._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[-a-z0-9._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[-a-z0-9._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[-a-z0-9._~!$&'()*+,;=@]|%[0-9a-f]{2})+(?:\/(?:[-a-z0-9._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?)(?:\?(?:[-a-z0-9._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[-a-z0-9._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i;
|
|
3
2
|
/**
|
|
4
|
-
* Returns true if the value is a valid
|
|
3
|
+
* Returns true if the value is a valid Uri Reference.
|
|
5
4
|
* @specification https://tools.ietf.org/html/rfc3986
|
|
6
5
|
*/
|
|
7
6
|
export function IsUriReference(value) {
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Returns true if the value is a
|
|
3
|
-
* @specification
|
|
4
|
-
* @source ajv-formats
|
|
2
|
+
* Returns true if the value is a valid Uri Template
|
|
3
|
+
* @specification https://datatracker.ietf.org/doc/html/rfc6570
|
|
5
4
|
*/
|
|
6
5
|
export declare function IsUriTemplate(value: string): boolean;
|
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
// deno-lint-ignore-file
|
|
2
|
-
const UriTemplate = /^(?:(?:[^\x00-\x20"
|
|
1
|
+
// deno-lint-ignore-file no-control-regex
|
|
2
|
+
const UriTemplate = /^(?:(?:[^\x00-\x20"<>%\\^`{|}\x7f]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?:\.(?:[a-z0-9_]|%[0-9a-f]{2})+)*(?::[1-9]\d{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?:\.(?:[a-z0-9_]|%[0-9a-f]{2})+)*(?::[1-9]\d{0,3}|\*)?)*\})*$/i;
|
|
3
3
|
/**
|
|
4
|
-
* Returns true if the value is a
|
|
5
|
-
* @specification
|
|
6
|
-
* @source ajv-formats
|
|
4
|
+
* Returns true if the value is a valid Uri Template
|
|
5
|
+
* @specification https://datatracker.ietf.org/doc/html/rfc6570
|
|
7
6
|
*/
|
|
8
7
|
export function IsUriTemplate(value) {
|
|
9
8
|
return UriTemplate.test(value);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Returns true if the value is a
|
|
3
|
-
* @specification
|
|
4
|
-
* @
|
|
2
|
+
* Returns true if the value is a valid Uniform Resource Locator
|
|
3
|
+
* @specification https://datatracker.ietf.org/doc/html/rfc3986
|
|
4
|
+
* @specification https://datatracker.ietf.org/doc/html/rfc3987
|
|
5
5
|
*/
|
|
6
6
|
export declare function IsUrl(value: string): boolean;
|
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
const Url = /^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu;
|
|
2
1
|
/**
|
|
3
|
-
* Returns true if the value is a
|
|
4
|
-
* @specification
|
|
5
|
-
* @
|
|
2
|
+
* Returns true if the value is a valid Uniform Resource Locator
|
|
3
|
+
* @specification https://datatracker.ietf.org/doc/html/rfc3986
|
|
4
|
+
* @specification https://datatracker.ietf.org/doc/html/rfc3987
|
|
6
5
|
*/
|
|
7
6
|
export function IsUrl(value) {
|
|
8
|
-
return
|
|
7
|
+
return URL.canParse(value);
|
|
9
8
|
}
|
|
@@ -33,6 +33,9 @@ export declare function IsGreaterEqualThan(left: string, right: string): string;
|
|
|
33
33
|
export declare function IsMinLength(value: string, length: string): string;
|
|
34
34
|
export declare function IsMaxLength(value: string, length: string): string;
|
|
35
35
|
export declare function Every(value: string, offset: string, params: [value: string, index: string], expression: string): string;
|
|
36
|
+
export declare function Some(value: string, params: [value: string, index: string], expression: string): string;
|
|
37
|
+
export declare function SomeAll(value: string, params: [value: string, index: string], expression: string): string;
|
|
38
|
+
export declare function Counted(value: string, params: [value: string, index: string], expression: string): string;
|
|
36
39
|
export declare function Entries(value: string): string;
|
|
37
40
|
export declare function Keys(value: string): string;
|
|
38
41
|
export declare function HasPropertyKey(value: string, key: string): string;
|
|
@@ -50,5 +53,4 @@ export declare function If(condition: string, then: string): string;
|
|
|
50
53
|
export declare function Return(expression: string): string;
|
|
51
54
|
export declare function ReduceAnd(operands: string[]): string;
|
|
52
55
|
export declare function ReduceOr(operands: string[]): string;
|
|
53
|
-
export declare function PrefixIncrement(expression: string): string;
|
|
54
56
|
export declare function MultipleOf(dividend: string, divisor: string): string;
|