@policystudio/policy-studio-ui-vue 1.1.90-beta.30 → 1.1.90-beta.32

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 (76) hide show
  1. package/dist/css/psui_styles_output.css +5679 -6077
  2. package/dist/index.d.ts +2 -1
  3. package/dist/index.js +3 -1
  4. package/dist/index.js.map +1 -1
  5. package/doc/.nvmrc +1 -0
  6. package/doc/.storybook/PolicyStudio.ts +11 -0
  7. package/doc/.storybook/main.ts +27 -0
  8. package/doc/.storybook/manager.ts +7 -0
  9. package/doc/.storybook/preview.ts +16 -0
  10. package/doc/package-lock.json +22653 -0
  11. package/doc/package.json +71 -0
  12. package/doc/shims-vue.d.ts +6 -0
  13. package/doc/src/assets/images/multifamily-units.svg +10 -0
  14. package/doc/src/assets/images/policy-studio.svg +15 -0
  15. package/doc/src/contents/ComparisonData.ts +378 -0
  16. package/doc/src/contents/FlexibleData.ts +502 -0
  17. package/doc/src/contents/ResultsData.ts +531 -0
  18. package/doc/src/stories/Accordion.stories.ts +58 -0
  19. package/doc/src/stories/BadgeWithIcon.stories.ts +31 -0
  20. package/doc/src/stories/BarChart.stories.ts +17 -0
  21. package/doc/src/stories/Breadcrumb.stories.ts +22 -0
  22. package/doc/src/stories/Button.stories.ts +130 -0
  23. package/doc/src/stories/CardInfos.stories.ts +15 -0
  24. package/doc/src/stories/ChartLegend.stories.ts +15 -0
  25. package/doc/src/stories/Checkbox.stories.ts +45 -0
  26. package/doc/src/stories/CheckboxSimple.stories.ts +49 -0
  27. package/doc/src/stories/Chips.stories.ts +30 -0
  28. package/doc/src/stories/ClimateZoneBadge.stories.ts +18 -0
  29. package/doc/src/stories/Collapse.stories.ts +46 -0
  30. package/doc/src/stories/Colors.mdx +70 -0
  31. package/doc/src/stories/CostEffectBar.stories.ts +24 -0
  32. package/doc/src/stories/Datatable.stories.ts +53 -0
  33. package/doc/src/stories/DateCardInfo.stories.ts +20 -0
  34. package/doc/src/stories/Dialog.stories.ts +131 -0
  35. package/doc/src/stories/Draggable.stories.ts +23 -0
  36. package/doc/src/stories/Dropdown.stories.ts +100 -0
  37. package/doc/src/stories/DropdownList.stories.ts +213 -0
  38. package/doc/src/stories/ElevationSystem.mdx +41 -0
  39. package/doc/src/stories/HighlightRippleDot.stories.ts +16 -0
  40. package/doc/src/stories/Icon.stories.ts +23 -0
  41. package/doc/src/stories/InlineSelector.stories.ts +18 -0
  42. package/doc/src/stories/Input.stories.ts +243 -0
  43. package/doc/src/stories/InputSelect.stories.ts +31 -0
  44. package/doc/src/stories/InputTextArea.stories.ts +25 -0
  45. package/doc/src/stories/Introduction.mdx +211 -0
  46. package/doc/src/stories/MiniTag.stories.ts +59 -0
  47. package/doc/src/stories/ProgressBar.stories.ts +24 -0
  48. package/doc/src/stories/RadioButton.stories.ts +40 -0
  49. package/doc/src/stories/RadioButtonSimple.stories.ts +43 -0
  50. package/doc/src/stories/SimpleAlert.stories.ts +22 -0
  51. package/doc/src/stories/Slider.stories.ts +79 -0
  52. package/doc/src/stories/Switch.stories.ts +39 -0
  53. package/doc/src/stories/TabHeader.stories.ts +57 -0
  54. package/doc/src/stories/TableResults.stories.ts +728 -0
  55. package/doc/src/stories/TagScope.stories.ts +18 -0
  56. package/doc/src/stories/TestimonialCard.stories.ts +27 -0
  57. package/doc/src/stories/Toast.stories.ts +52 -0
  58. package/doc/src/stories/Toggle.stories.ts +48 -0
  59. package/doc/src/stories/Tooltip.stories.ts +114 -0
  60. package/doc/src/stories/Typography.mdx +212 -0
  61. package/doc/src/stories/assets/code-brackets.svg +1 -0
  62. package/doc/src/stories/assets/colors.svg +1 -0
  63. package/doc/src/stories/assets/comments.svg +1 -0
  64. package/doc/src/stories/assets/direction.svg +1 -0
  65. package/doc/src/stories/assets/flow.svg +1 -0
  66. package/doc/src/stories/assets/plugin.svg +1 -0
  67. package/doc/src/stories/assets/repo.svg +1 -0
  68. package/doc/src/stories/assets/stackalt.svg +1 -0
  69. package/doc/tsconfig.json +17 -0
  70. package/package.json +7 -3
  71. package/scripts/gulp.js +11 -0
  72. package/src/assets/scss/base.scss +3 -34
  73. package/src/assets/scss/components/PsAccordion.scss +1 -1
  74. package/src/assets/scss/components/PsCollapse.css +74 -0
  75. package/src/components/collapse/PsCollapse.vue +121 -0
  76. package/src/index.ts +4 -1
