@digital-alchemy/hass 24.9.2 → 24.9.4

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 (197) hide show
  1. package/README.md +4 -1
  2. package/dist/dynamic.d.ts +1 -1
  3. package/dist/dynamic.js +7 -2
  4. package/dist/dynamic.js.map +1 -1
  5. package/dist/extensions/area.extension.d.ts +2 -12
  6. package/dist/extensions/area.extension.js +20 -26
  7. package/dist/extensions/area.extension.js.map +1 -1
  8. package/dist/extensions/backup.extension.d.ts +2 -7
  9. package/dist/extensions/backup.extension.js +5 -8
  10. package/dist/extensions/backup.extension.js.map +1 -1
  11. package/dist/extensions/call-proxy.extension.d.ts +1 -1
  12. package/dist/extensions/call-proxy.extension.js +11 -29
  13. package/dist/extensions/call-proxy.extension.js.map +1 -1
  14. package/dist/extensions/config.extension.d.ts +2 -6
  15. package/dist/extensions/config.extension.js +21 -25
  16. package/dist/extensions/config.extension.js.map +1 -1
  17. package/dist/extensions/conversation.extension.d.ts +2 -6
  18. package/dist/extensions/conversation.extension.js +5 -8
  19. package/dist/extensions/conversation.extension.js.map +1 -1
  20. package/dist/extensions/device.extension.d.ts +2 -5
  21. package/dist/extensions/device.extension.js +16 -22
  22. package/dist/extensions/device.extension.js.map +1 -1
  23. package/dist/extensions/entity.extension.d.ts +2 -61
  24. package/dist/extensions/entity.extension.js +42 -83
  25. package/dist/extensions/entity.extension.js.map +1 -1
  26. package/dist/extensions/events.extension.d.ts +3 -11
  27. package/dist/extensions/events.extension.js +8 -11
  28. package/dist/extensions/events.extension.js.map +1 -1
  29. package/dist/extensions/fetch-api.extension.d.ts +12 -4
  30. package/dist/extensions/fetch-api.extension.js +23 -35
  31. package/dist/extensions/fetch-api.extension.js.map +1 -1
  32. package/dist/extensions/floor.extension.d.ts +2 -9
  33. package/dist/extensions/floor.extension.js +17 -23
  34. package/dist/extensions/floor.extension.js.map +1 -1
  35. package/dist/extensions/id-by.extension.js +15 -20
  36. package/dist/extensions/id-by.extension.js.map +1 -1
  37. package/dist/extensions/index.d.ts +1 -0
  38. package/dist/extensions/index.js +16 -18
  39. package/dist/extensions/index.js.map +1 -1
  40. package/dist/extensions/internal.extension.d.ts +18 -0
  41. package/dist/extensions/internal.extension.js +102 -0
  42. package/dist/extensions/internal.extension.js.map +1 -0
  43. package/dist/extensions/label.extension.d.ts +2 -9
  44. package/dist/extensions/label.extension.js +17 -23
  45. package/dist/extensions/label.extension.js.map +1 -1
  46. package/dist/extensions/reference.extension.d.ts +2 -12
  47. package/dist/extensions/reference.extension.js +19 -25
  48. package/dist/extensions/reference.extension.js.map +1 -1
  49. package/dist/extensions/registry.extension.d.ts +2 -7
  50. package/dist/extensions/registry.extension.js +1 -4
  51. package/dist/extensions/registry.extension.js.map +1 -1
  52. package/dist/extensions/websocket-api.extension.d.ts +3 -78
  53. package/dist/extensions/websocket-api.extension.js +82 -165
  54. package/dist/extensions/websocket-api.extension.js.map +1 -1
  55. package/dist/extensions/zone.extension.d.ts +2 -7
  56. package/dist/extensions/zone.extension.js +15 -21
  57. package/dist/extensions/zone.extension.js.map +1 -1
  58. package/dist/hass.module.d.ts +47 -36
  59. package/dist/hass.module.js +70 -70
  60. package/dist/hass.module.js.map +1 -1
  61. package/dist/helpers/backup.helper.js +1 -2
  62. package/dist/helpers/constants.helper.js +15 -18
  63. package/dist/helpers/constants.helper.js.map +1 -1
  64. package/dist/helpers/device.helper.js +2 -5
  65. package/dist/helpers/device.helper.js.map +1 -1
  66. package/dist/helpers/entity-state.helper.d.ts +3 -8
  67. package/dist/helpers/entity-state.helper.js +1 -8
  68. package/dist/helpers/entity-state.helper.js.map +1 -1
  69. package/dist/helpers/features.helper.js +79 -85
  70. package/dist/helpers/features.helper.js.map +1 -1
  71. package/dist/helpers/fetch/calendar.js +1 -2
  72. package/dist/helpers/fetch/configuration.js +2 -5
  73. package/dist/helpers/fetch/configuration.js.map +1 -1
  74. package/dist/helpers/fetch/index.js +5 -8
  75. package/dist/helpers/fetch/index.js.map +1 -1
  76. package/dist/helpers/fetch/server-log.js +1 -2
  77. package/dist/helpers/fetch/server-log.js.map +1 -1
  78. package/dist/helpers/fetch/service-list.js +1 -2
  79. package/dist/helpers/fetch/weather-forecasts.js +1 -2
  80. package/dist/helpers/fetch/weather-forecasts.js.map +1 -1
  81. package/dist/helpers/fetch.helper.d.ts +162 -0
  82. package/dist/helpers/fetch.helper.js +161 -0
  83. package/dist/helpers/fetch.helper.js.map +1 -0
  84. package/dist/helpers/id-by.helper.js +1 -2
  85. package/dist/helpers/index.d.ts +2 -1
  86. package/dist/helpers/index.js +13 -15
  87. package/dist/helpers/index.js.map +1 -1
  88. package/dist/helpers/interfaces.helper.d.ts +228 -0
  89. package/dist/helpers/interfaces.helper.js +10 -0
  90. package/dist/helpers/interfaces.helper.js.map +1 -0
  91. package/dist/helpers/manifest.helper.d.ts +0 -1
  92. package/dist/helpers/manifest.helper.js +0 -1
  93. package/dist/helpers/notify.helper.d.ts +11 -3
  94. package/dist/helpers/notify.helper.js +1 -2
  95. package/dist/helpers/registry.js +7 -10
  96. package/dist/helpers/registry.js.map +1 -1
  97. package/dist/helpers/utility.helper.d.ts +6 -1
  98. package/dist/helpers/utility.helper.js +9 -13
  99. package/dist/helpers/utility.helper.js.map +1 -1
  100. package/dist/helpers/websocket.helper.d.ts +1 -2
  101. package/dist/helpers/websocket.helper.js +1 -2
  102. package/dist/index.js +5 -8
  103. package/dist/index.js.map +1 -1
  104. package/dist/mock_assistant/extensions/area.extension.d.ts +8 -0
  105. package/dist/mock_assistant/extensions/area.extension.js +51 -0
  106. package/dist/mock_assistant/extensions/area.extension.js.map +1 -0
  107. package/dist/mock_assistant/extensions/config.extension.d.ts +14 -0
  108. package/dist/mock_assistant/extensions/config.extension.js +29 -0
  109. package/dist/mock_assistant/extensions/config.extension.js.map +1 -0
  110. package/dist/mock_assistant/extensions/device.extension.d.ts +8 -0
  111. package/dist/mock_assistant/extensions/device.extension.js +33 -0
  112. package/dist/mock_assistant/extensions/device.extension.js.map +1 -0
  113. package/dist/mock_assistant/extensions/entity-registry.extension.d.ts +13 -0
  114. package/dist/mock_assistant/extensions/entity-registry.extension.js +28 -0
  115. package/dist/mock_assistant/extensions/entity-registry.extension.js.map +1 -0
  116. package/dist/mock_assistant/extensions/entity.extension.d.ts +30 -0
  117. package/dist/mock_assistant/extensions/entity.extension.js +77 -0
  118. package/dist/mock_assistant/extensions/entity.extension.js.map +1 -0
  119. package/dist/mock_assistant/extensions/events.extension.d.ts +1 -1
  120. package/dist/mock_assistant/extensions/events.extension.js +3 -6
  121. package/dist/mock_assistant/extensions/events.extension.js.map +1 -1
  122. package/dist/mock_assistant/extensions/fetch.extension.d.ts +1 -0
  123. package/dist/mock_assistant/extensions/fetch.extension.js +4 -0
  124. package/dist/mock_assistant/extensions/fetch.extension.js.map +1 -0
  125. package/dist/mock_assistant/extensions/fixtures.extension.d.ts +1 -1
  126. package/dist/mock_assistant/extensions/fixtures.extension.js +29 -33
  127. package/dist/mock_assistant/extensions/fixtures.extension.js.map +1 -1
  128. package/dist/mock_assistant/extensions/floor.extension.d.ts +8 -0
  129. package/dist/mock_assistant/extensions/floor.extension.js +51 -0
  130. package/dist/mock_assistant/extensions/floor.extension.js.map +1 -0
  131. package/dist/mock_assistant/extensions/index.d.ts +10 -0
  132. package/dist/mock_assistant/extensions/index.js +12 -5
  133. package/dist/mock_assistant/extensions/index.js.map +1 -1
  134. package/dist/mock_assistant/extensions/label.extension.d.ts +8 -0
  135. package/dist/mock_assistant/extensions/label.extension.js +51 -0
  136. package/dist/mock_assistant/extensions/label.extension.js.map +1 -0
  137. package/dist/mock_assistant/extensions/services.extension.d.ts +12 -0
  138. package/dist/mock_assistant/extensions/services.extension.js +20 -0
  139. package/dist/mock_assistant/extensions/services.extension.js.map +1 -0
  140. package/dist/mock_assistant/extensions/websocket-api.extension.d.ts +15 -0
  141. package/dist/mock_assistant/extensions/websocket-api.extension.js +68 -0
  142. package/dist/mock_assistant/extensions/websocket-api.extension.js.map +1 -0
  143. package/dist/mock_assistant/extensions/zone.extension.d.ts +8 -0
  144. package/dist/mock_assistant/extensions/zone.extension.js +51 -0
  145. package/dist/mock_assistant/extensions/zone.extension.js.map +1 -0
  146. package/dist/mock_assistant/helpers/fixtures.js +1 -2
  147. package/dist/mock_assistant/helpers/index.d.ts +0 -1
  148. package/dist/mock_assistant/helpers/index.js +1 -5
  149. package/dist/mock_assistant/helpers/index.js.map +1 -1
  150. package/dist/mock_assistant/index.js +3 -6
  151. package/dist/mock_assistant/index.js.map +1 -1
  152. package/dist/mock_assistant/main.js +11 -15
  153. package/dist/mock_assistant/main.js.map +1 -1
  154. package/dist/mock_assistant/mock-assistant.module.d.ts +156 -3
  155. package/dist/mock_assistant/mock-assistant.module.js +56 -11
  156. package/dist/mock_assistant/mock-assistant.module.js.map +1 -1
  157. package/dist/quickboot.module.js +5 -8
  158. package/dist/quickboot.module.js.map +1 -1
  159. package/dist/testing/area.spec.js +106 -194
  160. package/dist/testing/area.spec.js.map +1 -1
  161. package/dist/testing/backup.spec.js +97 -139
  162. package/dist/testing/backup.spec.js.map +1 -1
  163. package/dist/testing/config.spec.js +79 -153
  164. package/dist/testing/config.spec.js.map +1 -1
  165. package/dist/testing/device.spec.js +35 -69
  166. package/dist/testing/device.spec.js.map +1 -1
  167. package/dist/testing/entity.spec.js +94 -149
  168. package/dist/testing/entity.spec.js.map +1 -1
  169. package/dist/testing/events.spec.js +33 -57
  170. package/dist/testing/events.spec.js.map +1 -1
  171. package/dist/testing/fetch-api.spec.js +242 -427
  172. package/dist/testing/fetch-api.spec.js.map +1 -1
  173. package/dist/testing/fixtures.spec.d.ts +1 -0
  174. package/dist/testing/fixtures.spec.js +150 -0
  175. package/dist/testing/fixtures.spec.js.map +1 -0
  176. package/dist/testing/floor.spec.js +106 -194
  177. package/dist/testing/floor.spec.js.map +1 -1
  178. package/dist/testing/id-by.spec.js +68 -107
  179. package/dist/testing/id-by.spec.js.map +1 -1
  180. package/dist/testing/label.spec.js +106 -194
  181. package/dist/testing/label.spec.js.map +1 -1
  182. package/dist/testing/ref-by.spec.js +155 -219
  183. package/dist/testing/ref-by.spec.js.map +1 -1
  184. package/dist/testing/websocket.spec.d.ts +1 -8
  185. package/dist/testing/websocket.spec.js +35 -50
  186. package/dist/testing/websocket.spec.js.map +1 -1
  187. package/dist/testing/workflow.spec.js +82 -81
  188. package/dist/testing/workflow.spec.js.map +1 -1
  189. package/dist/testing/zone.spec.js +61 -113
  190. package/dist/testing/zone.spec.js.map +1 -1
  191. package/package.json +57 -41
  192. package/dist/helpers/metrics.helper.d.ts +0 -29
  193. package/dist/helpers/metrics.helper.js +0 -62
  194. package/dist/helpers/metrics.helper.js.map +0 -1
  195. package/dist/mock_assistant/helpers/utils.d.ts +0 -4
  196. package/dist/mock_assistant/helpers/utils.js +0 -57
  197. package/dist/mock_assistant/helpers/utils.js.map +0 -1
