@basmilius/homey-common 0.0.1

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/.editorconfig ADDED
@@ -0,0 +1,485 @@
1
+ [*]
2
+ charset = utf-8
3
+ end_of_line = lf
4
+ indent_size = 4
5
+ indent_style = space
6
+ insert_final_newline = true
7
+ max_line_length = 999
8
+ tab_width = 4
9
+ ij_continuation_indent_size = 4
10
+ ij_formatter_off_tag = @formatter:off
11
+ ij_formatter_on_tag = @formatter:on
12
+ ij_formatter_tags_enabled = false
13
+ ij_smart_tabs = false
14
+ ij_wrap_on_typing = false
15
+
16
+
17
+ ij_css_align_closing_brace_with_properties = false
18
+ ij_css_blank_lines_around_nested_selector = 1
19
+ ij_css_blank_lines_between_blocks = 1
20
+ ij_css_brace_placement = end_of_line
21
+ ij_css_enforce_quotes_on_format = false
22
+ ij_css_hex_color_long_format = false
23
+ ij_css_hex_color_lower_case = true
24
+ ij_css_hex_color_short_format = false
25
+ ij_css_hex_color_upper_case = false
26
+ ij_css_keep_blank_lines_in_code = 2
27
+ ij_css_keep_indents_on_empty_lines = false
28
+ ij_css_keep_single_line_blocks = false
29
+ ij_css_properties_order = font, font-family, font-size, font-weight, font-style, font-variant, font-size-adjust, font-stretch, line-height, position, z-index, top, right, bottom, left, display, visibility, float, clear, overflow, overflow-x, overflow-y, clip, zoom, align-content, align-items, align-self, flex, flex-flow, flex-basis, flex-direction, flex-grow, flex-shrink, flex-wrap, justify-content, order, box-sizing, width, min-width, max-width, height, min-height, max-height, margin, margin-top, margin-right, margin-bottom, margin-left, padding, padding-top, padding-right, padding-bottom, padding-left, table-layout, empty-cells, caption-side, border-spacing, border-collapse, list-style, list-style-position, list-style-type, list-style-image, content, quotes, counter-reset, counter-increment, resize, cursor, user-select, nav-index, nav-up, nav-right, nav-down, nav-left, transition, transition-delay, transition-timing-function, transition-duration, transition-property, transform, transform-origin, animation, animation-name, animation-duration, animation-play-state, animation-timing-function, animation-delay, animation-iteration-count, animation-direction, text-align, text-align-last, vertical-align, white-space, text-decoration, text-emphasis, text-emphasis-color, text-emphasis-style, text-emphasis-position, text-indent, text-justify, letter-spacing, word-spacing, text-outline, text-transform, text-wrap, text-overflow, text-overflow-ellipsis, text-overflow-mode, word-wrap, word-break, tab-size, hyphens, pointer-events, opacity, color, border, border-width, border-style, border-color, border-top, border-top-width, border-top-style, border-top-color, border-right, border-right-width, border-right-style, border-right-color, border-bottom, border-bottom-width, border-bottom-style, border-bottom-color, border-left, border-left-width, border-left-style, border-left-color, border-radius, border-top-left-radius, border-top-right-radius, border-bottom-right-radius, border-bottom-left-radius, border-image, border-image-source, border-image-slice, border-image-width, border-image-outset, border-image-repeat, outline, outline-width, outline-style, outline-color, outline-offset, background, background-color, background-image, background-repeat, background-attachment, background-position, background-position-x, background-position-y, background-clip, background-origin, background-size, box-decoration-break, box-shadow, text-shadow
30
+ ij_css_space_after_colon = true
31
+ ij_css_space_before_opening_brace = true
32
+ ij_css_use_double_quotes = true
33
+ ij_css_value_alignment = do_not_align
34
+
35
+
36
+ ij_scss_align_closing_brace_with_properties = false
37
+ ij_scss_blank_lines_around_nested_selector = 1
38
+ ij_scss_blank_lines_between_blocks = 1
39
+ ij_scss_brace_placement = 0
40
+ ij_scss_enforce_quotes_on_format = false
41
+ ij_scss_hex_color_long_format = false
42
+ ij_scss_hex_color_lower_case = true
43
+ ij_scss_hex_color_short_format = false
44
+ ij_scss_hex_color_upper_case = false
45
+ ij_scss_keep_blank_lines_in_code = 2
46
+ ij_scss_keep_indents_on_empty_lines = false
47
+ ij_scss_keep_single_line_blocks = false
48
+ ij_scss_properties_order = font, font-family, font-size, font-weight, font-style, font-variant, font-size-adjust, font-stretch, line-height, position, z-index, top, right, bottom, left, display, visibility, float, clear, overflow, overflow-x, overflow-y, clip, zoom, align-content, align-items, align-self, flex, flex-flow, flex-basis, flex-direction, flex-grow, flex-shrink, flex-wrap, justify-content, order, box-sizing, width, min-width, max-width, height, min-height, max-height, margin, margin-top, margin-right, margin-bottom, margin-left, padding, padding-top, padding-right, padding-bottom, padding-left, table-layout, empty-cells, caption-side, border-spacing, border-collapse, list-style, list-style-position, list-style-type, list-style-image, content, quotes, counter-reset, counter-increment, resize, cursor, user-select, nav-index, nav-up, nav-right, nav-down, nav-left, transition, transition-delay, transition-timing-function, transition-duration, transition-property, transform, transform-origin, animation, animation-name, animation-duration, animation-play-state, animation-timing-function, animation-delay, animation-iteration-count, animation-direction, text-align, text-align-last, vertical-align, white-space, text-decoration, text-emphasis, text-emphasis-color, text-emphasis-style, text-emphasis-position, text-indent, text-justify, letter-spacing, word-spacing, text-outline, text-transform, text-wrap, text-overflow, text-overflow-ellipsis, text-overflow-mode, word-wrap, word-break, tab-size, hyphens, pointer-events, opacity, color, border, border-width, border-style, border-color, border-top, border-top-width, border-top-style, border-top-color, border-right, border-right-width, border-right-style, border-right-color, border-bottom, border-bottom-width, border-bottom-style, border-bottom-color, border-left, border-left-width, border-left-style, border-left-color, border-radius, border-top-left-radius, border-top-right-radius, border-bottom-right-radius, border-bottom-left-radius, border-image, border-image-source, border-image-slice, border-image-width, border-image-outset, border-image-repeat, outline, outline-width, outline-style, outline-color, outline-offset, background, background-color, background-image, background-repeat, background-attachment, background-position, background-position-x, background-position-y, background-clip, background-origin, background-size, box-decoration-break, box-shadow, text-shadow
49
+ ij_scss_space_after_colon = true
50
+ ij_scss_space_before_opening_brace = true
51
+ ij_scss_use_double_quotes = true
52
+ ij_scss_value_alignment = 0
53
+
54
+
55
+ ij_editorconfig_align_group_field_declarations = false
56
+ ij_editorconfig_space_after_colon = false
57
+ ij_editorconfig_space_after_comma = true
58
+ ij_editorconfig_space_before_colon = false
59
+ ij_editorconfig_space_before_comma = false
60
+ ij_editorconfig_spaces_around_assignment_operators = true
61
+
62
+
63
+ ij_xml_align_attributes = true
64
+ ij_xml_align_text = false
65
+ ij_xml_attribute_wrap = normal
66
+ ij_xml_block_comment_at_first_column = true
67
+ ij_xml_keep_blank_lines = 2
68
+ ij_xml_keep_indents_on_empty_lines = false
69
+ ij_xml_keep_line_breaks = true
70
+ ij_xml_keep_line_breaks_in_text = true
71
+ ij_xml_keep_whitespaces = false
72
+ ij_xml_keep_whitespaces_around_cdata = preserve
73
+ ij_xml_keep_whitespaces_inside_cdata = false
74
+ ij_xml_line_comment_at_first_column = true
75
+ ij_xml_space_after_tag_name = false
76
+ ij_xml_space_around_equals_in_attribute = false
77
+ ij_xml_space_inside_empty_tag = false
78
+ ij_xml_text_wrap = normal
79
+
80
+
81
+ ij_typescript_align_imports = false
82
+ ij_typescript_align_multiline_array_initializer_expression = false
83
+ ij_typescript_align_multiline_binary_operation = false
84
+ ij_typescript_align_multiline_chained_methods = false
85
+ ij_typescript_align_multiline_extends_list = false
86
+ ij_typescript_align_multiline_for = true
87
+ ij_typescript_align_multiline_parameters = true
88
+ ij_typescript_align_multiline_parameters_in_calls = false
89
+ ij_typescript_align_multiline_ternary_operation = false
90
+ ij_typescript_align_object_properties = 0
91
+ ij_typescript_align_union_types = false
92
+ ij_typescript_align_var_statements = 0
93
+ ij_typescript_array_initializer_new_line_after_left_brace = false
94
+ ij_typescript_array_initializer_right_brace_on_new_line = false
95
+ ij_typescript_array_initializer_wrap = off
96
+ ij_typescript_assignment_wrap = off
97
+ ij_typescript_binary_operation_sign_on_next_line = false
98
+ ij_typescript_binary_operation_wrap = off
99
+ ij_typescript_blacklist_imports = rxjs/Rx, node_modules/**, **/node_modules/**, @angular/material, @angular/material/typings/**
100
+ ij_typescript_blank_lines_after_imports = 1
101
+ ij_typescript_blank_lines_around_class = 1
102
+ ij_typescript_blank_lines_around_field = 0
103
+ ij_typescript_blank_lines_around_field_in_interface = 0
104
+ ij_typescript_blank_lines_around_function = 1
105
+ ij_typescript_blank_lines_around_method = 1
106
+ ij_typescript_blank_lines_around_method_in_interface = 1
107
+ ij_typescript_block_brace_style = end_of_line
108
+ ij_typescript_call_parameters_new_line_after_left_paren = false
109
+ ij_typescript_call_parameters_right_paren_on_new_line = false
110
+ ij_typescript_call_parameters_wrap = off
111
+ ij_typescript_catch_on_new_line = false
112
+ ij_typescript_chained_call_dot_on_new_line = true
113
+ ij_typescript_class_brace_style = end_of_line
114
+ ij_typescript_comma_on_new_line = false
115
+ ij_typescript_do_while_brace_force = never
116
+ ij_typescript_else_on_new_line = false
117
+ ij_typescript_enforce_trailing_comma = remove
118
+ ij_typescript_extends_keyword_wrap = off
119
+ ij_typescript_extends_list_wrap = off
120
+ ij_typescript_field_prefix = _
121
+ ij_typescript_file_name_style = relaxed
122
+ ij_typescript_finally_on_new_line = false
123
+ ij_typescript_for_brace_force = never
124
+ ij_typescript_for_statement_new_line_after_left_paren = false
125
+ ij_typescript_for_statement_right_paren_on_new_line = false
126
+ ij_typescript_for_statement_wrap = off
127
+ ij_typescript_force_quote_style = true
128
+ ij_typescript_force_semicolon_style = true
129
+ ij_typescript_function_expression_brace_style = end_of_line
130
+ ij_typescript_if_brace_force = never
131
+ ij_typescript_import_merge_members = global
132
+ ij_typescript_import_prefer_absolute_path = global
133
+ ij_typescript_import_sort_members = true
134
+ ij_typescript_import_sort_module_name = false
135
+ ij_typescript_import_use_node_resolution = true
136
+ ij_typescript_imports_wrap = on_every_item
137
+ ij_typescript_indent_case_from_switch = true
138
+ ij_typescript_indent_chained_calls = true
139
+ ij_typescript_indent_package_children = 0
140
+ ij_typescript_jsdoc_include_types = false
141
+ ij_typescript_jsx_attribute_value = braces
142
+ ij_typescript_keep_blank_lines_in_code = 2
143
+ ij_typescript_keep_first_column_comment = true
144
+ ij_typescript_keep_indents_on_empty_lines = false
145
+ ij_typescript_keep_line_breaks = true
146
+ ij_typescript_keep_simple_blocks_in_one_line = false
147
+ ij_typescript_keep_simple_methods_in_one_line = false
148
+ ij_typescript_line_comment_add_space = true
149
+ ij_typescript_line_comment_at_first_column = false
150
+ ij_typescript_method_brace_style = end_of_line
151
+ ij_typescript_method_call_chain_wrap = off
152
+ ij_typescript_method_parameters_new_line_after_left_paren = false
153
+ ij_typescript_method_parameters_right_paren_on_new_line = false
154
+ ij_typescript_method_parameters_wrap = off
155
+ ij_typescript_object_literal_wrap = on_every_item
156
+ ij_typescript_parentheses_expression_new_line_after_left_paren = false
157
+ ij_typescript_parentheses_expression_right_paren_on_new_line = false
158
+ ij_typescript_place_assignment_sign_on_next_line = false
159
+ ij_typescript_prefer_as_type_cast = false
160
+ ij_typescript_prefer_explicit_types_function_expression_returns = false
161
+ ij_typescript_prefer_explicit_types_function_returns = false
162
+ ij_typescript_prefer_explicit_types_vars_fields = false
163
+ ij_typescript_prefer_parameters_wrap = false
164
+ ij_typescript_reformat_c_style_comments = false
165
+ ij_typescript_space_after_colon = true
166
+ ij_typescript_space_after_comma = true
167
+ ij_typescript_space_after_dots_in_rest_parameter = false
168
+ ij_typescript_space_after_generator_mult = true
169
+ ij_typescript_space_after_property_colon = true
170
+ ij_typescript_space_after_quest = true
171
+ ij_typescript_space_after_type_colon = true
172
+ ij_typescript_space_after_unary_not = false
173
+ ij_typescript_space_before_async_arrow_lparen = true
174
+ ij_typescript_space_before_catch_keyword = true
175
+ ij_typescript_space_before_catch_left_brace = true
176
+ ij_typescript_space_before_catch_parentheses = true
177
+ ij_typescript_space_before_class_lbrace = true
178
+ ij_typescript_space_before_class_left_brace = true
179
+ ij_typescript_space_before_colon = true
180
+ ij_typescript_space_before_comma = false
181
+ ij_typescript_space_before_do_left_brace = true
182
+ ij_typescript_space_before_else_keyword = true
183
+ ij_typescript_space_before_else_left_brace = true
184
+ ij_typescript_space_before_finally_keyword = true
185
+ ij_typescript_space_before_finally_left_brace = true
186
+ ij_typescript_space_before_for_left_brace = true
187
+ ij_typescript_space_before_for_parentheses = true
188
+ ij_typescript_space_before_for_semicolon = false
189
+ ij_typescript_space_before_function_left_parenth = true
190
+ ij_typescript_space_before_generator_mult = false
191
+ ij_typescript_space_before_if_left_brace = true
192
+ ij_typescript_space_before_if_parentheses = true
193
+ ij_typescript_space_before_method_call_parentheses = false
194
+ ij_typescript_space_before_method_left_brace = true
195
+ ij_typescript_space_before_method_parentheses = false
196
+ ij_typescript_space_before_property_colon = false
197
+ ij_typescript_space_before_quest = true
198
+ ij_typescript_space_before_switch_left_brace = true
199
+ ij_typescript_space_before_switch_parentheses = true
200
+ ij_typescript_space_before_try_left_brace = true
201
+ ij_typescript_space_before_type_colon = false
202
+ ij_typescript_space_before_unary_not = false
203
+ ij_typescript_space_before_while_keyword = true
204
+ ij_typescript_space_before_while_left_brace = true
205
+ ij_typescript_space_before_while_parentheses = true
206
+ ij_typescript_spaces_around_additive_operators = true
207
+ ij_typescript_spaces_around_arrow_function_operator = true
208
+ ij_typescript_spaces_around_assignment_operators = true
209
+ ij_typescript_spaces_around_bitwise_operators = true
210
+ ij_typescript_spaces_around_equality_operators = true
211
+ ij_typescript_spaces_around_logical_operators = true
212
+ ij_typescript_spaces_around_multiplicative_operators = true
213
+ ij_typescript_spaces_around_relational_operators = true
214
+ ij_typescript_spaces_around_shift_operators = true
215
+ ij_typescript_spaces_around_unary_operator = false
216
+ ij_typescript_spaces_within_array_initializer_brackets = false
217
+ ij_typescript_spaces_within_brackets = false
218
+ ij_typescript_spaces_within_catch_parentheses = false
219
+ ij_typescript_spaces_within_for_parentheses = false
220
+ ij_typescript_spaces_within_if_parentheses = false
221
+ ij_typescript_spaces_within_imports = true
222
+ ij_typescript_spaces_within_interpolation_expressions = false
223
+ ij_typescript_spaces_within_method_call_parentheses = false
224
+ ij_typescript_spaces_within_method_parentheses = false
225
+ ij_typescript_spaces_within_object_literal_braces = false
226
+ ij_typescript_spaces_within_object_type_braces = true
227
+ ij_typescript_spaces_within_parentheses = false
228
+ ij_typescript_spaces_within_switch_parentheses = false
229
+ ij_typescript_spaces_within_type_assertion = false
230
+ ij_typescript_spaces_within_union_types = true
231
+ ij_typescript_spaces_within_while_parentheses = false
232
+ ij_typescript_special_else_if_treatment = true
233
+ ij_typescript_ternary_operation_signs_on_next_line = false
234
+ ij_typescript_ternary_operation_wrap = off
235
+ ij_typescript_union_types_wrap = on_every_item
236
+ ij_typescript_use_chained_calls_group_indents = false
237
+ ij_typescript_use_double_quotes = false
238
+ ij_typescript_use_explicit_js_extension = auto
239
+ ij_typescript_use_path_mapping = always
240
+ ij_typescript_use_public_modifier = true
241
+ ij_typescript_use_semicolon_after_statement = true
242
+ ij_typescript_var_declaration_wrap = normal
243
+ ij_typescript_while_brace_force = never
244
+ ij_typescript_while_on_new_line = false
245
+ ij_typescript_wrap_comments = false
246
+
247
+
248
+ ij_shell_indent_size = 2
249
+ ij_shell_tab_width = 2
250
+ ij_shell_binary_ops_start_line = false
251
+ ij_shell_keep_column_alignment_padding = false
252
+ ij_shell_minify_program = false
253
+ ij_shell_redirect_followed_by_space = false
254
+ ij_shell_switch_cases_indented = false
255
+
256
+
257
+ ij_javascript_align_imports = false
258
+ ij_javascript_align_multiline_array_initializer_expression = false
259
+ ij_javascript_align_multiline_binary_operation = false
260
+ ij_javascript_align_multiline_chained_methods = false
261
+ ij_javascript_align_multiline_extends_list = false
262
+ ij_javascript_align_multiline_for = true
263
+ ij_javascript_align_multiline_parameters = true
264
+ ij_javascript_align_multiline_parameters_in_calls = false
265
+ ij_javascript_align_multiline_ternary_operation = false
266
+ ij_javascript_align_object_properties = 0
267
+ ij_javascript_align_union_types = false
268
+ ij_javascript_align_var_statements = 0
269
+ ij_javascript_array_initializer_new_line_after_left_brace = false
270
+ ij_javascript_array_initializer_right_brace_on_new_line = false
271
+ ij_javascript_array_initializer_wrap = off
272
+ ij_javascript_assignment_wrap = off
273
+ ij_javascript_binary_operation_sign_on_next_line = false
274
+ ij_javascript_binary_operation_wrap = off
275
+ ij_javascript_blacklist_imports = rxjs/Rx, node_modules/**, **/node_modules/**, @angular/material, @angular/material/typings/**
276
+ ij_javascript_blank_lines_after_imports = 1
277
+ ij_javascript_blank_lines_around_class = 1
278
+ ij_javascript_blank_lines_around_field = 0
279
+ ij_javascript_blank_lines_around_function = 1
280
+ ij_javascript_blank_lines_around_method = 1
281
+ ij_javascript_block_brace_style = end_of_line
282
+ ij_javascript_call_parameters_new_line_after_left_paren = false
283
+ ij_javascript_call_parameters_right_paren_on_new_line = false
284
+ ij_javascript_call_parameters_wrap = off
285
+ ij_javascript_catch_on_new_line = false
286
+ ij_javascript_chained_call_dot_on_new_line = true
287
+ ij_javascript_class_brace_style = end_of_line
288
+ ij_javascript_comma_on_new_line = false
289
+ ij_javascript_do_while_brace_force = never
290
+ ij_javascript_else_on_new_line = false
291
+ ij_javascript_enforce_trailing_comma = remove
292
+ ij_javascript_extends_keyword_wrap = off
293
+ ij_javascript_extends_list_wrap = off
294
+ ij_javascript_field_prefix = _
295
+ ij_javascript_file_name_style = relaxed
296
+ ij_javascript_finally_on_new_line = false
297
+ ij_javascript_for_brace_force = never
298
+ ij_javascript_for_statement_new_line_after_left_paren = false
299
+ ij_javascript_for_statement_right_paren_on_new_line = false
300
+ ij_javascript_for_statement_wrap = off
301
+ ij_javascript_force_quote_style = true
302
+ ij_javascript_force_semicolon_style = true
303
+ ij_javascript_function_expression_brace_style = end_of_line
304
+ ij_javascript_if_brace_force = never
305
+ ij_javascript_import_merge_members = global
306
+ ij_javascript_import_prefer_absolute_path = global
307
+ ij_javascript_import_sort_members = true
308
+ ij_javascript_import_sort_module_name = false
309
+ ij_javascript_import_use_node_resolution = true
310
+ ij_javascript_imports_wrap = on_every_item
311
+ ij_javascript_indent_case_from_switch = true
312
+ ij_javascript_indent_chained_calls = true
313
+ ij_javascript_indent_package_children = 0
314
+ ij_javascript_jsx_attribute_value = braces
315
+ ij_javascript_keep_blank_lines_in_code = 2
316
+ ij_javascript_keep_first_column_comment = true
317
+ ij_javascript_keep_indents_on_empty_lines = false
318
+ ij_javascript_keep_line_breaks = true
319
+ ij_javascript_keep_simple_blocks_in_one_line = false
320
+ ij_javascript_keep_simple_methods_in_one_line = false
321
+ ij_javascript_line_comment_add_space = true
322
+ ij_javascript_line_comment_at_first_column = false
323
+ ij_javascript_method_brace_style = end_of_line
324
+ ij_javascript_method_call_chain_wrap = off
325
+ ij_javascript_method_parameters_new_line_after_left_paren = false
326
+ ij_javascript_method_parameters_right_paren_on_new_line = false
327
+ ij_javascript_method_parameters_wrap = off
328
+ ij_javascript_object_literal_wrap = on_every_item
329
+ ij_javascript_parentheses_expression_new_line_after_left_paren = false
330
+ ij_javascript_parentheses_expression_right_paren_on_new_line = false
331
+ ij_javascript_place_assignment_sign_on_next_line = false
332
+ ij_javascript_prefer_as_type_cast = false
333
+ ij_javascript_prefer_explicit_types_function_expression_returns = false
334
+ ij_javascript_prefer_explicit_types_function_returns = false
335
+ ij_javascript_prefer_explicit_types_vars_fields = false
336
+ ij_javascript_prefer_parameters_wrap = false
337
+ ij_javascript_reformat_c_style_comments = false
338
+ ij_javascript_space_after_colon = true
339
+ ij_javascript_space_after_comma = true
340
+ ij_javascript_space_after_dots_in_rest_parameter = false
341
+ ij_javascript_space_after_generator_mult = true
342
+ ij_javascript_space_after_property_colon = true
343
+ ij_javascript_space_after_quest = true
344
+ ij_javascript_space_after_type_colon = true
345
+ ij_javascript_space_after_unary_not = false
346
+ ij_javascript_space_before_async_arrow_lparen = true
347
+ ij_javascript_space_before_catch_keyword = true
348
+ ij_javascript_space_before_catch_left_brace = true
349
+ ij_javascript_space_before_catch_parentheses = true
350
+ ij_javascript_space_before_class_lbrace = true
351
+ ij_javascript_space_before_class_left_brace = true
352
+ ij_javascript_space_before_colon = true
353
+ ij_javascript_space_before_comma = false
354
+ ij_javascript_space_before_do_left_brace = true
355
+ ij_javascript_space_before_else_keyword = true
356
+ ij_javascript_space_before_else_left_brace = true
357
+ ij_javascript_space_before_finally_keyword = true
358
+ ij_javascript_space_before_finally_left_brace = true
359
+ ij_javascript_space_before_for_left_brace = true
360
+ ij_javascript_space_before_for_parentheses = true
361
+ ij_javascript_space_before_for_semicolon = false
362
+ ij_javascript_space_before_function_left_parenth = true
363
+ ij_javascript_space_before_generator_mult = false
364
+ ij_javascript_space_before_if_left_brace = true
365
+ ij_javascript_space_before_if_parentheses = true
366
+ ij_javascript_space_before_method_call_parentheses = false
367
+ ij_javascript_space_before_method_left_brace = true
368
+ ij_javascript_space_before_method_parentheses = false
369
+ ij_javascript_space_before_property_colon = false
370
+ ij_javascript_space_before_quest = true
371
+ ij_javascript_space_before_switch_left_brace = true
372
+ ij_javascript_space_before_switch_parentheses = true
373
+ ij_javascript_space_before_try_left_brace = true
374
+ ij_javascript_space_before_type_colon = false
375
+ ij_javascript_space_before_unary_not = false
376
+ ij_javascript_space_before_while_keyword = true
377
+ ij_javascript_space_before_while_left_brace = true
378
+ ij_javascript_space_before_while_parentheses = true
379
+ ij_javascript_spaces_around_additive_operators = true
380
+ ij_javascript_spaces_around_arrow_function_operator = true
381
+ ij_javascript_spaces_around_assignment_operators = true
382
+ ij_javascript_spaces_around_bitwise_operators = true
383
+ ij_javascript_spaces_around_equality_operators = true
384
+ ij_javascript_spaces_around_logical_operators = true
385
+ ij_javascript_spaces_around_multiplicative_operators = true
386
+ ij_javascript_spaces_around_relational_operators = true
387
+ ij_javascript_spaces_around_shift_operators = true
388
+ ij_javascript_spaces_around_unary_operator = false
389
+ ij_javascript_spaces_within_array_initializer_brackets = false
390
+ ij_javascript_spaces_within_brackets = false
391
+ ij_javascript_spaces_within_catch_parentheses = false
392
+ ij_javascript_spaces_within_for_parentheses = false
393
+ ij_javascript_spaces_within_if_parentheses = false
394
+ ij_javascript_spaces_within_imports = true
395
+ ij_javascript_spaces_within_interpolation_expressions = false
396
+ ij_javascript_spaces_within_method_call_parentheses = false
397
+ ij_javascript_spaces_within_method_parentheses = false
398
+ ij_javascript_spaces_within_object_literal_braces = false
399
+ ij_javascript_spaces_within_object_type_braces = true
400
+ ij_javascript_spaces_within_parentheses = false
401
+ ij_javascript_spaces_within_switch_parentheses = false
402
+ ij_javascript_spaces_within_type_assertion = false
403
+ ij_javascript_spaces_within_union_types = true
404
+ ij_javascript_spaces_within_while_parentheses = false
405
+ ij_javascript_special_else_if_treatment = true
406
+ ij_javascript_ternary_operation_signs_on_next_line = false
407
+ ij_javascript_ternary_operation_wrap = off
408
+ ij_javascript_union_types_wrap = on_every_item
409
+ ij_javascript_use_chained_calls_group_indents = false
410
+ ij_javascript_use_double_quotes = false
411
+ ij_javascript_use_explicit_js_extension = auto
412
+ ij_javascript_use_path_mapping = always
413
+ ij_javascript_use_public_modifier = false
414
+ ij_javascript_use_semicolon_after_statement = true
415
+ ij_javascript_var_declaration_wrap = normal
416
+ ij_javascript_while_brace_force = never
417
+ ij_javascript_while_on_new_line = false
418
+ ij_javascript_wrap_comments = false
419
+
420
+
421
+ ij_json_keep_blank_lines_in_code = 0
422
+ ij_json_keep_indents_on_empty_lines = false
423
+ ij_json_keep_line_breaks = true
424
+ ij_json_space_after_colon = true
425
+ ij_json_space_after_comma = true
426
+ ij_json_space_before_colon = false
427
+ ij_json_space_before_comma = false
428
+ ij_json_spaces_within_braces = false
429
+ ij_json_spaces_within_brackets = false
430
+ ij_json_wrap_long_lines = false
431
+
432
+
433
+ ij_html_add_new_line_before_tags = body, div, p, form, h1, h2, h3
434
+ ij_html_align_attributes = true
435
+ ij_html_align_text = false
436
+ ij_html_attribute_wrap = split_into_lines
437
+ ij_html_block_comment_at_first_column = true
438
+ ij_html_do_not_align_children_of_min_lines = 0
439
+ ij_html_do_not_break_if_inline_tags = title, h1, h2, h3, h4, h5, h6, p
440
+ ij_html_do_not_indent_children_of_tags = html, body, thead, tbody, tfoot
441
+ ij_html_enforce_quotes = true
442
+ ij_html_inline_tags = a, abbr, acronym, b, basefont, bdo, big, br, cite, cite, code, dfn, em, font, i, img, input, kbd, label, q, s, samp, select, small, span, strike, strong, sub, sup, textarea, tt, u, var
443
+ ij_html_keep_blank_lines = 2
444
+ ij_html_keep_indents_on_empty_lines = false
445
+ ij_html_keep_line_breaks = true
446
+ ij_html_keep_line_breaks_in_text = true
447
+ ij_html_keep_whitespaces = false
448
+ ij_html_keep_whitespaces_inside = span, pre, textarea
449
+ ij_html_line_comment_at_first_column = true
450
+ ij_html_new_line_after_last_attribute = never
451
+ ij_html_new_line_before_first_attribute = when_multiline
452
+ ij_html_quote_style = double
453
+ ij_html_remove_new_line_before_tags = br
454
+ ij_html_space_after_tag_name = false
455
+ ij_html_space_around_equality_in_attribute = false
456
+ ij_html_space_inside_empty_tag = false
457
+ ij_html_text_wrap = normal
458
+ ij_html_indent_size = 4
459
+ ij_html_tab_width = 4
460
+ ij_html_continuation_indent_size = 4
461
+ ij_html_block_comment_add_space = true
462
+
463
+
464
+ ij_vue_indent_children_of_top_level = template, script, style
465
+ ij_vue_interpolation_new_line_after_start_delimiter = true
466
+ ij_vue_interpolation_new_line_before_end_delimiter = true
467
+ ij_vue_interpolation_wrap = off
468
+ ij_vue_keep_indents_on_empty_lines = false
469
+ ij_vue_spaces_within_interpolation_expressions = true
470
+ ij_vue_indent_size = 4
471
+ ij_vue_tab_width = 4
472
+ ij_vue_continuation_indent_size = 4
473
+
474
+
475
+ ij_yaml_indent_size = 4
476
+ ij_yaml_align_values_properties = do_not_align
477
+ ij_yaml_autoinsert_sequence_marker = true
478
+ ij_yaml_block_mapping_on_new_line = false
479
+ ij_yaml_indent_sequence_value = true
480
+ ij_yaml_keep_indents_on_empty_lines = false
481
+ ij_yaml_keep_line_breaks = true
482
+ ij_yaml_sequence_on_new_line = false
483
+ ij_yaml_space_before_colon = false
484
+ ij_yaml_spaces_within_braces = true
485
+ ij_yaml_spaces_within_brackets = true
@@ -0,0 +1,8 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <module type="WEB_MODULE" version="4">
3
+ <component name="NewModuleRootManager">
4
+ <content url="file://$MODULE_DIR$" />
5
+ <orderEntry type="inheritedJdk" />
6
+ <orderEntry type="sourceFolder" forTests="false" />
7
+ </component>
8
+ </module>
@@ -0,0 +1,6 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <project version="4">
3
+ <component name="TypeScriptCompiler">
4
+ <option name="useServicePoweredTypesWasEnabledByExperiment" value="true" />
5
+ </component>
6
+ </project>
@@ -0,0 +1,13 @@
1
+ <component name="InspectionProjectProfileManager">
2
+ <profile version="1.0">
3
+ <option name="myName" value="Project Default" />
4
+ <inspection_tool class="CssUnusedSymbol" enabled="false" level="WARNING" enabled_by_default="false" />
5
+ <inspection_tool class="GrazieInspection" enabled="false" level="GRAMMAR_ERROR" enabled_by_default="false" />
6
+ <inspection_tool class="LanguageDetectionInspection" enabled="false" level="WARNING" enabled_by_default="false" />
7
+ <inspection_tool class="SpellCheckingInspection" enabled="false" level="TYPO" enabled_by_default="false">
8
+ <option name="processCode" value="true" />
9
+ <option name="processLiterals" value="true" />
10
+ <option name="processComments" value="true" />
11
+ </inspection_tool>
12
+ </profile>
13
+ </component>
@@ -0,0 +1,8 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <project version="4">
3
+ <component name="ProjectModuleManager">
4
+ <modules>
5
+ <module fileurl="file://$PROJECT_DIR$/.idea/common.iml" filepath="$PROJECT_DIR$/.idea/common.iml" />
6
+ </modules>
7
+ </component>
8
+ </project>
package/CODEOWNERS ADDED
@@ -0,0 +1 @@
1
+ * @basmilius
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2024-2025 Bas Milius
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,19 @@
1
+ <a href="https://bas.dev" target="_blank" rel="noopener">
2
+ <img src="https://bmcdn.nl/assets/branding/logo.svg" alt="Bas-logo" height="48"/>
3
+ </a>
4
+
5
+ ---
6
+
7
+ # `@basmilius/utils`
8
+
9
+ Various utilities that are commonly used throughout personal Vue-related projects.
10
+
11
+ ## ⭐️ Prerequisites
12
+
13
+ - Bun >= 1.2.11
14
+ - Node >= 23
15
+
16
+ ## 🚀 Getting started
17
+
18
+ 1. Run `bun install` in the root of the project.
19
+ 2. Run `bun --cwd packages/utils build` to build the project.
package/build.ts ADDED
@@ -0,0 +1,10 @@
1
+ import { build, dts } from '@basmilius/tools';
2
+
3
+ await build({
4
+ entrypoints: ['src/index.ts'],
5
+ target: 'browser',
6
+ packages: 'external',
7
+ plugins: [
8
+ dts()
9
+ ]
10
+ });
package/dist/app.d.ts ADDED
@@ -0,0 +1,28 @@
1
+ import Homey from "homey";
2
+ import type HomeyNS from "homey/lib/Homey";
3
+ import { Registry } from "./registry";
4
+ import type { Language } from "./types";
5
+ export declare class App extends Homey.App {
6
+ #private;
7
+ get registry(): Registry;
8
+ constructor();
9
+ }
10
+ export declare class Shortcuts {
11
+ #private;
12
+ get app(): App;
13
+ get homey(): HomeyNS;
14
+ get registry(): Registry;
15
+ get dashboards(): HomeyNS["dashboards"];
16
+ get flow(): HomeyNS["flow"];
17
+ get settings(): HomeyNS["settings"];
18
+ get language(): Language;
19
+ constructor(app: App);
20
+ notify(message: string): Promise<void>;
21
+ log(...args: any[]): void;
22
+ realtime(event: string, data?: any): void;
23
+ translate(key: string, tags?: Record<string, string | number>): string;
24
+ clearInterval(interval: NodeJS.Timeout): void;
25
+ setInterval(callback: Function, ms: number): NodeJS.Timeout;
26
+ clearTimeout(interval: NodeJS.Timeout): void;
27
+ setTimeout(callback: Function, ms: number): NodeJS.Timeout;
28
+ }
@@ -0,0 +1,2 @@
1
+ export declare const colors: unknown;
2
+ export declare const icons: unknown;
@@ -0,0 +1,5 @@
1
+ import type { Constructor } from "./types";
2
+ export declare function action(id: string): <T extends Constructor>(ActionClass: T) => T;
3
+ export declare function autocomplete(id: string): <T extends Constructor>(AutocompleteClass: T) => T;
4
+ export declare function condition(id: string): <T extends Constructor>(ConditionClass: T) => T;
5
+ export declare function trigger(id: string): <T extends Constructor>(TriggerClass: T) => T;
package/dist/flow.d.ts ADDED
@@ -0,0 +1,39 @@
1
+ import type Homey from "homey";
2
+ import { type App, Shortcuts } from "./app";
3
+ import type { AutocompleteProvider, FlowCardType } from "./types";
4
+ export declare abstract class FlowEntity<
5
+ T extends Homey.FlowCard,
6
+ TArgs = unknown,
7
+ TState = unknown,
8
+ TResult = unknown
9
+ > extends Shortcuts {
10
+ #private;
11
+ get card(): T;
12
+ get id(): string;
13
+ get type(): FlowCardType;
14
+ constructor(app: App);
15
+ onInit(): Promise<void>;
16
+ abstract onRun(args: TArgs, state: TState): Promise<TResult>;
17
+ onUpdate(): Promise<void>;
18
+ registerAutocomplete<T extends FlowAutocompleteProvider>(name: string, autocompleteProvider: AutocompleteProvider<T>): void;
19
+ }
20
+ export declare abstract class FlowActionEntity<
21
+ TArgs = unknown,
22
+ TState = unknown,
23
+ TResult = unknown
24
+ > extends FlowEntity<Homey.FlowCardAction, TArgs, TState, TResult> {}
25
+ export declare abstract class FlowConditionEntity<
26
+ TArgs = unknown,
27
+ TState = unknown
28
+ > extends FlowEntity<Homey.FlowCardCondition, TArgs, TState, boolean> {}
29
+ export declare abstract class FlowTriggerEntity<
30
+ TArgs = unknown,
31
+ TState = unknown
32
+ > extends FlowEntity<Homey.FlowCardTrigger, TArgs, TState, boolean> {
33
+ trigger(state: TState, tokens?: Record<string, unknown>): Promise<any>;
34
+ }
35
+ export declare abstract class FlowAutocompleteProvider extends Shortcuts {
36
+ abstract find(query: string, args: Record<string, unknown>): Promise<Homey.FlowCard.ArgumentAutocompleteResults>;
37
+ update(): Promise<void>;
38
+ onInit(): Promise<void>;
39
+ }