diff --git a/public/main.profile.dart.js b/public/main.profile.dart.js index 98cac77c14da..201424c5d6ad 100644 --- a/public/main.profile.dart.js +++ b/public/main.profile.dart.js @@ -54501,7 +54501,7 @@ }, _$HealthCheckPHPResponseSerializer: function _$HealthCheckPHPResponseSerializer() { }, - _$HealthCheckResponse: function _$HealthCheckResponse(t0, t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12) { + _$HealthCheckResponse: function _$HealthCheckResponse(t0, t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13) { var _ = this; _.systemHealth = t0; _.phpVersion = t1; @@ -54510,17 +54510,18 @@ _.cacheEnabled = t4; _.phantomEnabled = t5; _.openBasedir = t6; - _.execEnabled = t7; - _.emailDriver = t8; - _.pendingJobs = t9; - _.pdfEngine = t10; - _.trailingSlash = t11; - _.queue = t12; + _.filePermissions = t7; + _.execEnabled = t8; + _.emailDriver = t9; + _.pendingJobs = t10; + _.pdfEngine = t11; + _.trailingSlash = t12; + _.queue = t13; _._health_check_model$__hashCode = null; }, HealthCheckResponseBuilder: function HealthCheckResponseBuilder() { var _ = this; - _._health_check_model$_queue = _._trailingSlash = _._pdfEngine = _._pendingJobs = _._emailDriver = _._execEnabled = _._openBasedir = _._phantomEnabled = _._cacheEnabled = _._dbCheck = _._envWritable = _._phpVersion = _._systemHealth = _._health_check_model$_$v = null; + _._health_check_model$_queue = _._trailingSlash = _._pdfEngine = _._pendingJobs = _._emailDriver = _._execEnabled = _._filePermissions = _._openBasedir = _._phantomEnabled = _._cacheEnabled = _._dbCheck = _._envWritable = _._phpVersion = _._systemHealth = _._health_check_model$_$v = null; }, _$HealthCheckPHPResponse: function _$HealthCheckPHPResponse(t0, t1, t2, t3) { var _ = this; @@ -81572,8 +81573,8 @@ multiselectDialog(context, defaultSelected, onSelected, options, selected) { A.showDialog(false, new A.multiselectDialog_closure(options, selected, defaultSelected, onSelected), context, null, true, type$.legacy_AlertDialog); }, - MultiSelectList$(addTitle, allowDuplicates, defaultSelected, isDialog, liveChanges, onSelected, options, prefix, selected) { - return new A.MultiSelectList(options, selected, defaultSelected, addTitle, onSelected, liveChanges, prefix, allowDuplicates, isDialog, null); + MultiSelectList$(addTitle, defaultSelected, isDialog, liveChanges, onSelected, options, prefix, selected) { + return new A.MultiSelectList(options, selected, defaultSelected, addTitle, onSelected, liveChanges, prefix, isDialog, null); }, multiselectDialog_closure: function multiselectDialog_closure(t0, t1, t2, t3) { var _ = this; @@ -81585,7 +81586,7 @@ multiselectDialog__closure: function multiselectDialog__closure(t0) { this.onSelected = t0; }, - MultiSelectList: function MultiSelectList(t0, t1, t2, t3, t4, t5, t6, t7, t8, t9) { + MultiSelectList: function MultiSelectList(t0, t1, t2, t3, t4, t5, t6, t7, t8) { var _ = this; _.options = t0; _.selected = t1; @@ -81594,9 +81595,8 @@ _.onSelected = t4; _.liveChanges = t5; _.prefix = t6; - _.allowDuplicates = t7; - _.isDialog = t8; - _.key = t9; + _.isDialog = t7; + _.key = t8; }, MultiSelectListState: function MultiSelectListState(t0) { var _ = this; @@ -301458,7 +301458,7 @@ A.HealthCheckPHPResponse.prototype = {}; A._$HealthCheckResponseSerializer.prototype = { serialize$3$specifiedType(serializers, object, specifiedType) { - return A._setArrayType(["system_health", serializers.serialize$2$specifiedType(object.systemHealth, B.FullType_MtR), "php_version", serializers.serialize$2$specifiedType(object.phpVersion, B.FullType_uRN), "env_writable", serializers.serialize$2$specifiedType(object.envWritable, B.FullType_MtR), "simple_db_check", serializers.serialize$2$specifiedType(object.dbCheck, B.FullType_MtR), "cache_enabled", serializers.serialize$2$specifiedType(object.cacheEnabled, B.FullType_MtR), "phantom_enabled", serializers.serialize$2$specifiedType(object.phantomEnabled, B.FullType_MtR), "open_basedir", serializers.serialize$2$specifiedType(object.openBasedir, B.FullType_MtR), "exec", serializers.serialize$2$specifiedType(object.execEnabled, B.FullType_MtR), "mail_mailer", serializers.serialize$2$specifiedType(object.emailDriver, B.FullType_h8g), "jobs_pending", serializers.serialize$2$specifiedType(object.pendingJobs, B.FullType_kjq), "pdf_engine", serializers.serialize$2$specifiedType(object.pdfEngine, B.FullType_h8g), "trailing_slash", serializers.serialize$2$specifiedType(object.trailingSlash, B.FullType_MtR), "queue", serializers.serialize$2$specifiedType(object.queue, B.FullType_h8g)], type$.JSArray_legacy_Object); + return A._setArrayType(["system_health", serializers.serialize$2$specifiedType(object.systemHealth, B.FullType_MtR), "php_version", serializers.serialize$2$specifiedType(object.phpVersion, B.FullType_uRN), "env_writable", serializers.serialize$2$specifiedType(object.envWritable, B.FullType_MtR), "simple_db_check", serializers.serialize$2$specifiedType(object.dbCheck, B.FullType_MtR), "cache_enabled", serializers.serialize$2$specifiedType(object.cacheEnabled, B.FullType_MtR), "phantom_enabled", serializers.serialize$2$specifiedType(object.phantomEnabled, B.FullType_MtR), "open_basedir", serializers.serialize$2$specifiedType(object.openBasedir, B.FullType_MtR), "file_permissions", serializers.serialize$2$specifiedType(object.filePermissions, B.FullType_h8g), "exec", serializers.serialize$2$specifiedType(object.execEnabled, B.FullType_MtR), "mail_mailer", serializers.serialize$2$specifiedType(object.emailDriver, B.FullType_h8g), "jobs_pending", serializers.serialize$2$specifiedType(object.pendingJobs, B.FullType_kjq), "pdf_engine", serializers.serialize$2$specifiedType(object.pdfEngine, B.FullType_h8g), "trailing_slash", serializers.serialize$2$specifiedType(object.trailingSlash, B.FullType_MtR), "queue", serializers.serialize$2$specifiedType(object.queue, B.FullType_h8g)], type$.JSArray_legacy_Object); }, serialize$2(serializers, object) { return this.serialize$3$specifiedType(serializers, object, B.FullType_null_List_empty_false); @@ -301467,6 +301467,7 @@ var iterator, t1, key, value, t2, t3, result = new A.HealthCheckResponseBuilder(); result.get$_health_check_model$_$this()._trailingSlash = false; + result.get$_health_check_model$_$this()._filePermissions = ""; iterator = J.get$iterator$ax(serialized); for (t1 = type$.legacy_HealthCheckPHPResponse; iterator.moveNext$0();) { key = A._asStringS(iterator.get$current(iterator)); @@ -301506,6 +301507,10 @@ t2 = A._asBoolS(serializers.deserialize$2$specifiedType(value, B.FullType_MtR)); result.get$_health_check_model$_$this()._openBasedir = t2; break; + case "file_permissions": + t2 = A._asStringS(serializers.deserialize$2$specifiedType(value, B.FullType_h8g)); + result.get$_health_check_model$_$this()._filePermissions = t2; + break; case "exec": t2 = A._asBoolS(serializers.deserialize$2$specifiedType(value, B.FullType_MtR)); result.get$_health_check_model$_$this()._execEnabled = t2; @@ -301601,14 +301606,14 @@ return false; if (other === _this) return true; - return other instanceof A.HealthCheckResponse && _this.systemHealth === other.systemHealth && _this.phpVersion.$eq(0, other.phpVersion) && _this.envWritable === other.envWritable && _this.dbCheck === other.dbCheck && _this.cacheEnabled === other.cacheEnabled && _this.phantomEnabled === other.phantomEnabled && _this.openBasedir === other.openBasedir && _this.execEnabled === other.execEnabled && _this.emailDriver === other.emailDriver && _this.pendingJobs === other.pendingJobs && _this.pdfEngine === other.pdfEngine && _this.trailingSlash === other.trailingSlash && _this.queue === other.queue; + return other instanceof A.HealthCheckResponse && _this.systemHealth === other.systemHealth && _this.phpVersion.$eq(0, other.phpVersion) && _this.envWritable === other.envWritable && _this.dbCheck === other.dbCheck && _this.cacheEnabled === other.cacheEnabled && _this.phantomEnabled === other.phantomEnabled && _this.openBasedir === other.openBasedir && _this.filePermissions === other.filePermissions && _this.execEnabled === other.execEnabled && _this.emailDriver === other.emailDriver && _this.pendingJobs === other.pendingJobs && _this.pdfEngine === other.pdfEngine && _this.trailingSlash === other.trailingSlash && _this.queue === other.queue; }, get$hashCode(_) { var _this = this, t1 = _this._health_check_model$__hashCode; if (t1 == null) { t1 = _this.phpVersion; - t1 = _this._health_check_model$__hashCode = A.$jf(A.$jc(A.$jc(A.$jc(A.$jc(A.$jc(A.$jc(A.$jc(A.$jc(A.$jc(A.$jc(A.$jc(A.$jc(A.$jc(0, B.JSBool_methods.get$hashCode(_this.systemHealth)), t1.get$hashCode(t1)), B.JSBool_methods.get$hashCode(_this.envWritable)), B.JSBool_methods.get$hashCode(_this.dbCheck)), B.JSBool_methods.get$hashCode(_this.cacheEnabled)), B.JSBool_methods.get$hashCode(_this.phantomEnabled)), B.JSBool_methods.get$hashCode(_this.openBasedir)), B.JSBool_methods.get$hashCode(_this.execEnabled)), B.JSString_methods.get$hashCode(_this.emailDriver)), B.JSInt_methods.get$hashCode(_this.pendingJobs)), B.JSString_methods.get$hashCode(_this.pdfEngine)), B.JSBool_methods.get$hashCode(_this.trailingSlash)), B.JSString_methods.get$hashCode(_this.queue))); + t1 = _this._health_check_model$__hashCode = A.$jf(A.$jc(A.$jc(A.$jc(A.$jc(A.$jc(A.$jc(A.$jc(A.$jc(A.$jc(A.$jc(A.$jc(A.$jc(A.$jc(A.$jc(0, B.JSBool_methods.get$hashCode(_this.systemHealth)), t1.get$hashCode(t1)), B.JSBool_methods.get$hashCode(_this.envWritable)), B.JSBool_methods.get$hashCode(_this.dbCheck)), B.JSBool_methods.get$hashCode(_this.cacheEnabled)), B.JSBool_methods.get$hashCode(_this.phantomEnabled)), B.JSBool_methods.get$hashCode(_this.openBasedir)), B.JSString_methods.get$hashCode(_this.filePermissions)), B.JSBool_methods.get$hashCode(_this.execEnabled)), B.JSString_methods.get$hashCode(_this.emailDriver)), B.JSInt_methods.get$hashCode(_this.pendingJobs)), B.JSString_methods.get$hashCode(_this.pdfEngine)), B.JSBool_methods.get$hashCode(_this.trailingSlash)), B.JSString_methods.get$hashCode(_this.queue))); } return t1; }, @@ -301623,6 +301628,7 @@ t2.add$2(t1, "cacheEnabled", _this.cacheEnabled); t2.add$2(t1, "phantomEnabled", _this.phantomEnabled); t2.add$2(t1, "openBasedir", _this.openBasedir); + t2.add$2(t1, "filePermissions", _this.filePermissions); t2.add$2(t1, "execEnabled", _this.execEnabled); t2.add$2(t1, "emailDriver", _this.emailDriver); t2.add$2(t1, "pendingJobs", _this.pendingJobs); @@ -301653,6 +301659,7 @@ _this._cacheEnabled = $$v.cacheEnabled; _this._phantomEnabled = $$v.phantomEnabled; _this._openBasedir = $$v.openBasedir; + _this._filePermissions = $$v.filePermissions; _this._execEnabled = $$v.execEnabled; _this._emailDriver = $$v.emailDriver; _this._pendingJobs = $$v.pendingJobs; @@ -301664,7 +301671,7 @@ return _this; }, build$0(_) { - var _$failedField, e, _$result0, t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13, exception, _this = this, + var _$failedField, e, _$result0, t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13, t14, exception, _this = this, _s19_ = "HealthCheckResponse", _$result = null; try { @@ -301689,25 +301696,28 @@ t7 = _this.get$_health_check_model$_$this()._openBasedir; if (t7 == null) A.throwExpression(A.BuiltValueNullFieldError$(_s19_, "openBasedir")); - t8 = _this.get$_health_check_model$_$this()._execEnabled; + t8 = _this.get$_health_check_model$_$this()._filePermissions; if (t8 == null) - A.throwExpression(A.BuiltValueNullFieldError$(_s19_, "execEnabled")); - t9 = _this.get$_health_check_model$_$this()._emailDriver; + A.throwExpression(A.BuiltValueNullFieldError$(_s19_, "filePermissions")); + t9 = _this.get$_health_check_model$_$this()._execEnabled; if (t9 == null) - A.throwExpression(A.BuiltValueNullFieldError$(_s19_, "emailDriver")); - t10 = _this.get$_health_check_model$_$this()._pendingJobs; + A.throwExpression(A.BuiltValueNullFieldError$(_s19_, "execEnabled")); + t10 = _this.get$_health_check_model$_$this()._emailDriver; if (t10 == null) - A.throwExpression(A.BuiltValueNullFieldError$(_s19_, "pendingJobs")); - t11 = _this.get$_health_check_model$_$this()._pdfEngine; + A.throwExpression(A.BuiltValueNullFieldError$(_s19_, "emailDriver")); + t11 = _this.get$_health_check_model$_$this()._pendingJobs; if (t11 == null) - A.throwExpression(A.BuiltValueNullFieldError$(_s19_, "pdfEngine")); - t12 = _this.get$_health_check_model$_$this()._trailingSlash; + A.throwExpression(A.BuiltValueNullFieldError$(_s19_, "pendingJobs")); + t12 = _this.get$_health_check_model$_$this()._pdfEngine; if (t12 == null) - A.throwExpression(A.BuiltValueNullFieldError$(_s19_, "trailingSlash")); - t13 = _this.get$_health_check_model$_$this()._health_check_model$_queue; + A.throwExpression(A.BuiltValueNullFieldError$(_s19_, "pdfEngine")); + t13 = _this.get$_health_check_model$_$this()._trailingSlash; if (t13 == null) + A.throwExpression(A.BuiltValueNullFieldError$(_s19_, "trailingSlash")); + t14 = _this.get$_health_check_model$_$this()._health_check_model$_queue; + if (t14 == null) A.throwExpression(A.BuiltValueNullFieldError$(_s19_, "queue")); - _$result0 = new A._$HealthCheckResponse(t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13); + _$result0 = new A._$HealthCheckResponse(t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13, t14); } _$result = _$result0; } catch (exception) { @@ -329113,7 +329123,7 @@ // Function start if (!B.JSString_methods.contains$1(url, "?")) url += "?"; - if (!B.JSString_methods.contains$1(url, "per_page")) + if (B.JSString_methods.contains$1(url, "/api/") && !B.JSString_methods.contains$1(url, "per_page")) url += "&per_page=999999"; A.print("GET: " + url); client = new A.BrowserClient(A.LinkedHashSet_LinkedHashSet$_empty(type$.HttpRequest)); @@ -380202,7 +380212,7 @@ t2 = t1.userCompanyStates; t1 = t1.uiState.selectedCompanyIndex; $async$goto = 6; - return A._asyncAwait(J.$get$3$rawResponse$x(webClient, t2._list[t1].userCompany.account.defaultUrl + "/update", "", true), $async$runCheck$0); + return A._asyncAwait(J.$get$3$rawResponse$x(webClient, t2._list[t1].userCompany.account.defaultUrl + "/update?secret=", "", true), $async$runCheck$0); case 6: // returning from await. $async$handler = 1; @@ -380273,6 +380283,9 @@ t6 = webPhpVersion == cliPhpVersion ? "v" + A.S(webPhpVersion) : "Web: v" + A.S(webPhpVersion) + "\nCLI: v" + A.S(cliPhpVersion); t7 = type$.JSArray_legacy_Widget; t6 = A._setArrayType([new A._HealthListTile("System Health", t4, false, t2, _null, _null), new A._HealthListTile("Database Check", t5, false, _null, _null, _null), new A._HealthListTile("PHP Version", t3.isOkay, false, t6, _null, _null)], t7); + t2 = _this._response.filePermissions; + if (t2 !== "Ok") + t6.push(new A._HealthListTile("Invalid File Permissions", false, false, t2, "https://invoiceninja.github.io/docs/self-host-installation/#file-permissions", _null)); t2 = state.userCompanyStates; t3 = state.uiState.selectedCompanyIndex; if (!t2._list[t3].userCompany.account.isDocker) { @@ -380422,7 +380435,7 @@ t1 = J.$index$asx($.LocalizationsProvider__localizedValues.$index(0, A.Localizations_of(context, B.Type_AppLocalization_KyD, type$.legacy_AppLocalization).localeCode), "add_column"); if (t1 == null) t1 = ""; - return A.MultiSelectList$(t1, B.List_empty1, _this.defaultSelected, true, false, new A.multiselectDialog__closure(_this.onSelected), _this.options, null, _this.selected); + return A.MultiSelectList$(t1, _this.defaultSelected, true, false, new A.multiselectDialog__closure(_this.onSelected), _this.options, null, _this.selected); }, $signature: 2031 }; @@ -380500,8 +380513,7 @@ }; A.MultiSelectListState_build_closure.prototype = { call$1(option) { - var t1 = this.$this; - return !J.contains$1$asx(t1.selected, option) || B.JSArray_methods.contains$1(t1._widget.allowDuplicates, option); + return !J.contains$1$asx(this.$this.selected, option); }, $signature: 16 }; @@ -380537,7 +380549,7 @@ if (A.S(value).length === 0) return; t1 = this.$this; - if (J.contains$1$asx(t1.selected, value) && !B.JSArray_methods.contains$1(t1._widget.allowDuplicates, value)) + if (J.contains$1$asx(t1.selected, value)) return; t1.setState$1(new A.MultiSelectListState_build__closure3(t1, value)); t2 = t1._widget; @@ -389395,7 +389407,7 @@ t1 = A._setArrayType([A.Tab$(A.Text$(_this._widget.showInvoiceAsQuote ? t1.get$quote() : t1.get$invoice(), _null, _null, _null, _null, _null, _null, _null, _null, _null), _null), A.Tab$(A.Text$(t1.get$client(t1), _null, _null, _null, _null, _null, _null, _null, _null, _null), _null), A.Tab$(A.Text$(t1.get$contact(), _null, _null, _null, _null, _null, _null, _null, _null, _null), _null), A.Tab$(A.Text$(t1.get$company(), _null, _null, _null, _null, _null, _null, _null, _null, _null), _null)], t2); t4 = _this._variables$_controller; t5 = type$.JSArray_legacy_String; - t6 = A._setArrayType(["view_button", "view_url", "payment_button", "payment_url", "created_by_user", "assigned_to_user", "invoices", "payments"], t5); + t6 = A._setArrayType(["view_button", "view_url", "view_link", "payment_button", "payment_url", "payment_link", "created_by_user", "assigned_to_user", "invoices", "payments"], t5); if (_this._widget.showInvoiceAsQuote) B.JSArray_methods.addAll$1(t6, A._setArrayType(["amount", "discount", "date", "valid_until", "po_number", "public_notes", "exchange_rate", "number", "terms", "footer"], t5)); else @@ -391055,7 +391067,7 @@ return A._asyncStartSync($async$_loadPDF$0, $async$completer); }, build$1(_, context) { - var t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13, t14, _this = this, _null = null, + var t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13, t14, t15, _this = this, _null = null, _s8_ = "load_pdf", state = A._lateReadCheck(A.StoreProvider_of(context, type$.legacy_AppState).__Store__state, "_state"), t1 = A.Localizations_of(context, B.Type_AppLocalization_KyD, type$.legacy_AppLocalization), @@ -391073,41 +391085,43 @@ t6 = A.Text$(t6, _null, _null, B.TextOverflow_2, _null, _null, A.TextStyle$(_null, _null, state.get$headerTextColor(), _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, true, _null, _null, _null, _null, _null, _null, _null, _null), _null, _null, _null); t7 = _this._showAging; t7 = A.CheckboxListTile$(state.get$accentColor(), _null, B.ListTileControlAffinity_0, _null, _null, new A._ClientPdfViewState_build_closure0(_this), t6, t7); + t6 = B.Map_HFpTk.$index(0, 300); + t6.toString; _this._widget.toString; - t6 = A.getLayout(context); - t8 = !state.prefState.enableDarkMode; - t9 = !t8 || state.get$hasAccentColor() ? A.ThemeData_ThemeData(_null, _null, _null, B.Brightness_0, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null) : A.ThemeData_ThemeData(_null, _null, _null, B.Brightness_1, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null); - t10 = t1.get$dateRange(); - t11 = _this._client_pdf$_dateRange; - t12 = $.$get$_$values()._set$_set; - t13 = A._instanceType(t12)._eval$1("EfficientLengthMappedIterable*>"); - t13 = A.List_List$of(new A.EfficientLengthMappedIterable(t12, new A._ClientPdfViewState_build_closure1(t1), t13), true, t13._eval$1("Iterable.E")); - t8 = !t8 || state.get$hasAccentColor() ? A.ThemeData_ThemeData(_null, _null, _null, B.Brightness_0, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null) : A.ThemeData_ThemeData(_null, _null, _null, B.Brightness_1, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null); - t12 = type$.MappedListIterable_of_legacy_String_and_legacy_DropdownMenuItem_legacy_String; - t14 = type$.JSArray_legacy_Widget; - t12 = A._setArrayType([new A.Flexible(1, B.FlexFit_1, new A.Theme(t9, new A.AppDropdownButton(t10, t11, new A._ClientPdfViewState_build_closure2(_this), t13, false, true, _null, _null, _null, type$.AppDropdownButton_legacy_DateRange), _null), _null), new A.SizedBox(16, _null, _null, _null), new A.Flexible(1, B.FlexFit_1, new A.Theme(t8, new A.AppDropdownButton(t1.get$status(t1), _this._client_pdf$_status, new A._ClientPdfViewState_build_closure3(_this), A.List_List$of(new A.MappedListIterable(A._setArrayType(["all", "paid", "unpaid"], type$.JSArray_legacy_String), new A._ClientPdfViewState_build_closure4(t1), t12), true, t12._eval$1("ListIterable.E")), false, true, _null, _null, _null, type$.AppDropdownButton_legacy_String), _null), _null)], t14); + t8 = A.getLayout(context); + t9 = !state.prefState.enableDarkMode; + t10 = !t9 || state.get$hasAccentColor() ? A.ThemeData_ThemeData(_null, _null, _null, B.Brightness_0, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null) : A.ThemeData_ThemeData(_null, _null, _null, B.Brightness_1, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null); + t11 = t1.get$dateRange(); + t12 = _this._client_pdf$_dateRange; + t13 = $.$get$_$values()._set$_set; + t14 = A._instanceType(t13)._eval$1("EfficientLengthMappedIterable*>"); + t14 = A.List_List$of(new A.EfficientLengthMappedIterable(t13, new A._ClientPdfViewState_build_closure1(t1), t14), true, t14._eval$1("Iterable.E")); + t9 = !t9 || state.get$hasAccentColor() ? A.ThemeData_ThemeData(_null, _null, _null, B.Brightness_0, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null) : A.ThemeData_ThemeData(_null, _null, _null, B.Brightness_1, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null); + t13 = type$.MappedListIterable_of_legacy_String_and_legacy_DropdownMenuItem_legacy_String; + t15 = type$.JSArray_legacy_Widget; + t13 = A._setArrayType([new A.Flexible(1, B.FlexFit_1, new A.Theme(t10, new A.AppDropdownButton(t11, t12, new A._ClientPdfViewState_build_closure2(_this), t14, false, true, _null, _null, _null, type$.AppDropdownButton_legacy_DateRange), _null), _null), new A.SizedBox(16, _null, _null, _null), new A.Flexible(1, B.FlexFit_1, new A.Theme(t9, new A.AppDropdownButton(t1.get$status(t1), _this._client_pdf$_status, new A._ClientPdfViewState_build_closure3(_this), A.List_List$of(new A.MappedListIterable(A._setArrayType(["all", "paid", "unpaid"], type$.JSArray_legacy_String), new A._ClientPdfViewState_build_closure4(t1), t13), true, t13._eval$1("ListIterable.E")), false, true, _null, _null, _null, type$.AppDropdownButton_legacy_String), _null), _null)], t15); if (A.getLayout(context) === B.AppLayout_desktop) - B.JSArray_methods.addAll$1(t12, A._setArrayType([new A.Theme(t2, new A.Flexible(1, B.FlexFit_1, t4, _null), _null), new A.Theme(t3, new A.Flexible(1, B.FlexFit_1, t7, _null), _null)], t14)); - t2 = A.Row$(t12, B.CrossAxisAlignment_2, B.MainAxisAlignment_3, B.MainAxisSize_1, _null); - t14 = A._setArrayType([], t14); + B.JSArray_methods.addAll$1(t13, A._setArrayType([new A.Theme(t2, new A.Flexible(1, B.FlexFit_1, t4, _null), _null), new A.Theme(t3, new A.Flexible(1, B.FlexFit_1, t7, _null), _null)], t15)); + t2 = A.Row$(t13, B.CrossAxisAlignment_2, B.MainAxisAlignment_3, B.MainAxisSize_1, _null); + t15 = A._setArrayType([], t15); t3 = t1.get$download(t1); - t14.push(new A.AppTextButton(t3, _this._client_pdf$_response == null ? _null : new A._ClientPdfViewState_build_closure5(_this, t1, client), true, _null, _null)); + t15.push(new A.AppTextButton(t3, _this._client_pdf$_response == null ? _null : new A._ClientPdfViewState_build_closure5(_this, t1, client), true, _null, _null)); if (A.getLayout(context) === B.AppLayout_desktop) - t14.push(A.TextButton$(false, A.Text$(t1.get$close(t1), _null, _null, _null, _null, _null, A.TextStyle$(_null, _null, state.get$headerTextColor(), _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, true, _null, _null, _null, _null, _null, _null, _null, _null), _null, _null, _null), _null, new A._ClientPdfViewState_build_closure6(client), _null)); - t2 = A.AppBar$(t14, _null, t6 === B.AppLayout_mobile, _null, _null, _null, 1, _null, false, _null, false, _null, _null, _null, _null, _null, true, _null, _null, _null, _null, t2, _null, _null, _null, 1, _null); + t15.push(A.TextButton$(false, A.Text$(t1.get$close(t1), _null, _null, _null, _null, _null, A.TextStyle$(_null, _null, state.get$headerTextColor(), _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, true, _null, _null, _null, _null, _null, _null, _null, _null), _null, _null, _null), _null, new A._ClientPdfViewState_build_closure6(client), _null)); + t2 = A.AppBar$(t15, _null, t8 === B.AppLayout_mobile, _null, _null, _null, 1, _null, false, _null, false, _null, _null, _null, _null, _null, true, _null, _null, _null, _null, t2, _null, _null, _null, 1, _null); t3 = type$.JSArray_legacy_Widget; t4 = A._setArrayType([], t3); if (_this._client_pdf$_dateRange === B.DateRange_custom) { - t6 = A.Theme_of(context).backgroundColor; - t7 = A.Container$(_null, A.DatePicker$(false, _null, _null, t1.get$startDate(), _null, new A._ClientPdfViewState_build_closure7(_this), _this._client_pdf$_startDate, _null), B.Clip_0, _null, _null, _null, _null, _null, _null, _null, B.EdgeInsets_16_8_16_8, _null, _null, 180); + t7 = A.Theme_of(context).backgroundColor; + t8 = A.Container$(_null, A.DatePicker$(false, _null, _null, t1.get$startDate(), _null, new A._ClientPdfViewState_build_closure7(_this), _this._client_pdf$_startDate, _null), B.Clip_0, _null, _null, _null, _null, _null, _null, _null, B.EdgeInsets_16_8_16_8, _null, _null, 180); t1 = A.Container$(_null, A.DatePicker$(false, _null, _null, t1.get$endDate(), _null, new A._ClientPdfViewState_build_closure8(_this), _this._client_pdf$_endDate, _null), B.Clip_0, _null, _null, _null, _null, _null, _null, _null, B.EdgeInsets_16_8_16_8, _null, _null, 180); t5 = J.$index$asx($.LocalizationsProvider__localizedValues.$index(0, t5), _s8_); if (t5 == null) t5 = J.$index$asx($.LocalizationsProvider__localizedValues.$index(0, "en"), _s8_); - t4.push(A.Container$(_null, A.Wrap$(B.WrapAlignment_2, A._setArrayType([t7, t1, new A.Padding(B.EdgeInsets_16_0_16_0, new A.AppButton(_null, _null, t5, new A._ClientPdfViewState_build_closure9(_this), _null, _null), _null)], t3), B.WrapCrossAlignment_0), B.Clip_0, t6, _null, _null, _null, _null, _null, _null, _null, _null, _null, 1 / 0)); + t4.push(A.Container$(_null, A.Wrap$(B.WrapAlignment_2, A._setArrayType([t8, t1, new A.Padding(B.EdgeInsets_16_0_16_0, new A.AppButton(_null, _null, t5, new A._ClientPdfViewState_build_closure9(_this), _null, _null), _null)], t3), B.WrapCrossAlignment_0), B.Clip_0, t7, _null, _null, _null, _null, _null, _null, _null, _null, _null, 1 / 0)); } t4.push(A.Expanded$(_this._client_pdf$_isLoading || _this._client_pdf$_response == null ? new A.LoadingIndicator(_null, false, _null) : A.PdfPreview$(new A._ClientPdfViewState_build_closure10(_this), false, false, false, 800, _null), 1)); - return A.Scaffold$(t2, B.MaterialColor_Map_HFpTk_4288585374, A.Column$(t4, B.CrossAxisAlignment_2, _null, B.MainAxisAlignment_0, B.MainAxisSize_1, B.VerticalDirection_1), _null, _null, _null, _null, _null); + return A.Scaffold$(t2, t6, A.Column$(t4, B.CrossAxisAlignment_2, _null, B.MainAxisAlignment_0, B.MainAxisSize_1, B.VerticalDirection_1), _null, _null, _null, _null, _null); } }; A._ClientPdfViewState_loadPdf_closure.prototype = { @@ -405157,8 +405171,11 @@ } t3.push(A.Expanded$(_this._invoice_edit_desktop$_response == null ? new A.SizedBox(_null, _null, _null, _null) : A.PdfPreview$(new A.__PdfPreviewState_build_closure1(_this), false, false, false, 800, A._setArrayType([_this._currentPage - 1], type$.JSArray_legacy_int)), 1)); t1 = A._setArrayType([A.Column$(t3, B.CrossAxisAlignment_3, _null, B.MainAxisAlignment_0, B.MainAxisSize_1, B.VerticalDirection_1)], t2); - if (_this._invoice_edit_desktop$_isLoading) - t1.push(A.Column$(A._setArrayType([A.LinearProgressIndicator$(), A.Expanded$(A.Center$(A.CircularProgressIndicator$(_null, _null, _null, _null, _null, 4, _null, _null), _null, _null), 1)], t2), B.CrossAxisAlignment_2, _null, B.MainAxisAlignment_0, B.MainAxisSize_1, B.VerticalDirection_1)); + if (_this._invoice_edit_desktop$_isLoading) { + t2 = B.Map_HFpTk.$index(0, 300); + t2.toString; + t1.push(A.Container$(_null, A.Center$(A.CircularProgressIndicator$(_null, _null, _null, _null, _null, 4, _null, _null), _null, _null), B.Clip_0, t2, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null)); + } return A.Container$(_null, A.Stack$(B.Alignment_0_m1, t1, B.Clip_1, B.StackFit_0, _null, _null), B.Clip_0, _null, _null, _null, _null, 1200, _null, _null, _null, _null, _null, _null); } }; @@ -408571,7 +408588,7 @@ A._loadPDF(t1, _this._widget.viewModel.invoice, _this._isDeliveryNote, _this._invoice_pdf$_activityId).then$1$1(0, new A._InvoicePdfViewState_loadPdf_closure0(_this), type$.Null).catchError$1(new A._InvoicePdfViewState_loadPdf_closure1(_this)); }, build$1(_, context) { - var activitySelector, t4, t5, showEmail, t6, _this = this, _null = null, + var activitySelector, t4, t5, showEmail, t6, t7, _this = this, _null = null, state = A._lateReadCheck(A.StoreProvider_of(context, type$.legacy_AppState).__Store__state, "_state"), t1 = A.Localizations_of(context, B.Type_AppLocalization_KyD, type$.legacy_AppLocalization), invoice = _this._widget.viewModel.invoice, @@ -408591,17 +408608,19 @@ t4 = client.get$hasEmailAddress(); if (!t4) showEmail = false; + t4 = B.Map_HFpTk.$index(0, 300); + t4.toString; if (_this._widget.showAppBar) { - t4 = A.getLayout(context); - t6 = new A.EntityPresenter(); - t6.entity = invoice; - t6.context = context; - t6 = A._setArrayType([A.Expanded$(A.Text$(t6.title$0(0), _null, _null, _null, _null, _null, _null, _null, _null, _null), 1)], t2); + t6 = A.getLayout(context); + t7 = new A.EntityPresenter(); + t7.entity = invoice; + t7.context = context; + t7 = A._setArrayType([A.Expanded$(A.Text$(t7.title$0(0), _null, _null, _null, _null, _null, _null, _null, _null, _null), 1)], t2); if (A.getLayout(context) === B.AppLayout_desktop) - B.JSArray_methods.addAll$1(t6, activitySelector); + B.JSArray_methods.addAll$1(t7, activitySelector); if (A.getLayout(context) === B.AppLayout_desktop && invoice.entityType === B.EntityType_invoice && _this._invoice_pdf$_activityId == null) - t6.push(new A.Theme(t3, t5, _null)); - t3 = A.Row$(t6, B.CrossAxisAlignment_2, B.MainAxisAlignment_3, B.MainAxisSize_1, _null); + t7.push(new A.Theme(t3, t5, _null)); + t3 = A.Row$(t7, B.CrossAxisAlignment_2, B.MainAxisAlignment_3, B.MainAxisSize_1, _null); t2 = A._setArrayType([], t2); if (showEmail) t2.push(A.TextButton$(false, A.Text$(t1.get$email(), _null, _null, _null, _null, _null, A.TextStyle$(_null, _null, state.get$headerTextColor(), _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, true, _null, _null, _null, _null, _null, _null, _null, _null), _null, _null, _null), _null, new A._InvoicePdfViewState_build_closure0(invoice), _null)); @@ -408611,14 +408630,14 @@ } if (A.getLayout(context) === B.AppLayout_desktop) t2.push(A.TextButton$(false, A.Text$(t1.get$close(t1), _null, _null, _null, _null, _null, A.TextStyle$(_null, _null, state.get$headerTextColor(), _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, _null, true, _null, _null, _null, _null, _null, _null, _null, _null), _null, _null, _null), _null, new A._InvoicePdfViewState_build_closure2(invoice), _null)); - t1 = A.AppBar$(t2, _null, t4 === B.AppLayout_mobile, _null, _null, _null, 1, _null, false, _null, false, _null, _null, _null, _null, _null, true, _null, _null, _null, _null, t3, _null, _null, _null, 1, _null); + t1 = A.AppBar$(t2, _null, t6 === B.AppLayout_mobile, _null, _null, _null, 1, _null, false, _null, false, _null, _null, _null, _null, _null, true, _null, _null, _null, _null, t3, _null, _null, _null, 1, _null); } else t1 = _null; if (_this._invoice_pdf$_isLoading || _this._invoice_pdf$_response == null) t2 = new A.LoadingIndicator(_null, false, _null); else t2 = new A.HtmlElementView(_this._invoice_pdf$_pdfString, _null); - return A.Scaffold$(t1, B.MaterialColor_Map_HFpTk_4288585374, t2, _null, _null, _null, _null, _null); + return A.Scaffold$(t1, t4, t2, _null, _null, _null, _null, _null); } }; A._InvoicePdfViewState_loadPdf_closure.prototype = { @@ -426391,31 +426410,31 @@ t2 = A.List_List$of(new A.MappedListIterable(A._setArrayType(["name", "number", "vat_number", "address1", "address2", _s17_, "country", "phone"], t10), new A._InvoiceDesignState_build_closure19(), t12), true, t7); B.JSArray_methods.addAll$1(t2, new A.MappedListIterable(A._setArrayType(["email"], t10), new A._InvoiceDesignState_build_closure20(), t12)); t4 = settings.getFieldsForSection$1(_s14_); - t4 = A.FormCard$(A.MultiSelectList$(t1.get$addField(), B.List_empty1, t2, false, true, new A._InvoiceDesignState_build_closure21(viewModel, settings), t8, "client", t4), _null, _null, 4, false, _null, true, _null); + t4 = A.FormCard$(A.MultiSelectList$(t1.get$addField(), t2, false, true, new A._InvoiceDesignState_build_closure21(viewModel, settings), t8, "client", t4), _null, _null, 4, false, _null, true, _null); t8 = t12._eval$1("ListIterable.E"); t2 = A.List_List$of(new A.MappedListIterable(A._setArrayType(["name", "id_number", "vat_number", "website", "email", "phone", "address1", "address2", _s17_, _s17_0, "country", "custom1", "custom2", "custom3", "custom4"], t10), new A._InvoiceDesignState_build_closure22(), t12), true, t8); t9 = A.List_List$of(new A.MappedListIterable(A._setArrayType(["name", "id_number", "vat_number", "website", "email", "phone"], t10), new A._InvoiceDesignState_build_closure23(), t12), true, t8); t6 = settings.getFieldsForSection$1("company_details"); - t6 = A.FormCard$(A.MultiSelectList$(t1.get$addField(), B.List_empty1, t9, false, true, new A._InvoiceDesignState_build_closure24(viewModel, settings), t2, "company", t6), _null, _null, 4, false, _null, true, _null); + t6 = A.FormCard$(A.MultiSelectList$(t1.get$addField(), t9, false, true, new A._InvoiceDesignState_build_closure24(viewModel, settings), t2, "company", t6), _null, _null, 4, false, _null, true, _null); t2 = A.List_List$of(new A.MappedListIterable(A._setArrayType(["name", "id_number", "vat_number", "website", "email", "phone", "address1", "address2", _s17_, _s17_0, "country", "custom1", "custom2", "custom3", "custom4"], t10), new A._InvoiceDesignState_build_closure25(), t12), true, t8); t9 = A.List_List$of(new A.MappedListIterable(A._setArrayType(["address1", "address2", _s17_, "country"], t10), new A._InvoiceDesignState_build_closure26(), t12), true, t8); t3 = settings.getFieldsForSection$1(_s15_); - t3 = A.FormCard$(A.MultiSelectList$(t1.get$addField(), B.List_empty1, t9, false, true, new A._InvoiceDesignState_build_closure27(viewModel, settings), t2, "company", t3), _null, _null, 4, false, _null, true, _null); + t3 = A.FormCard$(A.MultiSelectList$(t1.get$addField(), t9, false, true, new A._InvoiceDesignState_build_closure27(viewModel, settings), t2, "company", t3), _null, _null, 4, false, _null, true, _null); t2 = A.List_List$of(new A.MappedListIterable(A._setArrayType(["number", "po_number", "date", "due_date", "amount", "balance", "balance_due", "custom1", "custom2", "custom3", "custom4", "project", "vendor"], t10), new A._InvoiceDesignState_build_closure28(), t12), true, t7); B.JSArray_methods.addAll$1(t2, new A.MappedListIterable(A._setArrayType(["balance"], t10), new A._InvoiceDesignState_build_closure29(), t12)); t9 = A.List_List$of(new A.MappedListIterable(A._setArrayType(["number", "po_number", "date", "due_date", "total", "balance_due"], t10), new A._InvoiceDesignState_build_closure30(), t12), true, t8); t13 = settings.getFieldsForSection$1(_s15_0); - t13 = A.FormCard$(A.MultiSelectList$(t1.get$addField(), B.List_empty1, t9, false, true, new A._InvoiceDesignState_build_closure31(viewModel, settings), t2, "invoice", t13), _null, _null, 4, false, _null, true, _null); + t13 = A.FormCard$(A.MultiSelectList$(t1.get$addField(), t9, false, true, new A._InvoiceDesignState_build_closure31(viewModel, settings), t2, "invoice", t13), _null, _null, 4, false, _null, true, _null); t2 = A.List_List$of(new A.MappedListIterable(A._setArrayType(["number", "po_number", "date", "valid_until", "total", "custom1", "custom2", "custom3", "custom4"], t10), new A._InvoiceDesignState_build_closure32(), t12), true, t7); B.JSArray_methods.addAll$1(t2, new A.MappedListIterable(A._setArrayType(["balance"], t10), new A._InvoiceDesignState_build_closure33(), t12)); t9 = A.List_List$of(new A.MappedListIterable(A._setArrayType(["number", "po_number", "date", "valid_until", "total"], t10), new A._InvoiceDesignState_build_closure34(), t12), true, t8); t19 = settings.getFieldsForSection$1(_s13_); - t19 = A.FormCard$(A.MultiSelectList$(t1.get$addField(), B.List_empty1, t9, false, true, new A._InvoiceDesignState_build_closure35(viewModel, settings), t2, "quote", t19), _null, _null, 4, false, _null, true, _null); + t19 = A.FormCard$(A.MultiSelectList$(t1.get$addField(), t9, false, true, new A._InvoiceDesignState_build_closure35(viewModel, settings), t2, "quote", t19), _null, _null, 4, false, _null, true, _null); t7 = A.List_List$of(new A.MappedListIterable(A._setArrayType(["number", "po_number", "date", "total", "balance", "custom1", "custom2", "custom3", "custom4"], t10), new A._InvoiceDesignState_build_closure36(), t12), true, t7); B.JSArray_methods.addAll$1(t7, new A.MappedListIterable(A._setArrayType(["balance"], t10), new A._InvoiceDesignState_build_closure37(), t12)); t2 = A.List_List$of(new A.MappedListIterable(A._setArrayType(["number", "po_number", "date", "balance", "total"], t10), new A._InvoiceDesignState_build_closure38(), t12), true, t8); t9 = settings.getFieldsForSection$1(_s14_0); - t9 = A.FormCard$(A.MultiSelectList$(t1.get$addField(), B.List_empty1, t2, false, true, new A._InvoiceDesignState_build_closure39(viewModel, settings), t7, "credit", t9), _null, _null, 4, false, _null, true, _null); + t9 = A.FormCard$(A.MultiSelectList$(t1.get$addField(), t2, false, true, new A._InvoiceDesignState_build_closure39(viewModel, settings), t7, "credit", t9), _null, _null, 4, false, _null, true, _null); t7 = A._setArrayType(["item", "description"], t10); t2 = company.enableProductQuantity; if (t2) @@ -426444,7 +426463,7 @@ t22.push(_s10_); t2 = A.List_List$of(new A.MappedListIterable(t22, new A._InvoiceDesignState_build_closure41(), t12), true, t8); t22 = settings.getFieldsForSection$1(_s15_1); - t22 = A.FormCard$(A.MultiSelectList$(t1.get$addField(), B.List_empty1, t2, false, true, new A._InvoiceDesignState_build_closure42(viewModel, settings), t7, "product", t22), _null, _null, 4, false, _null, true, _null); + t22 = A.FormCard$(A.MultiSelectList$(t1.get$addField(), t2, false, true, new A._InvoiceDesignState_build_closure42(viewModel, settings), t7, "product", t22), _null, _null, 4, false, _null, true, _null); t7 = A._setArrayType(["service", "description", "hours", "rate"], t10); if (t20) t7.push(_s3_); @@ -426465,11 +426484,11 @@ t7.push(_s10_); t7 = A.List_List$of(new A.MappedListIterable(t7, new A._InvoiceDesignState_build_closure44(), t12), true, t8); t20 = settings.getFieldsForSection$1(_s12_); - t20 = A.FormCard$(A.MultiSelectList$(t1.get$addField(), B.List_empty1, t7, false, true, new A._InvoiceDesignState_build_closure45(viewModel, settings), t2, "task", t20), _null, _null, 4, false, _null, true, _null); + t20 = A.FormCard$(A.MultiSelectList$(t1.get$addField(), t7, false, true, new A._InvoiceDesignState_build_closure45(viewModel, settings), t2, "task", t20), _null, _null, 4, false, _null, true, _null); t2 = A.List_List$of(new A.MappedListIterable(A._setArrayType(["subtotal", "net_subtotal", "discount", "line_taxes", "total_taxes", _s17_1, _s17_2, _s17_3, _s17_4, "paid_to_date", "total", "outstanding"], t10), new A._InvoiceDesignState_build_closure46(), t12), true, t8); t8 = A.List_List$of(new A.MappedListIterable(A._setArrayType(["subtotal", "discount", _s17_1, _s17_2, _s17_3, _s17_4, "total_taxes", "line_taxes", "total", "paid_to_date", "outstanding"], t10), new A._InvoiceDesignState_build_closure47(), t12), true, t8); t12 = settings.getFieldsForSection$1("total_columns"); - return A.EditScaffold$(_null, t17, new A.AppTabForm(t14, t15, A._setArrayType([new A.ScrollableListView(t11, _null, _null, _null), t4, t6, t3, t13, t19, t9, t22, t20, A.FormCard$(A.MultiSelectList$(t1.get$addField(), A._setArrayType(["$subtotal"], t10), t8, false, true, new A._InvoiceDesignState_build_closure48(viewModel, settings), t2, "total", t12), _null, _null, 4, false, _null, true, _null)], t18), t16, _null, _null), _null, _null, _null, false, _null, _null, new A._InvoiceDesignState_build_closure49(_this, viewModel), _null, t5); + return A.EditScaffold$(_null, t17, new A.AppTabForm(t14, t15, A._setArrayType([new A.ScrollableListView(t11, _null, _null, _null), t4, t6, t3, t13, t19, t9, t22, t20, A.FormCard$(A.MultiSelectList$(t1.get$addField(), t8, false, true, new A._InvoiceDesignState_build_closure48(viewModel, settings), t2, "total", t12), _null, _null, 4, false, _null, true, _null)], t18), t16, _null, _null), _null, _null, _null, false, _null, _null, new A._InvoiceDesignState_build_closure49(_this, viewModel), _null, t5); } }; A._InvoiceDesignState_build_closure49.prototype = {