aboutsummaryrefslogtreecommitdiff
path: root/src/tools/json-diff/json-diff.vue
diff options
context:
space:
mode:
Diffstat (limited to 'src/tools/json-diff/json-diff.vue')
-rw-r--r--src/tools/json-diff/json-diff.vue59
1 files changed, 59 insertions, 0 deletions
diff --git a/src/tools/json-diff/json-diff.vue b/src/tools/json-diff/json-diff.vue
new file mode 100644
index 0000000..df106c6
--- /dev/null
+++ b/src/tools/json-diff/json-diff.vue
@@ -0,0 +1,59 @@
+<template>
+ <n-form-item label="Your first json" v-bind="leftJsonValidation.attrs">
+ <n-input
+ v-model:value="rawLeftJson"
+ placeholder="Paste your first json here..."
+ type="textarea"
+ rows="20"
+ autocomplete="off"
+ autocorrect="off"
+ autocapitalize="off"
+ spellcheck="false"
+ :input-props="{ 'data-test-id': 'leftJson' }"
+ />
+ </n-form-item>
+ <n-form-item label="Your json to compare" v-bind="rightJsonValidation.attrs">
+ <n-input
+ v-model:value="rawRightJson"
+ placeholder="Paste your json to compare here..."
+ type="textarea"
+ rows="20"
+ autocomplete="off"
+ autocorrect="off"
+ autocapitalize="off"
+ spellcheck="false"
+ :input-props="{ 'data-test-id': 'rightJson' }"
+ />
+ </n-form-item>
+
+ <DiffsViewer :left-json="leftJson" :right-json="rightJson" />
+</template>
+
+<script setup lang="ts">
+import JSON5 from 'json5';
+
+import { withDefaultOnError } from '@/utils/defaults';
+import { useValidation } from '@/composable/validation';
+import { isNotThrowing } from '@/utils/boolean';
+import DiffsViewer from './diff-viewer/diff-viewer.vue';
+
+const rawLeftJson = ref('');
+const rawRightJson = ref('');
+
+const leftJson = computed(() => withDefaultOnError(() => JSON5.parse(rawLeftJson.value), undefined));
+const rightJson = computed(() => withDefaultOnError(() => JSON5.parse(rawRightJson.value), undefined));
+
+const createJsonValidation = (json: Ref) =>
+ useValidation({
+ source: json,
+ rules: [
+ {
+ validator: (value) => value === '' || isNotThrowing(() => JSON5.parse(value)),
+ message: 'Invalid JSON',
+ },
+ ],
+ });
+
+const leftJsonValidation = createJsonValidation(rawLeftJson);
+const rightJsonValidation = createJsonValidation(rawRightJson);
+</script>
iled-call'>jarred/profiled-call Unnamed repository; edit this file 'description' to name the repository.
aboutsummaryrefslogtreecommitdiff
path: root/src (unfollow)
AgeCommit message (Expand)AuthorFilesLines
2021-09-17Slightly improve JSX decoding perfbun-v0.0.21Gravatar Jarred Sumner 1-2/+11
2021-09-17Package.jsonGravatar Jarred Sumner 2-2/+2
2021-09-17Bumpbun-v0.0.20Gravatar Jarred Sumner 1-1/+1
2021-09-17Fix whitespace & emoji bug when parsing JSXGravatar Jarred Sumner 2-25/+82
2021-09-17SnapshotsGravatar Jarred Sumner 2-0/+62
2021-09-17package.jsonGravatar Jarred Sumner 2-2/+2
2021-09-17Add test for "shuffle" function for lodashbun-v0.0.19Gravatar Jarred Sumner 4-0/+44
2021-09-17Update js_printer.zigGravatar Jarred Sumner 1-4/+3
2021-09-17Fix lexer bug with UTF-16 stringsGravatar Jarred Sumner 2-14/+18
2021-09-17Add test for tsx/ts fallback importsGravatar Jarred Sumner 7-0/+68
2021-09-17Update package.jsonGravatar Jarred Sumner 1-1/+1
2021-09-17Update launch.jsonGravatar Jarred Sumner 1-34/+61
2021-09-17Fix test makefileGravatar Jarred Sumner 6-9/+11
2021-09-17Update cjs-transform-shouldnt-have-static-imports-in-cjs-function.jsGravatar Jarred Sumner 1-0/+4
2021-09-17Exclude snapshots from searchGravatar Jarred Sumner 1-0/+10
2021-09-17Fix multiple imports to CJS modules when referencing via module_id hashGravatar Jarred Sumner 7-6/+111
2021-09-17Bump build IDGravatar Jarred Sumner 3-3/+3
2021-09-17Commit previosu bumpbun-v0.0.18Gravatar Jarred Sumner 2-2/+2
2021-09-17global -> globalThisGravatar Jarred Sumner 6-15/+65
2021-09-17Get bun ready for linux buildsGravatar Dov Alperin 5-8/+20
2021-09-17Add puppeteer to package.jsonbun-v0.0.17Gravatar Jarred Sumner 1-1/+6
2021-09-17Little more clarify readmeGravatar Jarred Sumner 1-2/+4
2021-09-17Begin to add integration testsGravatar Jarred Sumner 21-1/+534
2021-09-17Fix bugs with ESM -> CJS when not bundledGravatar Jarred Sumner 7-147/+334
2021-09-16Do not attempt to HMR export {value} from, just assume it will be HMR'd (or not)Gravatar Jarred Sumner 1-10/+38
2021-09-16Update options.zigGravatar Jarred Sumner 1-1/+1
2021-09-16Fix export * as fromGravatar Jarred Sumner 1-1/+2
2021-09-16Add flag to dev server to disable HMRGravatar Jarred Sumner 5-1885/+2044
2021-09-16Help output should print command namesGravatar Jarred Sumner 1-5/+13
2021-09-16Fix symbol name for cjs2esmGravatar Jarred Sumner 1-0/+1
2021-09-16When port is in use, auto-increment port number up to 10 times and then bail ...Gravatar Jarred Sumner 1-7/+43
2021-09-16Always bold ^Gravatar Jarred Sumner 1-0/+2
2021-09-16Delete some dead codeGravatar Jarred Sumner 2-538/+0
2021-09-16Print absolute paths in log errors so that ctrl+click to open file in editor ...Gravatar Jarred Sumner 1-1/+1
2021-09-16Colorize build/resolve errors and add a ^Gravatar Jarred Sumner 7-127/+210
2021-09-16Commit build idGravatar Jarred Sumner 3-3/+3
2021-09-16Automatically rewrite TS import paths from .jsx? -> .tsx? when .jsx? is not f...bun-v0.0.16Gravatar Jarred Sumner 1-8/+10
2021-09-15write the versionGravatar Jarred Sumner 1-1/+1
2021-09-15Switch to 0.0.x instead of 0.0.0-x to fix the npm install issueGravatar Jarred Sumner 6-9/+11
2021-09-15Bump versionsbun-v0.0.15bun-v0.0.0-15Gravatar Jarred Sumner 2-2/+2
2021-09-15Bumpbun-v0.0.0-14Gravatar Jarred Sumner 1-1/+1
2021-09-15Fix require bug in runtime.jsGravatar Jarred Sumner 2-31/+10
2021-09-15Fix CJS symbol namesGravatar Jarred Sumner 1-11/+37
2021-09-15Remove most usages of anytype in js_ast.zigGravatar Jarred Sumner 4-72/+74
2021-09-15Fix crash in `bun bun`Gravatar Jarred Sumner 1-24/+26
2021-09-15woopsGravatar Jarred Sumner 4-6/+6
2021-09-15Bumpbun-v0.0.0-13Gravatar Jarred Sumner 5-10/+12