atom.io 0.28.0 → 0.28.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.
Files changed (75) hide show
  1. package/dist/{chunk-BX3MTH2Z.js → chunk-D3ZPRYEW.js} +15 -23
  2. package/eslint-plugin/dist/index.js +0 -1
  3. package/eslint-plugin/src/walk.ts +0 -1
  4. package/internal/dist/index.d.ts +3 -3
  5. package/internal/dist/index.js +1 -1
  6. package/internal/src/families/dispose-from-store.ts +0 -6
  7. package/internal/src/operation.ts +7 -7
  8. package/internal/src/selector/create-writable-selector.ts +1 -1
  9. package/internal/src/set-state/become.ts +1 -3
  10. package/internal/src/set-state/evict-downstream.ts +2 -2
  11. package/internal/src/set-state/set-atom.ts +1 -1
  12. package/internal/src/set-state/set-into-store.ts +1 -1
  13. package/internal/src/set-state/stow-update.ts +2 -2
  14. package/internal/src/store/store.ts +1 -1
  15. package/introspection/dist/index.d.ts +15 -6
  16. package/introspection/dist/index.js +620 -1
  17. package/introspection/src/attach-atom-index.ts +5 -6
  18. package/introspection/src/attach-introspection-states.ts +5 -6
  19. package/introspection/src/attach-selector-index.ts +6 -7
  20. package/introspection/src/attach-timeline-family.ts +3 -4
  21. package/introspection/src/attach-timeline-index.ts +4 -8
  22. package/introspection/src/attach-transaction-index.ts +4 -8
  23. package/introspection/src/attach-transaction-logs.ts +4 -8
  24. package/introspection/src/attach-type-selectors.ts +13 -6
  25. package/introspection/src/differ.ts +1 -1
  26. package/introspection/src/index.ts +1 -0
  27. package/introspection/src/refinery.ts +9 -7
  28. package/introspection/src/sprawl.ts +42 -0
  29. package/json/dist/index.d.ts +12 -1
  30. package/json/dist/index.js +111 -2
  31. package/json/src/index.ts +36 -1
  32. package/package.json +8 -8
  33. package/react-devtools/dist/index.d.ts +159 -2
  34. package/react-devtools/dist/index.js +260 -663
  35. package/react-devtools/src/AtomIODevtools.tsx +24 -13
  36. package/react-devtools/src/StateEditor.tsx +5 -47
  37. package/react-devtools/src/StateIndex.tsx +18 -11
  38. package/react-devtools/src/TimelineIndex.tsx +9 -6
  39. package/react-devtools/src/TransactionIndex.tsx +9 -11
  40. package/react-devtools/src/Updates.tsx +2 -0
  41. package/react-devtools/src/elastic-input/ElasticInput.tsx +86 -0
  42. package/react-devtools/src/elastic-input/NumberInput.tsx +199 -0
  43. package/react-devtools/src/elastic-input/TextInput.tsx +47 -0
  44. package/react-devtools/src/elastic-input/index.ts +3 -0
  45. package/react-devtools/src/error-boundary/DefaultFallback.tsx +49 -0
  46. package/react-devtools/src/error-boundary/ReactErrorBoundary.tsx +56 -0
  47. package/react-devtools/src/error-boundary/index.ts +2 -0
  48. package/react-devtools/src/index.ts +3 -0
  49. package/react-devtools/src/json-editor/assets/Untitled-1.ai +1436 -2
  50. package/react-devtools/src/json-editor/assets/data-vis.ai +1548 -1
  51. package/react-devtools/src/json-editor/comp/json-editor-sketches.ai +1451 -3
  52. package/react-devtools/src/json-editor/default-components.tsx +101 -0
  53. package/react-devtools/src/json-editor/developer-interface.tsx +81 -0
  54. package/react-devtools/src/json-editor/editors-by-type/array-editor.tsx +38 -0
  55. package/react-devtools/src/json-editor/editors-by-type/non-json.tsx +23 -0
  56. package/react-devtools/src/json-editor/editors-by-type/object-editor.tsx +128 -0
  57. package/react-devtools/src/json-editor/editors-by-type/primitive-editors.tsx +73 -0
  58. package/react-devtools/src/json-editor/editors-by-type/utilities/array-elements.ts +16 -0
  59. package/react-devtools/src/json-editor/editors-by-type/utilities/cast-json.ts +57 -0
  60. package/react-devtools/src/json-editor/editors-by-type/utilities/cast-to-json.ts +156 -0
  61. package/react-devtools/src/json-editor/editors-by-type/utilities/object-properties.ts +106 -0
  62. package/react-devtools/src/json-editor/index.ts +32 -0
  63. package/react-devtools/src/json-editor/json-editor-internal.tsx +128 -0
  64. package/react-devtools/src/json-editor/todo.md +7 -0
  65. package/react-devtools/src/store.ts +70 -46
  66. package/realtime/src/realtime-continuity.ts +3 -2
  67. package/realtime-client/src/pull-atom-family-member.ts +2 -0
  68. package/realtime-client/src/pull-mutable-atom-family-member.ts +2 -0
  69. package/realtime-client/src/pull-selector-family-member.ts +2 -0
  70. package/realtime-server/src/ipc-sockets/child-socket.ts +2 -0
  71. package/realtime-testing/src/setup-realtime-test.tsx +2 -0
  72. package/src/logger.ts +1 -0
  73. package/transceivers/set-rtx/src/set-rtx.ts +1 -0
  74. package/dist/chunk-D52JNVER.js +0 -721
  75. package/dist/chunk-EUVKUTW3.js +0 -89