@@ -0,0 +1,728 @@
1
+ // @ts-ignore
2
+ import PsTableResults, { tableLayout } from '../../../src/components/table-results/PsTableResults.vue'
3
+ import PsTableResultsHead from '../../../src/components/table-results/PsTableResultsHead.vue'
4
+ import PsTableResultsHeadFlexible from '../../../src/components/table-results/PsTableResultsHeadFlexible.vue'
5
+ import PsTableResultsHeadComparison from '../../../src/components/table-results/PsTableResultsHeadComparison.vue'
6
+ import PsProgressBar from '../../../src/components/badges-and-tags/PsProgressBar.vue'
7
+ import PsSwitch from '../../../src/components/controls/PsSwitch.vue'
8
+
9
+ import { resultsDataHeader, resultsDataColumnGroup, resultsDataSummary } from '../contents/ResultsData'
10
+ import { comparisonDataHeader, comparisonDataColumnGroup, comparisonDataSummary } from '../contents/ComparisonData'
11
+ import { flexibleDataHeader, flexibleDataColumnGroup, flexibleDataSummary } from '../contents/FlexibleData'
12
+
13
+ export default {
14
+ title: 'Data Tables/TableResults',
15
+ component: { PsTableResults, PsTableResultsHead, PsTableResultsHeadComparison, PsTableResultsHeadFlexible },
16
+ argTypes: {
17
+ layout: { control: { type: 'inline-radio', options: tableLayout } },
18
+ onClick: { action: 'clicked' },
19
+ onCollapse: { action: 'clicked' },
20
+ },
21
+ }
22
+ // @ts-ignore
23
+ const TableResults = (args, { argTypes }) => ({
24
+ props: Object.keys(argTypes),
25
+ components: { PsTableResults, PsTableResultsHead, PsTableResultsHeadComparison, PsTableResultsHeadFlexible },
26
+ subcomponents: { PsProgressBar, PsSwitch },
27
+ template: `
28
+ <div style="width:100%;">
29
+ <div
30
+ :class="$props['layout'] == 'comparison' ? 'psui-bg-gray-20 psui-p-8' : 'psui-bg-white'"
31
+ >
32
+ <PsTableResults v-bind="$props">
33
+ <template v-slot:header>
34
+ <PsTableResultsHeadComparison
35
+ v-if="$props['layout'] == 'comparison'"
36
+ v-bind="$props"
37
+ first-column-title="Comparing 4 Policies"
38
+ first-column-description=""
39
+ />
40
+ <PsTableResultsHeadFlexible
41
+ v-else-if="$props['layout'] == 'flexible'"
42
+ v-bind="$props"
43
+ first-column-title="Measure List"
44
+ first-column-description="Measures"
45
+ />
46
+ <PsTableResultsHead
47
+ v-else
48
+ v-bind="$props"
49
+ />
50
+ </template>
51
+ </PsTableResults>
52
+ </div>
53
+ </div>
54
+ `
55
+ })
56
+
57
+ export const Results = TableResults.bind({})
58
+ // @ts-ignore
59
+ Results.args = {
60
+ layout: 'results',
61
+ header: resultsDataHeader,
62
+ columnGroups: resultsDataColumnGroup,
63
+ summaryData: resultsDataSummary,
64
+ footer: [],
65
+ showRowsCollapsed: true,
66
+ }
67
+
68
+ export const Comparison = TableResults.bind({})
69
+ // @ts-ignore
70
+ Comparison.args = {
71
+ layout: 'comparison',
72
+ header: comparisonDataHeader,
73
+ columnGroups: comparisonDataColumnGroup,
74
+ summaryData: comparisonDataSummary,
75
+ footer: [],
76
+ showRowsCollapsed: true,
77
+ }
78
+
79
+ export const Flexible = TableResults.bind({})
80
+ // @ts-ignore
81
+ Flexible.args = {
82
+ layout: 'flexible',
83
+ header: flexibleDataHeader,
84
+ columnGroups: flexibleDataColumnGroup,
85
+ summaryData: flexibleDataSummary,
86
+ tableMaxHeight: 'auto',
87
+ footer: [],
88
+ showRowsCollapsed: false
89
+ }
90
+
91
+ // const TableSimple = (args, { argTypes }) => ({
92
+ // props: Object.keys(argTypes),
93
+ // components: { PsTableResults, PsTableResultsHead },
94
+ // template: `
95
+ // <div style="width:100%;">
96
+ // <PsTableResults v-bind="$props">
97
+ // <template v-slot:header>
98
+ // <PsTableResultsHead v-bind="$props" />
99
+ // </template>
100
+ // </PsTableResults>
101
+ // </div>
102
+ // `
103
+ // })
104
+
105
+ // export const Simple = TableSimple.bind({})
106
+ // Simple.args = {
107
+ // layout: 'results',
108
+ // header: [
109
+ // {
110
+ // 'order': 0,
111
+ // 'key': 'fixed_columns',
112
+ // 'title': 'Cost-Effectiveness',
113
+ // 'columns': [
114
+ // {
115
+ // 'isActive': true,
116
+ // 'key': 'tdv_benefit_to_cost_ratio',
117
+ // 'title': 'TDV',
118
+ // 'description': '≥ 1.0 is cost effective',
119
+ // 'isChart': true,
120
+ // 'hasHelper': {
121
+ // 'type': 'helper',
122
+ // 'id': 1
123
+ // }
124
+ // }
125
+ // ],
126
+ // 'hasHelper': {
127
+ // 'type': 'helper',
128
+ // 'id': 23
129
+ // }
130
+ // },
131
+ // {
132
+ // 'order': 2,
133
+ // 'key': 'city_wide_impact',
134
+ // 'title': 'Wide Impact',
135
+ // 'columns': [
136
+ // {
137
+ // 'isActive': true,
138
+ // 'key': 'forecast_units_affected',
139
+ // 'title': 'Affected Units',
140
+ // 'description': '(lifecycle)',
141
+ // 'hasProjections': true,
142
+ // 'hasHelper': {
143
+ // 'type': 'helper',
144
+ // 'id': 17
145
+ // },
146
+ // 'chartProjection': {
147
+ // 'title': 'Number of Affected Units',
148
+ // 'subtitle': ''
149
+ // }
150
+ // },
151
+ // {
152
+ // 'isActive': true,
153
+ // 'key': 'forecast_initial_cost',
154
+ // 'title': 'Compliance Cost',
155
+ // 'description': '(lifecycle)',
156
+ // 'hasProjections': true,
157
+ // 'hasHelper': {
158
+ // 'type': 'helper',
159
+ // 'id': 20
160
+ // },
161
+ // 'chartProjection': {
162
+ // 'title': 'Compliance Cost',
163
+ // 'subtitle': ''
164
+ // }
165
+ // },
166
+ // {
167
+ // 'isActive': true,
168
+ // 'key': 'forecast_emissions_savings',
169
+ // 'title': 'Emissions Reductions',
170
+ // 'description': '(lifecycle MTCO2e)',
171
+ // 'hasProjections': true,
172
+ // 'hasHelper': {
173
+ // 'type': 'helper',
174
+ // 'id': 18
175
+ // },
176
+ // 'chartProjection': {
177
+ // 'title': 'Emissions Reductions',
178
+ // 'subtitle': 'MTCO2e'
179
+ // }
180
+ // },
181
+ // {
182
+ // 'isActive': true,
183
+ // 'key': 'forecast_lifecycle_savings',
184
+ // 'title': 'Lifecycle Savings',
185
+ // 'description': '(on-bill)',
186
+ // 'hasProjections': true,
187
+ // 'hasHelper': {
188
+ // 'type': 'helper',
189
+ // 'id': 19
190
+ // },
191
+ // 'chartProjection': {
192
+ // 'title': 'Bill Savings',
193
+ // 'subtitle': ''
194
+ // }
195
+ // },
196
+ // {
197
+ // 'isActive': true,
198
+ // 'key': 'forecast_kwh_savings',
199
+ // 'title': 'Electricity Savings',
200
+ // 'description': '(lifecycle kWh)',
201
+ // 'hasProjections': true,
202
+ // 'hasHelper': {
203
+ // 'type': 'helper',
204
+ // 'id': 21
205
+ // },
206
+ // 'chartProjection': {
207
+ // 'title': 'Electricity Savings',
208
+ // 'subtitle': 'kWh'
209
+ // }
210
+ // },
211
+ // {
212
+ // 'isActive': true,
213
+ // 'key': 'forecast_therms_savings',
214
+ // 'title': 'Gas Savings',
215
+ // 'description': '(lifecycle therms)',
216
+ // 'hasProjections': true,
217
+ // 'hasHelper': {
218
+ // 'type': 'helper',
219
+ // 'id': 22
220
+ // },
221
+ // 'chartProjection': {
222
+ // 'title': 'Gas Savings',
223
+ // 'subtitle': 'therms'
224
+ // }
225
+ // }
226
+ // ],
227
+ // 'hasHelper': {
228
+ // 'type': 'helper',
229
+ // 'id': 25
230
+ // }
231
+ // }
232
+ // ],
233
+ // columnGroups: [
234
+ // {
235
+ // 'order': 0,
236
+ // 'key': 'fixed_columns',
237
+ // 'title': 'Cost-Effectiveness',
238
+ // 'columns': [
239
+ // {
240
+ // 'isActive': true,
241
+ // 'key': 'tdv_benefit_to_cost_ratio',
242
+ // 'title': 'TDV',
243
+ // 'description': '≥ 1.0 is cost effective',
244
+ // 'isChart': true,
245
+ // 'hasHelper': {
246
+ // 'type': 'helper',
247
+ // 'id': 1
248
+ // }
249
+ // }
250
+ // ],
251
+ // 'hasHelper': {
252
+ // 'type': 'helper',
253
+ // 'id': 23
254
+ // }
255
+ // },
256
+ // {
257
+ // 'order': 2,
258
+ // 'key': 'city_wide_impact',
259
+ // 'title': 'Wide Impact',
260
+ // 'columns': [
261
+ // {
262
+ // 'isActive': true,
263
+ // 'key': 'forecast_units_affected',
264
+ // 'title': 'Affected Units',
265
+ // 'description': '(lifecycle)',
266
+ // 'hasProjections': true,
267
+ // 'hasHelper': {
268
+ // 'type': 'helper',
269
+ // 'id': 17
270
+ // },
271
+ // 'chartProjection': {
272
+ // 'title': 'Number of Affected Units',
273
+ // 'subtitle': ''
274
+ // }
275
+ // },
276
+ // {
277
+ // 'isActive': true,
278
+ // 'key': 'forecast_initial_cost',
279
+ // 'title': 'Compliance Cost',
280
+ // 'description': '(lifecycle)',
281
+ // 'hasProjections': true,
282
+ // 'hasHelper': {
283
+ // 'type': 'helper',
284
+ // 'id': 20
285
+ // },
286
+ // 'chartProjection': {
287
+ // 'title': 'Compliance Cost',
288
+ // 'subtitle': ''
289
+ // }
290
+ // },
291
+ // {
292
+ // 'isActive': true,
293
+ // 'key': 'forecast_emissions_savings',
294
+ // 'title': 'Emissions Reductions',
295
+ // 'description': '(lifecycle MTCO2e)',
296
+ // 'hasProjections': true,
297
+ // 'hasHelper': {
298
+ // 'type': 'helper',
299
+ // 'id': 18
300
+ // },
301
+ // 'chartProjection': {
302
+ // 'title': 'Emissions Reductions',
303
+ // 'subtitle': 'MTCO2e'
304
+ // }
305
+ // },
306
+ // {
307
+ // 'isActive': true,
308
+ // 'key': 'forecast_lifecycle_savings',
309
+ // 'title': 'Lifecycle Savings',
310
+ // 'description': '(on-bill)',
311
+ // 'hasProjections': true,
312
+ // 'hasHelper': {
313
+ // 'type': 'helper',
314
+ // 'id': 19
315
+ // },
316
+ // 'chartProjection': {
317
+ // 'title': 'Bill Savings',
318
+ // 'subtitle': ''
319
+ // }
320
+ // },
321
+ // {
322
+ // 'isActive': true,
323
+ // 'key': 'forecast_kwh_savings',
324
+ // 'title': 'Electricity Savings',
325
+ // 'description': '(lifecycle kWh)',
326
+ // 'hasProjections': true,
327
+ // 'hasHelper': {
328
+ // 'type': 'helper',
329
+ // 'id': 21
330
+ // },
331
+ // 'chartProjection': {
332
+ // 'title': 'Electricity Savings',
333
+ // 'subtitle': 'kWh'
334
+ // }
335
+ // },
336
+ // {
337
+ // 'isActive': true,
338
+ // 'key': 'forecast_therms_savings',
339
+ // 'title': 'Gas Savings',
340
+ // 'description': '(lifecycle therms)',
341
+ // 'hasProjections': true,
342
+ // 'hasHelper': {
343
+ // 'type': 'helper',
344
+ // 'id': 22
345
+ // },
346
+ // 'chartProjection': {
347
+ // 'title': 'Gas Savings',
348
+ // 'subtitle': 'therms'
349
+ // }
350
+ // }
351
+ // ],
352
+ // 'hasHelper': {
353
+ // 'type': 'helper',
354
+ // 'id': 25
355
+ // }
356
+ // }
357
+ // ],
358
+ // summaryData: [
359
+ // {
360
+ // 'data': {
361
+ // 'forecast_units_affected': 337.5,
362
+ // 'forecast_emissions_savings': -1470.2228427746163,
363
+ // 'forecast_therms_savings': -365783.4118312498,
364
+ // 'forecast_kwh_savings': 5790873.440625001,
365
+ // 'forecast_lifecycle_savings': 1384353.6577500012,
366
+ // 'forecast_initial_cost': 840955.172375,
367
+ // 'initial_cost': -744.7994892592594,
368
+ // 'annual_bill_savings_avg': null,
369
+ // 'annual_bill_savings': -229.11570370370367,
370
+ // 'emissions_savings': 0.5992222222222222,
371
+ // 'kwh_savings': -1596.6407407407407,
372
+ // 'therms_savings': 134.17952962962963,
373
+ // 'lifecycle_savings': -3470.4795667037033,
374
+ // 'compliance_margin': 6.797037037037037,
375
+ // 'baseline_fuel_type': 'Mixed-fuel',
376
+ // 'energy_savings_combined': 7.96989981162963,
377
+ // 'on_bill_cost_ratio': 0.9328797158714975,
378
+ // 'tdv_benefit_to_cost_ratio': 1.327363515218667,
379
+ // 'simple_payback': 4.842552503682514,
380
+ // 'tdv2022_benefit_to_cost_ratio': 0
381
+ // },
382
+ // 'deep': 0,
383
+ // 'id': 'policy',
384
+ // 'title': 'Total Impact',
385
+ // 'items': [
386
+ // {
387
+ // 'data': {
388
+ // 'forecast_units_affected': 77.5,
389
+ // 'forecast_emissions_savings': 1427.3145433224304,
390
+ // 'forecast_therms_savings': 296624.89395,
391
+ // 'forecast_kwh_savings': -2102697.449999999,
392
+ // 'forecast_lifecycle_savings': 19620.35775000001,
393
+ // 'forecast_initial_cost': 408160,
394
+ // 'initial_cost': 2014,
395
+ // 'annual_bill_savings_avg': null,
396
+ // 'annual_bill_savings': -439.0199999999999,
397
+ // 'emissions_savings': 2.045,
398
+ // 'kwh_savings': -3999,
399
+ // 'therms_savings': 400.1415,
400
+ // 'lifecycle_savings': -4160.687805,
401
+ // 'compliance_margin': 29.6,
402
+ // 'baseline_fuel_type': 'Mixed-fuel',
403
+ // 'energy_savings_combined': 26.36819047,
404
+ // 'on_bill_cost_ratio': 1.460322707,
405
+ // 'tdv_benefit_to_cost_ratio': 1.42,
406
+ // 'simple_payback': 0,
407
+ // 'tdv2022_benefit_to_cost_ratio': 0
408
+ // },
409
+ // 'deep': 1,
410
+ // 'id': 'policy:container-2459',
411
+ // 'title': 'New Single Family Units',
412
+ // 'items': [
413
+ // {
414
+ // 'data': {
415
+ // 'forecast_units_affected': 77.5,
416
+ // 'forecast_emissions_savings': 1427.3145433224304,
417
+ // 'forecast_therms_savings': 296624.89395,
418
+ // 'forecast_kwh_savings': -2102697.449999999,
419
+ // 'forecast_lifecycle_savings': 19620.35775000001,
420
+ // 'forecast_initial_cost': 408160,
421
+ // 'initial_cost': 2014,
422
+ // 'annual_bill_savings_avg': null,
423
+ // 'annual_bill_savings': -439.0199999999999,
424
+ // 'emissions_savings': 2.045,
425
+ // 'kwh_savings': -3999,
426
+ // 'therms_savings': 400.1415,
427
+ // 'lifecycle_savings': -4160.687805,
428
+ // 'compliance_margin': 29.6,
429
+ // 'baseline_fuel_type': 'Mixed-fuel',
430
+ // 'energy_savings_combined': 26.36819047,
431
+ // 'on_bill_cost_ratio': 1.460322707,
432
+ // 'tdv_benefit_to_cost_ratio': 1.42,
433
+ // 'simple_payback': 0,
434
+ // 'tdv2022_benefit_to_cost_ratio': 0
435
+ // },
436
+ // 'deep': 2,
437
+ // 'id': 'policy:container-2459:climateZone-1-PGE',
438
+ // 'title': 'Climate Zone 1',
439
+ // 'items': [
440
+ // {
441
+ // 'data': {
442
+ // 'forecast_units_affected': 77.5,
443
+ // 'forecast_emissions_savings': 1427.3145433224304,
444
+ // 'forecast_therms_savings': 296624.89395,
445
+ // 'forecast_kwh_savings': -2102697.449999999,
446
+ // 'forecast_lifecycle_savings': 19620.35775000001,
447
+ // 'forecast_initial_cost': 408160,
448
+ // 'initial_cost': 2014,
449
+ // 'annual_bill_savings': -439.02,
450
+ // 'emissions_savings': 2.045,
451
+ // 'kwh_savings': -3999,
452
+ // 'therms_savings': 400.1415,
453
+ // 'lifecycle_savings': -4160.687805,
454
+ // 'compliance_margin': 29.6,
455
+ // 'baseline_fuel_type': 'Mixed-fuel',
456
+ // 'energy_savings_combined': 26.36819047,
457
+ // 'on_bill_cost_ratio': 1.460322707,
458
+ // 'tdv_benefit_to_cost_ratio': 1.42,
459
+ // 'simple_payback': 0,
460
+ // 'tdv2022_benefit_to_cost_ratio': null
461
+ // },
462
+ // 'deep': 3,
463
+ // 'id': 'policy:container-2459:climateZone-1-PGE:fuel-all-electric',
464
+ // 'title': 'All Electric',
465
+ // 'items': null,
466
+ // 'is_disabled': false,
467
+ // 'is_last': false,
468
+ // 'index': '0-0-0-0',
469
+ // 'last_deep': true
470
+ // },
471
+ // {
472
+ // 'data': {
473
+ // 'initial_cost': 1806.25,
474
+ // 'annual_bill_savings': 186.04,
475
+ // 'emissions_savings': 0.42,
476
+ // 'kwh_savings': 89.395,
477
+ // 'therms_savings': 68.604,
478
+ // 'lifecycle_savings': 5647.744375,
479
+ // 'compliance_margin': 11.95,
480
+ // 'baseline_fuel_type': 'Mixed-fuel',
481
+ // 'energy_savings_combined': 7.16541574,
482
+ // 'on_bill_cost_ratio': 2.784541829,
483
+ // 'tdv_benefit_to_cost_ratio': 2.75,
484
+ // 'simple_payback': 9.708831573,
485
+ // 'tdv2022_benefit_to_cost_ratio': null
486
+ // },
487
+ // 'deep': 3,
488
+ // 'id': 'policy:container-2459:climateZone-1-PGE:fuel-mixed-fuel',
489
+ // 'title': 'Mixed-fuel',
490
+ // 'items': null,
491
+ // 'is_disabled': true,
492
+ // 'is_last': true,
493
+ // 'index': '0-0-0-1',
494
+ // 'last_deep': true
495
+ // }
496
+ // ],
497
+ // 'is_disabled': false,
498
+ // 'is_last': false,
499
+ // 'index': '0-0-0',
500
+ // 'last_deep': false
501
+ // },
502
+ // {
503
+ // 'data': {
504
+ // 'forecast_units_affected': 77.5,
505
+ // 'forecast_emissions_savings': 1427.3145433224304,
506
+ // 'forecast_therms_savings': 296624.89395,
507
+ // 'forecast_kwh_savings': -2102697.449999999,
508
+ // 'forecast_lifecycle_savings': 19620.35775000001,
509
+ // 'forecast_initial_cost': 408160,
510
+ // 'initial_cost': 2014,
511
+ // 'annual_bill_savings_avg': null,
512
+ // 'annual_bill_savings': -439.0199999999999,
513
+ // 'emissions_savings': 2.045,
514
+ // 'kwh_savings': -3999,
515
+ // 'therms_savings': 400.1415,
516
+ // 'lifecycle_savings': -4160.687805,
517
+ // 'compliance_margin': 29.6,
518
+ // 'baseline_fuel_type': 'Mixed-fuel',
519
+ // 'energy_savings_combined': 26.36819047,
520
+ // 'on_bill_cost_ratio': 1.460322707,
521
+ // 'tdv_benefit_to_cost_ratio': 1.42,
522
+ // 'simple_payback': 0,
523
+ // 'tdv2022_benefit_to_cost_ratio': 0
524
+ // },
525
+ // 'deep': 2,
526
+ // 'id': 'policy:container-2459:climateZone-2-PGE',
527
+ // 'title': 'Climate Zone 2',
528
+ // 'items': [
529
+ // {
530
+ // 'data': {
531
+ // 'forecast_units_affected': 77.5,
532
+ // 'forecast_emissions_savings': 1427.3145433224304,
533
+ // 'forecast_therms_savings': 296624.89395,
534
+ // 'forecast_kwh_savings': -2102697.449999999,
535
+ // 'forecast_lifecycle_savings': 19620.35775000001,
536
+ // 'forecast_initial_cost': 408160,
537
+ // 'initial_cost': 2014,
538
+ // 'annual_bill_savings': -439.02,
539
+ // 'emissions_savings': 2.045,
540
+ // 'kwh_savings': -3999,
541
+ // 'therms_savings': 400.1415,
542
+ // 'lifecycle_savings': -4160.687805,
543
+ // 'compliance_margin': 29.6,
544
+ // 'baseline_fuel_type': 'Mixed-fuel',
545
+ // 'energy_savings_combined': 26.36819047,
546
+ // 'on_bill_cost_ratio': 1.460322707,
547
+ // 'tdv_benefit_to_cost_ratio': 1.42,
548
+ // 'simple_payback': 0,
549
+ // 'tdv2022_benefit_to_cost_ratio': null
550
+ // },
551
+ // 'deep': 3,
552
+ // 'id': 'policy:container-2459:climateZone-2-PGE:fuel-all-electric',
553
+ // 'title': 'All Electric',
554
+ // 'items': null,
555
+ // 'is_disabled': false,
556
+ // 'is_last': false,
557
+ // 'index': '0-0-0-0',
558
+ // 'last_deep': true
559
+ // },
560
+ // {
561
+ // 'data': {
562
+ // 'initial_cost': 1806.25,
563
+ // 'annual_bill_savings': 186.04,
564
+ // 'emissions_savings': 0.42,
565
+ // 'kwh_savings': 89.395,
566
+ // 'therms_savings': 68.604,
567
+ // 'lifecycle_savings': 5647.744375,
568
+ // 'compliance_margin': 11.95,
569
+ // 'baseline_fuel_type': 'Mixed-fuel',
570
+ // 'energy_savings_combined': 7.16541574,
571
+ // 'on_bill_cost_ratio': 2.784541829,
572
+ // 'tdv_benefit_to_cost_ratio': 2.75,
573
+ // 'simple_payback': 9.708831573,
574
+ // 'tdv2022_benefit_to_cost_ratio': null
575
+ // },
576
+ // 'deep': 3,
577
+ // 'id': 'policy:container-2459:climateZone-2-PGE:fuel-mixed-fuel',
578
+ // 'title': 'Mixed-fuel',
579
+ // 'items': null,
580
+ // 'is_disabled': true,
581
+ // 'is_last': true,
582
+ // 'index': '0-0-0-1',
583
+ // 'last_deep': true
584
+ // }
585
+ // ],
586
+ // 'is_disabled': true,
587
+ // 'is_last': true,
588
+ // 'index': '0-0-1',
589
+ // 'last_deep': false
590
+ // }
591
+ // ],
592
+ // 'is_disabled': false,
593
+ // 'is_last': false,
594
+ // 'index': '0-0',
595
+ // 'last_deep': false
596
+ // },
597
+ // {
598
+ // 'data': {
599
+ // 'forecast_units_affected': 260,
600
+ // 'forecast_emissions_savings': -2897.5373860970467,
601
+ // 'forecast_therms_savings': -662408.3057812498,
602
+ // 'forecast_kwh_savings': 7893570.890625,
603
+ // 'forecast_lifecycle_savings': 1364733.3000000012,
604
+ // 'forecast_initial_cost': 432795.17237499997,
605
+ // 'initial_cost': -1567.1339524038463,
606
+ // 'annual_bill_savings_avg': null,
607
+ // 'annual_bill_savings': -166.54807692307693,
608
+ // 'emissions_savings': 0.16826923076923078,
609
+ // 'kwh_savings': -880.5528846153846,
610
+ // 'therms_savings': 54.902403846153845,
611
+ // 'lifecycle_savings': -3264.74441875,
612
+ // 'compliance_margin': 0,
613
+ // 'baseline_fuel_type': 'Mixed-fuel',
614
+ // 'energy_savings_combined': 2.4857939423076925,
615
+ // 'on_bill_cost_ratio': 0.435459354,
616
+ // 'tdv_benefit_to_cost_ratio': 1.2400000000000002,
617
+ // 'simple_payback': 9.409461647,
618
+ // 'tdv2022_benefit_to_cost_ratio': 0
619
+ // },
620
+ // 'deep': 1,
621
+ // 'id': 'policy:container-2539',
622
+ // 'title': 'New ADUs',
623
+ // 'items': [
624
+ // {
625
+ // 'data': {
626
+ // 'forecast_units_affected': 260,
627
+ // 'forecast_emissions_savings': -2897.5373860970467,
628
+ // 'forecast_therms_savings': -662408.3057812498,
629
+ // 'forecast_kwh_savings': 7893570.890625,
630
+ // 'forecast_lifecycle_savings': 1364733.3000000012,
631
+ // 'forecast_initial_cost': 432795.17237499997,
632
+ // 'initial_cost': -1567.1339524038463,
633
+ // 'annual_bill_savings_avg': null,
634
+ // 'annual_bill_savings': -166.54807692307693,
635
+ // 'emissions_savings': 0.16826923076923078,
636
+ // 'kwh_savings': -880.5528846153846,
637
+ // 'therms_savings': 54.902403846153845,
638
+ // 'lifecycle_savings': -3264.74441875,
639
+ // 'compliance_margin': 0,
640
+ // 'baseline_fuel_type': 'Mixed-fuel',
641
+ // 'energy_savings_combined': 2.4857939423076925,
642
+ // 'on_bill_cost_ratio': 0.435459354,
643
+ // 'tdv_benefit_to_cost_ratio': 1.2400000000000002,
644
+ // 'simple_payback': 9.409461647,
645
+ // 'tdv2022_benefit_to_cost_ratio': 0
646
+ // },
647
+ // 'deep': 2,
648
+ // 'id': 'policy:container-2539:climateZone-1-PGE',
649
+ // 'title': 'Climate Zone 1',
650
+ // 'items': [
651
+ // {
652
+ // 'data': {
653
+ // 'forecast_units_affected': 125,
654
+ // 'forecast_emissions_savings': -2897.5373860970467,
655
+ // 'forecast_therms_savings': -662408.3057812498,
656
+ // 'forecast_kwh_savings': 7893570.890625,
657
+ // 'forecast_lifecycle_savings': 1364733.3000000012,
658
+ // 'forecast_initial_cost': 432795.17237499997,
659
+ // 'initial_cost': -3259.638621,
660
+ // 'annual_bill_savings': -346.42,
661
+ // 'emissions_savings': 0.35,
662
+ // 'kwh_savings': -1831.55,
663
+ // 'therms_savings': 114.197,
664
+ // 'lifecycle_savings': -6790.668391,
665
+ // 'compliance_margin': 0,
666
+ // 'baseline_fuel_type': 'Mixed-fuel',
667
+ // 'energy_savings_combined': 5.1704514,
668
+ // 'on_bill_cost_ratio': 0.435459354,
669
+ // 'tdv_benefit_to_cost_ratio': 1.24,
670
+ // 'simple_payback': 9.409461647,
671
+ // 'tdv2022_benefit_to_cost_ratio': null
672
+ // },
673
+ // 'deep': 3,
674
+ // 'id': 'policy:container-2539:climateZone-1-PGE:fuel-all-electric',
675
+ // 'title': 'All Electric',
676
+ // 'items': null,
677
+ // 'is_disabled': false,
678
+ // 'is_last': false,
679
+ // 'index': '0-1-0-0',
680
+ // 'last_deep': true
681
+ // },
682
+ // {
683
+ // 'data': {
684
+ // 'forecast_units_affected': 135,
685
+ // 'initial_cost': 0,
686
+ // 'annual_bill_savings': 0,
687
+ // 'emissions_savings': 0,
688
+ // 'kwh_savings': 0,
689
+ // 'therms_savings': 0,
690
+ // 'lifecycle_savings': 0,
691
+ // 'compliance_margin': 0,
692
+ // 'baseline_fuel_type': 'Mixed-fuel',
693
+ // 'energy_savings_combined': 0,
694
+ // 'on_bill_cost_ratio': 0,
695
+ // 'tdv_benefit_to_cost_ratio': 0,
696
+ // 'simple_payback': 0,
697
+ // 'tdv2022_benefit_to_cost_ratio': null
698
+ // },
699
+ // 'deep': 3,
700
+ // 'id': 'policy:container-2539:climateZone-1-PGE:fuel-mixed-fuel',
701
+ // 'title': 'Mixed-fuel',
702
+ // 'items': null,
703
+ // 'is_disabled': false,
704
+ // 'is_last': true,
705
+ // 'index': '0-1-0-1',
706
+ // 'last_deep': true
707
+ // }
708
+ // ],
709
+ // 'is_disabled': false,
710
+ // 'is_last': true,
711
+ // 'index': '0-1-0',
712
+ // 'last_deep': false
713
+ // }
714
+ // ],
715
+ // 'is_disabled': false,
716
+ // 'is_last': true,
717
+ // 'index': '0-1',
718
+ // 'last_deep': false
719
+ // }
720
+ // ],
721
+ // 'is_disabled': false,
722
+ // 'index': '0',
723
+ // 'last_deep': false
724
+ // }
725
+ // ],
726
+ // footer: [],
727
+ // showRowsCollapsed: true,
728
+ // }