@digital-alchemy/hass 0.3.21 → 0.3.23

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 (132) hide show
  1. package/dist/dynamic.d.ts +3227 -202
  2. package/dist/dynamic.js +335 -85
  3. package/dist/dynamic.js.map +1 -1
  4. package/dist/e2e/app/entities.d.ts +5 -0
  5. package/dist/e2e/app/entities.js +21 -0
  6. package/dist/e2e/app/entities.js.map +1 -0
  7. package/dist/e2e/app/main.d.ts +10 -0
  8. package/dist/e2e/app/main.js +15 -0
  9. package/dist/e2e/app/main.js.map +1 -0
  10. package/dist/e2e/area.spec.d.ts +1 -0
  11. package/dist/e2e/area.spec.js +99 -0
  12. package/dist/e2e/area.spec.js.map +1 -0
  13. package/dist/e2e/call-proxy.spec.d.ts +1 -0
  14. package/dist/e2e/call-proxy.spec.js +57 -0
  15. package/dist/e2e/call-proxy.spec.js.map +1 -0
  16. package/dist/e2e/device.spec.d.ts +1 -0
  17. package/dist/e2e/device.spec.js +27 -0
  18. package/dist/e2e/device.spec.js.map +1 -0
  19. package/dist/e2e/entity.spec.d.ts +1 -0
  20. package/dist/e2e/entity.spec.js +328 -0
  21. package/dist/e2e/entity.spec.js.map +1 -0
  22. package/dist/e2e/fetch.spec.d.ts +1 -0
  23. package/dist/e2e/fetch.spec.js +79 -0
  24. package/dist/e2e/fetch.spec.js.map +1 -0
  25. package/dist/e2e/floor.spec.d.ts +1 -0
  26. package/dist/e2e/floor.spec.js +81 -0
  27. package/dist/e2e/floor.spec.js.map +1 -0
  28. package/dist/e2e/label.spec.d.ts +1 -0
  29. package/dist/e2e/label.spec.js +82 -0
  30. package/dist/e2e/label.spec.js.map +1 -0
  31. package/dist/e2e/utils.d.ts +2 -0
  32. package/dist/e2e/utils.js +7 -0
  33. package/dist/e2e/utils.js.map +1 -0
  34. package/dist/extensions/area.extension.d.ts +5 -5
  35. package/dist/extensions/area.extension.js +60 -51
  36. package/dist/extensions/area.extension.js.map +1 -1
  37. package/dist/extensions/call-proxy.extension.d.ts +1 -1
  38. package/dist/extensions/call-proxy.extension.js +13 -26
  39. package/dist/extensions/call-proxy.extension.js.map +1 -1
  40. package/dist/extensions/conversation.extension.js +1 -1
  41. package/dist/extensions/conversation.extension.js.map +1 -1
  42. package/dist/extensions/device.extension.d.ts +1 -1
  43. package/dist/extensions/device.extension.js +2 -1
  44. package/dist/extensions/device.extension.js.map +1 -1
  45. package/dist/extensions/entity.extension.d.ts +23 -10
  46. package/dist/extensions/entity.extension.js +51 -27
  47. package/dist/extensions/entity.extension.js.map +1 -1
  48. package/dist/extensions/fetch-api.extension.d.ts +5 -4
  49. package/dist/extensions/fetch-api.extension.js +41 -30
  50. package/dist/extensions/fetch-api.extension.js.map +1 -1
  51. package/dist/extensions/floor.extension.d.ts +0 -5
  52. package/dist/extensions/floor.extension.js +1 -2
  53. package/dist/extensions/floor.extension.js.map +1 -1
  54. package/dist/extensions/label.extension.d.ts +4 -9
  55. package/dist/extensions/label.extension.js +35 -33
  56. package/dist/extensions/label.extension.js.map +1 -1
  57. package/dist/extensions/websocket-api.extension.d.ts +21 -4
  58. package/dist/extensions/websocket-api.extension.js +94 -57
  59. package/dist/extensions/websocket-api.extension.js.map +1 -1
  60. package/dist/extensions/zone.extension.d.ts +0 -6
  61. package/dist/extensions/zone.extension.js +0 -2
  62. package/dist/extensions/zone.extension.js.map +1 -1
  63. package/dist/hass.module.d.ts +10 -0
  64. package/dist/hass.module.js +13 -0
  65. package/dist/hass.module.js.map +1 -1
  66. package/dist/helpers/constants.helper.d.ts +1 -40
  67. package/dist/helpers/constants.helper.js +2 -45
  68. package/dist/helpers/constants.helper.js.map +1 -1
  69. package/dist/helpers/fetch/calendar.d.ts +1 -1
  70. package/dist/helpers/fetch/configuration.d.ts +4 -4
  71. package/dist/helpers/metrics.helper.d.ts +4 -0
  72. package/dist/helpers/metrics.helper.js +15 -7
  73. package/dist/helpers/metrics.helper.js.map +1 -1
  74. package/dist/helpers/registry.d.ts +1 -1
  75. package/dist/helpers/utility.helper.d.ts +3 -2
  76. package/dist/helpers/utility.helper.js.map +1 -1
  77. package/dist/helpers/websocket.helper.d.ts +12 -12
  78. package/dist/mock_assistant/extensions/events.extension.d.ts +6 -0
  79. package/dist/mock_assistant/extensions/events.extension.js +32 -0
  80. package/dist/mock_assistant/extensions/events.extension.js.map +1 -0
  81. package/dist/mock_assistant/extensions/fixtures.extension.d.ts +13 -0
  82. package/dist/mock_assistant/extensions/fixtures.extension.js +57 -0
  83. package/dist/mock_assistant/extensions/fixtures.extension.js.map +1 -0
  84. package/dist/mock_assistant/extensions/index.d.ts +2 -0
  85. package/dist/mock_assistant/extensions/index.js +6 -0
  86. package/dist/mock_assistant/extensions/index.js.map +1 -0
  87. package/dist/mock_assistant/helpers/fixtures.d.ts +11 -0
  88. package/dist/mock_assistant/helpers/fixtures.js +3 -0
  89. package/dist/mock_assistant/helpers/fixtures.js.map +1 -0
  90. package/dist/mock_assistant/helpers/index.d.ts +2 -0
  91. package/dist/mock_assistant/helpers/index.js +6 -0
  92. package/dist/mock_assistant/helpers/index.js.map +1 -0
  93. package/dist/mock_assistant/helpers/utils.d.ts +4 -0
  94. package/dist/mock_assistant/helpers/utils.js +49 -0
  95. package/dist/mock_assistant/helpers/utils.js.map +1 -0
  96. package/dist/mock_assistant/index.d.ts +3 -0
  97. package/dist/mock_assistant/index.js +7 -0
  98. package/dist/mock_assistant/index.js.map +1 -0
  99. package/dist/mock_assistant/main.d.ts +2 -0
  100. package/dist/mock_assistant/main.js +38 -0
  101. package/dist/mock_assistant/main.js.map +1 -0
  102. package/dist/mock_assistant/mock-assistant.module.d.ts +16 -0
  103. package/dist/mock_assistant/mock-assistant.module.js +22 -0
  104. package/dist/mock_assistant/mock-assistant.module.js.map +1 -0
  105. package/dist/testing/area.spec.d.ts +1 -0
  106. package/dist/testing/area.spec.js +224 -0
  107. package/dist/testing/area.spec.js.map +1 -0
  108. package/dist/testing/config.spec.d.ts +1 -0
  109. package/dist/testing/config.spec.js +232 -0
  110. package/dist/testing/config.spec.js.map +1 -0
  111. package/dist/testing/device.spec.d.ts +1 -0
  112. package/dist/testing/device.spec.js +81 -0
  113. package/dist/testing/device.spec.js.map +1 -0
  114. package/dist/testing/entity.spec.d.ts +1 -0
  115. package/dist/testing/entity.spec.js +29 -0
  116. package/dist/testing/entity.spec.js.map +1 -0
  117. package/dist/testing/fetch-api.spec.d.ts +1 -0
  118. package/dist/testing/fetch-api.spec.js +476 -0
  119. package/dist/testing/fetch-api.spec.js.map +1 -0
  120. package/dist/testing/floor.spec.d.ts +1 -0
  121. package/dist/testing/floor.spec.js +223 -0
  122. package/dist/testing/floor.spec.js.map +1 -0
  123. package/dist/testing/label.spec.d.ts +1 -0
  124. package/dist/testing/label.spec.js +223 -0
  125. package/dist/testing/label.spec.js.map +1 -0
  126. package/dist/testing/websocket.spec.d.ts +8 -0
  127. package/dist/testing/websocket.spec.js +71 -0
  128. package/dist/testing/websocket.spec.js.map +1 -0
  129. package/dist/testing/workflow.spec.d.ts +1 -0
  130. package/dist/testing/workflow.spec.js +119 -0
  131. package/dist/testing/workflow.spec.js.map +1 -0
  132. package/package.json +36 -9