@@ -1,89 +0,0 @@
1
- import { createWritableSelectorFamily } from './chunk-BX3MTH2Z.js';
2
- import { createStandaloneSelector, IMPLICIT, growMoleculeInStore, initFamilyMemberInStore, withdraw, seekInStore } from 'atom.io/internal';
3
-
4
- // json/src/entries.ts
5
- function fromEntries(entries) {
6
- return Object.fromEntries(entries);
7
- }
8
- function toEntries(obj) {
9
- return Object.entries(obj);
10
- }
11
- var selectJson = (atom, transform, store = IMPLICIT.STORE) => {
12
- return createStandaloneSelector(store, {
13
- key: `${atom.key}:JSON`,
14
- get: ({ get }) => transform.toJson(get(atom)),
15
- set: ({ set }, newValue) => {
16
- set(atom, transform.fromJson(newValue));
17
- }
18
- });
19
- };
20
- function selectJsonFamily(atomFamilyToken, transform, store = IMPLICIT.STORE) {
21
- const jsonFamily = createWritableSelectorFamily(
22
- store,
23
- {
24
- key: `${atomFamilyToken.key}:JSON`,
25
- get: (key) => ({ seek, get }) => {
26
- const existingState = seek(atomFamilyToken, key);
27
- if (existingState) {
28
- return transform.toJson(get(existingState));
29
- }
30
- const stringKey = stringifyJson(key);
31
- const molecule = store.molecules.get(stringKey);
32
- if (molecule) {
33
- const atom = growMoleculeInStore(molecule, atomFamilyToken, store);
34
- return transform.toJson(get(atom));
35
- }
36
- if (store.config.lifespan === `immortal`) {
37
- throw new Error(`No molecule found for key "${stringKey}"`);
38
- }
39
- const newToken = initFamilyMemberInStore(store, atomFamilyToken, key);
40
- return transform.toJson(get(newToken));
41
- },
42
- set: (key) => ({ seek, set }, newValue) => {
43
- const existingState = seek(atomFamilyToken, key);
44
- if (existingState) {
45
- set(existingState, transform.fromJson(newValue));
46
- } else {
47
- const stringKey = stringifyJson(key);
48
- const molecule = store.molecules.get(stringKey);
49
- if (molecule) {
50
- const atom = growMoleculeInStore(molecule, atomFamilyToken, store);
51
- set(atom, transform.fromJson(newValue));
52
- } else {
53
- if (store.config.lifespan === `immortal`) {
54
- throw new Error(`No molecule found for key "${stringKey}"`);
55
- }
56
- set(
57
- initFamilyMemberInStore(store, atomFamilyToken, key),
58
- transform.fromJson(newValue)
59
- );
60
- }
61
- }
62
- }
63
- },
64
- [`mutable`, `json`]
65
- );
66
- const atomFamily = withdraw(atomFamilyToken, store);
67
- atomFamily.subject.subscribe(
68
- `store=${store.config.name}::json-selector-family`,
69
- (event) => {
70
- if (event.token.family) {
71
- seekInStore(store, jsonFamily, parseJson(event.token.family.subKey));
72
- }
73
- }
74
- );
75
- return jsonFamily;
76
- }
77
-
78
- // json/src/index.ts
79
- var parseJson = (str) => JSON.parse(str);
80
- var stringifyJson = (json) => JSON.stringify(json);
81
- var JSON_PROTOTYPES = [Array, Boolean, Number, Object, String];
82
- var isJson = (input) => {
83
- if (input === null) return true;
84
- if (input === void 0) return false;
85
- const prototype = Object.getPrototypeOf(input);
86
- return JSON_PROTOTYPES.includes(prototype);
87
- };
88
-
89
- export { fromEntries, isJson, parseJson, selectJson, selectJsonFamily, stringifyJson, toEntries };