@@ -1,62 +1,3 @@
1
1
  import { TServiceParams } from "@digital-alchemy/core";
2
- import { ALL_DOMAINS, ANY_ENTITY, EditLabelOptions, ENTITY_STATE, EntityHistoryDTO, EntityHistoryResult, EntityRegistryItem, PICK_ENTITY } from "..";
3
- type TMasterState = {
4
- [DOMAIN in ALL_DOMAINS]: Record<string, ENTITY_STATE<PICK_ENTITY<DOMAIN>>>;
5
- };
6
- export declare function EntityManager({ logger, hass, config, lifecycle, event, context, internal, }: TServiceParams): {
7
- /**
8
- * Internal library use only
9
- */
10
- _entityUpdateReceiver: <ENTITY extends ANY_ENTITY = import("..").TRawEntityIds>(entity_id: ENTITY, new_state: ENTITY_STATE<ENTITY>, old_state: ENTITY_STATE<ENTITY>) => void;
11
- _masterState: () => Partial<TMasterState>;
12
- /**
13
- * Lists all entities within a specified domain. This is useful for
14
- * domain-specific operations or queries.
15
- *
16
- * @deprecated use `hass.idBy.domain` | `hass.refBy.domain`
17
- */
18
- findByDomain: <DOMAIN extends ALL_DOMAINS>(domain: DOMAIN) => import("..").ByIdProxy<PICK_ENTITY<DOMAIN>>[];
19
- /**
20
- * Retrieves the current state of a given entity. This method returns
21
- * raw data, offering a direct view of the entity's state at a given moment.
22
- */
23
- getCurrentState: <ENTITY_ID extends ANY_ENTITY>(entity_id: ENTITY_ID) => ENTITY_STATE<ENTITY_ID>;
24
- /**
25
- * Retrieves the historical state data of entities over a specified time
26
- * period. Useful for analysis or tracking changes over time.
27
- */
28
- history: <ENTITES extends ANY_ENTITY[]>(payload: Omit<EntityHistoryDTO<ENTITES>, "type">) => Promise<{
29
- [k: string]: EntityHistoryResult[];
30
- }>;
31
- /**
32
- * Provides a simple listing of all entity IDs. Useful for enumeration
33
- * and quick reference to all available entities.
34
- */
35
- listEntities: <DOMAIN extends ALL_DOMAINS = import("..").TRawDomains>(domain?: DOMAIN) => PICK_ENTITY<DOMAIN>[];
36
- /**
37
- * Returns the previous entity state (not a proxy)
38
- */
39
- previousState: (entity_id: ANY_ENTITY) => ENTITY_STATE<import("..").TRawEntityIds>;
40
- /**
41
- * Initiates a refresh of the current entity states. Useful for ensuring
42
- * synchronization with the latest state data from Home Assistant.
43
- */
44
- refresh: (recursion?: number) => Promise<void>;
45
- /**
46
- * Interact with the entity registry
47
- */
48
- registry: {
49
- addLabel: ({ entity, label }: EditLabelOptions) => Promise<void>;
50
- current: EntityRegistryItem<ANY_ENTITY>[];
51
- get: <ENTITY extends ANY_ENTITY>(entity_id: ENTITY) => Promise<EntityRegistryItem<ENTITY>>;
52
- list: () => Promise<EntityRegistryItem<import("..").TRawEntityIds>[]>;
53
- registryList: () => Promise<EntityRegistryItem<import("..").TRawEntityIds>[]>;
54
- removeEntity: (entity_id: ANY_ENTITY | ANY_ENTITY[]) => Promise<void>;
55
- removeLabel: ({ entity, label }: EditLabelOptions) => Promise<void>;
56
- source: () => Promise<Record<import("..").TRawEntityIds, {
57
- domain: string;
58
- }>>;
59
- };
60
- warnEarly: (method: string) => void;
61
- };
62
- export {};
2
+ import { HassEntityManager } from "..";
3
+ export declare function EntityManager({ logger, hass, config, lifecycle, event, context, internal, }: TServiceParams): HassEntityManager;
@@ -1,14 +1,9 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.EntityManager = EntityManager;
4
- const tslib_1 = require("tslib");
5
- const core_1 = require("@digital-alchemy/core");
6
- const dayjs_1 = tslib_1.__importDefault(require("dayjs"));
7
- const process_1 = require("process");
8
- const __1 = require("..");
1
+ import { debounce, each, eachSeries, INCREMENT, is, SECOND, sleep, START, } from "@digital-alchemy/core";
2
+ import dayjs from "dayjs";
3
+ import { ENTITY_REGISTRY_UPDATED, } from "..";
9
4
  const MAX_ATTEMPTS = 10;