package/dist/dynamic.js CHANGED
@@ -1,108 +1,358 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ENTITY_SETUP = void 0;
4
- // ## THIS FILE IS INTENDED TO BE REPLACED
5
- //
6
- // ! IF YOU STILL SEE THIS IN YOUR `node_modules`, run `npx type-writer`
7
- //
8
- // The purpose it to represent the configuration of Home Assistant
9
- //
10
- // - entities, with their available attributes & states
11
- // - services, and what parameters they take
12
- //
13
- // This information is TYPES ONLY, and is used to add type safety to
14
- // methods exported from this library through the use of utility types that
15
- // take advantage of this information
16
- //
17
- // A post-install hook will regenerate these with real values.
18
- //
19
- // The service definition is the switch, light, scene domains from a previously generated file.
20
- // These are required to make typescript happy for internal library definitions
21
4
  // #MARK: ENTITY_SETUP
22
5
  exports.ENTITY_SETUP = {
23
6
  binary_sensor: {
24
- example_binary_sensor: {
25
- attributes: { friendly_name: "Example binary sensor" },
26
- context: { id: "abc123", parent_id: null, user_id: null },
27
- entity_id: "binary_sensor.example_binary_sensor",
28
- last_changed: "2024-01-01T01:01:01.000000+00:00",
29
- last_updated: "2024-01-01T01:01:01.000000+00:00",
30
- state: "on",
7
+ hass_e2e_online: {
8
+ attributes: {
9
+ friendly_name: "hass_e2e online",
10
+ restored: true,
11
+ supported_features: 0,
12
+ },
13
+ context: {
14
+ id: "01HWXTSCSBGW129NV7WY8MMG1E",
15
+ parent_id: null,
16
+ user_id: null,
17
+ },
18
+ entity_id: "binary_sensor.hass_e2e_online",
19
+ last_changed: "2024-05-02T23:38:44.907649+00:00",
20
+ last_reported: "2024-05-02T23:38:44.907649+00:00",
21
+ last_updated: "2024-05-02T23:38:44.907649+00:00",
22
+ state: "unavailable",
31
23
  },
32
- },
33
- button: {
34
- example_button: {
35
- attributes: { friendly_name: "Example button" },
36
- context: { id: "abc123", parent_id: null, user_id: null },
37
- entity_id: "button.example_button",
38
- last_changed: "2024-01-01T01:01:01.000000+00:00",
24
+ toggles: {
25
+ attributes: {
26
+ friendly_name: "toggles",
27
+ icon: "mdi:toggle-switch-variant-off",
28
+ restored: true,
29
+ supported_features: 0,
30
+ },
31
+ context: {
32
+ id: "01HWXTSCSB43FF1R6FX0QEE4Z6",
33
+ parent_id: null,
34
+ user_id: null,
35
+ },
36
+ entity_id: "binary_sensor.toggles",
37
+ last_changed: "2024-05-02T23:38:44.907718+00:00",
38
+ last_reported: "2024-05-02T23:38:44.907718+00:00",
39
+ last_updated: "2024-05-02T23:38:44.907718+00:00",
40
+ state: "unavailable",
39
41
  },
40
42
  },
41
43
  calendar: {
42
- example_calendar: {
43
- attributes: { friendly_name: "Example calendar", offset_reached: false },
44
- context: { id: "abc123", parent_id: null, user_id: null },
45
- entity_id: "calendar.example_calendar",
46
- last_changed: "2024-01-01T01:01:01.000000+00:00",
47
- last_updated: "2024-01-01T01:01:01.000000+00:00",
44
+ united_states_tx: {
45
+ attributes: {
46
+ all_day: true,
47
+ description: "",
48
+ end_time: "2024-05-28 00:00:00",
49
+ friendly_name: "United States, TX",
50
+ location: "United States, TX",
51
+ message: "Memorial Day",
52
+ start_time: "2024-05-27 00:00:00",
53
+ },
54
+ context: {
55
+ id: "01HWXTYEEFBB7QQC1CSM6PAR36",
56
+ parent_id: null,
57
+ user_id: null,
58
+ },
59
+ entity_id: "calendar.united_states_tx",
60
+ last_changed: "2024-05-02T23:41:30.447850+00:00",
61
+ last_reported: "2024-05-02T23:41:30.449701+00:00",
62
+ last_updated: "2024-05-02T23:41:30.447850+00:00",
48
63
  state: "off",
49
64
  },
50
65
  },
51
- light: {
52
- example_light: {
53
- attributes: {
54
- brightness: 255,
55
- color_mode: "color_temp",
56
- color_temp: 253,
57
- color_temp_kelvin: 3952,
58
- dynamics: "none",
59
- friendly_name: "Example light",
60
- hs_color: [26.835, 35.746],
61
- max_color_temp_kelvin: 6535,
62
- max_mireds: 500,
63
- min_color_temp_kelvin: 2000,
64
- min_mireds: 153,
65
- mode: "normal",
66
- rgb_color: [255, 204, 163],
67
- supported_color_modes: ["color_temp", "xy"],
68
- supported_features: 40,
69
- xy_color: [0.424, 0.366],
70
- },
71
- context: { id: "abc123", parent_id: null, user_id: null },
72
- entity_id: "light.example_light",
73
- last_changed: "2024-01-01T01:01:01.000000+00:00",
74
- last_updated: "2024-01-01T01:01:01.000000+00:00",
75
- state: "on",
66
+ person: {
67
+ digital_alchemy: {
68
+ attributes: {
69
+ device_trackers: [],
70
+ editable: true,
71
+ friendly_name: "digital-alchemy",
72
+ id: "digital_alchemy",
73
+ user_id: "4dd1cf7e93e94f3fbaf419501f9a3d59",
74
+ },
75
+ context: {
76
+ id: "01HWXTSCSBRKJ9T2KV1JNER5KQ",
77
+ parent_id: null,
78
+ user_id: null,
79
+ },
80
+ entity_id: "person.digital_alchemy",
81
+ last_changed: "2024-05-02T23:38:39.485125+00:00",
82
+ last_reported: "2024-05-02T23:38:44.907957+00:00",
83
+ last_updated: "2024-05-02T23:38:44.907957+00:00",
84
+ state: "unknown",
76
85
  },
77
86
  },
78
- scene: {
79
- example_scene: {
80
- attributes: { friendly_name: "Example scene" },
81
- context: { id: "abc123", parent_id: null, user_id: null },
82
- entity_id: "scene.example_scene",
83
- last_changed: "2024-01-01T01:01:01.000000+00:00",
84
- last_updated: "2024-01-01T01:01:01.000000+00:00",
85
- state: "2024-01-01T01:01:01.000000+00:00",
87
+ sensor: {
88
+ magic: {
89
+ attributes: {
90
+ friendly_name: "magic",
91
+ icon: "mdi:satellite-uplink",
92
+ restored: true,
93
+ supported_features: 0,
94
+ },
95
+ context: {
96
+ id: "01HWXTSCSBW34BP3R20RJ09CVZ",
97
+ parent_id: null,
98
+ user_id: null,
99
+ },
100
+ entity_id: "sensor.magic",
101
+ last_changed: "2024-05-02T23:38:44.907694+00:00",
102
+ last_reported: "2024-05-02T23:38:44.907694+00:00",
103
+ last_updated: "2024-05-02T23:38:44.907694+00:00",
104
+ state: "unavailable",
105
+ },
106
+ sun_next_dawn: {
107
+ attributes: {
108
+ device_class: "timestamp",
109
+ friendly_name: "Sun Next dawn",
110
+ },
111
+ context: {
112
+ id: "01HWXTS8W1SRTPT5K1XM0G491X",
113
+ parent_id: null,
114
+ user_id: null,
115
+ },
116
+ entity_id: "sensor.sun_next_dawn",
117
+ last_changed: "2024-05-02T23:38:40.897643+00:00",
118
+ last_reported: "2024-05-02T23:38:40.897643+00:00",
119
+ last_updated: "2024-05-02T23:38:40.897643+00:00",
120
+ state: "2024-05-03T03:24:45+00:00",
121
+ },
122
+ sun_next_dusk: {
123
+ attributes: {
124
+ device_class: "timestamp",
125
+ friendly_name: "Sun Next dusk",
126
+ },
127
+ context: {
128
+ id: "01HWXTS8W1S95P1MVHDGHSQEB2",
129
+ parent_id: null,
130
+ user_id: null,
131
+ },
132
+ entity_id: "sensor.sun_next_dusk",
133
+ last_changed: "2024-05-02T23:38:40.897814+00:00",
134
+ last_reported: "2024-05-02T23:38:40.897814+00:00",
135
+ last_updated: "2024-05-02T23:38:40.897814+00:00",
136
+ state: "2024-05-03T19:51:10+00:00",
137
+ },
138
+ sun_next_midnight: {
139
+ attributes: {
140
+ device_class: "timestamp",
141
+ friendly_name: "Sun Next midnight",
142
+ },
143
+ context: {
144
+ id: "01HWXTS8W1YQCPA3WZ69Y9JSPD",
145
+ parent_id: null,
146
+ user_id: null,
147
+ },
148
+ entity_id: "sensor.sun_next_midnight",
149
+ last_changed: "2024-05-02T23:38:40.897950+00:00",
150
+ last_reported: "2024-05-02T23:38:40.897950+00:00",
151
+ last_updated: "2024-05-02T23:38:40.897950+00:00",
152
+ state: "2024-05-03T23:37:12+00:00",
153
+ },
154
+ sun_next_noon: {
155
+ attributes: {
156
+ device_class: "timestamp",
157
+ friendly_name: "Sun Next noon",
158
+ },
159
+ context: {
160
+ id: "01HWXTS8W28MVV48CQ31JB2WKC",
161
+ parent_id: null,
162
+ user_id: null,
163
+ },
164
+ entity_id: "sensor.sun_next_noon",
165
+ last_changed: "2024-05-02T23:38:40.898068+00:00",
166
+ last_reported: "2024-05-02T23:38:40.898068+00:00",
167
+ last_updated: "2024-05-02T23:38:40.898068+00:00",
168
+ state: "2024-05-03T11:37:19+00:00",
169
+ },
170
+ sun_next_rising: {
171
+ attributes: {
172
+ device_class: "timestamp",
173
+ friendly_name: "Sun Next rising",
174
+ },
175
+ context: {
176
+ id: "01HWXTS8W2MMADKGWE4A5BMH51",
177
+ parent_id: null,
178
+ user_id: null,
179
+ },
180
+ entity_id: "sensor.sun_next_rising",
181
+ last_changed: "2024-05-02T23:38:40.898182+00:00",
182
+ last_reported: "2024-05-02T23:38:40.898182+00:00",
183
+ last_updated: "2024-05-02T23:38:40.898182+00:00",
184
+ state: "2024-05-03T04:05:17+00:00",
185
+ },
186
+ sun_next_setting: {
187
+ attributes: {
188
+ device_class: "timestamp",
189
+ friendly_name: "Sun Next setting",
190
+ },
191
+ context: {
192
+ id: "01HWXTS8W24KWTHR2B6V32NCXG",
193
+ parent_id: null,
194
+ user_id: null,
195
+ },
196
+ entity_id: "sensor.sun_next_setting",
197
+ last_changed: "2024-05-02T23:38:40.898289+00:00",
198
+ last_reported: "2024-05-02T23:38:40.898289+00:00",
199
+ last_updated: "2024-05-02T23:38:40.898289+00:00",
200
+ state: "2024-05-03T19:10:21+00:00",
86
201
  },
87
202
  },
88
- sensor: {
89
- example_sensor: {
90
- attributes: { friendly_name: "Example sensor" },
91
- context: { id: "abc123", parent_id: null, user_id: null },
92
- entity_id: "sensor.example_sensor",
93
- last_changed: "2024-01-01T01:01:01.000000+00:00",
94
- last_updated: "2024-01-01T01:01:01.000000+00:00",
95
- state: "High",
203
+ sun: {
204
+ sun: {
205
+ attributes: {
206
+ azimuth: 0.35,
207
+ elevation: -21.86,
208
+ friendly_name: "Sun",
209
+ next_dawn: "2024-05-03T03:24:45.747945+00:00",
210
+ next_dusk: "2024-05-03T19:51:10.358970+00:00",
211
+ next_midnight: "2024-05-03T23:37:12+00:00",
212
+ next_noon: "2024-05-03T11:37:19+00:00",
213
+ next_rising: "2024-05-03T04:05:17.926549+00:00",
214
+ next_setting: "2024-05-03T19:10:21.280558+00:00",
215
+ rising: true,
216
+ },
217
+ context: {
218
+ id: "01HWXTS8W1J2TDGMN7KKNWP8DV",
219
+ parent_id: null,
220
+ user_id: null,
221
+ },
222
+ entity_id: "sun.sun",
223
+ last_changed: "2024-05-02T23:38:40.897074+00:00",
224
+ last_reported: "2024-05-02T23:38:40.897074+00:00",
225
+ last_updated: "2024-05-02T23:38:40.897074+00:00",
226
+ state: "below_horizon",
96
227
  },
97
228
  },
98
229
  switch: {
99
- example_switch: {
100
- attributes: { friendly_name: "Example switch" },
101
- context: { id: "abc123", parent_id: null, user_id: null },
102
- entity_id: "switch.example_switch",
103
- last_changed: "2024-01-01T01:01:01.000000+00:00",
104
- last_updated: "2024-01-01T01:01:01.000000+00:00",
105
- state: "off",
230
+ bedroom_lamp: {
231
+ attributes: {
232
+ friendly_name: "bedroom_lamp",
233
+ restored: true,
234
+ supported_features: 0,
235
+ },
236
+ context: {
237
+ id: "01HWXTSCSB7BK003CH3AYYVXCB",
238
+ parent_id: null,
239
+ user_id: null,
240
+ },
241
+ entity_id: "switch.bedroom_lamp",
242
+ last_changed: "2024-05-02T23:38:44.907730+00:00",
243
+ last_reported: "2024-05-02T23:38:44.907730+00:00",
244
+ last_updated: "2024-05-02T23:38:44.907730+00:00",
245
+ state: "unavailable",
246
+ },
247
+ kitchen_cabinets: {
248
+ attributes: {
249
+ friendly_name: "kitchen_cabinets",
250
+ restored: true,
251
+ supported_features: 0,
252
+ },
253
+ context: {
254
+ id: "01HWXTSCSBM9Y3SRQTFJ5CVK6H",
255
+ parent_id: null,
256
+ user_id: null,
257
+ },
258
+ entity_id: "switch.kitchen_cabinets",
259
+ last_changed: "2024-05-02T23:38:44.907743+00:00",
260
+ last_reported: "2024-05-02T23:38:44.907743+00:00",
261
+ last_updated: "2024-05-02T23:38:44.907743+00:00",
262
+ state: "unavailable",
263
+ },
264
+ living_room_mood_lights: {
265
+ attributes: {
266
+ friendly_name: "living_room_mood_lights",
267
+ restored: true,
268
+ supported_features: 0,
269
+ },
270
+ context: {
271
+ id: "01HWXTSCSBS5B586JJ7VFH10SX",
272
+ parent_id: null,
273
+ user_id: null,
274
+ },
275
+ entity_id: "switch.living_room_mood_lights",
276
+ last_changed: "2024-05-02T23:38:44.907753+00:00",
277
+ last_reported: "2024-05-02T23:38:44.907753+00:00",
278
+ last_updated: "2024-05-02T23:38:44.907753+00:00",
279
+ state: "unavailable",
280
+ },
281
+ porch_light: {
282
+ attributes: {
283
+ friendly_name: "porch_light",
284
+ restored: true,
285
+ supported_features: 0,
286
+ },
287
+ context: {
288
+ id: "01HWXTSCSBFTSZR1M5XAK7XSR8",
289
+ parent_id: null,
290
+ user_id: null,
291
+ },
292
+ entity_id: "switch.porch_light",
293
+ last_changed: "2024-05-02T23:38:44.907761+00:00",
294
+ last_reported: "2024-05-02T23:38:44.907761+00:00",
295
+ last_updated: "2024-05-02T23:38:44.907761+00:00",
296
+ state: "unavailable",
297
+ },
298
+ },
299
+ todo: {
300
+ shopping_list: {
301
+ attributes: {
302
+ friendly_name: "Shopping List",
303
+ supported_features: 15,
304
+ },
305
+ context: {
306
+ id: "01HWXTS8X3D417XC4YJTG8QJWB",
307
+ parent_id: null,
308
+ user_id: null,
309
+ },
310
+ entity_id: "todo.shopping_list",
311
+ last_changed: "2024-05-02T23:38:40.931953+00:00",
312
+ last_reported: "2024-05-02T23:38:40.931953+00:00",
313
+ last_updated: "2024-05-02T23:38:40.931953+00:00",
314
+ state: "0",
315
+ },
316
+ },
317
+ tts: {
318
+ google_en_com: {
319
+ attributes: {
320
+ friendly_name: "Google en com",
321
+ },
322
+ context: {
323
+ id: "01HWXTS8XMPQ236CDJ6X7C6E60",
324
+ parent_id: null,
325
+ user_id: null,
326
+ },
327
+ entity_id: "tts.google_en_com",
328
+ last_changed: "2024-05-02T23:38:40.948156+00:00",
329
+ last_reported: "2024-05-02T23:38:40.948156+00:00",
330
+ last_updated: "2024-05-02T23:38:40.948156+00:00",
331
+ state: "unknown",
332
+ },
333
+ },
334
+ zone: {
335
+ home: {
336
+ attributes: {
337
+ editable: true,
338
+ friendly_name: "Home",
339
+ icon: "mdi:home",
340
+ latitude: 52.373_133_9,
341
+ longitude: 4.890_314_7,
342
+ passive: false,
343
+ persons: [],
344
+ radius: 100,
345
+ },
346
+ context: {
347
+ id: "01HWXTS8GMB4ZW20P8MGMX0QSN",
348
+ parent_id: null,
349
+ user_id: null,
350
+ },
351
+ entity_id: "zone.home",
352
+ last_changed: "2024-05-02T23:38:40.532050+00:00",
353
+ last_reported: "2024-05-02T23:38:40.532050+00:00",
354
+ last_updated: "2024-05-02T23:38:40.532050+00:00",
355
+ state: "0",
106
356
  },
107
357
  },
108
358
  };
@@ -1 +1 @@
1
- {"version":3,"file":"dynamic.js","sourceRoot":"","sources":["../src/dynamic.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dynamic.js","sourceRoot":"","sources":["../src/dynamic.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import { TServiceParams } from "@digital-alchemy/core";
2
+ export declare function Entities({ synapse, context }: TServiceParams): {
3
+ magicSensor: import("@digital-alchemy/synapse").VirtualSensor<"50", object>;
4
+ togglesTheBinarySensor: import("@digital-alchemy/synapse").VirtualBinarySensor;
5
+ };
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Entities = void 0;
4
+ function Entities({ synapse, context }) {
5
+ synapse.switch({ context, name: "bedroom_lamp" });
6
+ synapse.switch({ context, name: "kitchen_cabinets" });
7
+ synapse.switch({ context, name: "living_room_mood_lights" });
8
+ synapse.switch({ context, name: "porch_light" });
9
+ const magicSensor = synapse.sensor({
10
+ context,
11
+ defaultState: "50",
12
+ name: "magic",
13
+ });
14
+ const togglesTheBinarySensor = synapse.binary_sensor({
15
+ context,
16
+ name: "toggles",
17
+ });
18
+ return { magicSensor, togglesTheBinarySensor };
19
+ }
20
+ exports.Entities = Entities;
21
+ //# sourceMappingURL=entities.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entities.js","sourceRoot":"","sources":["../../../src/e2e/app/entities.ts"],"names":[],"mappings":";;;AAEA,SAAgB,QAAQ,CAAC,EAAE,OAAO,EAAE,OAAO,EAAkB;IAC3D,OAAO,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,CAAC;IAClD,OAAO,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC,CAAC;IACtD,OAAO,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,yBAAyB,EAAE,CAAC,CAAC;IAC7D,OAAO,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC,CAAC;IACjD,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC;QACjC,OAAO;QACP,YAAY,EAAE,IAAI;QAClB,IAAI,EAAE,OAAO;KACd,CAAC,CAAC;IACH,MAAM,sBAAsB,GAAG,OAAO,CAAC,aAAa,CAAC;QACnD,OAAO;QACP,IAAI,EAAE,SAAS;KAChB,CAAC,CAAC;IACH,OAAO,EAAE,WAAW,EAAE,sBAAsB,EAAE,CAAC;AACjD,CAAC;AAfD,4BAeC"}
@@ -0,0 +1,10 @@
1
+ import { Entities } from "./entities";
2
+ declare const HASS_E2E: import("@digital-alchemy/core").ApplicationDefinition<{
3
+ entities: typeof Entities;
4
+ }, import("@digital-alchemy/core").ModuleConfiguration>;
5
+ declare module "@digital-alchemy/core" {
6
+ interface LoadedModules {
7
+ hass_e2e: typeof HASS_E2E;
8
+ }
9
+ }
10
+ export {};
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const core_1 = require("@digital-alchemy/core");
4
+ const synapse_1 = require("@digital-alchemy/synapse");
5
+ const __1 = require("../..");
6
+ const entities_1 = require("./entities");
7
+ const HASS_E2E = (0, core_1.CreateApplication)({
8
+ libraries: [synapse_1.LIB_SYNAPSE, __1.LIB_HASS],
9
+ name: "hass_e2e",
10
+ services: {
11
+ entities: entities_1.Entities,
12
+ },
13
+ });
14
+ setImmediate(async () => await HASS_E2E.bootstrap());
15
+ //# sourceMappingURL=main.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"main.js","sourceRoot":"","sources":["../../../src/e2e/app/main.ts"],"names":[],"mappings":";;AAAA,gDAA0D;AAC1D,sDAAuD;AAEvD,6BAAiC;AACjC,yCAAsC;AAEtC,MAAM,QAAQ,GAAG,IAAA,wBAAiB,EAAC;IACjC,SAAS,EAAE,CAAC,qBAAW,EAAE,YAAQ,CAAC;IAClC,IAAI,EAAE,UAAU;IAChB,QAAQ,EAAE;QACR,QAAQ,EAAE,mBAAQ;KACnB;CACF,CAAC,CAAC;AAQH,YAAY,CAAC,KAAK,IAAI,EAAE,CAAC,MAAM,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,99 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const core_1 = require("@digital-alchemy/core");
4
+ const helpers_1 = require("../helpers");
5
+ const mock_assistant_1 = require("../mock_assistant");
6
+ const utils_1 = require("./utils");
7
+ describe("Area E2E", () => {
8
+ let application;
9
+ const testArea = "test";
10
+ afterEach(async () => {
11
+ if (application) {
12
+ await application.teardown();
13
+ application = undefined;
14
+ }
15
+ jest.restoreAllMocks();
16
+ });
17
+ it("should fire events on registry updated", async () => {
18
+ expect.assertions(1);
19
+ application = (0, mock_assistant_1.CreateTestingApplication)({
20
+ Test({ lifecycle, hass, event }) {
21
+ lifecycle.onReady(async () => {
22
+ let hit = false;
23
+ event.on(helpers_1.AREA_REGISTRY_UPDATED, () => (hit = true));
24
+ await hass.socket.fireEvent("area_registry_updated");
25
+ await (0, core_1.sleep)(50);
26
+ expect(hit).toBe(true);
27
+ await application.teardown();
28
+ });
29
+ },
30
+ });
31
+ await application.bootstrap((0, mock_assistant_1.SILENT_BOOT)({ hass: { BASE_URL: utils_1.BASE_URL, TOKEN: utils_1.TOKEN } }));
32
+ });
33
+ it("should create a area", async () => {
34
+ expect.assertions(1);
35
+ application = (0, mock_assistant_1.CreateTestingApplication)({
36
+ Test({ lifecycle, hass }) {
37
+ lifecycle.onReady(async () => {
38
+ await hass.area.create({
39
+ floor_id: "downstairs",
40
+ name: "test",
41
+ });
42
+ expect(hass.area.current.some(i => i.area_id === testArea)).toBe(true);
43
+ await application.teardown();
44
+ });
45
+ },
46
+ });
47
+ await application.bootstrap((0, mock_assistant_1.SILENT_BOOT)({ hass: { BASE_URL: utils_1.BASE_URL, TOKEN: utils_1.TOKEN } }));
48
+ });
49
+ it("should update a area", async () => {
50
+ expect.assertions(1);
51
+ application = (0, mock_assistant_1.CreateTestingApplication)({
52
+ Test({ lifecycle, hass }) {
53
+ lifecycle.onReady(async () => {
54
+ const item = hass.area.current.find(i => i.area_id === testArea);
55
+ await hass.area.update({
56
+ ...item,
57
+ name: "extra test",
58
+ });
59
+ expect(hass.area.current.find(i => i.area_id === testArea)?.name).toBe("extra test");
60
+ await application.teardown();
61
+ });
62
+ },
63
+ });
64
+ await application.bootstrap((0, mock_assistant_1.SILENT_BOOT)({ hass: { BASE_URL: utils_1.BASE_URL, TOKEN: utils_1.TOKEN } }));
65
+ });
66
+ it("should add and remove from area", async () => {
67
+ expect.assertions(3);
68
+ application = (0, mock_assistant_1.CreateTestingApplication)({
69
+ Test({ lifecycle, hass }) {
70
+ lifecycle.onReady(async () => {
71
+ await hass.area.apply(testArea, ["switch.porch_light"]);
72
+ await (0, core_1.sleep)(10);
73
+ expect(hass.entity.registry.current.find(i => i.entity_id === "switch.porch_light")?.area_id).toBe(testArea);
74
+ expect(hass.entity.byArea(testArea).length).toBe(1);
75
+ await hass.area.apply("", ["switch.porch_light"]);
76
+ await (0, core_1.sleep)(10);
77
+ expect(hass.entity.registry.current.find(i => i.entity_id === "switch.porch_light")?.area_id).toBe("");
78
+ await application.teardown();
79
+ });
80
+ },
81
+ });
82
+ await application.bootstrap((0, mock_assistant_1.SILENT_BOOT)({ hass: { BASE_URL: utils_1.BASE_URL, TOKEN: utils_1.TOKEN } }));
83
+ });
84
+ it("should delete a area", async () => {
85
+ expect.assertions(2);
86
+ application = (0, mock_assistant_1.CreateTestingApplication)({
87
+ Test({ lifecycle, hass }) {
88
+ lifecycle.onReady(async () => {
89
+ expect(hass.area.current.some(i => i.area_id === testArea)).toBe(true);
90
+ await hass.area.delete(testArea);
91
+ expect(hass.area.current.some(i => i.area_id === testArea)).toBe(false);
92
+ await application.teardown();
93
+ });
94
+ },
95
+ });
96
+ await application.bootstrap((0, mock_assistant_1.SILENT_BOOT)({ hass: { BASE_URL: utils_1.BASE_URL, TOKEN: utils_1.TOKEN } }));
97
+ });
98
+ });
99
+ //# sourceMappingURL=area.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"area.spec.js","sourceRoot":"","sources":["../../src/e2e/area.spec.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};