@ai-matrx/records 0.51.0 → 0.52.0
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/dist/core/index.cjs +86 -3
- package/dist/core/index.cjs.map +1 -1
- package/dist/core/index.d.cts +54 -8
- package/dist/core/index.d.ts +54 -8
- package/dist/core/index.js +86 -3
- package/dist/core/index.js.map +1 -1
- package/dist/{field-C6_QKP1G.d.cts → field-xRstzLKK.d.cts} +23 -3
- package/dist/{field-C6_QKP1G.d.ts → field-xRstzLKK.d.ts} +23 -3
- package/dist/index.cjs +32 -3
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +84 -3
- package/dist/index.d.ts +84 -3
- package/dist/index.js +32 -3
- package/dist/index.js.map +1 -1
- package/dist/react/index.cjs +86 -3
- package/dist/react/index.cjs.map +1 -1
- package/dist/react/index.d.cts +150 -7
- package/dist/react/index.d.ts +150 -7
- package/dist/react/index.js +86 -3
- package/dist/react/index.js.map +1 -1
- package/dist/use-cases/index.cjs.map +1 -1
- package/dist/use-cases/index.d.cts +1 -1
- package/dist/use-cases/index.d.ts +1 -1
- package/dist/use-cases/index.js.map +1 -1
- package/package.json +1 -1
package/dist/react/index.js
CHANGED
|
@@ -452,6 +452,7 @@ var STORE_DOORS = [
|
|
|
452
452
|
{ name: "io_export", args: "p_organization_id uuid, p_table_id uuid, p_columns text[] DEFAULT NULL::text[], p_limit integer DEFAULT 10000, p_required text DEFAULT 'viewer'::text", returns: "jsonb", security: "definer" },
|
|
453
453
|
{ name: "io_export_csv", args: "p_organization_id uuid, p_table_id uuid, p_columns text[] DEFAULT NULL::text[], p_limit integer DEFAULT 10000, p_delimiter text DEFAULT chr(44), p_required text DEFAULT 'viewer'::text", returns: "text", security: "definer" },
|
|
454
454
|
{ name: "io_import_begin", args: "p_organization_id uuid, p_table_id uuid, p_format text DEFAULT 'csv'::text, p_source_name text DEFAULT NULL::text, p_source_columns jsonb DEFAULT '[]'::jsonb, p_file_hash text DEFAULT NULL::text, p_policy jsonb DEFAULT '{}'::jsonb, p_dedupe_key text DEFAULT NULL::text, p_file_bytes bigint DEFAULT NULL::bigint, p_force boolean DEFAULT false", returns: "jsonb", security: "definer" },
|
|
455
|
+
{ name: "io_import_declare_columns", args: "p_organization_id uuid, p_table_id uuid, p_rows jsonb, p_mapping jsonb DEFAULT '{}'::jsonb", returns: "jsonb", security: "definer" },
|
|
455
456
|
{ name: "io_import_finish", args: "p_organization_id uuid, p_import_id uuid, p_unmapped text DEFAULT NULL::text", returns: "jsonb", security: "definer" },
|
|
456
457
|
{ name: "io_import_forget", args: "p_organization_id uuid, p_import_id uuid", returns: "boolean", security: "definer" },
|
|
457
458
|
{ name: "io_import_open", args: "p_organization_id uuid, p_table_id uuid, p_format text DEFAULT 'csv'::text, p_source_name text DEFAULT NULL::text, p_source_columns jsonb DEFAULT '[]'::jsonb", returns: "uuid", security: "definer" },
|
|
@@ -485,6 +486,7 @@ var STORE_DOORS = [
|
|
|
485
486
|
{ name: "levels_raised_by_a_less_specific_rung", args: "", returns: "TABLE(organization_id uuid, organization_name text, member_id uuid, member_email text, record_id uuid, addressed_level permission_level, answered_level permission_level)", security: "definer" },
|
|
486
487
|
{ name: "list_door_disagreements", args: "p_pretend text DEFAULT NULL::text, p_only_organization uuid DEFAULT NULL::uuid, p_sample integer DEFAULT 200", returns: "TABLE(organization_id uuid, organization_name text, member_id uuid, table_id uuid, record_id uuid, door text, why text)", security: "invoker" },
|
|
487
488
|
{ name: "list_door_disagreements", args: "p_pretend text, p_only_organization uuid, p_sample integer, p_exhaustive boolean", returns: "TABLE(organization_id uuid, organization_name text, member_id uuid, table_id uuid, record_id uuid, door text, why text)", security: "invoker" },
|
|
489
|
+
{ name: "list_portals", args: "p_organization_id uuid, p_archived text DEFAULT 'active'::text", returns: "TABLE(portal_id uuid, title text, slug text, client_table_id uuid, client_table text, is_active boolean, tables integer, invited integer, signed_in integer, sign_in_method text, opened_at timestamp with time zone)", security: "definer" },
|
|
488
490
|
{ name: "lookup_value", args: "p_organization_id uuid, p_record_id uuid, p_field_data jsonb", returns: "jsonb", security: "invoker" },
|
|
489
491
|
{ name: "mask_document", args: "p_document jsonb, p_visible_keys text[], p_notices jsonb, p_by_id boolean DEFAULT false, p_key_ids jsonb DEFAULT '{}'::jsonb", returns: "jsonb", security: "invoker" },
|
|
490
492
|
{ name: "mask_document", args: "p_document jsonb, p_visible_keys text[], p_notices jsonb, p_by_id boolean DEFAULT false, p_key_ids jsonb DEFAULT '{}'::jsonb, p_declared_keys text[] DEFAULT NULL::text[]", returns: "jsonb", security: "invoker" },
|
|
@@ -534,6 +536,7 @@ var STORE_DOORS = [
|
|
|
534
536
|
{ name: "pipeline_read", args: "p_organization_id uuid, p_table_id uuid", returns: "jsonb", security: "definer" },
|
|
535
537
|
{ name: "pipeline_transition_refusal", args: "p_organization_id uuid, p_record_id uuid, p_to text", returns: "jsonb", security: "definer" },
|
|
536
538
|
{ name: "portal_admits", args: "p_organization_id uuid, p_user_id uuid DEFAULT NULL::uuid", returns: "boolean", security: "definer" },
|
|
539
|
+
{ name: "portal_archive", args: "p_organization_id uuid, p_portal_id uuid, p_confirm_title text, p_reason text DEFAULT NULL::text", returns: "jsonb", security: "definer" },
|
|
537
540
|
{ name: "portal_card", args: "p_organization_id uuid, p_portal_id uuid", returns: "jsonb", security: "definer" },
|
|
538
541
|
{ name: "portal_declare", args: "p_organization_id uuid, p_title text, p_client_table_id uuid, p_tables jsonb, p_portal_id uuid DEFAULT NULL::uuid, p_slug text DEFAULT NULL::text, p_sign_in_method text DEFAULT 'magic_link'::text", returns: "uuid", security: "definer" },
|
|
539
542
|
{ name: "portal_field_map", args: "p_organization_id uuid, p_table_id uuid", returns: "TABLE(field_id uuid, field_key text, field_type text, points_at uuid)", security: "definer" },
|
|
@@ -545,6 +548,7 @@ var STORE_DOORS = [
|
|
|
545
548
|
{ name: "portal_principal_bind", args: "p_organization_id uuid, p_principal_id uuid, p_user_id uuid", returns: "jsonb", security: "definer" },
|
|
546
549
|
{ name: "portal_public", args: "p_slug text", returns: "jsonb", security: "definer" },
|
|
547
550
|
{ name: "portal_record_title", args: "p_organization_id uuid, p_record_id uuid", returns: "text", security: "definer" },
|
|
551
|
+
{ name: "portal_restore", args: "p_organization_id uuid, p_portal_id uuid, p_confirm_title text", returns: "jsonb", security: "definer" },
|
|
548
552
|
{ name: "portal_revoke", args: "p_organization_id uuid, p_portal_id uuid, p_principal_id uuid", returns: "jsonb", security: "definer" },
|
|
549
553
|
{ name: "portal_slug", args: "p_organization_id uuid, p_title text, p_portal_id uuid DEFAULT NULL::uuid", returns: "text", security: "definer" },
|
|
550
554
|
{ name: "portal_tables", args: "p_organization_id uuid", returns: "TABLE(portal_id uuid, table_id uuid, name text)", security: "definer" },
|
|
@@ -825,16 +829,16 @@ var STORE_KNOBS = [
|
|
|
825
829
|
{ key: "world_publish_enabled", value: "false", type: "boolean" }
|
|
826
830
|
];
|
|
827
831
|
var STORE_REFUSAL_CODES = [
|
|
828
|
-
{ code: "02000", raised_by: "_checklist_instantiate,_portal_invite_payload,_share_write_person,_table_share_invite_payload,checklist_declare,checklist_run,checklist_step_complete,checklist_step_refusal,checklist_template_shape,conversation_scope_bind,dashboard_delete,dashboard_run,doc_letterhead,doc_render_body,doc_render_document,doc_render_read,doc_sign,doc_signature_intact,doc_signature_read,doc_template_delete,doc_template_read,doc_template_save,enrich_pin,entity_field_retire,entity_field_update,entity_record_read,entity_value_write,external_history_event,external_rows,external_stub_upsert,external_writes_set,io_restore,migrate_delete,migrate_extract_parent,migrate_merge,migrate_reclass,migrate_rename,migrate_reparent,migrate_retype,migrate_split,migrate_undo,organization_clear,portal_card,portal_declare,portal_invite,portal_invite_accept,portal_preview,portal_principal_bind,portal_revoke,read_record,record_delete,record_restore,record_restore_preview,record_table,record_update,relation_uncarry,share_access,share_grant,share_lane_set,share_people,share_revoke,sign_request_cancel,sign_request_create,sign_request_remind,sign_request_unchanged,table_archive,table_share_outside_accept,table_share_outside_invite,table_share_outside_resend,table_share_outside_revoke,visibility_as_of,work_approval_decide,work_approval_read,work_approval_request,work_assign,work_record_states,work_set_state" },
|
|
832
|
+
{ code: "02000", raised_by: "_checklist_instantiate,_portal_invite_payload,_share_write_person,_table_share_invite_payload,checklist_declare,checklist_run,checklist_step_complete,checklist_step_refusal,checklist_template_shape,conversation_scope_bind,dashboard_delete,dashboard_run,doc_letterhead,doc_render_body,doc_render_document,doc_render_read,doc_sign,doc_signature_intact,doc_signature_read,doc_template_delete,doc_template_read,doc_template_save,enrich_pin,entity_field_retire,entity_field_update,entity_record_read,entity_value_write,external_history_event,external_rows,external_stub_upsert,external_writes_set,io_restore,migrate_delete,migrate_extract_parent,migrate_merge,migrate_reclass,migrate_rename,migrate_reparent,migrate_retype,migrate_split,migrate_undo,organization_clear,portal_archive,portal_card,portal_declare,portal_invite,portal_invite_accept,portal_preview,portal_principal_bind,portal_restore,portal_revoke,read_record,record_delete,record_restore,record_restore_preview,record_table,record_update,relation_uncarry,share_access,share_grant,share_lane_set,share_people,share_revoke,sign_request_cancel,sign_request_create,sign_request_remind,sign_request_unchanged,table_archive,table_share_outside_accept,table_share_outside_invite,table_share_outside_resend,table_share_outside_revoke,visibility_as_of,work_approval_decide,work_approval_read,work_approval_request,work_assign,work_record_states,work_set_state" },
|
|
829
833
|
{ code: "0A000", raised_by: "checklist_step_complete,external_rows,external_source_declare,external_write_through,promote_field,promoted_index_expr,promoted_query_sql,promoted_read,rule_eval,work_assign" },
|
|
830
834
|
{ code: "22003", raised_by: "context_resolve" },
|
|
831
835
|
{ code: "22004", raised_by: "_entity_custom_fields_guard,_share_write_person,_value_envelope,actor_word,agg_assert_key,agg_sql,anon_capture,anon_token_issue,anon_write,assert_client_may_reach,booking_declare,capture_submit,checklist_declare,context_resolve,dashboard_block_normalize,dashboard_declare,dashboard_window_sql,doc_render_write,doc_sign,doc_signature_write,doc_template_save,enrich_land,enrich_normalize,external_history_event,external_rows,external_source_declare,external_stub_upsert,external_write_through,external_writes_set,field_history,form_declare,form_submit,home_add,io_comment_write,io_import_begin,io_infer_column,io_outbox_drain,io_restore,migrate_choice_keys,migrate_purge,migrate_reclass,migrate_split,migrate_undo,organization_clear,organization_contents,pipeline_declare,pipeline_gate_preview,portal_declare,portal_invite,portal_principal_bind,provenance_retention_days,provenance_write,query_across_homes,query_by_coordinates,query_rollup,record_delete,record_reparent,record_resolve,record_restore,record_update,record_write,record_write_many,relation_carry,relation_own,rule_declare,share_grant,sign_request_create,sign_request_sign,subscription_declare,table_archive,table_declare,table_share_outside_invite,value_restore,view_declare,work_approval_decide,work_approval_request,work_template_declare" },
|
|
832
836
|
{ code: "22007", raised_by: "dashboard_window_sql" },
|
|
833
837
|
{ code: "22012", raised_by: "rule_eval" },
|
|
834
|
-
{ code: "22023", raised_by: "_booking_availability,_entity_custom_fields_guard,_take_op_id,_value_envelope,_work_shape_guard,actor_word,agg_assert_key,agg_sql,anon_token_issue,booking_declare,containment_parent,dashboard_block_normalize,dashboard_window_sql,doc_render_body,doc_render_write,doc_signature_write,enrich_declare,enrich_land,enrich_normalize,enrich_pin,entity_value_write,external_history_event,external_source_declare,external_stub_upsert,external_write_through,field_history,field_update,io_export,io_import_begin,io_import_finish,io_import_plan,io_import_report,io_proposal_accept,migrate_merge,migrate_reclass,my_levels,organization_clear,page_size,pin_agent_cells,pipeline_move,portal_declare,provenance_write,query_by_coordinates,query_rollup,read_records_archived,record_update,record_write_many,relation_carry,rule_eval,rule_members,share_grant,share_lane_set,sign_request_create,sign_request_sign,subscription_declare,table_rules,visibility_as_of,work_approval_request,work_list,work_slot_hold" },
|
|
838
|
+
{ code: "22023", raised_by: "_booking_availability,_entity_custom_fields_guard,_take_op_id,_value_envelope,_work_shape_guard,actor_word,agg_assert_key,agg_sql,anon_token_issue,booking_declare,containment_parent,dashboard_block_normalize,dashboard_window_sql,doc_render_body,doc_render_write,doc_signature_write,enrich_declare,enrich_land,enrich_normalize,enrich_pin,entity_value_write,external_history_event,external_source_declare,external_stub_upsert,external_write_through,field_history,field_update,io_export,io_import_begin,io_import_finish,io_import_plan,io_import_report,io_proposal_accept,list_portals,migrate_merge,migrate_reclass,my_levels,organization_clear,page_size,pin_agent_cells,pipeline_move,portal_declare,provenance_write,query_by_coordinates,query_rollup,read_records_archived,record_update,record_write_many,relation_carry,rule_eval,rule_members,share_grant,share_lane_set,sign_request_create,sign_request_sign,subscription_declare,table_rules,visibility_as_of,work_approval_request,work_list,work_slot_hold" },
|
|
835
839
|
{ code: "23503", raised_by: "_booking_availability,_checklist_instantiate,_containment_guard,_display_spec_for,_field_document_for,_field_type_parity_guard,_pipeline_stage_key,_record_rule_uses,agg_digest_assemble,anon_publish,anon_rate_take,anon_token_issue,anon_write,assert_organization_wall,booking_cancel,booking_confirm,booking_declare,booking_hold,booking_reschedule,capture_publish,checklist_declare,checklist_steps_table,comment_write,dashboard_declare,delete_rule,doc_sign,doc_template_save,enrich_declare,enrich_due,enrich_land,form_declare,form_submit,home_add,inbound_declare,inbound_mail_land,inbound_set,io_comment_write,io_import_begin,io_import_finish,io_import_report,io_import_rows,io_proposal_accept,migrate_demote,migrate_promote,pipeline_board,pipeline_declare,pipeline_move,pipeline_read,pipeline_transition_refusal,promote_field,promote_table,record_applicability,record_reparent,relation_carry,relation_own,resolve_first_match,rule_applies,rule_declare,rule_eval,rule_members,rule_run,sign_request_create,subscription_mute,subscription_preview,view_declare,work_set_state,work_take_assignment,work_template_instantiate" },
|
|
836
840
|
{ code: "23505", raised_by: "_share_write_person,_unique_rule_holds,doc_sign,doc_signature_write,entity_field_declare,field_declare,home_add,inbound_declare,io_proposal_accept,relation_carry,relation_own,sign_request_cancel,sign_request_create,table_share_outside_resend,work_approval_decide,work_slot_hold" },
|
|
837
|
-
{ code: "23514", raised_by: "_checklist_instantiate,_checklist_step_guard,_containment_guard,_dated_values_guard,_derived_fields,_display_spec_for,_entity_custom_fields_guard,_field_class_guard,_field_document_for,_field_shape_guard,_field_type_parity_guard,_merge_field_shape_guard,_merge_field_temporal_guard,_promoted_field_cap_guard,_record_rule_uses,_resolve_choice_words,_rule_shape_guard,_rule_topology_guard,_store_relation_edge_names_its_field,_table_columns_word_guard,_table_shape_guard,_undeclared_key_guard,_value_envelope,_with_display,_work_shape_guard,_workdoors_approval_guard,assert_columns_are_defined,assert_entity_is_organization_scoped,booking_declare,capture_publish,capture_sheet_declare,checklist_declare,checklist_step_complete,doc_sign,doc_signature_write,doc_template_save,entity_field_declare,entity_field_retire,entity_field_update,entity_records_find,entity_table,field_declare,field_retire,field_update,home_add,io_comment_write,io_import_rows,migrate_merge,relation_carry,relation_own,sign_request_create,sign_request_sign,table_declare,validate_value_envelope,validate_values,work_set_state,work_slots_declare,work_take_assignment,work_template_instantiate" },
|
|
841
|
+
{ code: "23514", raised_by: "_checklist_instantiate,_checklist_step_guard,_containment_guard,_dated_values_guard,_derived_fields,_display_spec_for,_entity_custom_fields_guard,_field_class_guard,_field_document_for,_field_shape_guard,_field_type_parity_guard,_merge_field_shape_guard,_merge_field_temporal_guard,_promoted_field_cap_guard,_record_rule_uses,_resolve_choice_words,_rule_shape_guard,_rule_topology_guard,_store_relation_edge_names_its_field,_table_columns_word_guard,_table_shape_guard,_undeclared_key_guard,_value_envelope,_with_display,_work_shape_guard,_workdoors_approval_guard,assert_columns_are_defined,assert_entity_is_organization_scoped,booking_declare,capture_publish,capture_sheet_declare,checklist_declare,checklist_step_complete,doc_sign,doc_signature_write,doc_template_save,entity_field_declare,entity_field_retire,entity_field_update,entity_records_find,entity_table,field_declare,field_retire,field_update,home_add,io_comment_write,io_import_rows,migrate_merge,portal_archive,portal_restore,relation_carry,relation_own,sign_request_create,sign_request_sign,table_declare,validate_value_envelope,validate_values,work_set_state,work_slots_declare,work_take_assignment,work_template_instantiate" },
|
|
838
842
|
{ code: "40001", raised_by: "has_visibility_at" },
|
|
839
843
|
{ code: "42501", raised_by: "_doc_render_immutable,_doc_signature_immutable,_field_definition_write,_field_write_door,_rule_definition_write,_store_door,agent_table_claim,anon_capture,anon_inbound_land,anon_publish,anon_token_issue,anon_token_verify,anon_write,assert_client_may_change,assert_client_may_open,assert_client_may_reach,assert_may_know_table,assert_organization_admin,assert_store_door,booking_confirm,booking_declare,booking_hold,capture_submit,checklist_run,comment_write,conversation_scope_bind,conversation_scope_unbind,doc_sign,enrich_declare,enrich_due,enrich_land,enrich_normalize,entity_field_declare,entity_field_retire,entity_field_update,entity_value_write,external_write_through,form_declare,form_submit,inbound_mail_land,io_comment_resolve,io_comment_write,io_import_begin,io_import_finish,io_restore,migrate_purge,migrate_reclass,my_levels,organization_clear,portal_declare,portal_invitation,portal_invite,portal_invite_accept,portal_principal_bind,promote_table,query_visibility_parity,read_record,read_records,read_records_archived,read_records_by_ids,read_records_matching,record_table,share_grant,subscription_mute,subscription_preview,table_share_outside_accept,table_share_outside_invite,table_share_outside_resend,visibility_as_of,work_approval_decide,work_approval_read,work_approval_request,work_person" },
|
|
840
844
|
{ code: "42703", raised_by: "entity_table,portal_declare" },
|
|
@@ -2091,6 +2095,7 @@ var DOORS = {
|
|
|
2091
2095
|
// ways to start an import from one client is how they drift.
|
|
2092
2096
|
importPlan: "io_import_plan",
|
|
2093
2097
|
importBegin: "io_import_begin",
|
|
2098
|
+
importDeclareColumns: "io_import_declare_columns",
|
|
2094
2099
|
importRows: "io_import_rows",
|
|
2095
2100
|
importFinish: "io_import_finish",
|
|
2096
2101
|
importReport: "io_import_report",
|
|
@@ -2127,6 +2132,17 @@ var DOORS = {
|
|
|
2127
2132
|
portalInvite: "portal_invite",
|
|
2128
2133
|
portalRevoke: "portal_revoke",
|
|
2129
2134
|
portalPreview: "portal_preview",
|
|
2135
|
+
// ORG-CLEANUP, 2026-09-22 — A PORTAL IS ARCHIVED, NEVER DELETED.
|
|
2136
|
+
// `portals` keeps its signature and HIDES archived portals (the law's default
|
|
2137
|
+
// is to hide); `list_portals(org, 'active'|'archived'|'all')` is the
|
|
2138
|
+
// archive-aware reader, taking the platform archive filter's own three values
|
|
2139
|
+
// so one door serves both lanes and no screen has to invent a second control.
|
|
2140
|
+
// `portal_archive` / `portal_restore` are the way out and the way back; both
|
|
2141
|
+
// take the portal's own title typed back, because ten portals can carry one
|
|
2142
|
+
// title and the title alone is not what picks this one.
|
|
2143
|
+
listPortals: "list_portals",
|
|
2144
|
+
portalArchive: "portal_archive",
|
|
2145
|
+
portalRestore: "portal_restore",
|
|
2130
2146
|
// SCR-16 — the canvas. A dashboard is a record in the presentation kernel
|
|
2131
2147
|
// whose blocks are saved SPECS for the eighth verb; `dashboardRun` walks them
|
|
2132
2148
|
// under the CALLER'S principal, so nothing here is precomputed and nothing is
|
|
@@ -3160,6 +3176,18 @@ function createRecordsClient(config) {
|
|
|
3160
3176
|
"importBegin"
|
|
3161
3177
|
);
|
|
3162
3178
|
},
|
|
3179
|
+
async importDeclareColumns(args) {
|
|
3180
|
+
return callDoor(
|
|
3181
|
+
DOORS.importDeclareColumns,
|
|
3182
|
+
{
|
|
3183
|
+
p_organization_id: org,
|
|
3184
|
+
p_table_id: args.table_id,
|
|
3185
|
+
p_rows: args.rows,
|
|
3186
|
+
p_mapping: args.mapping ?? {}
|
|
3187
|
+
},
|
|
3188
|
+
"importDeclareColumns"
|
|
3189
|
+
);
|
|
3190
|
+
},
|
|
3163
3191
|
async importRows(args) {
|
|
3164
3192
|
return callDoor(
|
|
3165
3193
|
DOORS.importRows,
|
|
@@ -3230,6 +3258,36 @@ function createRecordsClient(config) {
|
|
|
3230
3258
|
async portals() {
|
|
3231
3259
|
return callDoor(DOORS.portals, { p_organization_id: org }, "portals");
|
|
3232
3260
|
},
|
|
3261
|
+
async listPortals(args) {
|
|
3262
|
+
return callDoor(
|
|
3263
|
+
DOORS.listPortals,
|
|
3264
|
+
{ p_organization_id: org, p_archived: args?.archived ?? "active" },
|
|
3265
|
+
"listPortals"
|
|
3266
|
+
);
|
|
3267
|
+
},
|
|
3268
|
+
async portalArchive(args) {
|
|
3269
|
+
return callDoor(
|
|
3270
|
+
DOORS.portalArchive,
|
|
3271
|
+
{
|
|
3272
|
+
p_organization_id: org,
|
|
3273
|
+
p_portal_id: args.portal_id,
|
|
3274
|
+
p_confirm_title: args.confirm_title,
|
|
3275
|
+
p_reason: args.reason ?? null
|
|
3276
|
+
},
|
|
3277
|
+
"portalArchive"
|
|
3278
|
+
);
|
|
3279
|
+
},
|
|
3280
|
+
async portalRestore(args) {
|
|
3281
|
+
return callDoor(
|
|
3282
|
+
DOORS.portalRestore,
|
|
3283
|
+
{
|
|
3284
|
+
p_organization_id: org,
|
|
3285
|
+
p_portal_id: args.portal_id,
|
|
3286
|
+
p_confirm_title: args.confirm_title
|
|
3287
|
+
},
|
|
3288
|
+
"portalRestore"
|
|
3289
|
+
);
|
|
3290
|
+
},
|
|
3233
3291
|
async portalTables() {
|
|
3234
3292
|
return callDoor(DOORS.portalTables, { p_organization_id: org }, "portalTables");
|
|
3235
3293
|
},
|
|
@@ -5118,6 +5176,24 @@ function publicFormPath(formId) {
|
|
|
5118
5176
|
function portalPath(slug) {
|
|
5119
5177
|
return `/portal/c/${slug}`;
|
|
5120
5178
|
}
|
|
5179
|
+
var PORTAL_ARCHIVE_FILTERS = ["active", "archived", "all"];
|
|
5180
|
+
var DEFAULT_PORTAL_ARCHIVE_FILTER = "active";
|
|
5181
|
+
function isPortalArchiveFilter(word) {
|
|
5182
|
+
return typeof word === "string" && PORTAL_ARCHIVE_FILTERS.includes(word);
|
|
5183
|
+
}
|
|
5184
|
+
function portalArchiveConsequence(title, signedIn, invited) {
|
|
5185
|
+
const people = invited === 0 ? "Nobody is invited to it" : signedIn === 0 ? `The ${invited} ${invited === 1 ? "person" : "people"} invited to it will not be able to sign in` : `The ${signedIn} ${signedIn === 1 ? "person" : "people"} signed in to it, and the ${invited - signedIn} still invited, will not be able to sign in`;
|
|
5186
|
+
return `\u201C${title}\u201D will leave your portal list. ${people}, and their invitation links will say this portal was archived and can be restored. Nothing is deleted \u2014 every Table it shows and everyone invited to it is kept exactly as it is, and you can restore it at any time.`;
|
|
5187
|
+
}
|
|
5188
|
+
function portalConfirmLine(title) {
|
|
5189
|
+
return `Type the portal\u2019s title \u2014 ${title} \u2014 to confirm you mean this one.`;
|
|
5190
|
+
}
|
|
5191
|
+
function portalTitleTypedBack(typed, title) {
|
|
5192
|
+
return typed.trim() === (title ?? "").trim();
|
|
5193
|
+
}
|
|
5194
|
+
function emptyPortalArchiveLine() {
|
|
5195
|
+
return "No portal of this organization has been archived. A portal you put away waits here until somebody restores it, and nothing is ever destroyed.";
|
|
5196
|
+
}
|
|
5121
5197
|
|
|
5122
5198
|
// src/capture-queue.ts
|
|
5123
5199
|
var DB_NAME = "matrx-capture";
|
|
@@ -5412,6 +5488,7 @@ export {
|
|
|
5412
5488
|
CONTEXT_POLICIES,
|
|
5413
5489
|
DECLARABLE_FIELD_KINDS,
|
|
5414
5490
|
DEFAULT_ARCHIVE_LANE,
|
|
5491
|
+
DEFAULT_PORTAL_ARCHIVE_FILTER,
|
|
5415
5492
|
DELIVERIES,
|
|
5416
5493
|
ENTITY_TOKENS,
|
|
5417
5494
|
FIELD_KINDS,
|
|
@@ -5428,6 +5505,7 @@ export {
|
|
|
5428
5505
|
PERMISSION_LEVELS,
|
|
5429
5506
|
PER_VALUE_ACCESS_WORDS,
|
|
5430
5507
|
PIPELINE_RULE_KINDS,
|
|
5508
|
+
PORTAL_ARCHIVE_FILTERS,
|
|
5431
5509
|
REFUSALS_WORTH_REPEATING,
|
|
5432
5510
|
RELATION_BINDINGS,
|
|
5433
5511
|
RELATION_CARDINALITIES,
|
|
@@ -5459,6 +5537,7 @@ export {
|
|
|
5459
5537
|
coerceTypedAnswers,
|
|
5460
5538
|
coercionLabel,
|
|
5461
5539
|
emptyArchiveLine,
|
|
5540
|
+
emptyPortalArchiveLine,
|
|
5462
5541
|
err,
|
|
5463
5542
|
fieldKindFor,
|
|
5464
5543
|
forgetAllOps,
|
|
@@ -5468,6 +5547,7 @@ export {
|
|
|
5468
5547
|
isArchiveLane,
|
|
5469
5548
|
isDecided,
|
|
5470
5549
|
isOwnOp,
|
|
5550
|
+
isPortalArchiveFilter,
|
|
5471
5551
|
isRecordsErr,
|
|
5472
5552
|
isTheChosen,
|
|
5473
5553
|
looksLikeAnId,
|
|
@@ -5480,7 +5560,10 @@ export {
|
|
|
5480
5560
|
openCaptureQueue,
|
|
5481
5561
|
optionKey,
|
|
5482
5562
|
optionLabel,
|
|
5563
|
+
portalArchiveConsequence,
|
|
5564
|
+
portalConfirmLine,
|
|
5483
5565
|
portalPath,
|
|
5566
|
+
portalTitleTypedBack,
|
|
5484
5567
|
publicFormPath,
|
|
5485
5568
|
rememberedOpCount,
|
|
5486
5569
|
sameDocument,
|