10
5
  const RECENT = 5;
11
- function EntityManager({ logger, hass, config, lifecycle, event, context, internal, }) {
6
+ export function EntityManager({ logger, hass, config, lifecycle, event, context, internal, }) {
12
7
  // #MARK: Local vars
13
8
  /**
14
9
  * MASTER_STATE.switch.desk_light = {entity_id,state,attributes,...}
@@ -38,8 +33,8 @@ function EntityManager({ logger, hass, config, lifecycle, event, context, intern
38
33
  logger.trace({ payload }, `looking up entity history`);
39
34
  const result = (await hass.socket.sendMessage({
40
35
  ...payload,
41
- end_time: (0, dayjs_1.default)(payload.end_time).toISOString(),
42
- start_time: (0, dayjs_1.default)(payload.start_time).toISOString(),
36
+ end_time: dayjs(payload.end_time).toISOString(),
37
+ start_time: dayjs(payload.start_time).toISOString(),
43
38
  type: "history/history_during_period",
44
39
  }));
45
40
  const entities = Object.keys(result);
@@ -49,7 +44,7 @@ function EntityManager({ logger, hass, config, lifecycle, event, context, intern
49
44
  const value = states.map(data => {
50
45
  return {
51
46
  attributes: data.a,
52
- date: new Date(data.lu * core_1.SECOND),
47
+ date: new Date(data.lu * SECOND),
53
48
  state: data.s,
54
49
  };
55
50
  });
@@ -63,16 +58,12 @@ function EntityManager({ logger, hass, config, lifecycle, event, context, intern
63
58
  }
64
59
  return Object.keys(MASTER_STATE).flatMap(domain => Object.keys(MASTER_STATE[domain]).map(id => `${domain}.${id}`));
65
60
  }
66
- // #MARK: findByDomain
67
- function findByDomain(domain) {
68
- return Object.keys(MASTER_STATE[domain] ?? {}).map(i => hass.refBy.id(`${domain}.${i}`));
69
- }
70
61
  // #MARK: refresh
71
- async function refresh(recursion = core_1.START) {
72
- const now = (0, dayjs_1.default)();
62
+ async function refresh(recursion = START) {
63
+ const now = dayjs();
73
64
  if (lastRefresh) {
74
65
  const diff = lastRefresh.diff(now, "ms");
75
- if (diff >= RECENT * core_1.SECOND) {
66
+ if (diff >= RECENT * SECOND) {
76
67
  logger.warn({ diff }, `multiple refreshes in close time`);
77
68
  }
78
69
  }
@@ -80,14 +71,14 @@ function EntityManager({ logger, hass, config, lifecycle, event, context, intern
80
71
  // - Fetch list of entities
81
72
  const states = await hass.fetch.getAllEntities();
82
73
  // - Keep retrying until max failures reached
83
- if (!core_1.is.array(states) || core_1.is.empty(states)) {
74
+ if (!is.array(states) || is.empty(states)) {
84
75
  if (recursion > MAX_ATTEMPTS) {
85
76
  logger.fatal({ name: refresh }, `failed to load service list from Home Assistant. validate configuration`);
86
- (0, process_1.exit)();
77
+ process.exit();
87
78
  }
88
79
  logger.warn({ name: refresh, response: states }, "failed to retrieve entity list. retrying {%s}/[%s]", recursion, MAX_ATTEMPTS);
89
- await (0, core_1.sleep)(config.hass.RETRY_INTERVAL * core_1.SECOND);
90
- await refresh(recursion + core_1.INCREMENT);
80
+ await sleep(config.hass.RETRY_INTERVAL * SECOND);
81
+ await refresh(recursion + INCREMENT);
91
82
  return;
92
83
  }
93
84
  // - Preserve old state for comparison
@@ -99,12 +90,12 @@ function EntityManager({ logger, hass, config, lifecycle, event, context, intern
99
90
  states.forEach(entity => {
100
91
  // ? Set first, ensure data is populated
101
92
  // `nextTick` will fire AFTER loop finishes
102
- internal.utils.object.set(MASTER_STATE, entity.entity_id, entity, core_1.is.undefined(internal.utils.object.get(oldState, entity.entity_id)));
93
+ internal.utils.object.set(MASTER_STATE, entity.entity_id, entity, is.undefined(internal.utils.object.get(oldState, entity.entity_id)));
103
94
  if (!init) {
104
95
  return;
105
96
  }
106
97
  const old = internal.utils.object.get(oldState, entity.entity_id);
107
- if (core_1.is.equal(old, entity)) {
98
+ if (is.equal(old, entity)) {
108
99
  // logger.trace(
109
100
  // { entity_id: entity.entity_id, name: refresh },
110
101
  // `no change on refresh`,
@@ -116,15 +107,15 @@ function EntityManager({ logger, hass, config, lifecycle, event, context, intern
116
107
  // Attempt to not blow up the system?
117
108
  // TODO: does this gain anything? is a debounce needed somewhere else instead?
118
109
  setImmediate(async () => {
119
- await (0, core_1.each)(emitUpdates, async (entity) => await EntityUpdateReceiver(entity.entity_id, entity, internal.utils.object.get(oldState, entity.entity_id)));
110
+ await each(emitUpdates, async (entity) => await entityUpdateReceiver(entity.entity_id, entity, internal.utils.object.get(oldState, entity.entity_id)));
120
111
  });
121
112
  init = true;
122
113
  }
123
114
  // #MARK: EntityUpdateReceiver
124
- function EntityUpdateReceiver(entity_id, new_state, old_state) {
115
+ function entityUpdateReceiver(entity_id, new_state, old_state) {
125
116
  PREVIOUS_STATE.set(entity_id, old_state);
126
117
  if (new_state === null) {
127
- logger.warn({ name: EntityUpdateReceiver }, `removing deleted entity [%s] from {MASTER_STATE}`, entity_id);
118
+ logger.warn({ name: entityUpdateReceiver }, `removing deleted entity [%s] from {MASTER_STATE}`, entity_id);
128
119
  internal.utils.object.del(MASTER_STATE, entity_id);
129
120
  return;
130
121
  }
@@ -132,28 +123,25 @@ function EntityManager({ logger, hass, config, lifecycle, event, context, intern
132
123
  if (!hass.socket.pauseMessages) {
133
124
  event.emit(entity_id, new_state, old_state);
134
125
  const unique_id = hass.entity.registry.current.find(i => i.entity_id === entity_id)?.unique_id;
135
- if (core_1.is.number(unique_id) || !core_1.is.empty(unique_id)) {
126
+ if (is.number(unique_id) || !is.empty(unique_id)) {
136
127
  event.emit(unique_id, new_state, old_state);
137
128
  }
138
129
  }
139
130
  }
140
131
  // #MARK: onPostConfig
141
132
  lifecycle.onPostConfig(async function HassEntityPostConfig() {
142
- if (!config.hass.AUTO_CONNECT_SOCKET) {
143
- return;
144
- }
145
133
  logger.debug({ name: HassEntityPostConfig }, `pre populate {MASTER_STATE}`);
146
134
  await hass.entity.refresh();
147
135
  });
148
136
  async function AddLabel({ entity, label }) {
149
- await (0, core_1.each)([entity].flat(), async (entity) => {
150
- const current = await EntityGet(entity);
137
+ await each([entity].flat(), async (entity) => {
138
+ const current = await entityGet(entity);
151
139
  if (current?.labels?.includes(label)) {
152
140
  logger.debug({ name: entity }, `already has label {%s}`, label);
153
141
  return;
154
142
  }
155
143
  return await new Promise(async (done) => {
156
- event.once(__1.ENTITY_REGISTRY_UPDATED, done);
144
+ event.once(ENTITY_REGISTRY_UPDATED, done);
157
145
  await hass.socket.sendMessage({
158
146
  entity_id: entity,
159
147
  labels: [...current.labels, label],
@@ -164,7 +152,9 @@ function EntityManager({ logger, hass, config, lifecycle, event, context, intern
164
152
  }
165
153
  // #MARK: EntitySource
166
154
  async function EntitySource() {
167
- return await hass.socket.sendMessage({ type: "entity/source" });
155
+ return await hass.socket.sendMessage({
156
+ type: "entity/source",
157
+ });
168
158
  }
169
159
  // #MARK: EntityList
170
160
  async function EntityList() {
@@ -174,14 +164,14 @@ function EntityManager({ logger, hass, config, lifecycle, event, context, intern
174
164
  }
175
165
  // #MARK: RemoveLabel
176
166
  async function RemoveLabel({ entity, label }) {
177
- const current = await EntityGet(entity);
167
+ const current = await entityGet(entity);
178
168
  if (!current?.labels?.includes(label)) {
179
169
  logger.debug({ name: entity }, `does not have label {%s}`, label);
180
170
  return;
181
171
  }
182
172
  logger.debug({ name: entity }, `removing label [%s]`, label);
183
173
  return await new Promise(async (done) => {
184
- event.once(__1.ENTITY_REGISTRY_UPDATED, done);
174
+ event.once(ENTITY_REGISTRY_UPDATED, done);
185
175
  await hass.socket.sendMessage({
186
176
  entity_id: entity,
187
177
  labels: current.labels.filter(i => i !== label),
@@ -190,33 +180,30 @@ function EntityManager({ logger, hass, config, lifecycle, event, context, intern
190
180
  });
191
181
  }
192
182
  // #MARK: EntityGet
193
- async function EntityGet(entity_id) {
183
+ async function entityGet(entity_id) {
194
184
  return await hass.socket.sendMessage({
195
185
  entity_id: entity_id,
196
186
  type: "config/entity_registry/get",
197
187
  });
198
188
  }
199
- hass.socket.subscribe({
200
- context,
201
- event_type: "entity_registry_updated",
202
- async exec() {
203
- await (0, core_1.debounce)(__1.ENTITY_REGISTRY_UPDATED, config.hass.EVENT_DEBOUNCE_MS);
204
- logger.debug("entity registry updated");
205
- hass.entity.registry.current = await hass.entity.registry.list();
206
- event.emit(__1.ENTITY_REGISTRY_UPDATED);
207
- },
208
- });
209
189
  // #MARK: onConnect
210
190
  hass.socket.onConnect(async () => {
211
- if (!config.hass.AUTO_CONNECT_SOCKET || !config.hass.MANAGE_REGISTRY) {
212
- return;
213
- }
191
+ hass.socket.subscribe({
192
+ context,
193
+ event_type: "entity_registry_updated",
194
+ async exec() {
195
+ await debounce(ENTITY_REGISTRY_UPDATED, config.hass.EVENT_DEBOUNCE_MS);
196
+ logger.debug("entity registry updated");
197
+ hass.entity.registry.current = await hass.entity.registry.list();
198
+ event.emit(ENTITY_REGISTRY_UPDATED);
199
+ },
200
+ });
214
201
  hass.entity.registry.current = await hass.entity.registry.list();
215
202
  });
216
203
  // #MARK: RemoveEntity
217
204
  async function RemoveEntity(entity_id) {
218
205
  warnEarly("RemoveEntity");
219
- await (0, core_1.eachSeries)([entity_id].flat(), async (entity_id) => {
206
+ await eachSeries([entity_id].flat(), async (entity_id) => {
220
207
  logger.debug({ name: entity_id }, `removing entity`);
221
208
  await hass.socket.sendMessage({
222
209
  entity_id,
@@ -226,49 +213,21 @@ function EntityManager({ logger, hass, config, lifecycle, event, context, intern
226
213
  }
227
214
  // #MARK: return object
228
215
  return {
229
- /**
230
- * Internal library use only
231
- */
232
- _entityUpdateReceiver: EntityUpdateReceiver,
216
+ _entityUpdateReceiver: entityUpdateReceiver,
233
217
  _masterState: () => MASTER_STATE,
234
- /**
235
- * Lists all entities within a specified domain. This is useful for
236
- * domain-specific operations or queries.
237
- *
238
- * @deprecated use `hass.idBy.domain` | `hass.refBy.domain`
239
- */
240
- findByDomain,
241
218
  /**
242
219
  * Retrieves the current state of a given entity. This method returns
243
220
  * raw data, offering a direct view of the entity's state at a given moment.
244
221
  */
245
222
  getCurrentState,
246
- /**
247
- * Retrieves the historical state data of entities over a specified time
248
- * period. Useful for analysis or tracking changes over time.
249
- */
250
223
  history,
251
- /**
252
- * Provides a simple listing of all entity IDs. Useful for enumeration
253
- * and quick reference to all available entities.
254
- */
255
224
  listEntities,
256
- /**
257
- * Returns the previous entity state (not a proxy)
258
- */
259
225
  previousState: (entity_id) => PREVIOUS_STATE.get(entity_id),
260
- /**
261
- * Initiates a refresh of the current entity states. Useful for ensuring
262
- * synchronization with the latest state data from Home Assistant.
263
- */
264
226
  refresh,
265
- /**
266
- * Interact with the entity registry
267
- */
268
227
  registry: {
269
228
  addLabel: AddLabel,
270
229
  current: [],
271
- get: EntityGet,
230
+ get: entityGet,
272
231
  list: EntityList,
273
232
  registryList: EntityList,
274
233
  removeEntity: RemoveEntity,
@@ -1 +1 @@
1
- {"version":3,"file":"entity.extension.js","sourceRoot":"","sources":["../../src/extensions/entity.extension.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"entity.extension.js","sourceRoot":"","sources":["../../src/extensions/entity.extension.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,3 @@
1
- import { TBlackHole, TServiceParams } from "@digital-alchemy/core";
2
- type SimpleCallback = () => TBlackHole;
3
- export declare function Events({ event }: TServiceParams): {
4
- onAreaRegistryUpdate: (callback: SimpleCallback) => import("events")<[never]>;
5
- onDeviceRegistryUpdate: (callback: SimpleCallback) => import("events")<[never]>;
6
- onEntityRegistryUpdate: (callback: SimpleCallback) => import("events")<[never]>;
7
- onFloorRegistryUpdate: (callback: SimpleCallback) => import("events")<[never]>;
8
- onLabelRegistryUpdate: (callback: SimpleCallback) => import("events")<[never]>;
9
- onZoneRegistryUpdate: (callback: SimpleCallback) => import("events")<[never]>;
10
- };
11
- export {};
1
+ import { TServiceParams } from "@digital-alchemy/core";
2
+ import { HassEventsService } from "../helpers";
3
+ export declare function Events({ event }: TServiceParams): HassEventsService;
@@ -1,15 +1,12 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Events = Events;
4
- const helpers_1 = require("../helpers");
5
- function Events({ event }) {
1
+ import { AREA_REGISTRY_UPDATED, DEVICE_REGISTRY_UPDATED, ENTITY_REGISTRY_UPDATED, FLOOR_REGISTRY_UPDATED, LABEL_REGISTRY_UPDATED, ZONE_REGISTRY_UPDATED, } from "../helpers";
2
+ export function Events({ event }) {
6
3
  return {
7
- onAreaRegistryUpdate: (callback) => event.on(helpers_1.AREA_REGISTRY_UPDATED, callback),
8
- onDeviceRegistryUpdate: (callback) => event.on(helpers_1.DEVICE_REGISTRY_UPDATED, callback),
9
- onEntityRegistryUpdate: (callback) => event.on(helpers_1.ENTITY_REGISTRY_UPDATED, callback),
10
- onFloorRegistryUpdate: (callback) => event.on(helpers_1.FLOOR_REGISTRY_UPDATED, callback),
11
- onLabelRegistryUpdate: (callback) => event.on(helpers_1.LABEL_REGISTRY_UPDATED, callback),
12
- onZoneRegistryUpdate: (callback) => event.on(helpers_1.ZONE_REGISTRY_UPDATED, callback),
4
+ onAreaRegistryUpdate: (callback) => event.on(AREA_REGISTRY_UPDATED, callback),
5
+ onDeviceRegistryUpdate: (callback) => event.on(DEVICE_REGISTRY_UPDATED, callback),
6
+ onEntityRegistryUpdate: (callback) => event.on(ENTITY_REGISTRY_UPDATED, callback),
7
+ onFloorRegistryUpdate: (callback) => event.on(FLOOR_REGISTRY_UPDATED, callback),
8
+ onLabelRegistryUpdate: (callback) => event.on(LABEL_REGISTRY_UPDATED, callback),
9
+ onZoneRegistryUpdate: (callback) => event.on(ZONE_REGISTRY_UPDATED, callback),
13
10
  };
14
11
  }
15
12
  //# sourceMappingURL=events.extension.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"events.extension.js","sourceRoot":"","sources":["../../src/extensions/events.extension.ts"],"names":[],"mappings":";;AAaA,wBAeC;AA1BD,wCAOoB;AAIpB,SAAgB,MAAM,CAAC,EAAE,KAAK,EAAkB;IAC9C,OAAO;QACL,oBAAoB,EAAE,CAAC,QAAwB,EAAE,EAAE,CACjD,KAAK,CAAC,EAAE,CAAC,+BAAqB,EAAE,QAAQ,CAAC;QAC3C,sBAAsB,EAAE,CAAC,QAAwB,EAAE,EAAE,CACnD,KAAK,CAAC,EAAE,CAAC,iCAAuB,EAAE,QAAQ,CAAC;QAC7C,sBAAsB,EAAE,CAAC,QAAwB,EAAE,EAAE,CACnD,KAAK,CAAC,EAAE,CAAC,iCAAuB,EAAE,QAAQ,CAAC;QAC7C,qBAAqB,EAAE,CAAC,QAAwB,EAAE,EAAE,CAClD,KAAK,CAAC,EAAE,CAAC,gCAAsB,EAAE,QAAQ,CAAC;QAC5C,qBAAqB,EAAE,CAAC,QAAwB,EAAE,EAAE,CAClD,KAAK,CAAC,EAAE,CAAC,gCAAsB,EAAE,QAAQ,CAAC;QAC5C,oBAAoB,EAAE,CAAC,QAAwB,EAAE,EAAE,CACjD,KAAK,CAAC,EAAE,CAAC,+BAAqB,EAAE,QAAQ,CAAC;KAC5C,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"events.extension.js","sourceRoot":"","sources":["../../src/extensions/events.extension.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,qBAAqB,EACrB,uBAAuB,EACvB,uBAAuB,EACvB,sBAAsB,EAEtB,sBAAsB,EAEtB,qBAAqB,GACtB,MAAM,YAAY,CAAC;AAEpB,MAAM,UAAU,MAAM,CAAC,EAAE,KAAK,EAAkB;IAC9C,OAAO;QACL,oBAAoB,EAAE,CAAC,QAAwB,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,qBAAqB,EAAE,QAAQ,CAAC;QAC7F,sBAAsB,EAAE,CAAC,QAAwB,EAAE,EAAE,CACnD,KAAK,CAAC,EAAE,CAAC,uBAAuB,EAAE,QAAQ,CAAC;QAC7C,sBAAsB,EAAE,CAAC,QAAwB,EAAE,EAAE,CACnD,KAAK,CAAC,EAAE,CAAC,uBAAuB,EAAE,QAAQ,CAAC;QAC7C,qBAAqB,EAAE,CAAC,QAAwB,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,sBAAsB,EAAE,QAAQ,CAAC;QAC/F,qBAAqB,EAAE,CAAC,QAAwB,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,sBAAsB,EAAE,QAAQ,CAAC;QAC/F,oBAAoB,EAAE,CAAC,QAAwB,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,qBAAqB,EAAE,QAAQ,CAAC;KAC9F,CAAC;AACJ,CAAC"}
@@ -1,11 +1,19 @@
1
- import { FilteredFetchArguments, TFetchBody, TServiceParams } from "@digital-alchemy/core";
1
+ import { TServiceParams } from "@digital-alchemy/core";
2
2
  import { Dayjs } from "dayjs";
3
- import { ALL_SERVICE_DOMAINS, ANY_ENTITY, CalendarEvent, CalendarFetchOptions, CheckConfigResult, ENTITY_STATE, HassConfig, HassServiceDTO, HomeAssistantServerLogItem, PICK_SERVICE, PICK_SERVICE_PARAMETERS } from "..";
3
+ import { ALL_SERVICE_DOMAINS, ANY_ENTITY, CalendarEvent, CalendarFetchOptions, CheckConfigResult, ENTITY_STATE, FetchArguments, FilteredFetchArguments, HassConfig, HassServiceDTO, HomeAssistantServerLogItem, PICK_SERVICE, PICK_SERVICE_PARAMETERS, TFetchBody } from "..";
4
4
  type SendBody<STATE extends string | number = string, ATTRIBUTES extends object = object> = {
5
5
  attributes?: ATTRIBUTES;
6
6
  state?: STATE;
7
7
  };
8
- export declare function FetchAPI({ logger, lifecycle, context, hass, internal, config, }: TServiceParams): {
8
+ export declare function FetchAPI({ logger, lifecycle, context, hass, config }: TServiceParams): {
9
+ _fetcher: {
10
+ base_headers: Record<string, string>;
11
+ base_url: string;
12
+ download: ({ destination, body, headers, method, ...fetchWith }: import("..").DownloadOptions) => Promise<void>;
13
+ exec: <T, BODY extends TFetchBody = undefined>({ body, headers, method, process, ...fetchWith }: Partial<FetchArguments<BODY>>) => Promise<T>;
14
+ setBaseUrl: (url: string) => string;
15
+ setHeaders: (headers: Record<string, string>) => Record<string, string>;
16
+ };
9
17
  calendarSearch: ({ calendar, start, end, }: CalendarFetchOptions) => Promise<CalendarEvent[]>;
10
18
  callService: <DOMAIN extends ALL_SERVICE_DOMAINS, SERVICE extends PICK_SERVICE<DOMAIN>>(serviceName: SERVICE, data: PICK_SERVICE_PARAMETERS<DOMAIN, SERVICE>) => Promise<void>;
11
19
  checkConfig: () => Promise<CheckConfigResult>;
@@ -13,7 +21,7 @@ export declare function FetchAPI({ logger, lifecycle, context, hass, internal, c
13
21
  message: string;
14
22
  } | string>;
15
23
  download: (destination: string, fetchWith: FilteredFetchArguments) => Promise<void>;
16
- fetch: <T, BODY extends TFetchBody = undefined>({ body, headers, method, process, label, context, ...fetchWith }: Partial<import("@digital-alchemy/core").FetchArguments<BODY>>) => Promise<T>;
24
+ fetch: <T, BODY extends TFetchBody = undefined>(options: Partial<FetchArguments<BODY>>) => Promise<T>;
17
25
  fetchEntityCustomizations: <T extends Record<never, unknown> = Record<"local" | "global", Record<string, string>>>(entityId: ANY_ENTITY) => Promise<T>;
18
26
  fetchEntityHistory: <ENTITY extends ANY_ENTITY = import("..").TRawEntityIds, T extends ENTITY_STATE<ENTITY> = ENTITY_STATE<ENTITY>>(entity_id: ENTITY, from: Date | Dayjs, to: Date | Dayjs, extra?: {
19
27
  minimal_response?: "";
@@ -1,42 +1,29 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.FetchAPI = FetchAPI;
4
- const tslib_1 = require("tslib");
5
- const core_1 = require("@digital-alchemy/core");
6
- const dayjs_1 = tslib_1.__importDefault(require("dayjs"));
7
- const process_1 = require("process");
8
- const semver_1 = require("semver");
9
- const __1 = require("..");
10
- function FetchAPI({ logger, lifecycle, context, hass, internal, config, }) {
11
- const fetcher = internal.boilerplate.fetch({ context });
1
+ import { DOWN, is, NO_CHANGE, SECOND, UP } from "@digital-alchemy/core";
2
+ import dayjs from "dayjs";
3
+ import { lt } from "semver";
4
+ import { MIN_SUPPORTED_HASS_VERSION, PostConfigPriorities, } from "..";
5
+ export function FetchAPI({ logger, lifecycle, context, hass, config }) {
6
+ const fetcher = hass.internals({ context });
12
7
  const { download: downloader } = fetcher;
13
8
  // Load configurations
14
9
  lifecycle.onPostConfig(() => {
15
10
  fetcher.base_url = config.hass.BASE_URL;
16
11
  fetcher.base_headers = { Authorization: `Bearer ${config.hass.TOKEN}` };
17
- }, __1.PostConfigPriorities.FETCH);
12
+ }, PostConfigPriorities.FETCH);
18
13
  lifecycle.onBootstrap(async () => {
19
- if (!config.hass.AUTO_CONNECT_SOCKET) {
20
- // shorthand for is unit test right now
21
- return;
22
- }
23
14
  const target = await hass.fetch.getConfig();
24
- if ((0, semver_1.lt)(target.version, __1.MIN_SUPPORTED_HASS_VERSION)) {
25
- logger.fatal({ target: target.version }, "minimum supported version of home assistant: %s", __1.MIN_SUPPORTED_HASS_VERSION);
26
- (0, process_1.exit)();
15
+ if (lt(target.version, MIN_SUPPORTED_HASS_VERSION)) {
16
+ logger.fatal({ target: target.version }, "minimum supported version of home assistant: %s", MIN_SUPPORTED_HASS_VERSION);
17
+ process.exit();
27
18
  }
28
19
  logger.debug(`hass version %s`, target.version);
29
20
  });
30
- async function calendarSearch({ calendar, start = (0, dayjs_1.default)(), end, }) {
21
+ async function calendarSearch({ calendar, start = dayjs(), end, }) {
31
22
  if (Array.isArray(calendar)) {
32
23
  const list = await Promise.all(calendar.map(async (cal) => await calendarSearch({ calendar: cal, end, start })));
33
- return list
34
- .flat()
35
- .sort((a, b) => a.start.isSame(b.start)
36
- ? core_1.NO_CHANGE
37
- : a.start.isAfter(b.start)
38
- ? core_1.UP
39
- : core_1.DOWN);
24
+ return list.flat().sort((a, b) =>
25
+ // eslint-disable-next-line sonarjs/no-nested-conditional
26
+ a.start.isSame(b.start) ? NO_CHANGE : a.start.isAfter(b.start) ? UP : DOWN);
40
27
  }
41
28
  const params = { end: end.toISOString(), start: start.toISOString() };
42
29
  const events = await hass.fetch.fetch({
@@ -46,8 +33,8 @@ function FetchAPI({ logger, lifecycle, context, hass, internal, config, }) {
46
33
  logger.trace({ name: calendarSearch, params }, `%s search found %s events`, calendar, events.length);
47
34
  return events.map(({ start, end, ...extra }) => ({
48
35
  ...extra,
49
- end: (0, dayjs_1.default)(end.dateTime),
50
- start: (0, dayjs_1.default)(start.dateTime),
36
+ end: dayjs(end.dateTime),
37
+ start: dayjs(start.dateTime),
51
38
  }));
52
39
  }
53
40
  async function callService(serviceName, data) {
@@ -83,9 +70,9 @@ function FetchAPI({ logger, lifecycle, context, hass, internal, config, }) {
83
70
  async function fetchEntityHistory(entity_id, from, to, extra = {}) {
84
71
  logger.info({
85
72
  entity_id,
86
- from: (0, dayjs_1.default)(from).toISOString(),
73
+ from: dayjs(from).toISOString(),
87
74
  name: fetchEntityHistory,
88
- to: (0, dayjs_1.default)(to).toISOString(),
75
+ to: dayjs(to).toISOString(),
89
76
  }, `fetch entity history`);
90
77
  const result = await hass.fetch.fetch({
91
78
  params: {
@@ -129,8 +116,8 @@ function FetchAPI({ logger, lifecycle, context, hass, internal, config, }) {
129
116
  url: `/api/error/all`,
130
117
  });
131
118
  return results.map(i => {
132
- i.timestamp = Math.floor(i.timestamp * core_1.SECOND);
133
- i.first_occurred = Math.floor(i.first_occurred * core_1.SECOND);
119
+ i.timestamp = Math.floor(i.timestamp * SECOND);
120
+ i.first_occurred = Math.floor(i.first_occurred * SECOND);
134
121
  return i;
135
122
  });
136
123
  }
@@ -149,7 +136,7 @@ function FetchAPI({ logger, lifecycle, context, hass, internal, config, }) {
149
136
  const body = {};
150
137
  // ! ORDER MATTERS FOR APPLYING
151
138
  // Must be applied in alphabetical order for unit test reasons
152
- if (!core_1.is.empty(attributes)) {
139
+ if (!is.empty(attributes)) {
153
140
  body.attributes = attributes;
154
141
  }
155
142
  if (state !== undefined) {
@@ -178,12 +165,13 @@ function FetchAPI({ logger, lifecycle, context, hass, internal, config, }) {
178
165
  });
179
166
  }
180
167
  return {
168
+ _fetcher: fetcher,
181
169
  calendarSearch,
182
170
  callService,
183
171
  checkConfig,
184
172
  checkCredentials,
185
173
  download,
186
- fetch: fetcher.fetch,
174
+ fetch: async (options) => await fetcher.exec(options),
187
175
  fetchEntityCustomizations,
188
176
  fetchEntityHistory,
189
177
  fireEvent,
@@ -1 +1 @@
1
- {"version":3,"file":"fetch-api.extension.js","sourceRoot":"","sources":["../../src/extensions/fetch-api.extension.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fetch-api.extension.js","sourceRoot":"","sources":["../../src/extensions/fetch-api.extension.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,3 @@
1
1
  import { TServiceParams } from "@digital-alchemy/core";
2
- import { TFloorId } from "../dynamic";
3
- import { FloorCreate, FloorDetails } from "../helpers";
4
- export declare function Floor({ hass, config, context, event, logger, lifecycle, }: TServiceParams): {
5
- create(details: FloorCreate): Promise<void>;
6
- current: FloorDetails[];
7
- delete(floor_id: TFloorId): Promise<void>;
8
- list(): Promise<FloorDetails[]>;
9
- update(details: FloorDetails): Promise<void>;
10
- };
2
+ import { HassFloorService } from "../helpers";
3
+ export declare function Floor({ hass, config, context, event, logger, lifecycle, }: TServiceParams): HassFloorService;